编译,签名,打包你的android程序成为apk,在eclipse上是件很简单的事情,那我们为什么还要自动化脚本呢?
1. eclipse 实现这些功能的机制也是靠的这些命令。
2. 自动化脚本更灵活,我们可以指定打包的签名文件,直接将生成好的apk重命名并拷贝到某个位置。
3. 更快速,速度远远快于eclipse,对于不断调试程序的程序员来说,减少等待时间,保持好心情更能提高工作效率。
此工具在apidemo根目录下执行成功,理论上在其他工程下也可运行。
使用前请将签名文件拷贝到相同目录下,并在脚本中替换android.jar 和签名文件以及密码信息。
#.java文件到指定的路径
aapt package -f -m -J gen -S res -I \
/home/ckt/AndroidLibs/android-sdks/platforms/android-16/android.jar \
-M AndroidManifest.xml
#. 编译源代码
find src -name *.java > src.list #将src下的文件路径存在src.list文件中
find gen -name *.java > gen.list #将gen下的文件路径存在gen.list文件中
javac -target 1.5 -bootclasspath \
/home/ckt/AndroidLibs/android-sdks/platforms/android-16/android.jar \
-d bin @src.list @gen.list
#. 生成dex文件
dx --dex --output=bin/classes.dex bin
#. 生成资源包
aapt package -f -A assets -S res -I \
/home/ckt/AndroidLibs/android-sdks/platforms/android-16/android.jar \
-M AndroidManifest.xml -F bin/apidemo
#. 编译没签名的apk文件
apkbuilder apidemo.apk -v -u -z bin/apidemo -f bin/classes.dex -rf src
#. 对的apk进行签名
jarsigner -keystore kuaizu.keystore -storepass 123456-keypass 123456 \
-signedjar apidemo_signed.apk apidemo.apk kuzu.key