I am working on getting the facebook API working for iOS, and the FB registration page requires the Bundle ID of the project. How can I get this information? I read something about getting it at run time, but is there a way to get Xcode to tell me this information, or is it held in a plist somewhere. I am not using the default bundle id, I remember setting it while I created the project.

1

7 Answers

If you are trying to get it programmatically , you can use below line of code :

objective C

NSString *bundleIdentifier = [[NSBundle mainBundle] bundleIdentifier]; 

Swift 3.0 :

let bundleIdentifier = Bundle.main.bundleIdentifier 

It will work for both iOS and Mac apps Good luck..

1

For those using Xcode >=7: select your target and click the General tab. Bundle Identifier is found under Identity.

2

In Xcode 4, select your project, then your target (you should have only one) and then the 'Info' tab. You should be able to see the bundle identifier there.

2

Details

  • Xcode 11.2.1 (11B500), Swift 5.1

Programmatically

Solution 1

let bundleId = Bundle.main.bundleIdentifier 

Solution 2

let bundleId = Bundle.main.infoDictionary?["CFBundleIdentifier"] as? String 

From Xcode

Solution 1

enter image description here

Solution 2

enter image description here

A bundle ID or bundle identifier identifies an application in Apple's ecosystem. Apple advice to use reverse domain name(reverse DNS notation) to create it.

For example:

com.companyname 

Bundle identifier is a string in Info.plist[About] which is required for any Bundle

To set it using Xcode

//Info.plist Bundle identifier //by default it points on `$(PRODUCT_BUNDLE_IDENTIFIER)` which is you can setup in Build Settings //Build Settings the mirror of Target Settings Build Settings -> Product Bundle Identifier(PRODUCT_BUNDLE_IDENTIFIER) //Target Settings the mirror of Build Settings General -> Bundle Identifier 

When you setup a new target you find

Bundle Identifier = Organization Identifier + ProductName 

Organization Identifier is not take into account by Build Settings

[ProductName]

To get it programmatically

//Objective-C [[NSBundle mainBundle] bundleIdentifier]; //Swift Bundle.main.bundleIdentifier 

[Vocabulary]

You can find out and change from supporting file=> info.plist => Bundle identifier

It is generally DNS form ex. com.companyname.appname

enter image description here

If you're build a library, this may be problematic - it's applications that have a bundle ID. However, your can probably query this programatically using [NSBundle mainBundle] and then [NSBundle bundleIdentifier]

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy