当我尝试上传到 google Play 商店时,Cordova 构建和签名错误,没有 v2 签名
Cordova build and signing error when I try to upload to google play store, no v2 signature
我正在尝试将我签名的 apk 上传到 google Play 商店
错误信息是:
Error de apksigner: ERROR (Jar signer CERT.DSA): No APK Signature
Scheme v2 signature from this signer ERROR (APK Signature Scheme v2
signer #0): No JAR signature from this signer
我的 build.json 文件中有密钥库信息
密钥库创建于 Visual Studio 2015
我用
创建了 apk
cordova build android --release
apk 文件在我的 android phone 中运行良好,我应该如何为 google 游戏商店构建一个 apk?
这表明 APK 的 JAR 签名中的签名证书与 APK 的 APK 签名方案 v2 签名中的签名证书不匹配。这通常是由非标准签名工具引起的,这些工具在重新签名时无法去除现有(通常是调试)签名。
这样的 APK 可以正常安装,因为 Nougat 之前的 Androids 只能看到 JAR 签名,而 Nougat 和更新的 Androids 将忽略此 APK 的 JAR 签名(因为有一个 APK 签名方案v2 签名)。但是,当安装了此 APK 的牛轧糖前 Android 升级到牛轧糖或更新版本时,您将 运行 遇到问题。对此 APK 的更新将被拒绝,因为它们将被视为使用不同的证书签名。 Play 正在努力避免这种情况。
要排除故障,请尝试 运行ning:
apksigner verify -v --print-certs --max-sdk-version 23 my.apk
apksigner verify -v --print-certs --min-sdk-version 24 my.apk
第一个命令将输出 pre-Nougat Androids 所见的签名证书。第二个命令将输出 Nougat 和更新的 Androids 所见的签名证书。这可能会让您了解哪些签名证书是错误的。
如果你可以 运行 apksigner,请尝试使用它来签署你的 apk。
apksigner sign --ks yourkeystore.keystore yourapk.apk
系统将提示您输入密钥库密码。
之后,您可以使用
检查签名
apksigner verify -v yourapk.apk
确保它将 return:
Verifies
Verified using v1 scheme (JAR signing): true
Verified using v2 scheme (APK Signature Scheme v2): true
如果没问题,您可以将已签名的 APK 上传到 Play 商店。
我正在尝试将我签名的 apk 上传到 google Play 商店
错误信息是:
Error de apksigner: ERROR (Jar signer CERT.DSA): No APK Signature Scheme v2 signature from this signer ERROR (APK Signature Scheme v2 signer #0): No JAR signature from this signer
我的 build.json 文件中有密钥库信息
密钥库创建于 Visual Studio 2015
我用
创建了 apkcordova build android --release
apk 文件在我的 android phone 中运行良好,我应该如何为 google 游戏商店构建一个 apk?
这表明 APK 的 JAR 签名中的签名证书与 APK 的 APK 签名方案 v2 签名中的签名证书不匹配。这通常是由非标准签名工具引起的,这些工具在重新签名时无法去除现有(通常是调试)签名。
这样的 APK 可以正常安装,因为 Nougat 之前的 Androids 只能看到 JAR 签名,而 Nougat 和更新的 Androids 将忽略此 APK 的 JAR 签名(因为有一个 APK 签名方案v2 签名)。但是,当安装了此 APK 的牛轧糖前 Android 升级到牛轧糖或更新版本时,您将 运行 遇到问题。对此 APK 的更新将被拒绝,因为它们将被视为使用不同的证书签名。 Play 正在努力避免这种情况。
要排除故障,请尝试 运行ning:
apksigner verify -v --print-certs --max-sdk-version 23 my.apk
apksigner verify -v --print-certs --min-sdk-version 24 my.apk
第一个命令将输出 pre-Nougat Androids 所见的签名证书。第二个命令将输出 Nougat 和更新的 Androids 所见的签名证书。这可能会让您了解哪些签名证书是错误的。
如果你可以 运行 apksigner,请尝试使用它来签署你的 apk。
apksigner sign --ks yourkeystore.keystore yourapk.apk
系统将提示您输入密钥库密码。 之后,您可以使用
检查签名apksigner verify -v yourapk.apk
确保它将 return:
Verifies
Verified using v1 scheme (JAR signing): true
Verified using v2 scheme (APK Signature Scheme v2): true
如果没问题,您可以将已签名的 APK 上传到 Play 商店。