自动编译 打包 签名 android程序


//第一步 生成R.java 文件

aapt package -f -m -J D:/workspace/a16/gen -S D:/workspace/a16/res -M AndroidManifest.xml -I D:/java/Android/android-sdk_r21.0.1-windows/android-sdk-windows/platforms/android-8/android.jar

//第二步:使用javac编译java文件 

javac -encoding utf-8 -target 1.5 -d D:/workspace/a16/bin/classes/ D:/workspace/a16/src/com/example/a16/*.java D:/workspace/a16/gen/com/example/a16/*.java  -bootclasspath D:/java/Android/android-sdk_r21.0.1-windows/android-sdk-windows/platforms/android-8/android.jar

//第三步:class文件已经生成,使用dx工具将所有class打包生成dex文件。(注意使用绝对路径)

dx.bat --dex --output=D:/workspace/a16/bin/classes.dex D:/workspace/a16/bin/classes/ D:/workspace/a16/libs/android-support-v4.jar

//第四步:dex已经有了,但这些都是java文件编译而成。所以还需要将对应的资源文件打包生成resources.ap_ 文件。依然使用aapt工具

aapt package -f -M AndroidManifest.xml -S D:/workspace/a16/res -A D:/workspace/a16/assets -I D:/java/Android/android-sdk_r21.0.1-windows/android-sdk-windows/platforms/android-8/android.jar -F bin/resources.ap_


//第五步:将resource和dex封装到一起。生成未签名apk文件。使用apkbuilder工具


apkbuilder D:/workspace/a16/bin/unsigned.apk -u -z D:/workspace/a16/bin/resources.ap_ -f D:/workspace/a16/bin/classes.dex -rf D:/workspace/a16/src/

//第六步:对未签名的apk进行签名。使用jarsigner 工具


jarsigner -storepass 100200 -keypass 100200  -keystore D:/Android/keyStore/zhwl.keystore -signedjar D:/workspace/a16/bin/a16.apk D:/workspace/a16/bin/unsigned.apk zhwltqj

posted @ 2013-04-17 15:57  郑文亮  阅读(551)  评论(0编辑  收藏  举报