反编译APK
- apkTool下载地址:https://bitbucket.org/iBotPeaches/apktool/downloads/
- 将下载好的文件修改名字为apktool.jar,然后放入磁盘根目录,不要含有中文路径。我放在了“D:\Android\apktool”文件夹下。
-
将需要反编译的APK放入apktool.jar所在文件夹,重命名为start.apk。
- 打开cmd,使用命令,进入apktool.jar所在目录。
cd D:\Android\apktool
d:
- 使用命令,对apk进行反编译,反编译成功后,会生成一个start文件夹,其中包含项目文件
apktool d start.apk
修改文件内容
-
打开start文件夹,因为要修改versionCode,而这个信息存储在“D:\Android\apktool\startapktool.yml”文件中,那么打开这个文件,拉到文件最下边,修改versionCode为期望的值。
打包项目为APK
- 使用命令,将修改后的项目打包为APK
apktool b start -o end.apk
APK优化,文件开头与特定字节对齐
-
优化APK需要使用zipalign工具。这个工具在android-SDK-build-tools中有提供。
- 使用命令进入zipalign所在目录
cd D:\Android\SDK\build-tools\27.0.3
d:
- 使用命令,对齐APK,注意这里使用的是APK完整路径。
zipalign -v -p 4 D:\Android\apktool\end.apk D:\Android\apktool\aligned.apk
为APK签名
- 签名APK使用的apksigner工具,这个工具是google提供的,可以经行v2签名。
-
签名的时候,需要一个密钥,我建立一个密钥并放入D:\Android\apktool文件夹下。
-
apksigner在android-SDK-build-tools,使用命令进入此目录。
cd D:\Android\SDK\build-tools\27.0.3
d:
- 执行签名命令
apksigner sign --ks D:\Android\apktool\key.jks --out D:\Android\apktool\release.apk D:\Android\apktool\aligned.apk
-
输入密码。