我正在尝试为Android实现外部库ANE包装。
我总是在LogCat中收到“class not found”错误消息。访问本机代码没问题,但是当我尝试访问外部库函数时,它失败了。
我试过了 External library inside Air native extension for android How to include additional Jar in Android Native Extension for Adobe Air Mobile
Unsuccessfuly。 Adobe Flash Platform *在本机扩展包中包含资源 阅读这些文档:http://help.adobe.com/en_US/air/extensions/WSf268776665d7970d-2e74ffb4130044f3619-7ff8.html
我认为加载资源时可能会遇到问题,因此无法正常访问该类或在某处崩溃。
我的platformoptions.xml文件
<packagedDependencies>
<packagedDependency>my_sdk.jar</packagedDependency>
</packagedDependencies>
<packagedResources>
<packagedResource>
<packageName>com.my_sdk</packageName>
<folderName>res</folderName>
</packagedResource>
</packagedResources>
</platform>
我的问题是,我怎么知道“packageName”,“res”是我从外部库中复制并粘贴所有资源的文件夹,但是包?我刚刚随机写了“com.my_sdk”
谢谢!
答案 0 :(得分:0)
您可以解压缩jar文件并浏览derectories。例如,您可以找到:com / google / gson /,因此您应将packageName标记指定为com.google.gson。
或许你可以查看你的图书馆的javadoc吗?
至于folderName标签。当您使用库的资源调用dir时,您应该指定它(如果它是android lib)。如果您的lib只是带有一些Java代码的jar,您应该指定packagedResource标记。并且只使用jar名称编写packagedDependency标记。 E.g看看here