What's the difference between an Xcode wild card and a com.domain.name App ID?
Asked Answered
H

2

6

These have baffled me ever since I signed up for developers account!

I Need to Know which one to use when I submit my app to the store? enter image description here

Also in target > build settings > code signing > provisioning Profile are those values as shown in the image, which one do I pick to submit my app?

The com.domain.name or wild card?

And lastly what in the heckaroo is the com.domain.name used for and what's its importance?

Holds answered 28/4, 2014 at 19:56 Comment(0)
R
5

Wild card ids are for development purposes only. Suppose you're working on an app, and don't know what its final name will be. You use the wildcard app id until you've named it.

Once you've named it, you do the com.domain.name one for submission.

These must be unique across the entire iOS ecosystem, which is why they work this way. Provided no two companies have the same name and product name, there will be no collisions.

Retrieve answered 28/4, 2014 at 20:5 Comment(0)
C
1

The wildcard app ID (defined as *) can be used for any bundle identifier (the one you set in Xcode).

If you app conforms to the following (taken from the Registering an App ID page in the Certificates, Identifiers & Profiles section of the developer portal):

If you plan to incorporate app services such as Game Center, In-App Purchase, Data Protection, and iCloud, or want a provisioning profile unique to a single app, you must register an explicit App ID for your app.

Then you need to specify an explicit App ID - the com.domain.name you mentioned. This must match the bundle identifier of your app you set in Xcode.

The App ID is tied to the developer account (I believe it can be transferred) and this is unique per application. For example, say I set up an app with the App ID of com.stackoverflow.rich, you could then not use that App ID.

The App ID must be an explicit App ID when finally submitting the app to the App Store.

When releasing for the App Store you need to set your App Store Distribution profile under Provisioning Profile -> Release. You can probably just press delete/backspace on the Code Signing Identity -> Release, and then the Automatic setting will pick up the correct certificate.

Whenever you use the Archive command (under Product), the Release build configuration is always used (unless you change it under the Scheme settings).

If you want more info about this have a read of the App Distribution Guide.

There's also a Technical Q&A on this topic as well.

Cherida answered 28/4, 2014 at 20:7 Comment(2)
thanks, I've already made both, can I change them? and furthermore can i change them to another language? if I change them to another language do I have to add the language in the app?Holds
As long as your bundle ID now matches your app ID you're fine. And what do you mean another language? They're identifiers, matching a web domain of that app for example - they don't really need to be localised.Cherida

© 2022 - 2024 — McMap. All rights reserved.