使用.p12签名apk

时间:2013-11-07 06:47:15

标签: android android-keystore

我要更新我在Google PlayStore上提供的客户端应用。 我只有一个带密码的 .p12 文件,而不是 .keystore 文件。

我想知道是否可以将更新后的版本发布到Google PlayStore。

对不起基本问题。我很困惑。提前感谢您的帮助。

4 个答案:

答案 0 :(得分:21)

您只需将p12文件转换为jks:

即可

创建一个空的JKS商店

keytool -genkey -alias anyname -keystore yourcertificate.jks
keytool -delete -alias anyname -keystore yourcertificate.jks

将yourcertificate.p12导入yourcertificate.jks

keytool -v -importkeystore -srckeystore yourcertificate.p12 -srcstoretype PKCS12 -destkeystore yourcertificate.jks -deststoretype JKS

您还可以查看以下链接: http://shib.kuleuven.be/docs/ssl_commands.shtml#keytool

答案 1 :(得分:4)

这些命令对我有用:

keytool -importkeystore -srckeystore yourp12file.p12 -destkeystore keystorefile.keystore -srcstoretype pkcs12

答案 2 :(得分:2)

您将使用标志-商店类型PKCS12

首先,在此ex上使用其别名创建您的密钥库 mykeystore myalias ]

keytool -genkey -alias myalias -keystore mykeystore -storetype PKCS12 -keyalg RSA -validity 3650 -keysize 2048

只需签署您的APK

jarsigner -keystore mykeystore my.apk myalias

如果需要对齐应用,请先使用 zipalign命令,然后对对齐的应用进行签名,如下所示:

zipalign -f -p 4 my.apk myapk-aligned.apk

jarsigner -keystore mykeystore my-aligned.apk myalias

zipalign

上使用的标记

-f 覆盖现有的外部文件

-p 页面对齐存储的共享对象文件

-v 如果要查看详细的日志,请使用


-有效性3650 用于使签名在10年后失效

答案 3 :(得分:0)

不,您不能使用.p12文件将应用程序上传到Google PlayStore。你需要.keystore文件。

P12 file(扩展名为.p12的文件)是一种证书文件(个人信息交换文件)。 Packager for iPhone使用这种类型的证书来构建iPhone应用程序。您将从Apple收到的开发人员证书转换为此证书形式。因此,.p12文件适用于iOS开发。

另一方面,您可以尝试在计算机上进行系统还原,直到您之前没有放错或删除密钥的日期。

您也可以查看:

  1. Android Keystore File Lost

  2. Lost my keystore for uploaded app on android market