VerifyError:错误#1079:加载的代码中不允许使用本机方法

我有一个在AS3编译的Android / iOS应用程序。 我遇到了问题,build议升级到Flash Builder 4.7(从4.6开始)。 我这样做了,当我尝试运行新的Air 3.4时,出现以下错误:

VerifyError: Error #1079: Native methods are not allowed in loaded code. 

所以我试着卸载Flash Builder 4.7 64位并安装32位版本。 这没有帮助(同样的问题)。

但是,我尝试了不同的东西。 所以我的工作空间最初是我的Adobe Flash Builder 4.6(因为我在该工作空间中有很多AS3项目,只想在4.7中加载)。 显然这导致了我的问题(或者至less在我做了以下事情之后就消失了)。

我决定使用Flash Builder 4.7的默认工作区(Users \\ Adob​​e Flash Builder 4.7)而不是切换到4.6。 然后我导入了我的4.6目录中的现有项目。 编译,它运行良好!

从Flash Builder 4.6升级到4.7并使用4.6中的旧工作区时,我想这是一个问题…不知道为什么会导致这个奇怪的错误,但我很高兴能够继续前进。

同样的问题对我来说。 我解决了这个问题:

项目 – >属性 – >库path – >

从fb 4.6清除旧图书馆,然后点击“添加空气sdk”。

我有这个问题。 原来是因为在

项目 – >属性 – >库path

playerGlobal.swc的早期版本被引用,而不是作为Air SDK的一部分提供的默认版本。 从Air SDK中删除并手动添加playerGlobal SWC解决了这个问题

(显然,Playerglobal.swc只包括接口定义,包括播放器中类的本地方法)。

这是帮助我(也可能帮助别人)。

我在FB 4.6上,我记得我更新了SDK到Apatche 13.0。 之后,我的项目中的图书馆搞砸了。 我删除了项目(也被删除的文件),并再次导入同一项目的副本。 像魅力一样工作。

在我的情况下,问题是在构build脚本。 我升级到了AIR SDK 22,但构build任务包含:

 <target-player>11.1</target-player> 

要么删除这个参数,要么将值改成23.0解决了这个问题。