What does bundle identifier mean in an iOS project?

According to Apple docs:

A bundle identifier lets iOS and macOS recognize any updates to your app. Your bundle ID must be registered with Apple and be unique to your app. Bundle IDs are app-type specific (either iOS or macOS). The same bundle ID cannot be used for both iOS and macOS apps.

Edit

Since Xcode 11.4, you can use same bundle identifier for both iOS and macOS app if you want to support universal purchase feature.

From Release Note

Xcode 11.4 supports building and distributing macOS apps as a universal purchase. To distribute your macOS app as a universal purchase, specify the same bundle identifier as your iOS app in the Xcode template assistant when creating a new project. If you have an existing project, edit its bundle identifier in the Project Editor.


The bundle identifier is the unique string that identifies your application to the system. This compares to the display name (namespaces are usually prefixes in frameworks), which is what iOS uses to show the name of your app on the springboard.

Bundle identifiers are usually (not always) written out in reverse DNS notation (I.e com.myCompany.myApp).

Tags:

Ios