使用cocos2d ide 打包指定SDK版本APK的问题

使用IDE自带的打包功能,打包 SDK 19,20 都是可以的,但是打包 SDK 10就不行,

写的个APP 因为不支持安卓2.3.5被平台拒绝了,想编辑低版本的SDK以支持更多的机型…

在编译过SDK19后,再编辑SDK10就会提示

The android-platform of project “E:\yi\workbench\mycocosgame\MyJumpyCat\frameworks\runtime-src\proj.android” should be equal/larger than 19, but 10 is specified.

手动把两个project.properties 里的 target=android-19 改为 target=android-10 后

再次打包

提示

-dex:
       input: E:\yi\workbench\mycocosgame\MyJumpyCat\frameworks\runtime-src\proj.android\bin\classes
       input: E:\yi\workbench\mycocosgame\MyJumpyCat\frameworks\js-bindings\cocos2d-x\cocos\platform\android\java\bin\classes.jar
       input: E:\yi\adt\sdk\tools\support\annotations.jar
       Pre-Dexing E:\yi\workbench\mycocosgame\MyJumpyCat\frameworks\js-bindings\cocos2d-x\cocos\platform\android\java\bin\classes.jar -> classes-a4137b01d413c4ba60f83ba1f48b24ca.jar
       Converting compiled files and external libraries into E:\yi\workbench\mycocosgame\MyJumpyCat\frameworks\runtime-src\proj.android\bin\classes.dex...
        
        UNEXPECTED TOP-LEVEL EXCEPTION:
        java.io.FileNotFoundException: E:\yi\adt\sdk\tools\support\annotations.jar (系统找不到指定的文件。)
            at java.util.zip.ZipFile.open(Native Method)
            at java.util.zip.ZipFile.(ZipFile.java:215)
            at java.util.zip.ZipFile.(ZipFile.java:145)
            at java.util.zip.ZipFile.(ZipFile.java:159)
            at com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:244)
            at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:166)
            at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144)
            at com.android.dx.command.dexer.Main.processOne(Main.java:596)
            at com.android.dx.command.dexer.Main.processAllFiles(Main.java:498)
            at com.android.dx.command.dexer.Main.runMonoDex(Main.java:264)
            at com.android.dx.command.dexer.Main.run(Main.java:230)
            at com.android.dx.command.dexer.Main.main(Main.java:199)
            at com.android.dx.command.Main.main(Main.java:103)
        1 error; aborting

BUILD FAILED
E:\yi\adt\sdk\tools\ant\build.xml:892: The following error occurred while executing this line:
E:\yi\adt\sdk\tools\ant\build.xml:894: The following error occurred while executing this line:
E:\yi\adt\sdk\tools\ant\build.xml:906: The following error occurred while executing this line:
E:\yi\adt\sdk\tools\ant\build.xml:283: null returned: 1

Total time: 9 seconds
Running command: compile
Building mode: debug
building native
NDK build mode: release
The Selected NDK toolchain version was 4.8 !
running: 'E:\yi\ndk\ndk-build -C E:\yi\workbench\mycocosgame\MyJumpyCat\frameworks\runtime-src\proj.android -j1 NDK_MODULE_PATH=E:\yi\workbench\mycocosgame\MyJumpyCat\frameworks\runtime-src\proj.android\../../js-bindings;E:\yi\workbench\mycocosgame\MyJumpyCat\frameworks\runtime-src\proj.android\../../js-bindings/cocos2d-x;E:\yi\workbench\mycocosgame\MyJumpyCat\frameworks\runtime-src\proj.android\../../js-bindings/cocos2d-x/cocos;E:\yi\workbench\mycocosgame\MyJumpyCat\frameworks\runtime-src\proj.android\../../js-bindings/cocos2d-x/external'

building apk
running: '"E:\yi\adt\sdk\tools\android" update project -t android-10 -p E:\yi\workbench\mycocosgame\MyJumpyCat\frameworks\runtime-src\proj.android'

running: '"E:\yi\adt\sdk\tools\android" update lib-project -p E:\yi\workbench\mycocosgame\MyJumpyCat\frameworks\runtime-src\proj.android\../../js-bindings/cocos2d-x/cocos/platform/android/java -t android-10'

running: '"E:\yi\ant\bin\ant" clean debug -f E:\yi\workbench\mycocosgame\MyJumpyCat\frameworks\runtime-src\proj.android\build.xml -Dsdk.dir="E:\yi\adt\sdk"'

Error running command, return code: 1



```

target=android-10,试下一开始就打包10,先把android目录下的bin obj 目录删除了,

好…晚上回去试试 :14: 谢谢

还是不能打包 sdk10的 android apk,不知道诸位开发者 apk打包都是什么版本的 sdk api啊,兼容性如何考虑,我的APP因为不兼容低版本的android,被百度给拒绝了:12:

我是打SDK 20不会报错,打19报错了,同高手解答

我之前也遇到 这样的情况, 用 chuanwei.zhang 的 方法 就可以 , 把 proj.android \ bin \classes \ org 里面的obj 删掉 就可以, API 的版本 在 proj.android 下AndroidManifest 里面修改 就可以。

将 android 中 的project.properties 文件中的变量 target=android-xx 该为你需要的版本, 必要的时候 删除obj