Тези дни се опитвам да интегрирам AdMob в моето приложение за Android, базирано на Adobe Air, с Google Play Service. След като подготвих ane файла, получих следната грешка след отстраняване на грешки в приложението във Flash builder 4.6:
Възникна грешка при опаковането на приложението:
dx инструментът е неуспешен: НЕОЧАКВАНО ИЗКЛЮЧЕНИЕ НА ГОРНО НИВО: java.lang.IllegalArgumentException: вече е добавено: Lcom/google/android/gms/R$attr; в com.android.dx.dex.file.ClassDefsSection.add(ClassDefsSection.java:123) в com.android.dx.dex.file.DexFile.add(DexFile.java:143) в com.android.dx.command .dexer.Main.processClass(Main.java:301) на com.android.dx.command.dexer.Main.processFileBytes(Main.java:278) на com.android.dx.command.dexer.Main.access$100( Main.java:56) в com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:229) в com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:244) в com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:130) в com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:108) в com.android.dx.command. dexer.Main.processOne(Main.java:247) в com.android.dx.command.dexer.Main.processAllFiles(Main.java:183) в com.android.dx.command.dexer.Main.run(Main. java:139) на com.android.dx.command.dexer.Main.main(Main.java:120) на com.android.dx.command.Main.main(Main.java:89) 1 грешка; абортиране
Този проблем е доста подобен с публикацията: Не може да се изгради Android Release Build на Flash Builder 4.7 поради грешка на инструмента dx
Знам, че трябва да има нещо нередно с моя файл ane. Но наистина не знам къде е проблема. Ето папката .jar на моето родно разширение за Android:
Ето моя файл 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 .
Мога да получа файла ane. Но след отстраняване на грешки в моето приложение Flex грешката излиза.