Der*_*kel 11 air android flex-mobile
随着围绕AIR 3中的本机扩展支持的所有新的炒作,我没有找到确认或否认可以在本机Android实现中包含和使用外部JAR的单一事物.
所有这些示例基本上都展示了嵌入内置Android API的能力.但是,如果有人想要使用数百个库中的一个使其更容易呢?当然看起来这应该是可能的.我将尝试概述我所做的事情,也许有人会发现一个缺陷:
"ActivityManager: Displayed com.me.androidapp/.AppEntry"
"mye_native: MyExtension.initialize", "mye_native: MyExtensionContext.createContext"
E dalvikvm: Could not find class 'com.thirdparty.SomeClass', referenced from method com.me.nativeExtentions.MyExtensionFunction.call
有任何想法吗?它似乎应该以这种方式工作.
我注意到的一件事是,当我从我的纯Java Android应用程序(也有第三方安卓库)中分离出APK和Dex时,看起来第三方的类已包含在其中(不仅仅是jar参考).当我使用我的Flex APK做同样的事情时,我发现只有我自己的Java类和Adobe的,而第三方无法找到我能看到的.
我在Adobe论坛上发布了这个,但我想我会试试SO智囊团.谢谢.
你必须将所有的罐子合二为一.像http://code.google.com/p/jarjar/或您自己的Ant脚本之类的东西会有所帮助.
编辑添加示例:假设您的主扩展jar文件是extension.jar,并且您正在使用external.jar中的代码.然后,您可以使用Java jar工具将来自external.jar的类放入extension.jar:
jar -xf external.jar
这会将.class文件解压缩到包文件夹中.如果顶级包是"com",那么您可以使用以下命令将它们添加到extension.jar:
jar -uf extension.jar com
(对外部jar中的每个顶级包重复第二个命令.)
归档时间: |
|
查看次数: |
5681 次 |
最近记录: |