54

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?

pjs
  • 16,350
  • 4
  • 23
  • 44
Almas Adilbek
  • 4,171
  • 10
  • 55
  • 94
  • why you want to do it would help us provide an answer. "No" *is* the short answer. If you have a Corporate iOS Developer account you can package up apps to be installed directly onto any iOS device (restricted by license) of any employee of your company. – bshirley Jan 12 '12 at 04:46
  • You mean, I have to get enterprise developer acount, then I can package my app and distribute it for any device in my company? Without knowing UDIDs?! – Almas Adilbek Jan 12 '12 at 04:49
  • @AlmasAdilbek Seems I'm wrong. Seems for enterprise distribution it is possible. Look at the http://stackoverflow.com/questions/7306441/ios-enterprise-program-vs-ios-developer-program – 4ndrew Jan 12 '12 at 04:59
  • Well, it's funny, I will not dare to believe, so many answers around... – Almas Adilbek Jan 12 '12 at 05:08
  • re: your first question: yes. yes. I'm working with a client now with that setup. We also check their server for the most updated version of the app. If they're running an old copy, we don't let it continue and send it to a link on their intranet, they can instantly install. Only have to support the latest app. – bshirley Jan 12 '12 at 06:00

4 Answers4

64

"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.

rgeorge
  • 7,225
  • 2
  • 31
  • 41
  • How apps stops working? Through internet connection? What cases will cause apps to stop? – Almas Adilbek Jan 12 '12 at 05:25
  • 1
    In the same way a developer debug installed app stops working on your device: when the provisioning profile expires, the app will not launch. – bshirley Jan 12 '12 at 05:59
  • 1
    @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? – Holger Sindbaek Apr 06 '13 at 06:20
  • 1
    As 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. – rgeorge Apr 06 '13 at 15:22
  • Great 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. – VH-NZZ Dec 21 '13 at 12:06
  • Apple 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. – Victor Jun 20 '15 at 16:02
  • @rgeorge I wish Apple paid you to write their documentation. So clear. If only... – jungledev Jul 18 '16 at 20:47
  • You can you Firebase - Quality - Crashlytics, Read this: https://firebase.google.com/docs/app-distribution/ios/distribute-console – Master_Tushar Jan 31 '20 at 10:08
3

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.

Indrek Kõue
  • 6,068
  • 7
  • 32
  • 66
  • In 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! – Andres C Apr 13 '16 at 20:45
  • Please 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. – Hubert Perron Mar 31 '17 at 15:12
1

You can use TestFlight Public Link.

https://medium.com/nsistanbul/testflight-public-link-ile-beta-testçileri-kolayca-davet-et-d452886b64d8

https://developer.apple.com/news/?id=09262018a

Yunus T.
  • 305
  • 4
  • 8
0

There are a couple of services that can do this for you, one is TestFlight which uses the enterprize developer signing that rgeorge has described to distribute your app. The testers do not even need to use iTunes to install the app to their device.

snez
  • 2,154
  • 21
  • 18
  • 1
    will be shutdown on 2/26/2015 : http://thenextweb.com/apps/2015/01/26/apple-close-old-standalone-testflight-beta-testing-service-next-month/ – jujule Feb 10 '15 at 02:28
  • @jujule only TestFlightApp.com service will be shut down. the TestFlight native app will substitute the old website. – Felipe Balduino Cassar Apr 13 '15 at 19:04