ChatGPT解决这个技术问题 Extra ChatGPT

No identities are available for signing Xcode 5

I have an error "No identities are available for signing" when try to validate my app in Xcode 5. I tried all: Recreate certificates and provisioning profiles, all methods which have been described on this site and another resources; I'm confused, because when I try to distribute my app as Ad-hoc, it successfully create and install on test device an IPA file. But when I try validate my app or submit to AppStore, all the time I have an error. Maybe someone can help me with this issue.

Same exact situation here. Able to build/distribute ad-hoc but not app store. Please answer back if you find a solution.

M
Mavis

All you need to do is:

go to Certificates, Identifiers & Profiles in the Developer Center create a new provisioning profile in "Provisioning Profiles" / "Distribution" download the profile and open it restart Xcode


Thanks Mavis, don't know why your answer isn't more upvoted, it worked for me after extensive panicky, frustration and googling :) Opening the file was the key, and I never knew... Thanks again.
There's no need of steps 3 and 4. They are replaced by: -> Go to Xcode > Preferences > Accounts > Apple ID used > View Details. Press the refresh button so that it downloads the provisioning profile. After it downloads it, click Done. Now you can validate and submit it!
Make sure you use the same app ID when you create the provision profile and the one in XCode, otherwise it wont work.. ;)
Even on xcode 5.1.1 I still had to restart xcode to get this to work. A little lame.
I spent an hour because the official docs never mentioned step 4.
佚名

Please make sure you are using distribution provisioning profiles, rather than Development. And the code sign setting in Xcode is compatible with the distribution provisioning profiles.

https://i.stack.imgur.com/lgSOL.jpg


+1000 for the only answer that solved my issue. I didn't think that I could hate Apple any more than I did before I went through this ridiculous process. I was wrong.
This solved my problem too. My certificate had expired so I naturally chose a developer certificate thinking it was for distribution. Developer certs are only good for testing on your device. Go to "Certificates, Identifiers & Profiles" and check to see if your distribution certificates are valid. I had over 10 expired since I distribute a lot of apps.
A small variation of this: the profile might be for distribution, but for ad-hoc/enterprise distribution and it is impossible to tell when viewing or editing the certificate. Creating a new provisioning profile showed that option and then worked as expected (I named the profile accordingly to avoid future confusions).
You failed to mention to create App Store distribution profile and NOT Ad-Hoc. I have created App store distribution profile and everything worked.
A
Absov

The validation process does not work with Ad-hoc profiles. Need to create a Distribution provisioning profile. It is not specified in the instructions for beta testing. I agonized all day until realized.


+1000 Instead of letting you know, XCode unapologetically crashes when you try to validate with an ad-hoc profile.
are you sure? I created a distribution profile but for ad hoc and still get it. What do you mean by a distribution profile?
@Dejel exactly -- there's two kinds of "Distribution Profile". I'd been happily iterating with my testers, with a profile I named, "Distribution Profile". Created another one "App Store Distribution Profile" and chose "app store" in one of the choices, and all is well. It's such a nomenclature collision! The sudden use of "Identity" instead of profile or signing... ehhhh.
+2 if I could. Thanks so much!
C
Community

Use the Application Loader (Xcode -> Open Developer Tool -> Application Loader).

Also - this answer/question may also be helpful for you: https://stackoverflow.com/a/18914073/730172


How can I validate the version there?
h
helmesjo

Restarting Xcode solved the problem for me! Restart and/or clean solves 99% of all issues...


Thanks a bunch, restarting x-code was enough for me. But the error message you give, does not give you a clue to try that at all...
m
mbuc91

@CainaSouza 's comment above worked for me. I didn't even have to create any new provisioning profiles.

I just had to go to Xcode > Preferences > Accounts > (Apple ID) > View Details and hit the refresh button. After a minute or two it was done and had loaded my provisioning profiles. I didn't even have to select it in my project options, it had already selected my most recently generated one.


I tried several combinations of many things suggested here, but nothing worked until. Refreshed. Killed the XCode derived data directory (/Users/YourLoginName/Library/Developer/DerivedData) and restarted XCode
m
mxg

Clean your Product Build Folder (with Alt button) Restart Xcode

It solved my same issue


R
RH_Apps

I had a similar issue. Found out that the bundle identifier did not match the app id that was on itunes connect - it was capitalized differently. Fixed the issue by making the identifiers match.


C
Chris Lambrou

Yes the appID and bundle identifier must match. Remember it is CASE-SENSITIVE. That was the problem for me.


a
alexandresaiz

I updated to Maverick and Xcode 5 and had the same issue even though I had everything ok in Profiles. I created a new Distribution profile (identical to the old one), added it by refreshing profiles and the issue was solved without rebuilding.


A
AMAN77

Apple Decided to "Magically Dissapear" my distribution provisioning profile from their site after upgrading to a newer Xcode, giving me this problem too.

Solution is obvious only once I had discovered this fact!

-Create new Distribution Provisioning Profile

-Download & install it / Refresh Xcode preferences under account details


h
heMac

I fixed this issue by delete the old development/distribute profiles and create new one with new names.


C
Community

I had a mismatch between the Bundle Identifier within Xcode and the App ID on Developer.Apple.Com (Certificates, Identifiers & Profiles). This StackOverflow post was a great help to me. For a little extra info check out this blog post. The official documentation for the touch command can be found here. I had quit Xcode before doing the below. Upon completion of the details below and reopening Xcode my issue was resolved.

Use a text editor to update the bundle identifier to match the App ID, the Info.plist file is located:

ProjectName > ProjectName > ProjectName > ProjectName-Info.plist

Your looking for the following lines:

<key>CFBundleIdentifier</key>
<string>MyCompany.${PRODUCT_NAME:rfc1034identifier}</string>

Update the value to match you App ID, eg:

<string>com.MyCompany</string>

Use the terminal to issue the touch command, ensure your within the above listed directory:

touch ProjectName-Info.plist

C
Community

If you are using Xcode 5.1 or above (which you would be now), this helped me: Code signing broken on Xcode 5.1 + iOS 7.1

The key is to delete the old provisioning profile on your mac and create a new one (with a different name?) from Apple web site and download it. Looks like Xcode 5.1 corrupts the existing provisioning profile and it does not help even if you re-download it again.


C
Chris

My solution was to go into the dev center, find the distribution provisioning profile, and it had expired. So i tapped edit on it, and renewed it, downloaded it, installed it, chose the profile in the build settings, and it worked.

HTH someone.


M
Mike Gledhill

Of all the development issues I've faced over my 20+ years as a software developer, none have wasted so much time as the code-signing/provisioning profile rubbish in Xcode.

This week, I have wasted 8+ hours trying to build an Ad-hoc release of our iPhone app. In the past, it just worked, I could Archive, stick a download button on our in-house webpage, and users could just install our app from this page.

But, this week, I was facing the same "No identities are available" issue, described here.

EVENTUALLY, here's what solved the issue for me:

When I logged into the hopeless Apple Developers website, it showed that our company had 2 "iOS Distribution" certificates. They were valid, their expiry dates are months away, and in the Keychain Access application, the certificates were installed and valid... no problems here.

But what fixed my issue was to delete these two certificates, recreate a new one, then recreate my "In house" Provisioning Profile (as the original one was now showing as being invalid, as it used the old "iOS Distribution" certificate).

I also went into the "Keychain Access" application on my MacBook, and deleted all "iOS Distribution" keychains.

Then, I downloaded the new certificates & provisioning profiles, now, finally, Xcode would report that there was an identity which I could code-sign with.

To the Xcode development team:

Please. Get this fixed.

If a developer like myself, is up against a wall, unable to get a valid Provisioning Profile, which will result in a downloadable app, which will fail each time on "The app couldn't be downloaded at this time" message.. DON'T allow the Archive function to be used.

Instead, TELL the user what the problem is. HELP them resolve it, rather than going through the motions, and happily allowing them to create Archives which will never be useable.

And if an Ad-Hoc install is invalid, please put something in the Log to explain what's gone wrong, and make this accessible from Xcode. Currently your "The app can't be downloaded at this time" message is both useless and misleading.

One last thing (if this helps):

Our company accidentally let its Developer Enterprise Program license expire last month. We did then renew, everything was seemingly okay again, but perhaps, behind the scenes, this messed up our "iOS Distribution" certificate ? And perhaps, not. From the Apple website's point of view, everything was fine.


T
Taku

My issue was that I had none.myApp in my Bundle Identifier whereas in the AppID, I had com.myApp.

This drove me crazy for hours.


M
MikeMilzz

I ran into this issue today and it seems to be related to the face that the profile started with a number. I deleted the profile and recreated it exactly the same way (after a lot of other troubleshooting steps found on SO) EXCEPT this time I started with a word instead of a number. Coincidence? Not sure but worth trying.


J
Joseph Cheek

Had this yesterday and could not figure it out, no matter what I did! To solve the problem, I went to both the Project and the Target in Xcode, and under code signing, chose

Code signing identity: Don't code sign

Provisioning profile: None

Build, and then Product > Archive, and now Organizer chose the correct code signing identities and profiles to allow it to get to the Validation step. Woohoo!


A
Adriano Spadoni

It happen to me after update Xcode.

I fixed doing the follow

change the sign in to "no sign"

restart Xcode

set it to the correct sign

re-archive the build

I hope it helps


e
ed_is_my_name

Apple Documentation

"If Xcode doesn’t find signing identities, a dialog stating “No identities are available for signing” appears. Verify that you have a distribution certificate and an ad hoc provisioning profile before continuing.

If your ad hoc provisioning profile doesn’t appear in the Provisioning Profile pop-up menu when you create the iOS App Store Package, refresh the profiles in Xcode, as described in “Refreshing Provisioning Profiles in Xcode.”"


z
zeeawan

In my case, the adhoc provisioning that I wanted to set was not selectable in Code Signing in Build Settings. Though, I created and downloaded the adhoc provisioning from developer store. The answers mentioned here didn't work for me. Fix Issue button in General tab fixed the issue by downloading the required adhoc provisioning file by itself.


M
Mahfuz

Creating a new certificate, Profile in Apple development center did not work for me! I tried editing a profile/certificates and download again and double click to install in KeyChain, but still did not work. I restarted XCode (Version 7 and Mac on El Capitan), restarted Mac but still did not work!

What worked for me is: XCode -> Preferences -> Accounts - Then I deleted the Apple ID. Shutdown my Mac, and restarted it. Started my XCode, added the Apple ID, went to view details in Apple ID's and downloaded the Provisional Profile again and only then it started working!


u
user3550353

Restarting solved my problem. I have a new mac and tried downloading the profiles, which should've transferred anyways. restarting solved it.


Your answer does not provide any information which is not provided by one of the many other answers to this question.