Adobe AIR 3本机扩展 - .ane文件中未包含Android res文件夹

Tai*_*iko 1 apache-flex air android actionscript-3

大家好

我正在尝试为air开发一个android扩展,但我有资源问题.

根据这个:官方adobe doc - FREContext

这个由Oliver Goldman扩展的AIR

我们只需要在Native部分的res文件中添加我们需要的资源,然后将它们添加到.ane文件中并传递给最终的apk.为了访问它们,我们必须使用getResourceId("drawable.background_image")而不是R.drawable.background_image

但是当我生成扩展时,res文件实际上甚至不包含在.ane文件中的任何位置,也不包含在最终的apk中.而且我发现网上没有一个使用资源的扩展(甚至在adobe样本中也没有)

对于此测试,我只使用基本的Hello world Vibrate测试,但我在drawable文件夹中添加了一个新的png.

正如您在解压缩.ane文件时所看到的那样,然后转到META-INF/ANE/Android-ARM

res文件不存在.

结果,当我尝试访问我的资源FREContext.getResourceId("drawable.ppy_accessory_manage.png")时,程序崩溃了

有没有人设法让资源在Android中与ANE一起工作?在编译时,我的命令行中是否应该更改某些内容?

谢谢 :-)

PS,这是我编译ANE的批处理:

set adt_directory = C:\ Program Files\Adob​​e\Adob​​e Flash Builder 4.6\sdks\4.6.0\bin

set root_directory = C:\ Users\hugo\Adob​​e Flash Builder 4.6

set library_directory =%root_directory%\ HelloANELibrary

set native_directory =%root_directory%\ HelloANENative

set signing_options = -storetype pkcs12 -keystore"C:\ Users\hugo\Adob​​e Flash Builder 4.6\certificat.p12"

设置dest_ANE = HelloANE.ane

set extension_XML =%library_directory%\ src\extension.xml

set library_SWC =%library_directory%\ bin\HelloANELibrary.swc

"%adt_directory%"/ adt -package%signing_options%-target ane"%dest_ANE%""%extension_XML%"-swc"%library_SWC%"-platform Android-ARM -C"%native_directory%"library.swf HelloANENative.jar

小智 6

您只需在"-platform Android-ARM"之后添加以下内容:-C"%native_directory%"res

使用%native_directory%中的res文件夹!

但最好的方法是创建%target_native_directory%,将所需内容放入其中,并使用:-C"%target_native_directory%".