Install app on test users - iphone

I recently finished my app development and now I need to test it with fair amount of users. So I want to install it on my friends devices. It will be hard work to manually install the app from my Macbook on each device, So Is there a way to let them install the app themselves? Maybe send them a link or something..

You can use something like TestFlight App to automate the process of sending builds via email so your beta testers can click on a link and install the app directly on the device. You will however need to add their Device UUID's initially to your signing certificate for each build

You may use TestFlight service https://testflightapp.com.
This is a free service that allows you to define a test user base, inform & invite them and to distribute your app quite easily for them to be tested.
The basic logic is the same as Apple's, but it is just very easy to learn and use - even testers that are truly "normal" users of iPhone can easily be invited and start testing your app.

Here is a nice tutorial on distributing builds to your testers:
How to Host a Beta Test

They only way I think they would be able to do that is by having their devices registered on your Apple Developers account and they will need the provisioning licenses given by you.
Then once they have the project they can upload it to their device if they have a Macintosh.

Related

Test Phonegap Build app on a friend's iPhone

I have created a mobile app using Phonegap Build (not just Phonegap...but Build). I have a Windows PC and do not use eclipse or xcode. I just write the Javascript and let Build do all the complex stuff for me.
I can easily test my app on an Android device by scanning the QR code that is displayed on the Build page after my app compiles....but how can I test on an iPhone or iPad? I can convince a family member to loan me one for a day, but I don't have a Mac (I could probably visit another friend to use one, briefly).
It would not be appropriate at this point to spend $99 on a developer certificate, even though this app may be submitted to the store eventually. If $99 is the only option, I would be grateful to anyone who makes this clear!
Or perhaps I just need to learn about TestFlight or Lesspainful? The descriptions are confusing me at present, but I will try harder if I hear some experts tell me that this is the right way to go!
It would be good to test on a real Apple device, as I haven't had much luck getting an emulator going...but perhaps the only answer to my dilemma is to tell me to stick with emulators. (In which case: is there a nice step-by-step tutorial for a complete beginner to install an iPhone emulator in Windows?).
Thank you.
If you want to test on a device, your app needs to be signed using your certificate. You'll also need a development provision profile that includes the device ID's of any devices you want to test on. In order to get those things, you need to join Apple's iOS developer program. This is true even if you're using the PhoneGap Build service; in order to build for a device, you need to upload your certificate and provision profile to PhoneGap Build. Look at PhoneGap Build's Building for iOS page for complete information. All this means that you'll need to pay the $99 fee to join the iOS Developer Program.
An alternative is to jailbreak your device (or, in this case, your friend's device). You can find instructions for that on the web if you're so inclined. However, I don't think you'll be able to build through PhoneGap Build in that case -- you'll need to build your app yourself with Xcode or possibly some other set of tools.
Just as an update for anyone else that ends up here. You can now use Adobe PhoneGap Developer App which allows you to run the Apps on devices without ID's, licenses etc. Here is a guide to getting started.
You would need to join the Apple Developer Program to be able to sign the build and create the .IPA to use TestFlight or other methods to get the build onto the device.
There are options for you to test on a device without that though - see App.io for an in-browser emulator.
Whether you go with that or TestFlight I've blogged about Getting mobile app builds to your customers which includes the pros and cons of the options and the steps you'd need to go through.
install iTune on your windows PC. Copy IPA file to application directory of iTune. When connecting device (iPhone,iPad or iPod), sync apps. Then you can test on real device.

Distribute iphone app for external beta - sign on behalf of customer

My Company is building an app which we want the external customers to try out before submitting to the app store. Since in-house builds can only be distributed to employees of the company, what's the best way to get the app to beta customers without going through the app store?
If the customer signs up for a developer or enterprise account and gives us their certificate, is it ok to sign the app on their behalf and give it to them?
Thanks!
Update: Number of devices is more than 100.
If you have less than 100 devices you want to run the app on, you can do adhoc builds and distribute them via your own web server or TestFlight. You will need the UDID of every device that it will be installed on, though. I usually suggest people run Ad Hoc Helper for that. See iPhone ad hoc build using Xcode 4 and http://itunes.apple.com/us/app/ad-hoc-helper/id285691333?mt=8
My answer requires devices to be jailbroken.
Since you say you need more than 100 devices, you could fake sign the app. This will allow you to install on as many devices as you need.
P.S. I recommend option #2 on the fake signing link I gave you.

How best to share iOS app progress with customer

I'm making an iOS app for a client, and need to share my progress with them in a convenient way.
At the moment I know of two options:
add their device to my provisioning profile then send an IPA to them
send an app through to them, built for the simulator, and have them run that directly
Neither of these are ideal, as the simulator doesn't give the full experience, and getting UDIDs off non-technical people can be painful.
Are there any other options I should know about?
I use testflight - iOS beta testing on the fly. I used to battle with the same problems you mentioned but once I started using testflight, I didn't look back. What testflight allows is -
You can add the specific customer to send the IPA to.
Progress reports
No need for your customer to go through the complicated Provisioning certificate
No need to register your device
You can even create groups and send different builds to different groups. Like "Test Group" would get more bleeding edge builds whereas the customers might get a more stable build.
Free over-the-air beta distribution. Apps are installed in one tap over-the-air and users will be notified of future builds.
Recruitment: Promote your beta app and select new users that sign up
Works within Apple’s guidelines and rules for ad hoc provisioning and device # limitations
You don’t need to jailbreak or alter your phone.
It is not a replacement for Apple’s ad hoc provisioning profile and device limitations.
Hope this helps...
PS: I do not work at testflight & this is not a promo. Just appreciating a good product...
UPDATE: Recently test flight has launched TestFlight Live, pretty awesome for tracking launched apps. This is all with detailed flowcharts et al. Definitely worth a dekko. Defunct after Apple buying TestFlight (or available in different name)
LATER UPDATE: Apple has bought TestFlight. Links updated.
https://testflightapp.com takes a lot of the pain out of circulating iOS app builds. It's free and it's worked very well for me.

Ad-hoc style distribution for an iPad app?

I'm talking with a client who is abroad and I'm wondering whether I will be able to send him versions of the iPad app for testing before it's on iTunes.
Is there a solution (e.g. Ad-Hoc?) I could rely that doesn't require jailbreak or anything?
If so, could you please provide me with a link to a guide?
Thank you !
Yes Ad-hoc is what you need, basically you will need to associate your client device identifier (UDID) to a certificate that you will use to sign application.
This is a standard procedure (no jailbreak required) that is fully documented on Apple provisioning portal in User Program Guide (you have to apply ($99) for the developer program and be logged to access this... and it is limited to 100 devices)
Another good thing is to use an "Ad-Hoc" updater such as HockeyKit to ease your client updates and installation procedure...
Yes, indeed, there is an ad-hoc distribution method:
here is its mention on the Apple Developer website. As far as details, I think you have to be in the developer program in order to get direct documentation for that, and sadly I allowed my developer account to lapse. A few key points can be found here
Essentially, you can distribute to up to 100 other iOS users who have your group's apple developer credentials installed on their phone, and the app will remain live for 90 days
Essentially, it's the same headache on the remote side with certs, keys, etc... that you have to do with XCode when developing on the device, but you can put the app on a website somewhere where the remote party can install it on their phone.
EDIT: I found this guide that is presented on a forum if you want to look through the steps.

How to test the final distribution build before submitting it for review to the iPhone app store?

I have developed an iPhone App and I want to test this final distribution build before submitting it to the App Store for review.
Is there any safe way to make this app to run on a device?
You might want to also check out Craig Hockenberry's "The final test" blog post.
Craig gives a method of testing where the only difference between what you test and what you submit is the signing identity.
No, you can't. This makes me a little nuts, too. If you set up an ad-hoc distribution profile, that is as close as you can get. On the "positive" side, you're guaranteed to have your app rejected if it can't be installed properly...
check this out, you can actually test a distribution build :
http://nikhilkerala.blogspot.com/2010/12/how-to-test-app-store-distribution.html
You can setup a beta through the iPhone portal program. You can then load the App and the associated profile onto a phone through iTunes or XCode.
I know this question is a little old, but I've recently found a better way of testing and distributing my Apps prior to submission and this method allows me to easily get it on real devices without having to have the device physically in my hands or have the user muck with provisioning profiles, certificates or iTunes syncing.
Developers can create an account on TestFlight and create a team.
After creating a team, invite testers to your team (click "Invite a Teammate" on the team's page). The tester will receive an invitation email to join your team and will be walked through the process of creating a basic account (name, email, password) and will have their device registered and their account will be added to your team.
Once you have your testers in place, go to your team's page and select all the testers, export their device information via the link and import that list into an Ad-Hoc distribution profile.
Import that profile (and the Ad-Hoc certificate) into Xcode and rebuild your project and share it as an *.ipa file.
Go back to your TestFlightApp.com team's page and upload the binary. All the testers on your team with access to the build will get an email notification about it. All they have to do is click "Install" in the email and they will be taken to a TestFlightApp.com page that will install the App on their device over the air, no iTunes, no mucking around with profiles, etc.
I tested it this morning actually and I'm very impressed with how easy it is and it also happens to be free.
It is actually possible to install the distribution build if you have once previously installed an Ad Hoc build on your phone. Most people simply never tried it =)
And no jailbreak is required. For step by step instructions, see my answer here:
Testing App Store "Distribution" version