适用于Android的Air原生扩展内的外部库

时间:2014-08-05 16:32:06

标签: android adobe external libraries ane

[解决]

最后问题是我的外部lib使用外部jar。而罐子的内容也必须在扩展罐中。例如:

extension.jar包含所有已编译的类:

externallib.jar

externallib_referencing_external_lib.jar [/解决]

首先,我一直在研究这个主题

我遇到了类似的问题。但不完全一样。解决方案对我没用:(。

首先,我没有任何明显的错误。

- 我可以在java和动作脚本之间轻松交谈。

- 网关设置没有问题。

我的问题来自于我的扩展程序的java端部分,我尝试调用第三方库。这个库是(并且我认为这是我做错的地方)链接到我的项目作为外部库,以.jar格式。

因此,当我打电话给第三方图书馆时,它不会打印任何内容。无论是在adobe部分还是在java部分。打印之前的日志是打印的,而不是之后的日志。

我尝试了不同的解决方案:

- 取出我外部lib的所有已编译的类文件,并将其添加到主本机扩展jar [link1]

相同的结果(没有错误)

- 包括ANE中的第三方jar,添加一个需要.jar的依赖文件[link2]

使用这种方法我得到了这个我没有得到的错误

  

aapt工具失败:ERROR:输入目录' - auto-add-overlay'不存在

我的第三方库还包含一些外部.jars,所以我需要在同一个打包的jar中包含每个jar吗?

我可以看到很多人都在处理类似的问题所以我的问题是:

在android AIR Native Extension中包含第三方库的最佳方法是什么?。

有关信息,以下是我创建ANE的方法

  

adt -package -target an AirInfinitGameANE \ AirInfinitGame.ane AirInfinitGameASLib \ src \ extension.xml -swc AirInfinitGameANE \ AirInfinitGameASLib.swc -platform Android-ARM -C AirInfinitGameLib。

  • AirInfinitGameASLib:只是包含actionScript部分和config xml文件的文件夹
  • AirInfinitGameANE:将成为原生扩展名的文件夹
  • AirInfinitGameLib:eclipse java项目。我需要在文件夹中放入airInfinitgamelib.jar(扩展jar)和library.swf(来自swc文件),以便能够编译ANE。

在这里!非常感谢那些读过我的人。

0 个答案:

没有答案