如何将第三方jar文件添加到我的android应用程序jar文件中?

时间:2012-01-31 18:54:12

标签: java android flash air flash-builder

我有一个适用于Android的Adobe AIR应用程序。用于此AIR 3.0和Flash Builder 4.6。我需要创建MyANEFile.ane - 它必须包含2个外部.jar文件:Flurry.jar + Tapjoy.jar。但是当我制作.ane文件时 - 它不起作用。如何将这2个jar文件添加到我的主应用程序jar文件中以正确生成.ane文件?感谢。

它在dalvik中向我展示了这样的错误:

* 01-31 21:37:37.046:I / dalvikvm(12983):找不到方法com.amobee.agency.tracking.AmobeeReceiver.amobeeTracking,从方法com.mycompany.extensions.AmobeeInitAmobeeTrackingFunction.call引用

01-31 21:37:37.046:W / dalvikvm(12983):VFY:无法解析静态方法317:Lcom / amobee / agency / tracking / AmobeeReceiver; .amobeeTracking(Ljava / lang / String; Landroid / content /背景信息; Ljava /郎/字符串;)V *

3 个答案:

答案 0 :(得分:3)

假设您的主扩展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中的每个顶级包重复第二个命令。)

答案 1 :(得分:2)

如果您正在使用Eclipse进行开发,请右键单击该项目并转到:

属性 - > Java构建路径 - >图书馆 - >添加外部JAR

答案 2 :(得分:1)

我遇到了为AdMobs创建Android ANE的问题,这对我有用。

像Flynn建议的那样,在Java Build Path中添加jar:

Eclipse Java Build Path showing GoogleAdMobsAdsSdk jar in the build path

然后,我唯一能让AdMobs jar在ANE中发挥出色的方法就是使用Export导出ANE的Android原生jar ... - > Java - > JAR文件并同时选中“导出已检查项目的所有输出文件夹”和“导出Java源文件和资源”:

Eclipse JAR Export with "Export all output folders for checked projects" and "Export Java source files and resources" selected