IT相关 · 2026年6月27日

使用apksigner给安卓.apk安装包文件重新签名

准备工作

  1. 签名证书文件:准备好 .jks 或 .keystore 文件及密码,若没有证书可参考:Windows命令行生成keystore方法
  2. 确认已安装 apksigner 工具:
    • 安装 Android Studio ,打开内置的 SDK 管理器(Settings -> Languages & Frameworks -> Android SDK)。
    • 进入文件夹路径(以 Windows 默认路径为例):
      C:\Users\您的用户名\AppData\Local\Android\Sdk\build-tools\
    • 进入最新版本的版本号文件夹(例如 37.0.0),确认存在 apksigner.bat。

操作步骤

用管理员权限打开命令提示符CMD / Terminal,操作前先cd进入前述目录,例:

cd C:\Users\28598\AppData\Local\Android\Sdk\build-tools\37.0.0

1. 文件对齐

重签名通常需要先先对 APK 进行 4 字节对齐优化再进行签名,以确保 APK 的运行效能。

执行命令:

zipalign -v 4 "原始无签名的.apk" "对齐后的.apk" 

示例命令:

zipalign -v 4 "unsign86907.apk" "duiqied86907.apk" 

2. 使用 apksigner 进行重签名

执行命令:

apksigner sign --ks "证书文件.keystore" --ks-key-alias "证书别名" --out "最终重签名的.apk" "对齐后的.apk" 

示例命令:

apksigner sign --ks "yoer.keystore" --ks-key-alias "yoer" --out "resigned.apk" "duiqied.apk"

执行后提示 Keystore password for signer #1: ,输入证书密码后按回车即可执行(输入时不会显示字符),执行后在当前目录下生成签名后的.apk文件。

3. 验证签名是否成功

执行命令

apksigner verify -v --print-certs "最终重签名的.apk" 

显示 Verified using v1 scheme (JAR signing): true 和证书信息表示重签名成功!


首次打开Android Studio SDK 管理器可能会提示:“The Android SDK location cannot be at the filesystem root.”(Android SDK 路径不能设在文件系统根目录),可按以下步骤解决:

  1. 点击输入框右侧的 Edit 按钮。
  2. 在弹出的窗口中,通常会自动检测或出现默认的 SDK 安装路径。
  3. 如果需要手动指定,推荐选择或创建如下的默认文件夹:
    • Windows 默认C:\Users\您的用户名\AppData\Local\Android\Sdk (注:AppData 是隐藏文件夹,需在文件资源管理器中开启“显示隐藏文件”)
    • 自定义路径:例如 D:\Android\Sdk (注意:绝对不能直接选 D:\C:\ 根目录)
  4. 点击 Next 让 Android Studio 自动下载或配置好 SDK 基础组件,完成后点击 Finish