X

重新打包APK

当需要查看apk内容,或者做一些修改时,就需要对apk进行拆包、重新打包,比如修改名称/图标等,给目标添加sdk时也需要拆包/重新打包。

工具

  • JDK
  • ApkTool
  • apksigner

JDK https://adoptopenjdk.net/

这里的工具都是基于Java的,所以需要首先安装Jdk,安装最新的LTS版本就可以了。

ApkTool https://ibotpeaches.github.io/Apktool/

ApkTool 可以将apk解包,也可以将解包的apk重新打包成apk,功能十分强大。

apksigner https://developer.android.com/studio/command-line/apksigner

apksigner 存在于Android SDK中,目录为 sdk/build-tools/$buildToolVersion/apksigner.bat

可以通过Android Stuido 或者sdkmanager来安装。官网地址为 https://developer.android.com/studio

使用步骤

# 将test.apk解包到test目录
apktool d test.apk
# 将test目录打包成apk
apktool b test
# 对apk签名
apksigner.bat sign --ks debug.keystore --ks-pass pass:android --ks-key-alias androiddebugkey --key-pass pass:android test.apk
# 验证签名
apksigner.bat verify test.apk

签名

apktool 打包后的apk不带签名,需要手动给apk签名后才能安装到手机里,一般要发布的apk需要使用自己的签名,而开发时可以使用Android默认的debug签名,该签名存放在 C:/Users/$UserName/.android/debug.keystore

默认debug.keystore的信息如下:

Keystore name: "debug.keystore"
Keystore password: "android"
Key alias: "androiddebugkey"
Key password: "android"

This website uses cookies.