您的位置:首页 > 移动开发 > Android开发

分享一个自动编译,打包,签名 android apk 的小脚本

2014-03-13 17:06 706 查看
编译,签名,打包你的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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: