appium-boneyard/sign
GitHub: appium-boneyard/sign
将 AOSP 的 SignApk 封装为一键签名的独立 jar 工具,使用 Android 测试证书快速对 APK 进行自动签名。
Stars: 428 | Forks: 117
# Apk 签名
使用 Android 测试证书自动对 apk 进行签名。公钥和私钥内嵌在 jar 中。
### 开发
构建:
```
./build.sh
```
测试:
```
./test.sh
```
### 使用方法
- `sign my.apk`
会在 `my.apk` 旁边创建 `my.s.apk`
- `sign my.apk --override`
`my.apk` 将被替换为已签名的版本
验证签名。
`jarsigner -verify my.s.apk`
### 发布
新版本由 CI 代理自动发布到 GitHub。
只需将新的版本标签推送到 `master` 即可:
```
git tag -a 1.0 -m 1.0
git push --tags origin master
git push --tags remote master
```
### 许可证
在 Apache 2.0 许可证下发布(与 Android 的 [SignApk.java](https://github.com/android/platform_build/blob/master/tools/signapk/SignApk.java) 相同)。
### 基于以下 AOSP 4.1.1 文件和源码
```
https://github.com/android/platform_build/blob/master/tools/signapk/SignApk.java
http://androidxref.com/4.1.1/xref/build/tools/signapk/
http://androidxref.com/4.1.1/xref/build/tools/signapk/test/run
http://androidxref.com/4.1.1/xref/cts/tests/assets/otacerts.zip
http://androidxref.com/4.1.1/xref/external/quake/tools/packagesharedlib#11
http://androidxref.com/4.1.1/raw/build/target/product/security/testkey.pk8
http://androidxref.com/4.1.1/xref/build/target/product/security/
```
以下命令是等效的。
`sign my.apk`
`java -classpath sign.jar orig.SignApk testkey.x509.pem testkey.pk8 my.apk my.s.apk`
`java -jar SignApk.jar testkey.x509.pem testkey.pk8 my.apk my.s.apk`
### 类似项目
由 Panxiaobo 开发的 [ApkSign](http://code.google.com/p/dex2jar/source/browse/dex-tools/src/main/java/com/googlecode/dex2jar/tools/ApkSign.java)。dex2jar 的 ApkSign 有许多依赖项,无法放入单个源文件中。虽然 `ApkSign` 这个名字与 `apks` 相似,但本项目未使用任何来自 dex2jar 的代码。
由 Panxiaobo 开发的 [Tiny Sign](http://code.google.com/p/tiny-sign/)。可以在 Android 上运行的简单 jar 签名工具。
标签:Android安全, Android开发, AOSP, APK打包, APK签名, Cutter, jarsigner, JAR签名, Java工具, JS文件枚举, pem, pk8, SignApk, 云资产清单, 代码签名, 域名枚举, 应用安全, 开发辅助, 数字证书, 测试证书, 目录枚举, 移动安全, 移动应用安全, 自动签名工具, 逆向工程