So I got my app up and running on my iPad so I can test it before submitting it for provisioning in the app store. Sweet. Is it possible for me to get the app installed on other iPad's for testing during this phase of development? I have a client who will be using the app and I'd like them to be able to run through it while we iron out the kinks.
Apple call this "ad hoc distribution".
There are many guides around, eg: http://bluxte.net/musings/2009/05/17/ad-hoc-distribution-iphone-application. As Marcelo said, you'll need the udid from the ipad - this can be seen in itunes, connect the device and click on the 'serial number' field under the device summary.
It is a lot easier using the most recent versions of xcode - once you have the certificates sorted out, there's a "build and share" feature in xcode that'll build the necessary .ipa file and automatically attach it to an email. To get to this, use the "build and archive" entry in the 'build' menu, then in the organizer window, select 'archived applications', then the date you just built, then 'share application....', then 'email...'.
Add their device(s) to your provisioning portal, then send them the app along with the provisioning certificate. They'll need to supply you a UDID, which they can do via the free UDID app on the App Store.
Related
I found a way to make a ipa file:
Add necessary profiles and adjust build settings.
Set device as target to run the application.
Build the product.
Go to Products->yourAppName.app. Right click and show in finder.
Drag & drop to itunes profile and binary file.(drag it to Apps)
Select app in iTunes and right click to show in Finder. And there you can get the .ipa file.
But, the devices which are not in the development team can not install it?
Or, did I miss some configuration steps?
Do we have a way to solve this?
No this is NOT possible. The only way to install an app on a device without using the app store is with the ad-hoc method provided by apple, some info about this is found here. For the ad-hoc method you will always need the UDID of the device you want the app to be installed on.
There are a couple of alternatives
You will need an "Enterprise Certificate" for your business. This allows you to install on any device. However Apple does not issue them lightly but if you are working for BigCorp LTD you might be able to get one.
Or use TestFlight at www.testflightapp.com to distribute your build. Im not sure if thats predicated by you having a Enterprise cert in the first place. Check them out.
You can also build the IPA the official way. Just create an ad-hoc provisioning profile, tell Xcode to use it for the Release build and choose Product → Archive. When the Organizer pops up with the app archive, choose Distribute and Save for Enterprise or Ad-Hoc Deployment. Then choose your identity and voila, you get the IPA.
But in either case the provisioning profile has to contain a list of all devices the app is supposed to run on, AFAIK there’s no official way around that.
I used to build .ipa package by the same method with you. But this kind of ipa WITHOUT provisioning profile in package, so it could be run only in iOS devices which has been jailbreak.
Just I want to send the ipa file to my customer in order to test it, I have searched about my question, but unfortunately I did not find the answers.
When the customer want to install the ipa file through iTunes, should his iOS device be registered as a development device in developer.apple.com or no ?
Note: I have installed the ipa to my device successfully, but I don't know if it is completed because my iPhone is already registered .
Thanks.
I would give TestFlight a try. Very Easy to handle...
https://testflightapp.com
Yes, on the provisioning Portal under Device you first need to insert the UDID of the (new) device.
Then, below, in the Provisioning menu go to the Distribution tab.
There, either create a new profile or edit an existing profile. Ensure the device is part of the profile.
After submission of the new/modified profile wait a while. Within a few minutes the download button appears (you will need to refresh the tab).
Download the certificate from Safari and drag&drop it into the Xcode organizer or download it from within Xcode.
Exit Xcode and reopen (helps avoiding strange certificate problems), then Build&Archive
I have developed my first full fledged iPhone app, and tested it on my phone. I would like to have it tested by one of the contributing graphic artists on their iPhone. They live in another state so I do not have access to their device. I added their Device ID to the apple portal.
A couple of questions:
I do not see the device show in Xcode when I hit refresh. Should I be seeing it?
Which executable file(s) do I send to them?
Look at testflight. It makes distributing apps very easy. Since you have already included the designers device ID, all you have to do is:
Sign up to test flight
invite the designer and tell him to register and add his device info
go to apple developer portal - provisioning - distribution and create a new distribution profile (don't forget to add the designers device when creating the profile), download and open the certificate (which will be shown in Xcode's Window>Organizer) - make sure that the correct certificates are selected in your build settings.
make sure that iOS device is selected ( and not the simulator) now in Xcode go to Product>Archive, when the archive is shown click distribute>adhoc distribution
this will create an IPA file.
upload this to test flight and follow the instructions to select the designer from your team.
Use TestFlight. It's free, takes 5 mins to install their API, and gives step by step instructions on how to push your app to any tester over the air.
Add their device id to your developer account, Update your adhoc profile (which you are using for running your app on device) attach their device with this profile. Now again sign your build with updated profile and give this APP file and provisioning profile to others or upload it on TestFlight.
I'm writing a new iPhone app and want to share it with a couple of friends for testing and general feedback and sign-off. Is there a way I can do that?
They are located in a different state, and they don't have a Mac either.
Edit: I wrote this post a long time ago. Since then, services such as TestFlight have come along which do this entire process. This is really the way to go!
You need to make an ad hoc build which your friends can install on their phones. It's a bit of a pain, but basically, the procedure goes like this:
Go to the Apple Developer Center's Provisioning Portal and register their device ID's. You will need to have your friends give you their device ID's, which can be done by clicking on the "Serial Number" field in iTunes on the device page.
Generate a distribution certificate for ad hoc distribution in the Provisioning Portal under Provisioning -> Distribution
Download that certificate yourself (the .mobileprovision file) and install it into Xcode by dragging it on the Xcode icon.
Duplicate your "Release" build setting in Xcode for an Ad Hoc build. Everything should be the same as Release, except in the "Code Signing" section you will want to select the new Ad Hoc profile generated in step 3.
Make an Ad Hoc build by going to Build -> Build and Archive
When Xcode brings up the organizer window, right click on the archived build and make a .ipa file by saving it to disk
Tell your friends to drag the mobile provisioning profile to the iTunes icon (or with File -> Open for windows users) to install it on their phone.
Tell your friends to drag the .ipa file you made into iTunes, and sync their phones
At this point, the app should be installed on their phone, but lots of things can go wrong, so you should definitely read Apple's documentation on the subject as well.
Note that this procedure won't work unless your friends are using iTunes to sync applications with their phones. Also, as noted, you will need to be a paying developer in ADC to even access any of the Provisioning Portal stuff.
You need to create an ad-hoc provisioning profile and build your app with that. Then send both a .zip compressed build and the profile to your friends (maybe over e-mail). They don't necessarily need Macs... Windows will do just fine, as long as they have the latest iTunes installed.
There's more information (including how-tos) at the iOS Provisioning Portal.
All this assumes you've paid your $99 and are a registered iOS developer.
I want to outsource my application testing.
Is there a way to send only the binaries (from xcode) to another user,
and if he gets the right certificate being able somehow to install the app to his device?
You need to create an ad-hoc distribution profile through the Apple Provisioning portal. You also need to register the device UDID as a test device. Than you can send your tester the provisioning profile and the application bundle, which will allow them to deploy by simple drag/drop to iTunes.
Note that you can specify up to 100 devices in an ad-hoc provisioning profile and those devices count against the per-year quota of test devices.
Apple describes this precisely in the iPhone Provisioning Portal documentation. You have to be a registered iPhone developer (with the $99 or more fee) in order to deploy your app on other devices than the ones you use with XCode.
Take a look at the "Devices" section, you have to enter the UDID of the device you want to deploy your code on. Then, for distribution, have a look at the "Distribution/Ad Hoc" section.
The easiest way is the Build-And-Archive function in Xcode - which will also store the dsym file which is essential for crash reports. After the Build-And-Archive, head to the Organizer and you can put the archive into an email with the "Share Application..." button (choose "Archived Applications" on the left).