Can I distribute my App for any device without UDID?
Solution 1
"Private company". There's the clue.
App store developers can only distribute apps to (up to 100) devices with known UDIDs. That's the $100 plan most of us have. We can only create signing profiles for ad-hoc distribution to our 100 devices, or for sending to Apple. ([eta:] Or, now, for time-limited distribution to specific AppleIDs through the new Apple TestFlight.)
There also exists the enterprise developer program, a $300 annual plan open to businesses (currently, any business with a DUNS number; the requirements used to be more stringent.) Enterprise developers can't submit to the app store, but they can sign apps for installation onto any device, without knowledge of UDIDs.
The enterprise developer contract includes an agreement not to install such apps on devices not associated with the organization or business. Devices do verify the signing certificate with Apple, so if you try to sell enterprise-signed apps to the public, Apple will notice and shut you down. Also, enterprise provisioning profiles expire annually, so devices have to be refreshed with new profiles or the apps stop working.
[Edit to add, later:] A third, excellent, option (really just a feature of the first) is the B-2-B App Store. We've found this to be a much better fit for most user cases where we had been setting up enterprise accounts for clients before. It works almost the same as regular app store distribution, except that the app isn't public - it's visible only to a list of client AppleIDs that you, the developer, specify on upload. Those clients, who must sign up with Apple Business Manager (it's free), may then "purchase" as many copies of the app as they want, in the form of redemption codes, and distribute them to end user devices however is convenient.
It's very slick. Watch the WWDC video on it (a little outdated now but it'll give you the gist). B2B apps may cost anything you like, including $0. Downloads and updates use the normal app store mechanisms. Redemption codes may be assigned by device instead of by AppleID if the client uses Apple Configurator to provision their devices. There are some limitations but they aren't onerous. Highly recommended.
Solution 2
It is possible using Apple Developer Testflight (yes, Apple bought a company called Testflight and didn't rename its service) for distributing iOS applications without needing to manage UDIDs.
Internal testing
You do need to know testers itunes Apple ID and there is a hard limit for available beta testers seats per app. As of 2016 it is 25 testers with up to 10 devices each. You need to assign testers admin or developer roles.
External testing
App has to pass the review process and there is limit of 2000 users.
Solution 3
You can use TestFlight Public Link.
https://developer.apple.com/news/?id=09262018a
Almas Adilbek
Geek designer. I'm focused on quality products, where every single pixel is indispensable., Founder of Sajda.mobi & Kaz.News
Updated on August 03, 2022Comments
-
Almas Adilbek over 1 year
I've been searching stackoverflow, reading in the various blogs to get answer to my question "Can I distribute my app to someone, without getting his device UDID?"
The answers I found is all about "NO! You must have the list of UDIDs"
BUT, I've people (private company) telling me that they used to install apps without giving their device UDIDs to developer. Developer used to send them .ipa file, they just drag&drop it in itunes, that's it! I'm dizzy..
By which way they did it without UDIDs? (I'm against jailbreak, it's not option)
Or, maybe they're lying? -
Almas Adilbek over 12 yearsHow apps stops working? Through internet connection? What cases will cause apps to stop?
-
bshirley over 12 yearsIn the same way a developer debug installed app stops working on your device: when the provisioning profile expires, the app will not launch.
-
Holger Sindbaek about 11 years@rgeorge thanks for the clear answer. Do you have a tutorial on how to work with enterprise accounts? What does Apple mean with "devices associated with the organization"? Do you think they are very strict with that?
-
healadin about 11 yearsAs for working with them, it's pretty easy - works just like a developer account, except that you can make signing profiles that will run on any device. I believe the contract specifies devices owned by and under control of the organization. As for strictness, I don't know, since we've never pushed the boundaries. Devices do verify profile certificates with Apple, so if 1000000 devices install an "in-house" app by a company with 50 people, Apple could in principle notice and revoke the enterprise membership. That would immediately prevent the app from running anywhere. Not worth the risk.
-
VH-NZZ over 10 yearsGreat reply. Do note that, as of Dec. 2013, the only downside of the VPP is that it is only available in select countries that happen to exclude some with (very) high densities of iOS devices (Switzerland, Sweden, Norway, Denmark, Finland for instance) so it's a little useless to us for now. Hopefully Apple will add countries soon but so far I got a dead end answer from them.
-
jujule about 9 yearswill be shutdown on 2/26/2015 : thenextweb.com/apps/2015/01/26/…
-
Felipe Balduino Cassar about 9 years@jujule only TestFlightApp.com service will be shut down. the TestFlight native app will substitute the old website.
-
Victor almost 9 yearsApple extends countries list: Australia, Belgium, Canada, Denmark, Finland, France, Germany, Greece, Hong Kong, Ireland, Italy, Japan, Luxembourg, Mexico, Netherlands, New Zealand, Norway, Singapore, Spain, Sweden, Switzerland, Taiwan, Turkey, United Arab Emirates, United Kingdom, United States.
-
Andres C about 8 yearsIn order to do this you need the Dev Account right? Do you know of any way to distribute to devices that are not mine without the USD100 account? Thx!
-
jungledev almost 8 years@rgeorge I wish Apple paid you to write their documentation. So clear. If only...
-
Hubert Perron about 7 yearsPlease note that TestFlight build expire after only 60 days. So that mean you have to publish a new build every 60 days if you want your user to continue using your app. The other solutions proposed in the accepted answer are way better integrated for those kind of deployments.
-
Almas Adilbek over 4 yearsYeah, that is something happened in the future)
-
Master_Tushar about 4 yearsYou can you Firebase - Quality - Crashlytics, Read this: firebase.google.com/docs/app-distribution/ios/…
-
Ishita Sinha over 2 yearsThe link in this answer isn't available anymore, but good news from the future: TestFlight was acquired by Apple and continues to function as a part of App Store Connect. It has become standard, since, to use TestFlight to test iOS apps before distributing them to App Store.
-
Qazi Ammar almost 2 yearsyou can use TestFlight Public link to distribute to anyone. Please read this : developer.apple.com/testflight