带有 Distriqt Compass 的 Adob​​e Flash Professional CS5.5(AS3) 总是显示 "The native extension context could not created"

Adobe Flash Professional CS5.5(AS3) with Distriqt Compass always says "The native extension context could not created"

我将 Adob​​e Flash Professional CS5.5 与 ANE Distriqt Compass 一起使用,我创建了一个简单的 .fla 项目并编写了几行 AS3 脚本。编译成功,但是当我在我的电脑上执行.swf文件时,一开始它总是说

"The native extension context could not be created"

我以为问题是因为我的电脑缺少磁力计,但是当我把我的代码打包成一个.apk文件并安装到我的[=42] =] 设备,它说同样的话。查看代码后,我发现 Compass.init 永远不会执行成功。

Here是我的项目,谁能告诉我是什么原因导致的问题?
我试着...

我也尝试了 this link 的解决方案,但那也不起作用。 Google 里里外外都找遍了,好像没有办法。

该错误表明您没有将 ANE 正确打包到您的应用程序中。

对于 CS5.5,您需要从命令行打包您的应用程序才能正确打包 ANE。 CS5.5 不包括使用 ANE 打包应用程序的功能。

首先确保您已将扩展程序 ID 添加到您的应用程序描述符中:

<extensions>
    <extension>com.distriqt.Compass</extension>
</extensions>

要添加扩展名:

  • 将 ANE 文件的文件扩展名从 .ane 更改为 .swc。此步骤是必要的,以便 Flash Professional 可以找到文件
  • Select FLA 文件上的文件 > ActionScript 设置
  • Select“高级 ActionScript 3.0 设置”对话框中的 Library Path 选项卡
  • Select 浏览到 SWC 文件按钮
  • 浏览到 SWC 文件并 select 打开。 SWC 文件现在显示在“高级 ActionScript 3.0 设置”对话框的“库路径”选项卡中
  • 使用 SWC 文件 selected,select 按钮 Select LinkA 库的年龄选项(这看起来像面板)。
  • 在“库路径项选项”对话框中,将 Link 类型更改为外部。

接下来您需要在构建的应用程序目录中打开一个命令行。该目录应包含:

  • 申请瑞士法郎:myApp.swf
  • 应用程序描述符:myApp-app.xml
  • 任何需要的文件,例如图标,Default.png
  • ANE(在子目录中,我们将在下面假设 extensionsDir

此命令的详细信息取决于您正在开发的应用程序和您的目标平台。您应该查看以下 url 处的文档,以确定该命令应包含您的环境的详细信息。

http://help.adobe.com/en_US/air/build/WS597e5dadb9cc1e0253f7d2fc1311b491071-8000.html

例如,以下命令将为 Android 创建一个 APK:

adt -package
    -target apk
    -storetype pkcs12 -keystore YOUR_SIGNING_KEY.p12
    myApp.apk
    myApp-app.xml
    myApp.swf icons
    -extdir extensionsDir

有关详细信息,请参阅此处的教程:https://airnativeextensions.com/knowledgebase/tutorial/1