I am android developer but I have just started the iOS development it was quite a fun until and unless i faced the distribution time.
My app is completed. now I have to give/send demo of the app to my client, I did R&D and found that to install app on device I need a UDID. I have one device also with me I have already added its UDID in my profile, so I can test on it.
Now tell me if I ask my client for UDID and if he supply me UDID, then after it how can I run app on his device. I can not access the client device physically.
I know this has been asked so many times and I have read those question. but most of them are outdated as I can not find those options in xcode
I am using xcode 9.2 and swft 4.2 . Please suggest me a batter way of doing that......
There are many options:-
Create adhoc profile then add UDID of client, then create IPA.Now create diawi link and share to client
Create enterprise profile, Create diawi and then create diawi and share it.
Go with testflight.
Useful Links:-
How create diawi
Create adhox
Use of test
Thanks
If you have client's device UDID then you can send build using Diawi link, Simply follow this steps.
First of all add client's UDID in developer.apple account.
Then Create "Provisioning profile -> AdHoc" profile. when you create AdHoc profile at that time select Client's UDID. (See more details https://support.magplus.com/hc/en-us/articles/204270188-iOS-Creating-an-Ad-Hoc-Distribution-Provisioning-Profile)
Using AdHoc profile archive project in xcode and export .ipa of application.
Upload exported .ipa file in https://www.diawi.com/
After finishing upload you can share build link with client.
Open this build link in safari browser(in device) to install application.
I suggest you use TestFlight.
You can create App on Appstore Connect and then upload one build to the Appstore using Xcode. After that you can simply use TestFlight to allow Internal or External Testers to download the app using TestFlight.
Advantages of TestFlight is that you don't need to have UDIDs of users, you can invite them using their email addresses. Also, you can invite external testers by using the Public Link now. You don't need email addresses of users if you create a Public Link and share the links with the users.
Apple beta distribution options are following,
You must have apple developer account enrolled to give away beta app.
1) TestFlight internal testers:- We can direct distribute by adding testers apple email to TestFlight section in AppStoreConnect.
2) TestFlight External Testers:-
We need to add any email ids of testers, they will get invitation with a redeem code, testers will have to redeem it using TestFlight app. User will notify for every build through TestFlight app. For External we have to submit for review for the first time only for every app version. Recently apple released feature to create a Public Link to invite testers, which you can share to any tester and tester can insert details directly from a web page.
3) Diawi Link:- You can upload build directly to Diawi, and distribute to testers whose UDIDS are attached with provisioning profile. There are some limitations to upload to Diawi like max ipa size is 100mb, expiration time 1day,....
4) AppBox:- To get rid if Diawi limitations, Some one introduce AppBox. AppBox is an open source GitHub repo, I found it some time ago, not using it regularly so I don't have deeper idea. AppBox is using dropbox to upload and using link to share with testers, we can directly upload to AppStore as-well.
Hope it covers all options of beta distribution for iOS, will update answer for AppBox as I will use more.
Related
Basically I was looking for Private Store for in-house App distribution.
I came across Diawi and Hockey app.
Diawi was pretty much strait forward but I got stuck with Hockey as I am not able figure out how to get the download url link over hockey app.. Is it necessary to integrate the hockey SDK Into our project to do so ?
Answering here so that newbies who are new to HockeyApp can add some help from here.
So here it is, Into Hockey app we don't not have a public link to download like in Diawi but it works much similar like TestFlight.
However public link is available over Appcenter for the distribution
group created
The only difference with TestFlight is that you can distribute even on
enterprise version over Appcenter
Step 1:
You should install the hockey app Link : Install hockeyApp or
Alternatively you can login with Appcenter over your browser and once you get the mail you can click on the download which will prompt to install the mscenter config certificate into your device
Step 2:
The app will prompt you to sign up.So Sign up an account.
Step 3:
share your mail ID to Device udid with the owner of app at appcenter.
Step 4:
Once the app is uploaded or new version is updated then you would receive a mail or. notification over your device.
Step 5:
Click on download and instal on mail and that's it you will see Install option screen.
HockeyApp is now acquired by Microsoft and therefore you can enjoy the features of Appcenter as well.
Link:
Hockey app became free for developer
Login link Login into hockey app
Once you login just drag and drop your IPA into dashboard and it would upload.
Alternatively you can use the hockey desktop app to upload the build through spa or Archive.
Add new device link: Adding new device
With iOS ad-hoc provisioning, you will need to add new devices to your provisioning profile by UDID. (You can use more than one Apple Developer Account from the same HockeyApp account, but you can only use one Apple Developer Account per app. You can also have multiple devices associated with one user account, or one device associated with multiple user accounts.)
Apps that qualify to use enterprise provisioning profiles with the Apple Enterprise Developer Program are exempt from needing to import UDIDs into the provisioning profile. (Mixing ad-hoc and enterprise builds in the same app is not supported. You need to split ad-hoc and enterprise builds into two different apps.)
Add beta testers link : Add beta testers
Please add if I miss anything
Thanks
I have a normal Apple Developer Program (not the Enterprise one)
and I need to distribute an iOS application without adding each UDID to the provisioning profile. I do not want to jailbreak iphones.
It is possible to make an Enterprise provisioning profile where the signed applications can be installed on any device without adding it to the provisioning profile. (Correct?)
And it is possible only with Enterprise program. (Correct?)
Are there any other ways to get rid of this dummy need of adding the betatester's UDIDs and recompiling the app whenever new testers come, with Apple Developer Program only?
Providing you're already registered with the Apple Developer Programme, you can upload your build and from within iTunesConnect use the TestFlight options to make your app available for download.
There are two options, 'Internal Testing' and 'External Testing'.
(In answer to question about the profiles, you don't need to have an Enterprise Provisioning Profile.)
As you wish to make the app available for unknown devices, you will need to use external testing. Here is a link to Apple's info on it https://developer.apple.com/testflight/
You will need the email addresses of the beta users (up to 1000 users) as those will be used to send an invitation to download via TestFlight from the device they wish to download to.
For external testing, your app will need to be submitted to Apple for Beta Review, which normally only takes a day or so for them to approve. Once approved this build is available to invite the beta testers to download
I hope this helps
I find out some app on internet that it installed my phone not through Apple Store. When i clicked "Download App" on the website, it will install automatically on the phone. I wonder why this way is available with Apple Security.
Please, give me a reason. ^_^
Read this article:
http://mobiledan.net/2012/03/02/5-options-for-distributing-ios-apps-to-a-limited-audience-legally/
You can do what you want with iOS Developer Enterprise Program -- In-house app distributing.
Compile your Application with Enterprise Account -> Upload on third party site like http://www.diawi.com & share generated link with others
If you don't know about build types then let me tell you there are 3 types of iOS ipa files that can run on iPhone
1-Developer Mode
2-AdHoc Distribution
3-App Store Submission
Developer Mode: it will only run on debugging device
AdHoc : two types of this build
i) Simple account:
for this build you have to add your mobile Udid into the provisioning profile it will only run on that device whose udid is included in the profile.
ii) Premium account:
for this build you don't have to do any thing it will run on every device without adding its udid to provisioning profile.
App Store Submission : for submitting to apple store you have to make this type of build.
//udid means your mobile device id.
Purchase Enterprise account(299 dollars) or simply create ipa and share on TestFlight but you will still need developer account (99 dollars). In developer account you can register only 100 devices so you cant send ipa to many users. In your case Enterprise account is better. It is your choice.
You are correct,
Some apps don't need to go through APP-Store
There is two types of Developer account by Apple,
If you go with "Enterprise Program" (need to pay more), and you have to create Ad-HOC app and upload on 3rd party server, and you can download it from there.
I have finished working on an iOS app that I would like to give some friends of mine to test on their devices before submitting it to the app store. However, they live in another parts of the world, and am unable to get a hold of their respective devices. Is there a way for me to use their UDID and generate an .ipa file to send them to test on their device via email, without them having to physically provide me with their actual device?
I have heard of TestFlight as a possible solution, but can it be used for a device that is located in another part of the world, and I simply have the UDID to work with? Please bear in mind that the people whom I wish to have test my app are NOT iOS developers, and are therefore NOT registered with Apple's Developer program. Can it still be done?
For that you have to create new device in your iOS Provisioning Portal with your friends UDID. And then in your Provisioning Portal > Provisioning > Distribution > Your provisioning profile and edit your currant distribution profile and add newly created divice in that distribution profile. than create ad hoc distribution IPA with this new provisioning profile. And, taadaa, this IPA will run on your friends iPhone.
Here is the screenshot for distribution certificate.
Use this video to create distribution profile and IPA for ad-hoc.
It is same as we are giving our app to client for review.
Yes, TestFlight is exactly the type of service you would use to do this easily with non-developer testers. They will be able to click a link in the e-mail and it will install your app on their phone. It doesn't matter where they are physically located as long as you add their UDIDs to your TestFlight and Apple Developer account.
Testflight allows you to do so. ALl you need to do is to register their UDID in your account and send them a link to download the app. Then you send your applications through the account and they will receive an email to download the app.
Hope this helps..
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/