Nab*_*bzi 2 android sign apk android-studio
在文档中,有关于签名 v3 的解释:https : //source.android.com/security/apksigning/v3
但是,当我尝试使用 Build>Generate signed apk/bundle 在 android studio 中签署我的应用程序时,我可以只选中 v1(jar 签名)和 v2(完整 apk 签名)的复选框,并且没有 v3 签名的选项。
如何使用签名方案 v3 签署我的应用程序?
谢谢你。
Ayo*_*hia 11
截至今天,Android Studio 通过 Android Gradle Plugin 4.2 支持 v3 和 v 4 要在构建中启用其中一种或两种格式,请将以下属性添加到模块级 build.gradle 或 build.gradle.kts 文件中:
android {
...
signingConfigs {
config {
...
enableV3Signing = true
enableV4Signing = true
}
}
}
Run Code Online (Sandbox Code Playgroud)
正如@Pierre 所说,Android 工作室不支持创建 v3 方案验证的释放 apk。
为此,我们需要使用命令行手动创建已签名的构建。
请找到创建 v3 方案签名构建的步骤,
选择 build-tools\29.0.2 或更高版本。
注意:您可以在 SDK 位置中找到 build-tools 文件夹。
\Users\AppData\Local\Android\Sdk\build-tools\29.0.2
Zipalign - 对齐未签名的 APK
zipalign -v -p 4 app-production-debug.apk my-app-unsigned-aligned.apk
笔记:
app-production-debug.apk - a. 您通过 Build-> Build Bundles(s)/APK(s)-> Build APK(s) 从 Android Studio 创建的 Apk 文件
my-app-unsigned-aligned.apk - 该文件将在同一目录中创建(您也可以定义您的路径)。
Apksigner - 使用您的私钥签署您的 APK
apksigner sign --ks release-keystore.jks --out my-app-release.apk my-app-unsigned-aligned.apk
注意:release-keystore.jks - 我们在 build.gradle 文件中配置的密钥库文件
android {
signingConfigs {
production {
storeFile file('release-keystore.jks')
storePassword 'XXXX'
keyAlias = 'AAAAA'
keyPassword 'XXXX'
}
}
buildTypes {
release {
...............
signingConfig signingConfigs.production
}
}
}
Run Code Online (Sandbox Code Playgroud)
湾 my-app-release.apk - 签名发布版本将在同一目录中生成(您也可以定义您的路径)。
apksigner verify --verbose my-app-release.apk
您可以看到在发布 apk 中验证的方案。
验证
使用 v1 方案验证(JAR 签名):true
使用 v2 方案验证(APK 签名方案 v2):true
使用 v3 方案验证(APK 签名方案 v3):true
| 归档时间: |
|
| 查看次数: |
5370 次 |
| 最近记录: |