Apple’s enterprise distribution and management for iOS apps
Is there an easy way to distribute same iOS (iPad, iPhone) app to multiple enterprise clients? We develop custom “Enterprise apps” that can be utilized by various clients. These apps get linked directly to client’s servers; but is there a way that we, as a third party, could find a solution to distribute/manage apps for our clients?
In other words, for client experience of using an app should be completely seamless without having to worry about anything after first time app download. Here are some specifics:
- Does enterprise account option allow distributing same app to multiple clients? i.e. if I develop an app - call it “Appyme”, can Appyme be distributed to 200 users of client A and 500 users of client B
- Do we need to have 2 enterprise accounts - one of Client A and one for client B? My assumption was that I needed to have just one developer account under my company’s name
- Can this be done over the air or will we need to get these installed on all 700 devices?
- How can “Appyme” upgrades be deployed to these users?
- What happens to clients’ account and users when my personal enterprise account expires every year?
Solution 1:
Each client will need to have an enterprise account. If they want to, they can share their distribution key with you, and you can build an app for distribution within their organization. If the number of clients isn't large, this shouldn't be a big deal -- you can just set up a different target for each client, and then use an aggregate target to build them all at the same time.
Over the air distribution is definitely possible. One way is by making the app available for download on a restricted access web server; another is to install it directly on any managed devices using mobile device management.
I believe most of your questions are answered in the enterprise program agreement. Give that a careful reading if you haven't already. Questions about how to interpret a legal agreement are probably off topic for this forum, but I think you'll find the agreement to be fairly easy to understand as legal documents go.
Update: Another option that's been available for a while now (though possibly not when I wrote the answer above) is custom B2B distribution. You can offer your apps for sale through Apple's Volume Purchase Program directly to your clients. That is, your clients would purchase through the Volume Purchase Program (essentially the App Store, but multiple licenses) and then distribute your app via Mobile Device Management or redemption codes. The down side of this plan is that Apple would take the usual App Store cut of the selling price.
Solution 2:
Two things happen to make enterprise distribution work over the air.
- The enterprise entity has the ability to sign apps with a certificate that Apple has also signed.
- The enterprise entity has the ability to generate a code signing profile to load these apps and point the iOS device to whatever over the air (OTA) mobile device management (MDM) web solution desired.
Both of these rely on certificates where you can see the expiration dates and plan for renewal. The ability to make new Apple Push Notification certificates as well as the ability to get Apple to sign enterprise certs is what expires yearly. These push notification certs allow the server to push out updates to devices that are online and you always can have clients self-service from the distribution point or email links to the apps as needed if you don't want to re-push.
For personal use, you could check out Robot Cloud for $5 a month per device and learn how this works in practice.