Is ipa file enough for iphone app ad-hoc distribution? - iphone

I followed the instructions to generate an ad-hoc distribution file (.ipa) for my app, now I have couple questions
1. do I still need to zip it up with mobileprovision file to give to my tester?
2. would it be possible for other unauthorized people to deploy on to their iphone and run the app? I believe the device UUID should prevent that, but just want to make sure.

You don't need to additionally provide the provisioning profile. Xcode will put it into the .ipa file, if you generated the .ipa with the Organizer.
By default it will not be possible. BUT if someone else has a jailbroken device, it is possible to run the app. Also if the other person has a iOS developer certificate, he can resign it with his own certificate and run the app. But other than that, the app will not run if the device is not part of the provisioning profile.

What VeryVito said. Would also like to add: have you seen Testflight? Makes getting your app to testers a lot easier. And Testflight has a (optional) SDK so you can add various things to your app, like tracking waypoints, etc.

You will need the mobileprovision file as well. And no, others not included in the profile will not be able to run the app.

Related

Can you add devices to an ad-hoc distribution without re-creating the IPA?

I need to distribute an app to an unspecified number of testers. I don't currently know how many will be wanting access, and therefore don't have their UDID's. From what I've read on the subject, you need to create an IPA that's signed to the devices (or to a provisioning profile that contains the devices) that are permitted to access it, or something like that?
My question is can you add devices to an IPA after it has been created?
I was intending to create a website for distribution, and add the devices as and when I receive the ID's. I don't want to go and re-create the IPA each time if I can help it.
I use TestFlight.com for test ipa distributions. This feature is available there. Check this link.
If you are developing your own distribution portal, then you need to write scripts for resigning the ipa with new provisioning profile.
You have to add those UDID of the new device and then add them to your provisioning profile and then create an ipa file with that profile.
You can't directly add the new device UDIDs to an ipa file.
This is for the security purpose by APPLE. By this no one can install the application in to their device without the direct permission of the developer.
No. It is not possible. You have to recreate IPA again.
As #sarwar said testflight will help.

How to test iphone app on remote location

I have created an iPhone application. I don't have the iPhone and I want to test the application on the iPhone of my friend who is far from me. How can I test it on his iPhone?
When I searched on google, it told me that you need to have the device with you. Is it possible to send the wrap and send the application to a remote location and get tested from there? I also have the Apple ID and license.
Yes with a tool like TestFlight you will be able to check wether or not your will work on a device. Thus is good for acceptance testing but never for technical working of an app.
But when it comes to really testing a device is needed, there is not way around it. You should do performance testing on a device.
Also there is no way to use the debugger unless it is connected to your development machine.
If you are developing for iOS get an iOS device.
It's possible, check Test Flight:
https://testflightapp.com/
I used it in the past for the same scenario as you
You should have a device yourself for testing on, before you publish anything in the App Store. Testing in the simulator is just not the same as testing on a device.
On developer.apple.com you will need to create a Ad Hoc distribution profile. You will also need to add all the devices you want to run the app on to this profile. Once you have the profile and you have it installed in Xcode, you can run an Archive build and sign it with the distribution profile. After this you can select the archive and click on 'Distribute...' to generate a .ipa file.
Once you have this .ipa file, you could use a site like testflightapp.com to distribute the app to test-devices. (you could also just email it ;-) )
If you are looking for just a way to transfer the ipa to someone else the best simplest solution for that would be http://www.diawi.com/ or https://appsendr.com
Get the target Device UDID and add it to your testing list, Create your IPA, drag it to the site above, Done.
No need to signup or anything like that.
I like appsendr better because of the small app they provide.
Lets you drag the IPA to your tool bar and have the ipa url right in your clipboard once it's uploaded.

Can I make an IPA file for iOS devices that are not in the provisioning profile?

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.

How to test app on device by installing .app (binary) file? (without using Xcode for testing)

I have created an app and I want to send that to another person for testing it. )
He got an iPhone and a mac, but doesn't have xcode on his mac. (he is not an iphone programmer) So,
If I send the .app file, can he test that on his iPhone? If not, how else I can do this?
This is my first app :) and I have no idea about testing on real devices. So please help me.
Thanks in advance. :)
You need to do what's called "ad-hoc distribution", which requires creating a special ad-hoc provisioning profile that includes your tester's device UDID.
I highly recommend https://testflight.apple.com/ as it greatly simplifies distributing your ad-hoc builds.
Yes, this is what "Ad-hoc" testing is. You'll need to:
Add the friend's device to the iOS provisioning portal at developer.apple.com
Generate a provisioning profile that includes it for your app.
Build the app using this profile.
Generate an .IPA file using Product->Archive
Send the friend that .IPA file.
Many more details available in Apple's guides under "Ad-Hoc" testing.

How to circulate your iOS app for testing without using XCode?

I have an initial build of my app which I want to circulate for testing to few others who do not have XCode with them. All I want to do is pass them the binary which they will install to their devices using iTunes. I have created my developer certificate, created an app id and added the device udids in my provisioning portal.
So now can I directly email them the binary and ask them to drag and drop into itunes and then on the device ?
Thanks!
I tested it myself and it's amazing: You should try Testflight.
It's a simple to use service (free) that allows you to distribute your adHoc builds easy and fast (might sound like advertising but it's really one of the best tools I came across).
Build archive and it will appear in organizer. There is big Share button that allows you to save ipa file which you pass on to testers.