手机端 apk-signer 与电脑端 SDK apksigner 的分工
同名不同物
搜"apksigner"会同时命中两个东西,先分清:
- 电脑端
apksigner:Android SDK Build-Tools 自带的命令行工具(24.0.3 起提供),开发构建链的签名环节,与 gradle、zipalign、sdkmanager 配套工作。 - 手机端 apk-signer 应用:本站的主角,开发者 Tra-On 的安卓应用,把签名、验证、密钥库管理做成图形界面装进手机。
两者实现的是同一套安卓签名标准,签出的包没有区别——区别在使用方式与适用场景。
分工对照表
| 场景 | 更合适的工具 | 理由 |
|---|---|---|
| 手边只有手机 | 手机端 apk-signer | 图形界面,无需配环境 |
| 日常构建发布流程 | 电脑端 apksigner | 与构建脚本天然衔接 |
| 批量处理电脑上的包 | 电脑端 apksigner(或导出 jar) | 免去逐个传包 |
| 装前验真、查已装应用 | 手机端 apk-signer | SDK 工具管不到"已安装"维度 |
| 精确控制 minSdk/maxSdk 等参数 | 电脑端 apksigner | 命令行参数更细,见官方文档 |
互通的三条桥
- 密钥库通用:同一份 keystore 两端都能用,靠导入/导出搬运。
- jar 导出:手机端可以把签名器导出成 jar 给电脑用,见导出 apk-signer.jar 到电脑用。
- 验证结果一致:签名是否有效,两端结论相同;但"知名品牌比对"这类面向普通用户的能力是手机端应用的特色。
一句话选型
开发者构建流水线里的签名交给 SDK 工具;包落到手机之后的一切——装、验、重签、管密钥——交给 apk-signer。