android - 使用不同的发布构建算法在 Play 控制台上上传应用程序

标签 android build release google-play-console

我已经使用签名算法 SHA-1 在游戏控制台中上传了一个应用程序,但现在我想使用算法 SHA-256 上传相同的应用程序。我尝试使用 SHA-256 算法上传发布版本,但它给出了签名错误。使用新签名算法上传应用程序应遵循哪些步骤?感谢您的帮助。

最佳答案

您在创建证书时(例如在 keytool 命令行中)或签署 APK 时是否使用了 SHA-1?

如果是前者,除了创建新应用程序之外您无能为力,因为证书无法在应用程序的整个生命周期内更改,以便在 Android 设备上成功更新。

如果是后者,那么我建议您使用 apksigner(Gradle 和 Android Studio 使用的)来签署您的 APK:它将使用适用于所有目标设备的最佳哈希算法. Android 并不总是支持 SHA-256,因此根据您设置的 minSdkVersion,一些用户可能会收到他们的设备无法验证其签名的 APK。这也取决于签名算法(例如 RSA、DSA 等)。所有这些逻辑都已集成到 apksigner 中,因此您无需考虑使用哪种算法:如果您的所有目标设备都支持它,它会自动选择 SHA-256。 如果您不使用 apksigner,Play 仍会验证您签署 APK 所用的算法是否适用于您的 minSdkVersion 的所有设备,否则将拒绝上传。

希望对您有所帮助。

关于android - 使用不同的发布构建算法在 Play 控制台上上传应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53591157/

相关文章:

android - 当我有一个字符串时,为什么 toast 输出中出现空白文本?

java - Android BroadcastReceiver onReceive 在 MainActivity 中更新 TextView

java - EditText 在 .getText() 上抛出 NullPointerException

gradle - 设置Gradle子项目的属性

c# - 准备要发布的源代码

svn - 更好的发布管理策略?

java - Android Activity 变量类型

java - Build project containing lib project 包含 lib project with ant

c - 构建失败 : libxml2. ./configure 和 make 之后未创建文件

python - 如何使用 Pygame 打包用 Python 制作的 Python 游戏?