How to set provisioning profile when making new target - ios

I have created my first ever iOS app. I am basically an android developer. and I know how to do things in android like the one I am trying to do in iOS
Right now I have made one app and I want to change a little and deliver it to my another client. For this I have to change only 4 things
URL
APP NAME
BUNDLE ID
SOME PASSWORD STRINGS
now as I have created a new target by following this tutorial, I have seen the red mark on provisioning profile. It says "NAME_MY_PROVISIONING PROFILE" has app ID com.mypreviousclient.bundle.identifier which does not match the bundle id of my new client
It clearly tells that the bundle id I just created is not inside my provisioning profile.
But I really do not know what to do now? What should I do now?

For changing bundle id in xcode for new app. You have to also create that bundle id in apple developer console. Here are the steps.
create bundle id in apple developer console.
Now you can create application in itune.
create certificates.
create provisioning profiles.
set them into xcode and run.
Happy coding.

Related

Cannot generate app-group provisioning profile or get one that matches

I have an iOS app with an app group to receive inbound images from other apps. I simply cannot get it to sign. I have gone through signing a bunch so the process is very familiar but I can't even get the group identifier to show up under provisioning in the developer center. Can someone help? Here is the scenario ->
I cannot create a provisioning profile for my app group group.com.xxxxxx.bookapp.
I have made a new app group identifier group.com.xxxxxx.bookapp.
I have added it to my app identifier in com.xxxxxx.bookapp under capabilities in the dev center, and selected group.com.xxxxxx.bookapp and it looks correct.
I have regenerated all my provisioning profiles.
The app will build fine until it gets to the share extension target and it says Provisioning profile "Provisioning Profile Name" has app ID "com.xxxxxx.bookapp", which does not match the bundle ID "com.xxxxxx.bookapp.shareextension".
I cannot generate a provisioning profile for "com.xxxxxx.bookapp.shareextension" because it does not show up in the lists of available id's in the developer portal when I try to create a new profile.
I cannot use wildcard because I have push notifications and the share extension will not allow it anyways
Ok so, it turns out you have to create a whole new app id that goes with your app group, add the same app group to it as your main target, then create a provisioning profile for it like it is its own app. Now I am able to publish like its two completely different apps, which is kinda is, just a bit convoluted and the docs don't really mention this.

An App ID with Identifier is not available. Please enter a different string

I've just enrolled in the Apple dev program, but when trying to create an APP ID in the Member center, I receive this message:
An App ID with Identifier is not available. Please enter a different
string.
Before enrolling, I was using the same account (but not part of the developer program), and building my app for my own phone.
I'm 200% sure this bundle ID is not taken by anyone else but me.
How is that possible in such case? Can XCode register an APP ID by itself ?
I also notice an app id called "XC Wildcard" which is defined for any id "*"
I'm really kind of lost, so any help would be really apreciated.
Thanks!
This happened to me and it is because I had accidentally assigned the App ID to my personal account instead of my team account because I had automatically manage signing ticked in XCode. The error message means the ID has been taken and can't be used on your team account now.
You need to remove the App ID from your personal account, however because this is a free account you don't have access to do this so you need to contact Apple Developer Support and request that the App ID is to be removed from your personal account.
I called and they sorted it whilst I was on the phone. I was then able to setup the App ID with my team account. Don't forget to ask them to delete all versions of the App ID, for example, if you also have a .dev and .staging version of the same ID.
This one looks weird but this worked for me.
At first I had an App ID with Name "My App" with identifier "com.mycompany.myapp". I got the same error
"An App ID with bundle identifier X is not available. Please enter a
different string"
when I tried to export. But then I changed my App ID's name to "XC com mycompany my app" and left everything as it as. It worked now.
I have another use case, check if your App ID contains 'ios' in it e.g.
com.domain.ios.MyApp
if so then you may need to remove it, this must be some recent change as I was able to register the App ID with ios earlier.
I am using Xcode 12.4. And I have been facing this issue with Free account. Now I added Bundle Id to my paid account. Went through so many answers but no luck.
Following steps solved my issue. May someone get help from this. thanks
Actual scenario so far I realized :
Main thing is when you build with Xcode then Bundle Id auto registered with account[free account]
Same Bundle Id is not working for new Paid account bcz of duplicacy
For free account it is not possible to remove app/Bundle Id from App Store Connect
So have to change Bundle Id for new Paid account.
If it was paid account then possible to remove Bundle Id from App Store Connect
Steps :
Sign with free account again on Xcode Team
Sync with Xcode which create provisioning profile to sync
Then change Bundle Id to com.domain.appnamefree and sync with free account again
That means apple auto registered with this Bundle Id for this free account
Once this change got applied, the real bundle id became free and available
Then delete the free account from Xcode account
Now add paid account to Xcode Team
Change Bundle Id to com.domain.appname
And sync again so that apple recognised this Bundle Id for this Paid account
You need delete all invalid provisioning profile from your Apple portal and create a new app id with bundleID like com.my.appname:
Apple has just updated their Dev Center CGU. It seems that the app extension bundleId is stricter.
if your app bundleId format is : com.my.app
your app extension bundleId now have to be : com.my.app.XXX
Creating new appID and provisioning profile fix the issue.
here is link for more details
https://forums.developer.apple.com/thread/15712
I have faced same problem like that 'An App ID with Identifier com.xxx.xxxx is not available. Please enter a different string'. I did removed all provisioning profiles from apple developer membercenter and removed account from XCode preference.
Afterward create new iOS development and distribution provision profiles manually. Download all via XCode and run... it working perfect and did export or upload next version to AppStore.
Please try this.
I got the same issue an app id with identifier is not available. please enter a different string. And i do this.
You have to create a new Provisioning Profile and the old provisioning profile which you are using delete it first And then create a new provisioning profile from whatever the Apple Developer account you are using.
Install your new Provisioning Profile and its working fine and you can archive the project easily.
It means what it states that someone has registered the same identifier already. Simply create a more unique string.
for me to solve the problem I changed my team to individual, from myusername(team), if you're an individual is what you should use, other wise if you're a company use your team.

How to remove iOS Team Provisioning Profile / AppID on Xcode?

I am new to Mac and I have to use it for developing Ionic hybrid app for iOS. I am using Mac 10.11 with Xcode 7.
Now, I have get my app ready and want to deploy it to app store. But I am having trouble with the App ID. In my Xcode, when I go to account, I can see Team Name list with 2 items. One is my name with Agent for iOS and Mac. The other one is my name (Personal Team) with Free for iOS and Mac.
The problem is in the Personal Team item, I have the provisioning profiles with the app ID I want to use for deploy into app store. Since it is already in here, I can’t create that app ID again in my developer account. I tried but I can’t find a way to remove it.
So, how can I remove that app ID / Provisioning Profile so that I can use it in my developer account?
Thank you.
The only way I manage to do that is to contact the customer support (Apple Developer Program Support), after few days and few back and forth they finally deleted the bundle id from my Personal Team and I was able to add it to my Developer Program (Agent) profile. I know this is not ideal but at least if you really want to use the same Bundle ID it worked for me.
The issue is not with App ID but Bundle ID that is unique in the AppStore.
Currently, you can't 'restore' Bundle ID in any way.
You can create another App ID with the same Name but different Bundle ID.
Solution: go to your other Developer Program, create new App, choose slight different Bundle ID and you are good to go.
Reference:
Apple Documentation
You can select your App ID in the Developer portal under iOS App IDs to edit and delete.
If you're referring to your iTunes Connect listing, you cannot remove your application listing. You can however use a different Bundle ID with the same App ID. Which, in turn, would solve your problem.
As for Provisioning profiles, you can edit and remove them in the Provisioning Portal.
#Alexandros Trepeklis suggested contacting Apple Developer Program Support; they may be able to help you remove the original app listing.
And as #Krodak mentioned, you should read 's documentation on the subject.
You can delete an App ID and Bundle ID on your own through the developer portal if you have not yet posted the app to iTunes Connect. The TL;DR is that you need to add a capability to your app to force Xcode to generate an explicit listing for your app on the portal. Once the listing is there, you can remove it (and all associated provisioning profiles and whatnots).
Step by step:
Add a capability, say push notifications, to your app.
Now log in to the developer portal. Go to Account > Certificates, IDs, & Profiles > App IDs. You should see the App ID prefixed with "XC"
Click on the App ID you want to delete and then click the Edit button.
Click Delete towards the bottom of the listing.
Confirm the delete. This should free up the App ID and Bundle ID for use with another team.

How to completely remove bundle id in iOS development?

How can I reuse the bundle ID I have created for the app ID? I even delete the associated app ID but the bundle ID still unavailable.Does it to say bundle ID couldn't be removed completely once created?
The bundle id can't be reused as exact. For example com.abc.xxx can be used only once. If you had created this app Id from one account, you can't create the same app Id from the other account. However, you will still be able to create a new one as com.abc.xxx1 like or so. There should be atleast 1 character difference in the app Id's
If you want to delete an app ID, follow these steps:
Open https://developer.apple.com and enter using your credentials.
Click on Identifiers under the Certificates, Identifiers & Profiles section.
Now click on the App ID you want to Delete.
Click on Remove next to Edit your App ID Configuration.
Again click on Remove in the confirmation message that opens.
I'm not sure what your exact scenario is, you didn't provide enough information to know that. However, I came across a similar problem which was as follows:
Some time ago I registered a new Apple Account and created an iOS app with it. I did not pay for that, i.e. the app could only ever be used for 7 days. I've never submitted that app to the app store. Nonetheless, the bundle identifier of the app was associated with that particular account.
Some time later I registered another Apple Account. This time with a payed subscription. When I attempted to sign the app I created with the first account, Xcode complained as follows:
Failed to register bundle identifier. The app identifier "xy" cannot be registered to your development team because it is not available.
and
No profiles for 'xy' were found. Xcode couldn't file any iOS App Development provisioning profiles matching 'xy'.
It seems that the bundle identifier gets strictly associated with the provisioning profile of the first account. The way to solve this is to delete that particular provisioning profile. You can do so by going to the following folder and deleting the corresponding file in that folder:
~/Library/MobileDevice/Provisioning Profiles/

Do i need a separate Distribution for each Apple AppStore submission?

I'm so confused -
after an entire day's struggle, i finally figured out how to submit my app to Apple via archiving & distributing from xcode.
... that was my free version
now i made my code changes, and on my pList file, i changed the Bundle Identifier to com.blah.mygame.pro instead of com.blah.mygame.lite
i also changed the Bundle name to be My Game Pro instead of My Game Lite
but now i'm confused - when i click on the project in Xcode, and i hit "Target" instead of "Project", i can't find my release/distribution profile! (my develop/debug profile) is still there.
if i were to click Project instead of Targets then i actually do see my previous distribution profile.
however, in my develloper portal, i had actually set my distribution profile to be linked up with the "com.blah.mygame.lite" identifier. was i not supposed to do this???
weirdly enough, when i made my distrubution profile earlier today, i say something like "mygame * -" or something that i coulda linked it to. but i just chose com.blah.mygame.lite without thinking
are you supposed to have multiple distribution profiles? one for every app? what i just want a lite and pro version?
** edit:
bonus points for this:
if i only needed 1 provisioning profile, (and since i messed up naming my previous provisioning profiles)... how do i rename all my distribution profiles without it interfering/messing up with my apps?? it's already submitted and awaiting approval
* EDIT # 2:
okay, i got both apps submitted with 2 separate distribution profiles.
however, is there any way that i can rename a distribution profiles while the app being submitted is still using it??
i had mistakenly named it "My Company Distribution Profile" when i should have named it "Distribution Profile for My Game Pro Version"
You have two options for fixing it:
Use a AppId like. com.blah.mygame.* . You can replace the * with any number of strings and use it for creating different application.
I won't recommend this approach, because the issue with this is you won’t be able to use push services or in-app purchases. You might not plan to use these services now, but if you change your mind, you won’t be able to change your app ID without creating a new app.
Create different AppId for different Apps. It'll be a good approach
Sounds like you're using a single AppID for both of your apps. You can only use one provisioning profile for multiple apps only if the AppID bound to that profile has a wildcard (e.g. "com.sample.*").
quoted from the iOS Provisioning Portal:
The Bundle Identifier portion of an App ID can be substituted with a
wild-card character (asterisk '*') so that a single App ID may be used
to build and install multiple applications. If the wild-card character
is not used, the Bundle Identifier portion of your App ID must be
input as your CF Bundle ID in Xcode to allow the application to
install on your device. The Bundle Seed ID portion of your App ID does
not need to be input into Xcode. Wild-card App IDs cannot be used with
the Push Notifications or for In-App Purchase.
I hope you have created an AppId with this bundle identifier com.blah.mygame.lite and created a distribution profile linked with this AppId. By doing like that, you can run or archive your apps only if it is having the same AppId like this com.blah.mygame.lite. If you want to create an AppId to run all apps, then you need a Wildcard AppId like this com.* . And If you think you need to run the app with AppId com.blah.mygame.pro then you need to create another appId like that and associate that appId with another distribution profile or modify the old one and download and install it and use.
There is no need of distribution profile for every app....one is enough for every time but
your bundle identifier is same as you given in your distribution provisioning profile when
you create it first time....

Resources