Android VerifyError:错误#1079:加载的代码中不允许使用本机方法
我有一个用AS3编译的Android/iOS应用程序。我遇到问题,建议升级到Flash Builder 4.7(从4.6版)。我这样做了,当我尝试使用新的Air 3.4运行时,出现以下错误:Android VerifyError:错误#1079:加载的代码中不允许使用本机方法,android,ios,actionscript-3,flash,Android,Ios,Actionscript 3,Flash,我有一个用AS3编译的Android/iOS应用程序。我遇到问题,建议升级到Flash Builder 4.7(从4.6版)。我这样做了,当我尝试使用新的Air 3.4运行时,出现以下错误: VerifyError: Error #1079: Native methods are not allowed in loaded code. 因此,我尝试卸载64位Flash Builder 4.7并安装32位版本。这没有帮助(同样的问题) 但后来我尝试了一些不同的东西。因此,我的工作区最初是我的Ad
VerifyError: Error #1079: Native methods are not allowed in loaded code.
因此,我尝试卸载64位Flash Builder 4.7并安装32位版本。这没有帮助(同样的问题) 但后来我尝试了一些不同的东西。因此,我的工作区最初是我的AdobeFlashBuilder4.6(因为我在该工作区中有许多AS3项目,只想在4.7中加载它们)。显然,这导致了我的问题(或者至少在我做以下事情时它消失了) 我决定使用Flash Builder 4.7的默认工作区(Users\\Adobe Flash Builder 4.7),而不是切换到4.6。然后,我导入了我的4.6目录中的现有项目。编译后运行良好
我想从Flash Builder 4.6升级到4.7,并使用4.6中的旧工作区时会出现问题。。。我不知道为什么会出现这种奇怪的错误,但我很高兴能够继续前进。我也有同样的问题。我通过以下方式解决了此问题: 项目->属性->库路径->
清除FB4.6中的旧库并单击“添加air sdk”。我遇到了这个问题。原来是因为 项目->属性->库路径 引用了playerGlobal.swc的早期版本,而不是作为Air SDK的一部分提供的默认版本。从Air SDK中删除并手动添加playerGlobal SWC解决了问题 (显然,Playerglobal.swc只包括接口定义,包括播放器中类的本机方法)。这对我有帮助(也可能对其他人有帮助)
我在FB4.6上,我清楚地记得我将SDK更新为Apache13.0。在那之后,我的项目中的库都搞砸了。我删除了项目(也删除了文件),然后再次导入了同一项目的副本。工作起来很有魅力。在我的例子中,问题在于构建脚本。我升级到AIR SDK 22,但构建任务包含:
<target-player>11.1</target-player>
11.1
删除此参数或将值更改为23.0解决了问题。如果您使用的是任何库(.swc文件),则将.swc链接设置为external。此外,我假设您没有在任何加载的资产中执行任何代码。所有swc都已设置为external。没有从外部加载任何资产。不管怎样,这都会在运行时发生,甚至在加载任何东西之前。