2011-08-25 61 views
4

我都快要气炸试图找出如何之前,我这样做也许你可以帮我解决这个问题呢?我正在使用Flash Builder 4.5.1.21328中的flash player 11开发一款游戏,并且我想玩弄新东西,例如原生JSON支持,但是当我尝试在Flash Builder中启动应用程序时,我得到以下结果:的ReferenceError:错误#1065:变量JSON没有定义

ReferenceError: Error #1065: Variable JSON is not defined. 

我添加编译器参数:-swf版本= 13,我已经下载了Flash播放器11的playerglobal.swc,并放置在它应该在Flash Builder的目录,所以我现在很卡。 。如何解决这个令人讨厌的事情,并在Flash Builder中启用Flash Player 11?

当我用我的项目“生成HTML包装器文件”选项并运行浏览器的应用程序,它运行流畅。

回答

3

我也有这个问题,并花了很多时间试图弄明白,直到我发现我工作的解决方案。我已经在这个岗位在Adobe论坛在这里解释它:http://forums.adobe.com/message/3954031

我希望帮助。请让我知道,如果这也适合你。


编辑:看来的Adobe论坛是降权了,所以我在这里发布我的回答:


好了,很多修修补补之后,我想我终于找到了一种方法终于使它工作!

我创建了很多的尝试后需要AIR 3.0和 型材一些修改XML文件,它最终的作品!

我在这里上传他们: http://www.mediafire.com/?d5e761frl5px4

这些都是正常运行得到AIR 3.0所需的步骤:

  1. 将所有三个文件到文件夹“C:\ Program Files文件(然后,确保已经将AIR 3.0 SDK解压缩到文件夹“c:\ Program Files(x86)\ Adob​​e \ Adob​​e”文件夹中Flash CS5.5 \ AIR3.0“ 请按照“Overlay AIR SDK”文章(http://kb2.adobe.com/cps/908/cpsid_90810.html)的建议覆盖“AIR2.6”文件夹的内容。它给了我一些问题。 最好使用不同的单独文件夹。我的XML文件指向新的“AIR3.0”文件夹。

  2. 在文件夹“c:\ Program Files(x86)\ Adob​​e \ Adob​​e Flash CS5.5 \ Common \ Configuration \ ActionScript 3.0”中创建一个名为“AIR3.0”的新文件夹。在该文件夹中,复制位于“c:\ Program Files(x86)\ Adob​​e \ Adob​​e Flash CS5.5 \ AIR3.0 \ frameworks \ libs \ air”中的文件“airglobal.swc”。

  3. 最后,你将不得不保持文件 “描述符sample.xml中” 在 “C:\ Program Files文件(x86)的\的Adobe \的Adobe Flash CS5.5 \ AIR2.6 \样本” 文件夹中, 但更改xmlns属性为“http://ns.adobe.com/air/application/3.0”

是的,你必须改变的AIR2里面。6文件夹,即使SDK已放入AIR3.0。这是因为发布设置在Adobe Flash中的工作原理。它被硬编码到一个DLL中,所以不能被改变。不是很直观。

我认为AIR SDK的安装应该比这更直截了当! 我知道Adobe AIR是面向开发人员的,并非针对最终用户,但仍然是, 所有这些没有很好记录的升级程序都是一个痛苦的屁股。 我浪费了很多小时(超过半天),本应该是 直接升级!

Adob​​e应该制作一个SDK安装程序,这样我们就不必在每次发布新更新时都修补所有这些容易出错的程序 !

那么,我希望这些XML文件对某人有用,并避免进一步的挫折。


编辑2:我已经意识到iOS的XML无法正常工作。我已经上传了一个新的iOS_AIR3_0.xml文件,替换上面链接的同一个MediaFire URL中的旧文件(您会看到它的日期比其他文件更新)。

旧XML的问题是,除了“AIR for iOS”(我写过“iOS 3.0的AIR 3.0”与旧版本不同)之外,它的名称为<的名称为>。看来Adobe Flash CS5.5查找这个字符串。如果是“AIR for iOS”,则Flash会在“AIR for iOS设置”窗口中为iOS提供适当的选项,但如果该字符串不是“AIR for iOS”,则显示的设置是AIR桌面设置。现在唯一的问题是,您不能有2个iOS选项共存(2.7和3.0),因此您必须将“AiriPhone.xml”文件从该文件夹中移出,才能将新的XML用于iOS 3.0的AIR 3.0。

所以你基于字符串的内容而不是ID改变应用程序的行为?本地化呢?我还没有尝试Flash CS5.5的本地化版本,但我怀疑该字符串无法翻译,否则该设置窗口将无法工作。

因此,AIR SDK在其DLL中包含一些硬编码的文件夹名称,并且Flash Pro CS5.5根据在菜单中向用户显示的英文字符串更改AIR设置行为,而不是使用ID或任何其他变量...这是多么笨拙?

3

设置一个编译器运行的选项:

-swf-version=13 
1

我有同样的问题,我相信发生了什么你的是,你在你的浏览器不是您正在使用,而一个使用较新的Flash Player版本使用Flash Builder进行调试(您正在使用独立Flash播放器10.2或更低版本的投影机)

例如,我在flash开发中运行了一个类似的代码,并不断提出这个恼人的错误,并且是因为我使用了fp 10.2和针对fp 11.1

相关问题