[ios] Certificate has either expired or has been revoked

A while ago I started coding a new ios app, after a long break from it, I'm working on it again and have it almost complete.

I test it on the simulator but when I tried to install it on my iphone 6 (something I have already done in the past) I got an error telling me that my app cannot be installed since the certificate that was used to sign this app expired or has been revoked.

I tried many things:

  1. I deleted all certificates and provisioninig profiles from xcode, keychain and apple developer and let xcode create me new ones
  2. I deleted xcode and did the whole proccess from the begining

But this didn't fix my issue.

Any idea what might be the problem?

This question is related to ios iphone xcode

The answer is


I had this issue after changing my Email account.

After trying out so many possible solutions, the only one that worked was the to just delete the certificate that was created in that day from my Apple developer account. (It was not the only certificate in my account) It seems that a new certificate was created automatically and it was conflicting with the main one.


I had a slightly different solution. It may have been from updates, or my particular use case.

Using Xcode 7.3.1

I am using a file sharing system (dropbox) to develop on two different machines. Using the Download All solution didn't fix it for me.

Following the link above, I took the advice of

delete all the profiles in ~/Library/MobileDevice/Provisioning Profiles

(which is an extreme measure, but Xcode should now download what you need)

Xcode prompted to update itself.

I still have an issue when switching between developing on the different machines. It presents the following warning/failure:

This application's application-identifier entitlement does not match that of the installed application. These values must match for an upgrade to be allowed.

The resolution to that issue is to delete the development item off of the device, and it will then reinstall.


In case it helps anyone: Xcode 11.x I revoked also (deleted) a certificate in App Developer account. Then I thought I had deleted the certificate too in Keychain access but kept getting error messages, when trying to upload an app update to the AppStore.

I then found out that there are two separate places in keychain access, where in one the certificate is kept (funny enough under keys, once login is selected in keychains) and in the other one the private key (of course under the item certificates in keychains). I made sure that both are deleted and now all is good.


None of the solutions provided so far worked (although they are all correct) and deleting the Xcode project from disk and re-cloning it from the repo solved it for me.


rename your catalog, don't contain Decimal point & 0(zero).

like this, I solve it .


After all above step clean and Rebuild is also a factor.


If you have a host test target that you run on the device, make sure that it uses the same code signing identity that the app target uses. Otherwise you will have to clean when you switch between testing and debugging the app.

I had this issue in Xcode 11.4.1 when we turned off code signing in our host test target as a build-time enhancement. Once I turned code signing back on for the host test, I no longer experienced this issue when switching between running the host test target and the app!


In Xcode 8,

  1. Go to Preferences->Accounts
  2. Press on your account
  3. Click "View Details"
  4. Delete profile which you need
  5. Click "Download All" in the lower left hand corner.

With Xcode Version 10.1 I solved with these steps:

  1. Go to Xcode, Preferences and select the Accounts tab
  2. In the accounts section click on the gear in the bottom left of the window corner and then click on Export Apple ID and Code Signing Assets... exporting this in a file, for example Test.developerprofile
  3. Delete the profile that you are using
  4. Clicking again on the gear select Import Apple ID and Code Signing Assets... and select your previously exported file Test.developerprofile
  5. Now perform a Clean (Shift(?)+Command(?)+K) and a Build (Command(?)+B)
  6. Run again

For those who cannot find "view details" button at Account > Team > View Details, here is how I solved this on Xcode 10:

  1. Delete all provisioning profiles at ~/Library/MobileDevice/Provisioning\ Profiles/
  2. Clean the project by holding Shift(?)+Command(?)+K or selecting Product > Clean (it might be labelled "Clean Build Folder")
  3. Restart Xcode

and try again.


I just unchecked "Automatically manage signing and checked it again with selecting the Team and it worked for me enter image description here


Using Xcode 10.3

Follow these steps:

  1. Go to https://developer.apple.com
  2. Follow Account > Certificates, Identifiers & Profiles > Devices
  3. Find your iPhone from the list and click on it. It will open details page
  4. Disable and then Enable it
  5. Go to Xcode select your iPhone and Run it

Do not forget to go Settings > General > Device Management to trust the developer account


-Open Keychain - Check all certificates by selecting it. - Check status if it is valid or not. -If certificate is not valid then right click on it and delete that certificate


Edit: This answer doesn't work for Xcode 10 and higher. See turkenh's answer.


Solution

First of all, clean the project by holding Shift(?)+Command(?)+K or Select Product > Clean

Then:

  1. Go to Xcode Menu> Preferences

  2. Select Accounts > Team > View Details

  3. Select any Provisioning profile from Provisioning Profiles list

  4. Right click > Select Show in Finder. Then you will see all lists of provisioning profiles

  5. Select all provisioning list from the folder and move it to trash

  6. Download All provisioning profiles by clicking Download All below Provisioning Profile lists.

Now, run again and it should work!


Found another case which results in bloody Certificate has either expired or has been revoked error in Xcode 9. If you're trying to sign with valid certificate but you do have another revoked certificate in the same team on your keychain, Xcode throws this error. To check if you do have revoked certificate see Xcode -> Preferences -> Accounts -> Your Apple ID -> Your Team -> Manage Certificates. Deleting revoked certificate with Keychain Access solves this. Looks like another code sign bug in Xcode.


In Xcode 11.3.1, the interface has changed from all the current answers.

  1. Go to the menu "Xcode" > Preferences > Accounts.
  2. Select the proper Apple ID on the left for the project.
  3. If the profile is still active, click "Manage Certificates."
  4. If there are any revoked certificates, right click the revoked certificate(s) and "Delete Certificate." In the attached screenshot, the certificate boxed in red should be deleted.

Revoked Certificate Screenshot

Deleting the latest "Date Created" certificate should refresh your certificate, but deleting all the revoked certificates is recommended.

After deleting the revoked certificate(s), you should be able to rebuild the app.


Xcode 11.1 requires generating ?ertificate from Xcode directly

So you will have smth like this on https://developer.apple.com after

enter image description here


Edit: This answer doesn't work for Xcode 10 and higher. See turkenh's answer.


I had experienced this problem and was able to find an answer.

The answer which this is coming from can be found here.

Here is what you have to do:

  1. Go to Preferences->Accounts
  2. Press on your account
  3. Click "View Details"
  4. Click "Download All" in the lower left hand corner.

These steps solved the problem for me.


I have the same issue. I solved after cleaned the Project (Shift(?)+Command(?)+K), exit Xcode and open again.


A simple "Clean" (Shift(?)+Command(?)+K) solved to me


A new problem with Xcode 8, what worked for me was to turn off the new "automatically manage signing" checkbox on the General tab for the target, then turn it back on.

This initiates an on-boarding wizard that sets things up correctly for Xcode 8.


1.Change the setting of your Mac Timing to Automatic(Open Date& Time Preferences Check on set the Date and Time Automatically).

2.After that go to your X Code, Clean and Run The Code.

3.If it failed, log out of your Apple Profile and Delete all the Automatically Created Provisioning Profiles in XCode -- Preferences and Move all the Provisioning profiles to trash and download as a new file.Then LogIn again and Run your Code.


When nor deleting and re-downloading the profiles, nor "Clean" helps I do this:

Preferences> Accounts> Apple IDs> select your acc> select your team> View Details...> reset your signing identity (iOS Development in my case).

This always worked for me.


Sometime, in Xcode 8 you might find yourself in a revoke-regenerate cycle, where you let Xcode 8 "fix" the certificates and provisioning, then Xcode finds the new/regenerated certificates to be invalid also, and you go back to revoke, and it keeps happening.

In such cases, check your MacOS time! If you have it set to some other time, not the real current time, the new certificate may always "not yet" be valid.


I had this issue and it looked like a bug in xcode's 10.x New build system.

  1. Go to File > Project Settings Change the Build system to use Legacy build system.

  2. Deep clean the project by holding Option(?)+Shift(?)+Command(?)+K or holding Option(?) and selecting Product > Clean Build Folder

  3. Run on a device


Sometimes the "Bundle Identifier" in Xcode is changing due to some things that you made. Make sure the Bundle Identifier you defined in your Apple Developer account is exactly the same as the one in Xcode.


What finally worked for me was to shut down and restart my MacBook, after downloading latest provisioning profiles.


It's not a big issue i faced. Just clean the project and restart your xcode!! Hope it will be working for you! It's working for me. :)

Or First of all clean the project by holding Shift(?)+Command(?)+K or Select Product > Clean

Then

Go to XCode Menu> Preference

Select Account > Team > View Details

Select any Provisioning profile from Provisioning Profiles list

Right click > Select Show in Finder. Then you will see all lists of provisioning profiles

Select all provisionaling list from the folder and move it to trash

Download All provisioning profiles by clicking Download All below Provisioning Profile lists.

Now, Run again and it should Work!


Examples related to ios

Adding a UISegmentedControl to UITableView Crop image to specified size and picture location Undefined Symbols error when integrating Apptentive iOS SDK via Cocoapods Keep placeholder text in UITextField on input in IOS Accessing AppDelegate from framework? Autoresize View When SubViews are Added Warp \ bend effect on a UIView? Speech input for visually impaired users without the need to tap the screen make UITableViewCell selectable only while editing Xcode 12, building for iOS Simulator, but linking in object file built for iOS, for architecture arm64

Examples related to iphone

Detect if the device is iPhone X Xcode 8 shows error that provisioning profile doesn't include signing certificate Access files in /var/mobile/Containers/Data/Application without jailbreaking iPhone Certificate has either expired or has been revoked Missing Compliance in Status when I add built for internal testing in Test Flight.How to solve? cordova run with ios error .. Error code 65 for command: xcodebuild with args: "Could not find Developer Disk Image" Reason: no suitable image found iPad Multitasking support requires these orientations How to insert new cell into UITableView in Swift

Examples related to xcode

Undefined Symbols error when integrating Apptentive iOS SDK via Cocoapods Xcode 12, building for iOS Simulator, but linking in object file built for iOS, for architecture arm64 iPhone is not available. Please reconnect the device Make a VStack fill the width of the screen in SwiftUI error Failed to build iOS project. We ran "xcodebuild" command but it exited with error code 65 The iOS Simulator deployment targets is set to 7.0, but the range of supported deployment target version for this platform is 8.0 to 12.1 Xcode 10.2.1 Command PhaseScriptExecution failed with a nonzero exit code Git is not working after macOS Update (xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools) Xcode 10: A valid provisioning profile for this executable was not found Xcode 10, Command CodeSign failed with a nonzero exit code