Property List Key

CFBundleIdentifier

A unique identifier for a bundle.

Required.

Details

Name
Bundle identifier
Type
string

Discussion

A bundle ID uniquely identifies a single app throughout the system. The bundle ID string must contain only alphanumeric characters (A-Z, a-z, and 0-9), hyphens (-), and periods (.). The string should be in reverse-DNS format. Bundle IDs are case sensitive.

The operating system uses the bundle ID to identify the app for which a given preference applies. Similarly, Launch Services uses the bundle ID to locate an app capable of opening a particular file. The bundle ID also validates an app’s signature.

watchOS Apps with Companion iOS App Considerations

For watchOS apps that have a companion iOS app in the same project, the embedded WatchKit app and WatchKit extension targets must have the same bundle ID prefix as the iOS app. The WatchKit app must have the format [Bundle ID].watchkitapp, and the WatchKit extension must have the format [Bundle ID].watchkitextension.

If you change the iOS app's bundle ID, also change the WatchKit app's WKCompanionAppBundleIdentifier key and the WatchKit extension's WKAppBundleIdentifier key to match.

See Also

Identification

property list key WKAppBundleIdentifier

The bundle ID of the watchOS app.

property list key WKCompanionAppBundleIdentifier

The bundle ID of the watchOS app’s companion iOS app.