假设我有一个ID为com.StackOverflowExample.MyQuestion的Cordova应用程序,我使用CLI(cordova create
)创建了Cordova 3。我为我的应用添加了iOS和Android平台,并已将应用程序提交给Apple和Google Play。但是,现在,在将我的应用程序提交到Play之后,我似乎错误地将密码存放在我用来签署APK文件的密钥库中。我已经尝试了一切,我无法恢复它。
由于Google Play不允许我使用与之前由不同密钥库签名的APK相同的应用ID来签署提交给Play的后续APK,因此我知道我需要创建一个新的应用ID并在Android中重新开始。我意识到这将需要我的用户下载一个新的应用程序,但我现在别无选择。
我想避免的是,将此问题泄漏到Apple中,我已经创建了所有证书,配置文件,密钥,签名请求等,并上传了一个包含标识符的IPA。我提交给Google Play的第一张APK的应用ID。
默认情况下,使用CLI时,Cordova会使用您在运行cordova create
时提供的单个应用ID添加您指定的平台。
我想知道的是:在运行cordova platform add
时,是否可以在自定义应用ID下添加新平台,以及因此,让不同的平台在同一个Cordova应用程序中具有不同的应用程序ID?
答案 0 :(得分:44)
现在内置于CLI(最后):
在你的config.xml文件中 -
示例:
<widget
android-packageName="com.example.android"
ios-CFBundleIdentifier="com.example.ios">
来源:
答案 1 :(得分:-2)
是的,你可以这样做。它们有更多的选择,这取决于你如何构建你的Android应用程序(你如何创建你的apk)。
如果你使用cordova创建apk,首先你需要解码你的apk:
apktool d <apkname>.apk <directory to decode>
e.g:
apktool d your.apk decodedir
更改AndroidManifest.xml中的package =“com.StackOverflowExample.MyQuestion”字符串。
对你的apk进行编码:
apktool b <directory> <new apk name>
e.g:
apktool b testdir/ your.repacked.apk
如果您使用任何Android开发人员工具创建apk,则可以更改相应xml文件(AndroidManifest.xml)中的ID,并构建应用程序。