Change bundle identifier in Xcode when submitting my first app in IOS

I'm trying to submit my first app in iOS. I have entered iOS Provisioning Portal and I am about to create an app ID.

Lets say that I name my bundle identifier:

com.mycompany.appdemo

Then going to Xcode and in the summary section I want to change the bundle identifier.

But I cannot erase what is being written there, only the start of it. The name of my app is in grey color and I cannot delete it or change it.

So I see in grey color somethng like this App-Demo which is the name of the project in the left side.

My question is this: Is it a problem? Do I have to create a new app id named com.mycompany.App-Demo or something else?

Here is a picture also. enter image description here As you can see I can only edit the first part.


Solution 1:

By default, Xcode sets the bundle identifier to the bundle/company identifier that you set during project creation + project name.

Project Creation - Bundle/Company Identifier + Product Name

This is similar to what you see in the Project > Summary screen.

Project > Summary

But you can change this in the Project > Info screen. (This is the Info.plist.)

Project > Info

Solution 2:

I know that its late but it might be helpful for people who need to change the Bundle Identifier of the app. In the finder go to the project folder:

the project file --> Right click on your project file '*.xcodeproj' 

enter image description here

--> choose 'Show Package Contents' 
--> Double click to open 'project.pbxproj' file 

enter image description here

--> find 'productName = NAME_YOU_WANT_TO_CHANGE' in the 
    '/* Begin PBXNativeTarget section */'

The ${PRODUCT_NAME:rfc1034identifier} variable will be replaced with the name you have entered and new Bundle Identifier will be updated to what you need it to be.

Solution 3:

Here's the answer from Apple's official documentation, just tried, it's working.

Setting the Bundle ID

The default bundle ID in your Xcode project is a string formatted as a reverse-domain—for example, com.MyCompany.MyProductName. To create the default bundle ID, Xcode concatenates the company identifier with the product name you entered when creating the project from a template, as described in Setting Properties When Creating Your Xcode Project. (Xcode replaces spaces in the product name to create the default bundle ID.) It may be sufficient to replace the company identifier prefix in the bundle ID or you can replace the entire bundle ID. For example, change the company identifier prefix to match your company domain name or replace the entire bundle ID to match an explicit App ID.

For Mac apps, ensure that every bundle ID is unique within your app bundle. For example, if your app bundle includes a helper app, ensure that its bundle ID is different from your app’s bundle ID.

Follow these steps to change the bundle ID prefix in the General pane in the project editor.

To set the bundle ID prefix

  1. In the project navigator, select the project and your target to display the project editor.

  2. Click General and, if necessary, click the disclosure triangle next to Identity to reveal the settings.

enter image description here

  1. Enter the bundle ID prefix in the “Bundle Identifier” field.

To set the bundle ID

  1. In the project navigator, select the project and your target to display the project editor.

  2. Click Info.

  3. Enter the bundle ID in the Value column of the “Bundle identifier” row.

enter image description here

If you're feeling interested in reading more, please check APP Distribution Guide from Apple.

Solution 4:

Just change Product Name in your project's build settings. This will change the bundle identifier with no need to manually touch xcode configuration files.