[iphone] A valid provisioning profile for this executable was not found for debug mode

I am getting this error while I am trying to debug my app on device.

I created development provisioning profile as it is mentioned at the developer portal. My development device is selected in the profile and I am selecting the correct profile from Target's code signing identity menu. I recreated provisioning profile for several times and also removed and reinstalled it and recreated the project but I am getting that whenever I try to debug on device.

Btw, the adhoc distribution provision profile works.

I spent my whole day to find out a solution but nothing. Anyone have a solution?

This question is related to iphone debugging profile provisioning

The answer is


Another cause (verified):

  1. Apple has a major bug in Xcode going back to version 3.x, where it magically overwrites the OS X keychain with a fake keychain from inside Xcode, re-installing certs (and private keys!) that you already deleted

  2. ...so, if you have "new cert" installed, and nothing else, Xcode will sometimes get into an infinite loop where it will keep ALSO installing "old cert" (that doesn't exist anywhere except inside XCode!).

  3. ...and because of ANOTHER bug in Xcode (unfixed for 3+ years now...), Xcode sometimes automatically selects the "oldest cert I can find" (whcih, by definition, is incorrect - I think someone at Apple got mixed up between "oldest" and "newest" :( )

  4. ...and EVEN THOUGH you've selected the correct provisioning profile, Xcode sends the "old" provisioning profile to the device, then signs with the "new" profile, causing this error

Solution: you have to un-FUBAR Xcode's FUBAR of your Keychain.

This is harder than it sounds (there are multiple SO posts on this topic) - it involves multiple reboots of your machine, deleting the key every time.

Eventually, Xcode gives up on corrupting your OS, and accepts the reality you present it with :).


One of the cause could be your "project => Build Settings => Signing => Development Team" is different from your "target => Build Settings => Signing => Development Team", just make them same


In my case this was because there where a couple of versions of the developer certificate in the keychain.

Deleting the iPhone Developer cert from both My Certificates and Certificates and then downloading the latest one from the dev centre and installing that (double click on the .cer file)

sorted my problem


Had the same problem. My solution was very easy. I checked If I have my device's UDID in developer.apple.com and it was absent. After I added it, it starts working. It is very annoying that Apple developers give error "A valid provisioning profile for this executable was not found" instead of "UDID is not found". Actually I mentioned it first in XCode 6...


I had the same problem. Everything was ok: the device was registered in IOS Provisioning Portal; the certificate was downloaded and the Development Provisioning Profiles for my app was downloaded.

So the solution!!!

Target> Get Info

Select Configuration to Release (here's the devil) In code signing, Code Signing Identity check iPhone Developer. Close.

On Target chose Clean Target and then Run the app.

Good Luck.


In my case my provisioning profile was invalid because apple has changed some of its terms and conditions. To fix problem I had to

  1. delete previous profile.
  2. I had to accept terms and condition from this website of apple.

In my case the device date and time was changed manually .To solve the problem set the date and time to automatic .


This looks like a bug (I'm using XCode 7.3.1).

Trying to use XCode->Product->Profile spat out the "no valid provision profile" error.

By sheer dumb luck I got it working simply by running the app on my attached device using a normal compile, then going to the "Debug Navigator" and clicking on "Profile in Instruments" in the top right corner.

enter image description here


In Xcode 10, I solved this by switching the project's build system from "new build system" to "legacy build system" (File -> project Settings).


I had the same problem. what I did is: 1. clean the target 2. exit the xcode 3. restart xcode 4. rebuild.
and it worked.


First of all you should 1.add your device identifier to Member center -> devices. 2.Generate developer provision profile 3.Run app on device with this provision profile.


I saw this problem because I had obtained a new Mac, and was still using my old Computer's certificate. I had created a new certificate for the new Mac, but had both certificates in my keychain.

In the Organizer, the profile warned that "XCode could not find a valid private-key/certificate pair for this profile in your keychain" even though the old certificate existed in my Keychain.

The solution was to delete the old certificate from my Keychain and delete/revoke of all the profiles which used this old certificate. Then create a new profile with the new certificate and use this.

Hope this helps!


I fixed this problem by ticking "Automatically manage signing" in XCode 8.2 Target->Signing->Automatically manage signing


I faced same issue there may some other reasons too:

While testing i set my date to some future date and profile got expired. As result this issue was generated.

But i solved by setting date of iphone to current date as a result profile was not expired. 

In my case this problem occurred because another provisioning profile was selected for the unit tests. Just took me hours to find this ...


In my case, it was the problem when I setup my time manually two month earlier on my iPhone. But when I changed to set time automatically, it worked fine.

Setting -> General -> Date & Time -> set time automatically

If it does not work set time automatically of both mac & iPhone, will work fine.


I'm compiling my app in Adobe Air for iOS, not Xcode. I was trying to copy the .ipa using iTunes, and got a mysterious "Error installing app" message. It wasn't until I used the iPhone Configuration Utility (iCU) that I got the real error message.

The problem was that I was compiling the app with a provisioning profile for ad hoc distribution and a certificate for development. I didn't understand that there are 2 types of certificates, and 2 types of provisioning profiles. There's one of each for development and one for distribution. If they don't match... then you get that error message. It's obvious once you understand it...

The solution was to download the distribution certificate (.cer), double click to open in Keychain, and export that as P12 from KC directly. Then use that P12 distribution certificate in the publish settings (Flash IDE or Flash builder), and also use the provisioning profile used for ad hoc distribution (.mobileprovision). Then finally install the provisioning profile and the .ipa file using the iPhone Configuration Utility.

That did it for me.


Changing the provisioning profile to automatic then running prompted Xcode to "fix" the issue. I then changed back to my original provisioning profile and everything worked fine.


We can try this: This has solved my problem . You need to reset the profile for which your device id has been added into your member area of Apple.com . . enter image description here


Click Your app from Xcode Under Targets. (Under project.) Here you see Summary info, build settings, Build phases, build rules.

Okay go to Build Settings. Go down to Code Signing.

You see you have two fields Debug and Release. You have two profiles to choose from in each of those fields, Distributing and developing.

Let distributing be the one from the Release field. Let Developing be the one from the Debug field.

Doing this solved this problem, and let that error message go away. Now I can run my application fine.


This worked for me:
from xcode, Window -> Devices & Simulators, right click on your phone(s), Unpair.
Then re-connect everything, build, done.


Bringing an app up from Xcode 3 to 4.3 I found the Bundle name and Bundle identifier had to be set to match the AppId. If all else fails, give that a whirl.


This caught me out because someone had changed the "Run" configuration's "Build Configuration" setting to "Release" (under "Product" > "Edit Scheme.." > "Run *.app").

This is normally set to "Debug" and hence it was NOT using the developer certificate and provisioning profile that I was expecting, it was using the distribution certificates instead.

In addition to this I found that if you look in the Console Log for the device (via Organiser), there may be an error code that better indicates your problem. For example I had...

Mon Sep  5 09:39:56 unknown installd[304] <Error>: profile not valid: 0xe8008012

I then googled "0xe8008012" and got the following page which indicates a "0xE8008012 - The UUID of the device does not match any in the Provisioning Profile being loaded" error.

MobileInstallation


Add a correct signing for myProjectTests as well.


I had this problem too with Xcode 5.0.1. One fine day the application simply did not want to be installed on the device to which it was installed five minutes ago without any problems.

I tried to clean settings, delete derived data, recreate provisioning profiles, sign with another certificates/profiles, remove the device from the organizer, etc.

Finally, I reset my device's content and settings and successfully built my project with old profiles, certificates and bundle ID.


Your developer account sessions might have expired. Check accounts section from preference. You can see red colored text regarding sessions expired if that is the case


In my experience this problem happens if you try to build on a device that is not registered in your developer center or is not enabled inside provisioning profile that you are using.

1) Add the device to the developer center. In XCode 5 you'll still find a button "add to member center" inside the Organizer window. In XCode 6 i suggest to copy the device ID and manually add it to the device section of your member center.

2) Edit the provisioning profile you're using to include the device you have just added. Save and synchronize provisioning profiles from XCode.

Clean, and it is on.


In my case, I was setting "Embed Without Signing" on some frameworks in "Project -> General -> Frameworks, Libraries, and Embedded Content" tab, which causes unknown conflicts in the project.

It finally works when I set "Embed and Sign" to those frameworks which needed to be embedded.


Assuming you have your development and distribution certificate installed correctly:

Under Project your main code signing identity should be the developer profile for that app.

Under Targets your main code signing identity should be the distribution profile for that app, except that you should change Debug > Any iOS SDK to your Development profile... and make sure Release > Any iOS SDK is your Distribution profile. This should build and run on your provisioned phone and should archive without any codesign warnings.

Only thing that worked for me when my phone crashed and I had to restore it from a previous iTunes image.


I got this error while following a guide to create a separate target for development mode and production mode.

The mistake I made was creating a Distribution provisioning profile, and assigning that to the production mode target. Distribution profiles are not associated with debug devices, so of course the error appeared.

The solution was to create a second development provisioning profile and using that instead.


With Xcode 6 and a new device:

  1. Press cmd + shift + 2 to open devices. add device in xcode
  2. Press the "register device" button. If there is no such button (like in the screenshot) go to developer.apple.com and add it manually. Copy the Identifier into the field. add device on portal
  3. Go to Xcode -> Preferences -> Accounts -> Doubleclick on your account -> Press the little refresh button on bottom left to refresh the profiles refresh profiles
  4. Go to Code Signing and set the new profiles. set profiles

Remove certificate, profiles and recreate it. Install it. Thats the best soultion.


That was my mistake, I have forgot to add my device in the Provisioning profile. When I have added my device on the development and adhoc provision and downloaded again, then Restarting the Xcode, then again selected the desired Provision on the target of the Project, It worked smoothly.


I had a certificate that expired (which generated the error).
Step 1. Go to developer.apple.com, login, and go to IOS provisioning portal

Step 2. Go to certificates (which is now empty), and follow the instructions listed to create a new certificate (open keychain on your computer, create a signing request, save it to disk, upload it to apple)

Step 3. Download and install the files created by apple to your keychain

Step 4. Problem: all of your previous provisioning profiles were associated with your OLD certificate, so you need to go back to developer.apple.com->IOS provising portal-> provisioning profiles and 'modify' each profile you care about. You will see that your identity is no longer assicated with the profile, so just click the check box

Step 5. Download all the profiles you changed

Step 6. Plugin your phone and drag and drop the .mobileprovision file onto xcode icon in the dock bar to install them on the device


For me, all of my devices in the developer portal needed to be reregistered. there was a yellow notifier that took you through the steps. Then, I had to validate all of my provisioning profiles and download again.


One of the solution can be,Your provisioning profile does not include your iPhone's UDID. For that You need to register UDID first and then regenerate provisioning profile from developer account.


This solution worked for me

  1. Go to Xcode --> Preferences --> Account.
  2. In the provisioning profiles section, right click and open with finder.
  3. Delete all provisioning profiles from the provisioning profile folder.
  4. Finally, go back to Xcode and click the refresh button.

I hope that helps!


It could be because your iphone is not recognized by the provisioning portal.

Solution:

1) In Xcode, Goto --> Build --> clean all targets.

2) In "Groups & Files" -->Target --> expand it --> right click your app and select Clean "your app"

3) Goto->Window-->Organizer

4) In the Devices tab on the left, select your iphone

5) In the Provisioning section of the selected iphone delete all the current profiles (if any)

6) Unplug your iPhone and replug it in.

7) Goto->Window-->Organizer-->right click your iPhone -->Add device to provisioning portal

8) Now make sure you have selected the appropriate code signing identity in edit project settings -> build --> code signing

Build and run. Good luck!


After select auto manager signing

You may still need to check the selection in settings. Sometime, it's not correct there.

enter image description here


In my case a valid provisioning file is because I didn't add the device to the very provisioning file.


  • Xcode->Click your app -> TARGETS -> click the app-> Build Setting-> Code Signing : Make sure that both Debug and Any iOS SDK are set to iPhone Development

  • Xcode -> Product -> Scheme -> Edit Scheme: Make sure Build Configuration is set to Debug.


I had the same issue with Xcode 10.0 beta 5 (10L221o) and a device running iOS 12.0 (16A5345f) - that's also beta.

After installing the app alert titled "App installation failed" showed up, "A valid provisioning profile for this executable was not found.".

I got rid of it by going to: ~/Library/MobileDevice/Provisioning Profiles and finding the certificate Xcode was trying to use. Then in the "Devices and Simulators" window in Xcode, I right clicked on my device, choose "Show Provisioning Profiles" and with a plus button added the provisioning profile to the device there.

I don't remember when I've done it last time, it's been years. I guess that Xcode normally does it for us but for some reason, it fails when we see that message.


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 debugging

How do I enable logging for Spring Security? How to run or debug php on Visual Studio Code (VSCode) How do you debug React Native? How do I debug "Error: spawn ENOENT" on node.js? How can I inspect the file system of a failed `docker build`? Swift: print() vs println() vs NSLog() JavaScript console.log causes error: "Synchronous XMLHttpRequest on the main thread is deprecated..." How to debug Spring Boot application with Eclipse? Unfortunately MyApp has stopped. How can I solve this? 500 internal server error, how to debug

Examples related to profile

Missing Push Notification Entitlement Spring profiles and testing How to add /usr/local/bin in $PATH on Mac Do you know the Maven profile for mvnrepository.com? A valid provisioning profile for this executable was not found for debug mode Getting the "real" Facebook profile picture URL from graph API How to reload .bashrc settings without logging out and back in again? What's the best free C++ profiler for Windows?

Examples related to provisioning

Xcode Product -> Archive disabled Xcode doesn't see my iOS device but iTunes does Xcode - iPhone - profile doesn't match any valid certificate-/private-key pair in the default keychain A valid provisioning profile for this executable was not found for debug mode Adding devices to team provisioning profile iPhone Debugging: How to resolve 'failed to get the task for process'? Renew Provisioning Profile