This is driving me crazy. I've tried searching for answers and nothing quite matches my problem.
I've successfully archived my app and need to upload it to iTunes Connect. Apple recommends Application Loader but first needs to be done in Xcode. When I attempt to validate or Distribute the app in Xcode, I get an error saying "No Identities are available for signing"
I'm confused because I've wiped my certificates and profiles clean but I continue to get this message. Any ideas what I'm missing?
"No identities available for signing" can get frustrating. What you should do is regenerate your distribution certificate and profile, that should fix the issue.
If you need help regenerating: Download and open the new distribution certificate, which will store it in your keychain. Then, drag-and-drop the profile into your Xcode organizer. Next, your going to click on the project in the upper left (it has a blue icon next to it), that will bring up the projects info. There should be 2 tabs at the top of the screen, "Info" and "Build Settings". When you click on Build Settings, the option to change the code signing is about halfway down the screen. When I ran into this issue, I had to change every single one of the code signing options to iPhone Distribution. (It might not be necessary to change every field, but I did). You should be good to go after this, let me know if you have anymore issues.
I solved the problem by deleting ALL dev profiles and recreating a single provisional profile for Distribution and Developing each. Xcode then selected the profiles automatically without me having to import them into Xcode.
Related
I ran into another iPhone problem again. I finished my app, and I need to test it on my phone before I submit it to the app store. But, whenever I press Run, I get an error message like this.
"The entitlements specified in your application’s Code Signing Entitlements file do not match those specified in your provisioning profile.
(0xE8008016)"
I have a Provisioning profile for development and distribution, and certificate with keys for develoment and distribution as wells as my device is listed in the portal.
I'm not really an expert at Xcode, so if you do answer, can you please explain a fix detailing every step. I know lots of other people have asked this problem, but I can't follow there answers.
Thanks in advance,
Will
Having the provisioning profile isn't the same as setting it in your build settings to run with the project. Click your Target on the left sidebar and then click the Project. Click the Build Settings tab. Under code signing, select the proper provisioning profile in each of the drop down boxes. It should build properly after that, assuming you do have the proper provisioning profile and certificate.
If you're just now testing on your phone right before you submit to the store that's a whole other problem, but I suppose you'll figure that out yourself.
Check that the build configuration you use is not pointing to some Entitlements.plist file, which in its turn might be non-existent or containing wrong data about certificate/profile pair. If that the case, the settings in latter will override anything you set in the build settings resulting in having wrong actual certificate used.
To double-check this find your configuration in the "Code Signing Entitlements" section in the Target/Project Build Settings.
In my case I had exactly the same alert when it was pointing to an "entitlements.plist", which could not be found anywhere in the project. Clearing any mentioning of this file for the target build configuration fixed the problem for me.
I've been living the nightmare of trying to submit an app to the iTunes store... The newest massive waste of time is an error message that I get when I try to validate or distribute my archive from the "organizer".
The exact message is:
My Xcode is version 4.3.2. I'm pretty sure my WWDR is installed, because this has never been an issue before. I also tried to re-install it just to be safe.
The most frustrating/confusing part is that I JUST submitted my app successfully two weeks ago and nothing was changed. My app was rejected for meta-data reasons. I fixed those issues, re-installed one of my plugins, and now this.
Any suggestions? Even a link to some helpful documentation would be great. I've found the Apple developer docs extremely confusing and UN-helpful.
EDIT1:
I think I may have gotten closer to the problem. I changed some of the build settings and now my build fails with this error:
Code Sign error: Certificate identity 'iPhone Distribution: [my name]' appears more than once in the keychain. The codesign tool requires there only be one. I want to fix this but I'm not clear on which code signing profile should be set where. There are different settings depending on whether I click the "project" icon or the "target" icon and each of those has four different choices. Do all of these require code signing? Can anyone give me an example of a working configuration?
EDIT2:
I think I maybe found the problem. There is a small note that says my Distribution profile has no provisioning portal. I've been downloading and installing new .mobileprovision files but they all say "Developer". I think just need to figure out to download a new distribution profile.
SOLUTION:
Thanks to some pointers from Saad (see below), I figured out what was wrong. I was using the auto-select option for code signing, and the only distribution profile had an invalid provisioning profile. This happened very quietly, and I'm not sure why. I only noticed it when I went back into the provisioning portal to create a new distribution profile. After installing this, everything works.
your provisioning profile is not properly set
Code Sign error: Certificate identity 'iPhone Distribution: [my
name]' appears more than once in the keychain. The codesign tool
requires there only be one.
Open Applications > Utilities > Keychain Access and search for your Distribution certificate. Sometimes the Xcode Organizer decides to generate a new certificate for you and invalidates your old one, but does not remove it from your keychain. Remove the expired/older certificate and quit/re-launch Xcode (make a backup first, in case, by dragging to Desktop or Exporting). That should at least clear up part of your problem.
As for the provisioning profile, if that still is a problem, I'd manually go into the iOS development center and download the App Store Distribution Provision Profile for your app, removing all other provisioning profiles, until you figure this out. Quitting and relaunching Xcode when dealing with certs/provisioning profiles is something I've always had to do.
project identifier and your profile identifier must match
I got 2 errors when I tried to validate my app with the appstore.
How could I solve this ?
The approach i took to upload my build;
When I set Build configuration to Ad Hoc it Archives correctly (and displays in Organizer), but when I set Build configuration to Release, the archive file doesn't get displayed in the organizer. I have a different question on this on SO, but haven't got any replies yet.
So I clicked on the archived file (which was obtained after I set the Build configuration to Ad Hoc), and clicked on Validate.
Here is the screen shot, can someone tell me what I should be doing to get rid of this error ?
NOTE: Actually I know why the 1st error occurred, but I have no clue why the 2nd one occurred, and need guidance to solve it
SOLUTION TO ERROR-1:
Make sure your app icon is added to your project bundle and Also it is exactly 57 x 57 pixels PNG image.
SOLUTION TO ERROR-2:
Make sure you have set the Distribution Certificate and not Development Certificate in both Project and Target Settings.
You need to cross check it.
Also please cross check whether you are archiving the correct scheme, which you are setting the Distribution Certificate for.
EDIT FOR PRIVATE KEY ISSUE:
I have found louie's answer from the link iPhone app signing: A valid signing identity matching this profile could not be found in your keychain which was helpful to me once with same private key issue:
Here is what Louie's answer is:
I had the same problem: I first downloaded my certificates to my small
MacBook while on the run. When trying to install the certificates on
my iMac... then I ran into the problems described on this page.
After spending hours pulling my hair out like many of you, I performed
the following steps to fix it:
Close all your stuff except your webpage that should be logged into
App Dev center.
Open Xcode. Click WINDOW > ORGANIZER > select "Provisioning Profiles"
on the left. That should bring up your provisioning profiles.
Highlight one by one (if more than 1), right click and delete profile.
Yes, just do it! Delete them all! (I kept making a new one after a new
one trying to make the thing work.)
From the first page you see after logging into the App Dev Center on
the right side click "iOS PROVISIONING PORTAL" > (do not "launch
assistant"). Instead click on the left side. Select CERTIFICATES. You
will probably have just one line listed with your name/company - from
there click on the right side REVOKE. Click OK to verify that's what
you want to do.
On the same page click DEVICES. Click the box next to your device you
are trying to provision and click REMOVE SELECTED. Again click OK to
verify.
Wait about 2 minutes to let Apple do their thing.
Now click on "HOME" that is on the left side navigation.
Click "Launch Assistant"
create a new app ID - call it whatever you want. Just make sure it's
unique enough to know that's the one you just created because the
others you've been messing with all day will not be deleted from
Apples Dev Center.
You should be able to follow the rest of the Assistant without
troubles -- the main thing is you just had to delete your old
provision profiles and start over.
Hope this helps you.
Well... Your screenshot says that you have some problem with your icon and codesign verification.
Icon should be 57x57 pixel, put in your app bundle, correctly added to your target membership and set in your info.plist.
Then you need an iPhone Distribution Certificate from iOS Provisioning Portal.
If you checked icon and certificate and everything it's OK, maybe it is a problem in your uplader: I had same problem in the past (my icon was in my app bundle, but uploader wasn't recognizing it). Try software update to get latest uploader.
I am working on my iphone application and it was working on the device. I don't know what I did but now it says "App cannot be installed on the device. Please install the provisioning profile abc_pop". When I say install and run then it says failed to run on device. what should i do. How can I reset everything. I know it was working before.
You should make sure you have the correct provisioning profile selected in your project settings. In XCode, go to Project->Edit Active Target, and then scroll down to "Code Signing Identity". Make sure that field has "abc_pop" selected, or, if not, then click on this field and select "abc_pop" from the list. Then try building again and see if it works.
Another possibility is that your provisioning profile may have expired. If this is the case, you'll need to renew it on http://developer.apple.com/iphone
Just from above, restarting Xcode often works. It's happened to me a number of times, doesn't always work though
In the provisioning portal, the "renew" button for my team provisioning profile is grayed out. And said profile is expired.
How can I renew it?
EDIT: I found the "automatic device provisioning" checkbox and "refresh" button in the organizer in Xcode. But when I select the team profile, check the checkbox, and push the refresh button, I get this message:
An unexpected error occurred. Please try again. If the problem persists, please contact Apple Developer Support (http://developer.apple.com/support).
I suppose I can go to support, but it would still be better to figure out what the problem is without involving them.
I had the same "unexpected error" issue with the Team Provisioning Profile when it expired. I fixed it by deleting it in the Xcode Organizer AND in the ADC Provisioning Portal, then hitting renew in Organizer.
Posting this again here..
OK, I had the same problem with the disabled 'Renew' button against my Team Provisioning Profile.
This worked for me.
1) Deleted the expired Team Provisioning Profile from the Xcode Organizer.
2) Deleted the same thing from the developer provisioning portal.
3) Again from Xcode organizer check marked the auto provision and clicked 'Refresh'. it asked for the credentials and in a few seconds added the renewed Team Provisioning Profile.
4) It also added the new profile in the developer provisioning portal.
Refresh and removing the iOS devices did not help on my installation.
But I found that the error messages was misleading. I am also member of the Mac developer program and after choosing "My Mac" under DEVICES and pressing the (+) Add to Portal button, the error message "Your team has no devices for which to generate a provisioning profile." did no longer appear.
So it looks like the error message covers the Mac and not iOS devices even that the URL at the end of the error message links to the iOS development center.
I had the issue that Xcode didn't refresh or renew it's managed Team Provisioning Profile and tried a very long time. I always hit refresh in the Library->Provisioning Profiles - section. Then I tried out the Teams section and after hitting the refrsh button there my Team Provisioning Profile which was managed by Xcode was renewed successfully. Hope this helps some of you.
One more thing: I used the same Apple-ID in three teams. So maybe Xcode failed to separate them while refreshing.
Do these things if you want to really solve the problem:
(1) Are you using the certificate for which you made provisional profile from your mac? Or you are using the certificate from other mac machine. If that is the thing then please get .p12 file from there and install in your keychain.
(2) If your certificate in the keychain is the same for which you made the provisional profile then it's fine. Otherwise you have to create new provisional profile for the certificate.
(3) Please make sure that you have set the app id in the target > properties > identifier. If no then please set and choose the provisional profile from the target > build > code signing identity.
(4) Then clean and build your project.
If you find any problem then please let me know. I would like to solve this problem.
I fixed it by signing into my Apple ID in XCode->Preferences->Accounts tab
Is the certificate it is based on expired? Did you delete the device it was for?
Try deleting the profile and click Refresh so Xcode re-adds it. Just a guess. I don't know why this would work, but it's worth a try.
Are you pressing the renew button from within Organizer in the latest Xcode version, 3.2.5 beta 3?
Here's the answer to compiling question, however, if anyone else has the answer to the team provisioning profile please post.
You can still compile apps for your device/simulator by creating a developer profile and downloading it to your device.
The key to getting it to work is to make sure the profile is selected in both the Edit Project and Edit Target Settings from the Project Menu. The Target Setting is more specific and usually screws people up. Making sure they are both in sync will help you get things up and running.
From these two menus, check the Build tab and make sure the developer profile is displayed. The default is iPhone Developer and should point to your downloaded profile.
Is there a problem using a different mobileprovision file? I believe you are getting the error on using a different provision file because your Target might be using the older one.
Try this
Get the new mobileprovision file and
in Project's Build properties, set
the mobileprovision to this one
Select the active target and in the
target's Build properties, ensure
that the same mobileprovision is
being used
Compile the app.
See if that helps.
As far as the Team Provisioning profile goes:
Does your console say anything? Are you using Xcode 3.2.5? I'd file a radar at http://bugreport.apple.com. Do you see the Team Provisioning file in the iOS Provisioning Portal? Does it have a green light?
You might try revoking it and letting Xcode create a new one.
As far as getting your app to work
You can always create an app-specific development profile. Choose your certificate and the app you are working on. Also make sure to select your device in the checkbox list.
Then download the profile (once it is ready) and double click on it to import it into Xcode.
If you look at the Xcode organizer, you should see your development profile in the list.
If it's red, that means your certificate has expired
If it's yellow, that means you don't have the private key present to sign using the selected certificate
In the project's Get Info window, under code signing, choose iPhone Developer for both pickers. Take a look at see which one is automatically selected (sometimes you have to manually choose the right one).
Then do a Clean & Build and you should be good to go.
I made the mistake of looking in Wrong place in Organizer.
On the left is LIBRARY then below that DEVICES
I had clicked on my Iphone under DEVICES > Prov profile.
No refresh button there.
Correct place is
On the left in ORGANIZER is Library > Provisioning Profiles
then Team provision Profile is here
Click on it and hit refresh if expired
As always.... "grep -ir profile ." and the cmd line are always your best friend when you want to fix an Apple frustrating, inconvenience and pain in the ass.... Spent almost an hour poking around xcode trying to find that option to enter the new provisioning profile number, and none to be found... Only when I grep'd for it, was I able to fix, yet another apple pain in the ass.... I can't tell you how many times I've spend hours going through xcode, stuck, because it won't compile because of some stupid invalid setting, profile or argument, only to fix it when I fell back on grep & ssed...
This worked for me:
start xcode.
Window->Organizer from menu
Choose "Provisioning Profiles" from DEVELOPMENT menu.
click refresh button
exit organizer
return to xcode main window.
Build->Clean from menu
build and run.
I fixed this by going to the portal and clicking "modify" on all expired profiles. Then click "select all" for devices and submit.