Cordova: Is it possible to have different app IDs for android and ios platforms?

Let’s say I have a Cordova application with an id of com.StackOverflowExample.MyQuestion, which I created with Cordova 3 using the CLI (cordova create). I have added iOS and Android platforms for my app, and have submitted the app to Apple and to Google Play. Now, however, after submitting my app to Play, I seem to have misplaced my password for the keystore I used to sign my APK file. I have tried everything, and there is no way I will recover it.

Because Google Play does not allow me to sign a subsequent APK submitted to Play under the same app ID as a prior APK signed by a different keystore, I know I need to create a new app ID and start over in Android. I realize this will require my users to download a new application, but I have no other choice at this point.

  • How to access image from native URI (assets-library) in Cordova for iOS
  • Offline tile caching using MapBox Android SDK
  • audio format for iOS and Android
  • PhoneGap Notification.Alert not working
  • Debugging Cordova (PhoneGap) code on iOS
  • cordova-plugin-camera show camera options based on the users phone language
  • What I would like to avoid, is having this problem spill over into Apple, where I have already created all of my certificates, provisioning profiles, keys, signing requests, etc. and uploaded an IPA with a bundle identifier the same as the app ID of the first APK I submitted to Google Play.

    By default, when using the CLI, Cordova adds whatever platforms you specify using a single app ID, which you supply when you run cordova create.

    What I’d like to know is: Is it possible, when running cordova platform add to add a new platform under a custom app ID, and, as a result, to have different platforms have different app IDs within the same Cordova application?

    2 Solutions Collect From Internet About “Cordova: Is it possible to have different app IDs for android and ios platforms?”

    This is now built into CLI (finally):

    In you your config.xml file-

    Example:

    <widget
        android-packageName="com.example.android"
        ios-CFBundleIdentifier="com.example.ios">
    

    Source:

    https://github.com/apache/cordova-lib/blob/master/cordova-common/src/ConfigParser/ConfigParser.js#L99

    Yes, you can do that. There is more option for them, it’s depends on how do you build your Android application (how do you create your apk).

    If you create the apk using cordova, first you have to decode your apk:

    apktool d <apkname>.apk <directory to decode>
    e.g: 
    apktool d your.apk decodedir
    

    Change the package=”com.StackOverflowExample.MyQuestion” string in AndroidManifest.xml.

    Encode your apk:

    apktool b <directory> <new apk name>
    e.g:
    apktool b testdir/ your.repacked.apk
    

    If you create the apk using any Android developer tools, you can change the id in the appropriate xml file (AndroidManifest.xml), and build the app.