ExternalInterface的Chrome浏览器浏览器、ExternalInterface、Chrome

2023-09-08 13:51:59 作者:跪下叫皇上

我想通过ExternalInterface的来自AS3 code调用JS函数在本地,而不是远程服务器。 所有的浏览器工作的伟大,但不是浏览器。 请注意,在闪存调试播放器版本(C:\ WINDOWS \ SYSTEM32 \ Macromed \闪存\ NPSWF32_11_9_900_170.dll,11,9,900,170版)我已经安装了Chrome浏览器它的工作原理。 但是,在默认的Flash Player版本(C:\ Program Files文件\谷歌\浏览器\应用程序\ 33.0.1750.117 \ PepperFlash \ pepflashplayer.dll,12.0.0.70版)。这是行不通的。

I would like to call js function via ExternalInterface from as3 code LOCALLY, not on remote server. All browsers work great but not Chrome. Note that in flash-debug player version (C:\Windows\system32\Macromed\Flash\NPSWF32_11_9_900_170.dll, version 11,9,900,170) I have installed in Chrome it works. But in default flash player version (C:\Program Files\Google\Chrome\Application\33.0.1750.117\PepperFlash\pepflashplayer.dll, version 12.0.0.70) it doesn't work.

PS:我也试着打开我的老项目(含ExternalInterface的)我已经开发了2年前 - >同样的问题

PS: I've also tried to open my old project (with ExternalInterface) I've developed 2 years ago -> same issue.

IDE我已经使用 - > FlashBuilder4.6,也尝试过的FlashDevelop。 我使用AC_OETags.js以包括SWF到网页。

IDE I have used -> FlashBuilder4.6 and also tried in FlashDevelop. I am using AC_OETags.js in order to include swf into web-page.

ExternalInterface.call(someFunc,testMsg)时,SWF初始化调用。

ExternalInterface.call("someFunc","testMsg") calls when swf initializes.

Chrome浏览器的版本是33.0.1750.117米

Chrome version is 33.0.1750.117 m

在此先感谢。

推荐答案

这是用辣椒插件在Chrome中的错误:的 HTTPS://$c$c.google.com/p/chromium/issues/detail ID = 137734

This is a bug in Chrome using the pepper plugin: https://code.google.com/p/chromium/issues/detail?id=137734

这是怎么回事的是,受信任的位置(这里设置:的https://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager04.html)不考虑的,所以任何Flash和所述; - > JS的相互作用是破

What's happening is that the trusted locations (set here: https://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager04.html) aren't taken into account, so any Flash <-> JS interaction is broken.

它看起来并不像这样的错误是搞定了(通过对这个问题的意见今天来看,有一个很好的机会,它会得到标记为不会修复),所以现在有大约3方面它:

It doesn't look like this bug is getting fixed (judging by the comments on the issue today, there's a good chance it'll get marked as a "Won't fix"), so for now there's 3 ways around it:

使用其他浏览器 - 不理想 使用NPAPI插件 - 辣椒插件是默认的,但它主要是一组一次和忘记排序任务 运行本地Web服务器 - 无论是什么样的Apache( http://www.easyphp.org/ )或节点( http://nodejs.org/ )。这是谷歌的preferred处理这个,因为它更紧密地模仿网络行为(包括安全的东西)的方法 Use another browser - not ideal Use the NPAPI plugin - the pepper plugin is the default, but it's mostly a set-once-and-forget sort of task Run a local webserver - either something like apache (http://www.easyphp.org/) or node (http://nodejs.org/). This is Google's preferred method of dealing with this, as it more closely mimics network behaviour (including security stuff)