jarsigner:签名者的证书是自签名警告

jarsigner: the signer's certificate is self signed warning

我正在向 Aptoide 应用商店发布应用。他们给了我一个空白的 apk,让我使用我的主应用程序中使用的相同密钥库对其进行签名。我使用命令和 jarsigner 对应用程序进行了签名。

应用签名成功,但显示警告:

the signer's certificate is self-signed

我搜索了一下,但大多数可用的解决方案都是针对 SSL 证书的,而不是 apk 签名。

tldr;它对 Android 个应用没有影响。

首先,您应该使用 apksigner 而不是 jarsigner 对您的 APK 进行签名:apksigner 是专门为 Android 创建的,用于对 APK 进行签名并且效率更高,虽然 jarsigner 旨在签署任何 JAR,因此您看到的某些消息在 Android 世界中没有多大意义。

要解释此特定消息,您必须了解在创建证书时(在密钥库中),证书也经过加密签名。如果由“可信实体”签名,看到此证书的人可以验证该证书是由您有效创建的。但是,Android 不验证证书 的签名(注意:确实 验证 的签名APK), 所以这个签名是没用的。因为证书需要签名,所以最简单的就是用签发证书的私钥来签名:所以叫自签名。