I'm struggling with a problem that's very similar to this StackOverflow issue: iPhone ad hoc distribution as a team admin with team agent's certificate?. Unfortunately, the answer provided there didn't quite work for me.
Here's the overview:
I'm working on a new project for a 3rd party company that has already shipped one iPhone app. I've set myself up as a Team Admin under their account, generated a development certificate for myself, and been able to develop the new app successfully. I can install and test on my iPhone without a problem.
Now it's time to create an Ad Hoc build for the client to test. This is where I'm struggling.
They already have a distribution certificate. To generate my Ad Hoc provisioning profile, I need to tie it to that existing certificate. Unfortunately, that certificate is not on my machine, so the Ad Hoc profile isn't working.
I've had the client send me the .p12 and .pem files from their keychain, and added them to my login Keychain. What else do I need to do?
I've tried downloading the distribution certificate and dragging it on to Xcode -- no effect. I don't see it under my list of Developer Profiles in the Xcode Organizer.
I've tried to import it into Keychain Access. No effect. It doesn't seem to appear anywhere.
What am I missing???
Since I never got any response to this question, I'll answer it myself.
Or rather, I'll refer to the answer rob5408 provided to this question:
iPhone: Can a dev other than team agent build an app for distribution
That did the trick.
Related
Can I have more than one Distribution Certificate? I am developing an app but the current certificate was not created by me and is for another app. That app and cert was done by someone else who is no longer here.
I downloaded the vert, but in the organizer it tells me, Valid signing identity not found.
What am I to do?
Thanks for the help.
The error is shown, because a valid Signing Identity is not found. The Apple Documentation clearly describes how to export/import it. You should ask the certificate's creator to export his own copy of the certificate (because it can't be re-downloaded from the iOS Dev Center), then you can import and use it.
There's a difference between certificates and provisioning profiles.
Certificates are associated per account while provisioning profiles are for individual apps under each account.
If you are working with multiple iTunes / Apple Developer accounts, then yes you should have a certificate for each of those accounts installed in your keychain.
And assuming your app has it's own application (bundle) ID, you need to have a provisioning profile for each of the apps you're developing under that account. There are different provisioning profiles for distributing ADHOC builds and the Store build that gets uploaded for review by Apple.
It sounds like you need to start with just getting the certificate for the account you want to work with, then the provisioning profile.
I have an iPhone app that was handed to me. I deleted all of the existing certificates & provisioning profiles and created them from scratch. I believe I have set everything in the Provisioning Portal correctly:
Distribution Certificate created
Devices with correct UDID's added
Ad-Hoc Provisioning file created with associated devices
I was able to successfully build & Archive my application. When I save it as a *.ipa and drag that and the *.mobileprovision file into iTunes everything is good, until my phone is syncing.
At that point I get an iTunes Sync: Failed to Install error. Other testers get the error: The app was not installed because the signer is not valid
I am not sure how to resolve this?
I have received that error because I had created my .ipa file with the ad hoc provisioning profile BEFORE I added the devices. Are you sure that you are using the most recent provisioning profile when you create the ipa? You may need to check which scheme you are using and verify its right
Everything was correct, except for the final stage where I am given the save options. The profile matched my Distribution profile, but for the wrong app. It just defaulted to one of them. I had to manually change it to the Ad Hoc Distribution I was building for. Silly mistake.
This question was not resolved by the above suggestions, however we were able to fix it by removing the entitlements from the build.
This problem happened while working on an old app we were updating. No jailbreaking, just an ad hoc .ipa sent over email between team members. All provisions were correct.
We were able to figure out the issue was entitlements by trying to install using "iPhone Configuration Utility" instead of iTunes. That gave us the actual error message which was easy to fix.
Debugging this issue was easier than with iTunes. It also has better UI for installing ad hoc builds. I recommend you try it here:
http://www.macupdate.com/app/mac/27986/apple-iphone-configuration-utility
i already face this , finnaly i found,.
If Your Certificates, Provisoning Profiles then & the ipa is generated,,
so there is no problem in your ipa File,
But Problem in Specific Device in which you are try to insalled,,
If Your Device is JailBroken Then Easily iTunes cab Install ipa,,
But If Not Then You Have To Register/Add device to
https://developer.apple.com/devcenter/ios/index.action
->Procsoning Profile -> Devices
Then & Then Ipa File Is Installed
First a little background. I am building a mobile app for a client, this client currently owns the developer account they wish to distribute the application from. Previously, I had been using my own developer account to build ad hoc to send milestone builds to the client. We are now getting close to ship and I have begun transferring the build to using the client's credentials.
Honestly, this is the first time I've worked on an app that was in my own developer account, so even setting up the dev cert/provisioning took some trouble shooting. Specifically, I couldn't use their existing developer certificate, but one that I created on my machine, uploaded and they approved. That's fine, I'm building locally to my device now.
However, (and here's my question) I ran into problems setting it up for them to do ad hoc distributions. Namely, installing their ad hoc certificate doesn't seem to work. My assumption is that it is because it wasn't build on my machine. However, there is no facility as a non-team agent to create my own Ad Hoc certificate.
Is it the case that only team agents can do Ad Hoc (and I'm assuming submission builds) from their machine? Is there no way that I as a Team Member can do an ad hoc build from my development machine?
When you generate a signing request in Keychain Utility (the first step of generating an Ad Hoc profile), it simultaneous generates a private key and saves it to your keychain. You can only build against the Ad Hoc provisioning profile if you have that private key in the Keychain on your Mac.
So your solutions are
Get them to export their private key from the keychain and send it to you. You then import it into your keychain. They should also send you the Ad Hoc mobileprovisioning file they created. You drag and drop this onto xcode.
Generate the signing request on your machine, and send it to them to generate a new Ad Hoc profile which will then only work on your Mac (though again, you could send them the private key).
The final option would be to send the source code to them to compile the Ad Hoc builds.
The Provisioning Portal Distribution How-To explicitly states:
Only Team Agents are authorized to
prepare and submit applications for
distribution.
Team Agents are also the only ones authorized to create an Ad-Hoc distribution profile.
However, once the distribution profile is created, the Team Agent should be able to download it and hand it off to you for creating Ad-Hoc distribution builds.
my work colleague is asking me to send a build so that he can install the application on his phone to test it. I need to send this application to him today. a build that is. not the actualy project just the correct files needed so he can install it on his iphone.
Heres what I've done.
Ive added his UDID to a new device in the provisioning portal.
then i created a new provisioning profile with my app id.
On the provisioning portal there is an option in the profile section next to that new profile i just created where i can download the profile onto my desktop.
What do do from here?
Follow the steps on the portal to creating an ad hoc build and certificate.
Look at the following link, will require login to Apple.
http://developer.apple.com/ios/manage/distribution/distribution.action
Craig Hockenberry gives an excellent write up on beta testing with ad hoc provisioning here as well: http://furbo.org/2008/08/06/beta-testing-on-iphone-20/
Use TestFlight: I've blogged about Getting mobile app builds to your customers which includes a brief tutorial with screenshots on how to use TestFlight.
I'm trying to do an ad hoc distribution of my iPhone app to some beta testers. I created the certs, device IDs, provisioning profiles, etc. and followed the instructions on Apple's site regarding how to incorporate them into the build/distribution. When I copy the provisioning profile and app to iTunes and try to sync, I get the following message:
The application "XYZ" was not installed on the iPhone "Eric's iPhone" because the entitlements are not valid.
It seems like everyone else that runs into this problem solves it by adding the Entitlements.plist file to the build configuration. The thing is, I've created (and edited) that file correctly. I see it and the provisioning profile in the built app.
Does anyone know what might be going on?
Regards,
Eric
Did you go into the build settings for the AdHoc configuration and make sure the Code Signing Entitlements setting is set to point to your Entitlements.plist file?