I'm trying to distribute my Phonegap app on the iTunes. I have done this before successfully before but I have since changed to a new Mac. I'm using Xcode 5.0.2.
I have created development and distribution certificates. I then created an App ID, entering the Bundle ID under "Explicit App ID".
I then created a development provisioning profile for the app, choosing the correct App I.D., the iOS Development certificate, my device, giving the profile a name and clicking "generate". I download it and double click to add to xcode. The xcode organiser opens and I see it added under my device provisioning profiles. I can then successfully run the app on my physical device.
Now I want to distribute it. I created a new provisioning profle, selecting "App Store" under Distribution, selecting the correct App I.D., the iOS Distribution certificate, and clicking "generate". When I double click the downloaded file, the organiser in xcode opens, but the distribution provisioning profile doesn't under the device provisioning profiles. When I click the + button to add the profile, I cannot select the Distribution provisioning profile, but I can select the Development provisioning profile:
I have no idea why this is. I tried closing down and opening xcode, to no avail. I tried waiting a few hours. Again, it didnt work.
I then try to distribute my app by creating an archive. First I go to build settings > code signing and choose iPhone Distribution:
I then select my physical device and choose Product > Archive. I get the error:
No matching provisioning profiles found
None of the valid provisioning profiles include the device Belgian Iphone (identifier: xxxxxxxxxxxxxxxxxxxxxxx).
Xcode can resolve this issue by downloading a new provisioning profile from the Member Center.
I click "Fix Issue" and end up with the error:
There was an error generating the team provisioning profile for AppID 'FT49U8Q9JE'.
The AppID given here is different to the prefix in App ID's in the developer portal. I don't know if it should be the same. Any suggestion? I have spent 3 days on this problem and as stated above, I had no issues on my previous mac (which I no longer have)!
Something that got me recently was having to actually set the provisioning profile in the build settings
Related
I am having problems with resigning my Ad-hoc app to contain more/less devices.
By following the steps outlined here https://coderwall.com/p/cea3fw/resign-ipa-with-new-distribution-certificate I manage to resign my ipa using codesign, however it does not seem to have any effect, because even when I remove my device from the provisioning profile, the ipa can still be installed on this device using XCode devices.
Any clues where I may have gone wrong?
The device has stored a copy of an old provisioning profile, and that profile permits the app to be installed on the device.
Mostly we can consider a code signing certificate and a provisioning profile as one thing. But they actually perform two separate functions.
A code signing certificate and its private key is used for signing an app.
A provisioning profile contains lists of devices, code signing certificates, entitlements, and a bundle ID. It is a ticket from Apple which gives permission to install apps not from the App Store.
When a device attempts to install an app, it searches for a stored provisioning profile that may be used to install the app. This may be the provisioning profile included with the app, or a previously installed profile.
To remove provisioning profiles from a device:
Open Xcode and select the menu Windows -> Devices...
Ctrl-click on the device and select “Show provisioning profiles...” from the drop down menu.
Select unwanted profiles and press the “-”-button.
I lost few days trying to figure this out. I created new provisioning profile on my dev account for Ad Hoc distribution, I added required certificates. I did set everything to this profile in General tab and Build settings for both project and target, I'm not using Automatic signing. When I archive project I'm using diawi app to install .ipa file on my iPhone but I keep getting error that provisioning profile inside this app doesn't seem to contain your device's UDID.
your provisioning profile must contain your device's UDID.
I'm trying to distribute an iOS app without having a device. I did purchase a developer account and set up signing and provisioning profiles for distribution.
I can see my profiles in Xcode. But when I choose the "Archive" menu item, Xcode reports "No provisioning profiles with a valid signing identity (i.e. certificate and private key pair) were found."
and suggests I click on "Fix issue" to download one. But then I get "Unable to create a provisioning profile because your team has no devices registered in the Member Center. Please connect a device, enable it for development, and add it to the Member Center using the Organizer."
My problem is similar to Could I submit app to appstore without ios device?. But I have a provisioning profile. Interestingly Clocksmiths question to AmitApollo's answer seems to be spot on but doesn't have an answer.
To distribute the app we are using Xcode 6.0.1, where we encountered some issues by using the following process:
Added App-Id and distribution provision profile under developer program.
Chose provision profile under build settings and Archive application.
Chose Export option to do Ad-HocDistribute.
But with Xcode 6.0.1, this workflow was changed a bit. I couls still select the Ad-Hoc distribution option, but I cannot select the provisioning profile which I have created under developer program against my App-ID. There were no listing of provisional profile as we use to do in Xcode 5 version.
The Xcode 6.0.1 has tried to match the provisional profile from the dev-program and it returns message as no matching certificate and it automatically created identity as XC Ad Hoc * profile. Once I chose the Export option the XC Ad Hoc* profile has been created automatically under the distribution provision profile option in dev-program.
Under the provision profile all devices has been selected which I have added and listing total devices under my testflight application. Please assist me how to choose my provision profile which I have already created specifically for my application. Its really consume my whole day.
Xcode wanted to automatically sign with the default "XC com.*" wildcard provisioning profile instead of the explicit profile that already had.
To fix this, I just re-generated the profile on the Apple Developer Portal:
1) Go to developer.apple.com and find the distribution provisioning profile you want to use.
2) Select it, click "Edit", re-name the profile, and click "Generate".
3) Download the provisioning profile to the Desktop and drag it onto the Xcode 6 icon.
4) Re-start Xcode 6.
5) Open the organizer window and click "Submit" on the archive you built. Xcode will automatically pick your explicit profile instead of the generic one.
In Xcode 7 try to select "Use local signing assets" when selecting team. In my case it automatically selected custom Ad-Hoc profile, instead of XC Ad-Hoc*
It's quite tricky but in your app build settings, you don't have the good provisioning and/or the good code signing identity for the archive mode (RELEASE) and maybe be the bad team too. You have to re set all this things and re archive. You know it's good when Xcode show the good certificate.
Hope you will export your application.
Organizer -> Export worked for me as Organizer -> Upload to App Store and Validate were picking Xcode generated provisioning every-time.
Similar topic discussed here.
I'm developing an ios app (only for iphone) and trying to have other people test it. I have no problem installing the app on my own device through Ad hoc distribution. When I tried installing on another person's device, it always failed with the message "xxxxx could not be installed at this time". I'm using xcode 5.
Here are the steps that I followed:
Add the device's UDID to the existing Ad hoc provisioning profile in the developer portal
Download that provisioning profile and drag that to the xcode organizer
Under code signing->provisioning profile->release, choose the Ad hoc provisioning profile. Under code signing identity->release, choose the distribution certificate from the Ad hoc profile. I set the provisioning profile (debug) to none and set the code signing identity(debug) to 'don't code sign'.
Build the app and create an archive.
Click the Distribute button in Organizer. Choose "Save for Enterprise or Ad Hoc deployment" and then select the Ad hoc provisioning profile.
Click export and check "save for enterprise distribution". Fill in the application url and title.
Upload the ipa and plist file to a server. Create an index page which contains a link to the plist file. The link looks like this:
Install Application
Send the url of the index page to the tester.
Did I miss anything? I tried deleting all the provisioning profiles on my phone and then had no problem installing the app by clicking the "Install Application" link. One weird thing that I noticed was that the status of the ad hoc provisioning profile installed on the other person's iphone was "Valid signing identity not found", as well as the team shown as "unknown". I saw somebody mentioned "Code signing entitlements". Does that matter if I leave that empty?
Couple of things to try out:
Check that the UDID you added to the portal is ticked for use under the AdHoc provision. When adding a new UDID it's possible to forget to manually update the provision profile with the new UDID.
Don't create the link yourself and don't use a plist. Just drag the ipa you created to a site like http://www.diawi.com/ and share that link with your tester.
Good Luck
You might want to check that the app bundle identifier in Xcode project is identical to that on Apple Developer portal. App bundle ids are case-sensitive.
Here's a question and more answers about a similar installation issue.