android签名v2加固,加固后手动进行v2签名的问题
时间: 2023-09-13 07:03:08 浏览: 165
对于已经进行了 Android V2 签名加固的 APK,如果需要手动进行 V2 签名,需要先将 APK 中的 V2 签名部分移除,然后再进行签名。具体步骤如下:
1. 使用 apksigner 工具查看 APK 的签名信息,可以通过以下命令查看:
```
apksigner verify --verbose --print-certs myapp.apk
```
如果 APK 包含 V2 签名,会输出类似以下信息:
```
Verifies
Verified using v1 scheme (JAR signing): true
Verified using v2 scheme (APK Signature Scheme v2): true
Number of signers: 1
```
2. 使用 zipalign 工具将 APK 对齐,可以通过以下命令对 APK 进行对齐:
```
zipalign -v 4 myapp.apk myapp-aligned.apk
```
3. 使用 apksigner 工具移除 APK 的 V2 签名部分,可以通过以下命令进行:
```
apksigner remove-signing-cert myapp-aligned.apk
```
4. 使用 jarsigner 工具对 APK 进行 V2 签名,可以通过以下命令进行:
```
jarsigner -verbose -sigalg SHA256withRSA -digestalg SHA-256 -keystore my-release-key.keystore myapp-aligned.apk alias_name
```
其中,my-release-key.keystore 是你的密钥库文件,alias_name 是你的密钥库别名。
5. 使用 apksigner 工具再次验证 APK 的签名信息,可以通过以下命令进行:
```
apksigner verify --verbose --print-certs myapp-aligned.apk
```
如果 APK 包含 V2 签名,会输出类似以下信息:
```
Verifies
Verified using v1 scheme (JAR signing): true
Verified using v2 scheme (APK Signature Scheme v2): false
Number of signers: 1
```
阅读全文