Search code examples
iosprovisioning-profilesoftware-distributionapp-idbundle-identifier

Can (and should!) a beta / developer's release of an app use the same Apple App ID as the production version?


In our organization, we have an app (Cordova / Ember) that we deploy within our organization to a few dozen iPads.

I'm trying to add a ‘beta channel’ to build a development / debugging release, and deploy that to only a few iPads, to test new features, or diagnose problems. Apple requires that each ‘iOS App Development’ provisioning profile include the app ID that it will be used to deploy:

enter image description here

Well, we already have an App ID for our production release: com.ourwebsite.OurApp.

Should I use that same App ID for the beta release, or should I generate a new one, like com.ourwebsite.OurApp.beta? Can I give a different iOS app, distributed through MDM, the same App ID? Can I build it with a different ‘name’ to show up on the homescreen (“OurApp (Beta)”)? What is the best practice, here?


Solution

  • It depends on your practice. If you have a different App ID it will be a completely different App.

    • 2 apps. Your beta user will have both the official one and the beta one on their phone.
    • You need to configure the settings on both App IDs. Ex: APNS (Push), In-app purchase, Group ID, etc...

    I would personally choose one AppID. It's easier on the development practice and Apple supports sandbox testing as well. You can change the name to AppName(beta) in your build script or do it manually for the time being. Your user will be able to download the official one anytime in the AppStore if they want to go back to the stable one.