Transfer iOS executable from Xcode - ios

I have developed an app using Xcode. Now, i want to give the executable to a friend to test. However, my friend is outside United States and I cannot deploy as I do on my test device.
Is there a way to do it?

Based on user's suggestions, I did some research and got my answer. Just want to share with anyone who has the same question...
What I should be doing is to make the app available for Beta testing. Below are the steps to do so.
Register all test devices.
Create distribution certificate.
Create ad hoc provisioning profile.
Archive and validate your app.
Create iOS App Store Package.
Install app on all test devices.
Get crash reports from testers.
For more details, please search for 'Beta Testing Your iOS App' in Apple Developer Center.

To the best of my understanding, there is no other way except adding the UDID of your friends device into the provisioning profile(be it development/distribution) and using it - Archive the project - validate once and share it across.

Related

How to generate IPA file without apple developer program and without a connected device in Xcode 7.2?

My employer doesn't have an iPhone for testing, they are also not enrolled into Apple's developer program, but they recruited me as an iOS developer.
I was told to create an app and I did it with the help of simulator.
Now, they want me to generate an IPA file of that application for their client who is in another country to test, in his iPhone. Is that even possible?
You will certainly need a developer account if you want to run your app on a physical device (unless that device is jailbroken, which I wouldn't recommend). If your employer hired you as an iOS developer, you need to inform them that a requirement to doing iOS development is a developer account.
If you are going to be writing iOS apps to deploy on client device (which you won't have physical access to), you have a couple of options.
You could have your employer pay for the enterprise developer account ($299/year). This allows you to have an In House Distribution profile, which lets you build an IPA that can run on any iOS device without the need to register the UDID for each device in the provisioning profile.
You could use Apple's TestFlight to deploy the app to your clients' devices. This still requires a paid developer account as you are basically creating an app store build and distributing to others as "beta testers". The app goes through a more lax review process, but it still must have been signed with a distribution certificate, which you only can get with a paid account.
Bottom line, if your company is asking you to develop apps professionally, you need to get them to understand that the $99/year fee is part of the process. IF they can't justify that, they shouldn't be hiring out iOS development jobs.
Without Apple developer's account it is not possible. You would not be able to archive your code either. Have a look at these documents :
Apple's documentation : Exporting Your App for Testing (iOS, tvOS, watchOS)
Stackoverflow : How to export an ipa in Xcode 7
you have to enrolled into Apple's developer program, and add all UDID into you app device ID than generate a provisional profile. install it in xcode than create an archive, zip it and upload to diawi.com. Diawi( https://www.diawi.com/ ) is best solution, It will generate a link which you can give to client and they can install it on their device directly.
I have faced same problem at start of my job :)
- but it is not possible to generate ipa without apple developer account.
- and even if you connect device to deploy then device iOS version and XCode iOS version must be same.
you have to enrolled into Apple's developer program and this is not enough. For over-the-air installation you have to use apple's testflight or hockeyapp like third party apps.

How do you distribute beta iOS apps to your team without using test flight?

I have build an app. i want to distribute it to lots of user until it get approved from Apple.
I don't want to use test flight and other third part distribution app
Is there is any way to do this
Thanks
You can create ipa using distribution profile, then you share it over mail, or any share medium. Generally I use dropbox. you can refer this link to share. http://dr-palaniraja.blogspot.in/2011/06/distribute-your-iphoneipad-adhoc-builds.html
You could use an alternate app distribution system such as HockeyApp.
Is there a special reason you don't want to use TestFlight?
Try diawi
Diawi is a tool for iOS developers to deploy Development and Ad hoc iOS applications directly to the device.
Source: Diawi
There are lots of third party app distribution available over net.
You can use
Diwai , Hockey , but you have to make sure that user device id must be present in the provisioning profile from which you have made the build.
I usually use Crashlytics Beta, a Fabric product.
Try testFairy, it is easy to use and will not require any app. Just upload your .ipa, inform your teammates and they will be able to install your app from the email sent (like the old testFlight).

How to let someone test run iOS app on device without revealing code?

I have created a Universal iOS app and tested it on both iOS Simulator and on my iPad. I have a developer friend who has an iPhone, and has agreed to test run it on his own device. I would like to send the app to him. I was wondering if there is any way to send it without revealing the entire code?
P.S. I have been a registered iOS dev for several years now but haven't yet released any apps. This will be my first one.
You should create an *.ipa file and send it to your friend and how to create it is give here.
http://bmpradeep.wordpress.com/2013/01/01/how-to-create-an-ipa-file-in-xcode-4-3-or-higher/
you can also check Testflight.
You should read apple's app distribution guide for beta testing. I have linked to it.
Apple Docs
If you want to test app on your friend side but don't show code to him then you need build app on your side and send *.ipa file to your friend. For it you need developer certificate with private key and provisioning profile with your friend's iPhone UDID. If your friend - is owner of developer account then provide to him your app Bundle Id and he will generate provisioning profile for you. The main idea that *.ipa file could be run on device but it doesn't contain source code.

Sending tester iOS app

I am programming an iOS app for somebody living in a different state. Last time I finished an update for him to test, he had to drive over to get it on his iPad.
He's all set up with provisioning profiles and such. Last time I just hit "Run" in xcode and it ran on his iPad.
Is there a way to send him the app as a link in an email? The app is very small (around 20mb). He doesn't have a mac so he can't open the xcode file, but he does have iTunes.
What other (preferably free) way could I send him the app via internet to test?
Thanks in advance
If you are targeting iOS 8+ you can actually setup Beta and Sandbox testers directly in iTunes Conenct, without needing any device UUIDs, just email addresses. This makes it a synch to setup and manage, without caring about which device[s] someone owns.
Just go to iTunes Connect > Users and Roles. There you can add people. Then going into your actual application, you can assign people to participate in testing. You then just upload your application via Xcode (like you would for a release) and lastly, approve that build for prerelease, which will allow all of your testers to install it.
Original Post:
We use Ad Hoc distribution to handle this. It took us awhile to get it all working but once we did it has worked amazingly for all of our beta testers. We send new updates of our app to a handful of people to test before we push updates.
Here is a tutorial that may help.
You can use Ad Hoc provisioning profile for his device and archive your project for Ad Hoc.

Distribute iPhone app to testers?

I am working on my iphone app and now I want to send my app to my testers. But how should I send it to them ? Plus, they don't have an Xcode. Is it necessary?
Take a look at Test Flight. We are currently using it and it offers a lot of great tools and is very easy to set up.
testflightapp.com
It distributes it adhoc and then you can push it directly to the testers and allows you to see install statuses. Time spent and other analytic tools.
To answer your other questions. The don't need Xcode. They just need to have their UDID registered on your apple account. They will get sent an email that will ask to download the latest release. The app then installs over the air.
Since iOS 4.0, users have been able to install Ad-Hoc apps over the air. Please note you're required to get the testers' device UDIDs and add them to your device list on developer.apple.com and to the app's the provisioning profile.
You can host the IPA yourself, but I would recommend using TestFlightApp.com.
Macworld wrote a decent article about the gist of it, and TestFlight is fairly straightforward to use, especially since it allows you to send an email or link to your testers and collect the needed UDID from them.
Try diawi.
I find it very simple and very friendly to use. Also there is no wait in the queue type registration stuff. When you open it just drag and drop the .ipa file and the provisioning profile. To verify whether or not your app has been installed, just add your email id in the field mentioned and you will get a confirmatory email about your app installation. For installation at the tester's end they simply need Safari to install the app and the profile.
Below are the steps to create .ipa file (xcode 4.2)
Select iOS Device>Go to Product>Archive>Share>Choose iOS App Store Package (.ipa)>Provide a path to save.
Easily done!!!
From 26 feb 15 Testflight is closed their service...
I have used new link for creating installation link of ipa and distribute link to your client, tester etc.
open this link
http://www.diawi.com/index.php
upload provisioning profile(drag and drop) to their dashboard.
upload ipa(drag and drop) to their dashboard.
click on send button.
after that copy generated link and share to your client and tester.
With iOS 8, Xcode 6, iTunes Connect and TestFlight you don't need UDIDs and Ad Hocs anymore. You will just need an Apple ID from your beta tester. Right now you can only beta test your app with 25 internal testers, but soon 1000 external testers will be available too. This blog post show you how to set up a beta test with internal testers,
http://blog.thebetafamily.com/2014/09/10/testflight-beta-testing-ios-8/

Resources