这些天来,我正试图将AdMob集成到基于Adobe的安卓应用程序中,使用Google服务。在准备好ane文件之后,在FlashBuilder4.6中调试应用程序后,我得到了以下错误:
打包应用程序时出错: dx工具失败:意外的顶级异常: java.lang.IllegalArgumentException:已经添加: Lcom/google/android/gms/R$attr;在com.android.dx.dex.file.ClassDefsSection.add(ClassDefsSection.java:123) at com.android.dx.dex.file.DexFile.add(DexFile.java:143) at com.android.dx.command.dexer.Main.processClass(Main.java:301) at com.android.dx.command.dexer.Main.processFileBytes(Main.java:278) at com.android.dx.command.dexer.Main.access$100(Main.java:56)在com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:229) at com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:244) at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:130) at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:108) at com.android.dx.command.dexer.Main.processOne(Main.java:247) atcom.android.dx.command.dexer.Main.processAllFiles(Main.java:183) at com.android.dx.command.dexer.Main.run(Main.java:139) at com.android.dx.command.dexer.Main.main(Main.java:120) at com.android.dx.command.Main.main(Main.java:89) 1;流产
这个问题与post:Cannot build Android Release Build on Flash Builder 4.7 due to "dx tool failed"非常相似。
我知道我的电子病历肯定有问题。但我真的不知道问题出在哪里。下面是我的android本机扩展.jar文件夹:
这是我的platform.xml文件:
<platform xmlns="http://ns.adobe.com/air/extension/4.0">
<packagedDependencies>
<packagedDependency>android-support-v4.jar</packagedDependency>
<packagedDependency>google-play-services.jar</packagedDependency>
</packagedDependencies>
<packagedResources>
<packagedResource>
<packageName>com.google.android.gms</packageName>
<folderName>google-play-services-res</folderName>
</packagedResource>
</packagedResources>
</platform>
我使用以下命令行编译ane文件:
adt -package -target ane Output.ane extension.xml -swc AdmobLibrary.swc -platform Android-ARM -platformoptions platform.xml -C android . -platform default -C default .
我能拿到安的文件。但是在调试了我的Flex应用程序之后,这个错误就出来了。
发布于 2014-04-16 19:00:40
我终于找到了解决问题的办法。问题是在将本机扩展名导出到.jar文件的过程中。更具体地说,当我将我的安卓项目导出到.jar文件时,我犯了一个错误。我选择要导出到.jar文件的整个java项目文件,包括不需要的gen文件夹。下面是屏幕截图:
我所做的是不正确的:
这是正确的方法:
https://stackoverflow.com/questions/23104532
复制相似问题