引言:
APK在推广的时候可能会须要动态打包APK。比方公布到不同渠道的时候,须要在manifest文件里改动渠道信息。或者app在推广的时候。须要在apk包里面加上推广人信息等。
环境变量:
1、JDK 1.7
2、Android Build-Tools(将此目录设置到环境变量里去)
3、ApkTool,打包的时候须要用Android Build-Tools的aapt工具
步骤:
- 下载Apk Tool工具包
最新版本号下载地址:https://bitbucket.org/iBotPeaches/apktool/downloads
- 解包
将须要解压的apk文件(test.apk)、apktool.jar、apk相应的keystore(test.keystore)放到同一个目录下。然后cd到这个目录
输入解压命令:
java -jar apktool.jar d -f -s test.apk
运行命令后,你会发如今当前目录下生产一个test的目录。在此时你能够改动manifest配置文件,或者向raw、assets目录中加入一些文件
- 打包
运行完上面操作后,你须要又一次打包。输入以下的命令:
java -jar apktool.jar b test
运行完上面的操作后,生成的未签名的apk文件在 ./test/dist/ 文件夹下
- 签名
将 ./test/dist/ 文件夹下的apk文件签名。參考命令例如以下:
jarsigner -digestalg SHA1 -sigalg MD5withRSA -verbose -keystore test.keysotore -storepass keystore_password -keypass keypass_passworld -signedjar test_s.apk ./test/dist/test.apk test.alias
上面的签名參数仅供參考。你可能须要针对不同的情况做稍许的改变。
总结:
以上仅仅是一种打包方式,个人认为是比較快的一种方式。