我们有一个外部供应商,该供应商为我们的组织开发了一个android应用。发行应用商店时,我们希望用我们的组织签名而不是供应商签名对apk进行签名。重新签名android apk的最佳建议是什么?
答案 0 :(得分:1)
我的建议是从发布分支自己构建或签名,或使用代码的提交哈希(由外部供应商的质量检查小组验证)。 借助Android项目中对gradle的支持,设置一个小的脚本块非常简单,该脚本块将使用右键对apk进行签名。 例如,在我们的项目中,我们创建了这样的属性文件
ANDROID_KEYSTORE_LOCATION=~/.android/debug.keystore
ANDROID_KEYSTORE_PASSWORD=android
ANDROID_KEYSTORE_ALIAS=androiddebugkey
ANDROID_KEYSTORE_ALIAS_PASSWORD=android
在内部构建时,可以将上述各行中的值交换为发布键,而无需对gradle脚本进行任何修改。当然,供应商必须在gradle构建脚本中进行更改才能读取此文件。
答案 1 :(得分:0)
重新签名APK会删除以前的签名,因此它将按您期望的方式工作。
建议使用apksigner
(作为Android SDK的一部分发布),它提供了更安全的签名算法来对APK进行签名。替代方法是jarsigner
,但是Android设备验证签名的速度较慢(因此安装需要花费更多时间),而且也不安全。