How should my "App IDs" section look like?

10,581

Solution 1

I would do this:

  • App1 and App2 should use something like ABCDE12345.com.myCompany.AppName
  • App3 should use ABCDE12345.com.myCompany.App3
  • App4 should use ABCDE12345.com.myCompany.App4
  • App5 should use ABCDE12345.com.myCompany.App5

In other words, share the app id between app1 and app2 since you want to share data. During development use a generic app id like ABCDE12345.com.myCompany.* but for distribution each independent app should have it's own unique app id.

Solution 2

Apple recommends using a reverse-domain name style string (i.e., com.domainname.appname). It cannot contain an asterisk (*).

Ordinary Domain notation example:

appName.MobilityFin.CompName.com

Reverse Domain notation example:

com.CompName.MobilityFin.appName

So we may name it like the following:

  • com.yourCompanyName.mobilityFinance.appname

  • com.yourCompanyName.mobilityHR.appname

  • com.yourCompanyName.mobilityTransaction.appname

  • com.yourCompanyName.mobilityAccounts.appname

Solution 3

Irene, I use specific App IDs (com.thinkfun.rushhour, etc.) for Ad Hoc distribution, but stick to a wildcard ID for development in debug mode. This allows me to use the same profile for every app on my device, even example code I've downloaded through the Developer Center, without worrying about the App ID at all.

Further, f you want to use push notifications, In App Purchases, or Game Center, you'll have to use a specific app ID for each version, rather than a wildcard. Check out the iOS Provisioning Portal page for more information.

I DO share one Bundle Seed ID between all my apps (the ABCDE12345 in your example), as this keeps things simple and convenient, and doesn't restrict any of the above features. Best of luck!

Share:
10,581
phi
Author by

phi

Senior (almost 40 years old!) iOS Engineer, trying to be helpful.

Updated on June 04, 2022

Comments

  • phi
    phi almost 2 years

    I know there are many other questions out there, but I can't seem to find exactly what I want.

    Let's say that I'm having 5 apps right now:

    • App1 and App2 are the full and lite version of the same myApp, and I want to share data between them
    • App3 is independent but using in-app purchases and
    • App4 and App5 are two other, independent apps.

    Should I just have a generic App ID, like ABCDE12345.* with which I can sign apps like App4 and App5 (and all the new ones in the future, that don't need IAP etc), then ABCD123456.myCompany.App3 for App3 and then ABC1234567.myCompany.myApp.* for App1 and App2?

    Does this sound the right way, or I get it totally wrong? Or, in different words, how does your App IDs look like? :)

    Thanks for any insight!

  • phi
    phi over 13 years
    Thanks for the answer. Is there any specific reason for using a uiniqe app id for every distribution build?
  • theChrisKent
    theChrisKent over 13 years
    One reason we do this is for AdHoc Distribution. Since a provisioning profile is made of your Distribution Certificate, your App ID and (for AdHoc) Device ID(s). A unique App ID allows the provisioning profile to be unique per app and you can distribute knowing that the expiration date and access is controlled per app (rather than your whole suite of apps).
  • theChrisKent
    theChrisKent over 13 years
    However, this is not a strict requirement for App Store Distribution. We just consider it best practice for all forms of distribution and this keeps it easy for us. If you don't have Ad Hoc distribution needs (beta testing, submitting to clients, etc.) then you may not need anything more than a wildcard App ID.