0

我有使用 DevExtreme 工具的 phonegap 项目。它与 phonegap cli-7.1.0 一起使用,并且工作正常。

现在我想升级到 cli-9.0.0。

我使用https://build.phonegap.com构建项目 通常,我在这里构建 ipa 文件,并使用 apk 作为模板编译 apk 以使用 DevExtreme 工具发布。

我创建了一个模板 apk,但是当我尝试在 DevExtreme 中使用它时,出现错误“错误构建 android 包索引超出范围。必须为非负数且小于集合参数名称的大小:索引”。

因此,我尝试使用https://build.phonegap.com直接编译 apk。 为此,我需要导入已用于在商店中发布应用程序的相同证书(对吗?)。我的证书是一个 p12 文件。

我尝试上传 p12 文件,但收到消息“错误:扩展 .p12 与预期不匹配(密钥库)”。好的,所以我用谷歌搜索将 p12 转换为“keystore”。我找到了这个命令行:

keytool -importkeystore -srckeystore android_certificate.p12 -srcstoretype pkcs12  -destkeystore C:\Program Files\Java\jre1.8.0_211\bin\xxx.jks -deststoretype jks -deststorepass xxx

这创建了一个 jks 文件,但是当我尝试将其上传到 build.phonegap 时,我收到了类似的消息:“错误:扩展名 .p12 与预期不匹配(jks)”。

那么,如何将我的 p12 证书转换为 build.phonegap 接受的证书并使用它来创建我的 apk 文件并发布它?

我的问题是应用程序已经发布,所以我必须使用相同的证书而不是新证书(对吗??)

4

1 回答 1

0

看来我找到了解决方案。使用此命令转换我的 p12 文件有效:

keytool -v -importkeystore -srckeystore android_certificate.p12 -srcstoretype PKCS12 -destkeystore myKey.keystore -deststoretype JKS

感谢这个问题

于 2019-08-10T07:20:13.173 回答