关于辞职apk的建议

Recommendations on resigning apk

我们有一个外部供应商为我们的组织开发 android 应用程序。我们希望在将应用发布到 Play 商店时使用我们的组织签名而不是供应商签名对 apk 进行签名。关于重新签署 android apk 的最佳建议是什么?

重新签署 APK 将删除以前的签名,因此它会按您预期的方式工作。

建议使用 apksigner(作为 Android SDK 的一部分发布),它提供更安全的签名算法来签署 APK。替代方案是 jarsigner,但 Android 设备验证签名的速度较慢(因此安装需要更多时间)并且不那么安全。

我的建议是从发布分支或使用代码的提交哈希(由外部供应商的 QA 团队验证)自行构建和签名。 借助 Android 项目中的 gradle 支持,设置一个小脚本块非常简单,该脚本块将使用右键对 apk 进行签名。 例如,在我们的项目中,我们创建了一个这样的属性文件

ANDROID_KEYSTORE_LOCATION=~/.android/debug.keystore
ANDROID_KEYSTORE_PASSWORD=android
ANDROID_KEYSTORE_ALIAS=androiddebugkey
ANDROID_KEYSTORE_ALIAS_PASSWORD=android

您可以在内部构建时将以上行中的值交换为您的发布密钥,而无需对 gradle 脚本进行任何修改。当然,供应商必须更改 gradle 构建脚本才能读取此文件。