问题
A Mobile Operator needs to distribute an app which is using private APIs onto non-jailbroken devices.
From what I've read everywhere so far, this is not possible.
Just out of curiosity: Enterprise Developer Program is reserved for apps that are distributed within the company only and is used by employees or contractors, but how would Apple find out if the user is an employee or just some random iPhone user?
Of course, if the number of customers grows big enough, Apple will notice that some day, get suspicious and shut down the enterprise developer account.
But, suppose, the app is used locally (only in a few countries) and on not that many customers (say, in order of tens of thousands or hundreds of thousands), is there a way Apple could find that out? So, what I am wondering is if there is anything measurable on the device or in the app that signifies the user as the employee of the app developer. I doubt that.
Thanks!
回答1:
Technically I don't think Apple has any way of knowing on which device an enterprise app was deployed and what it actually does. Also I don't think Apple would be a lot concerned if you deploy an enterprise app in a few non-employee devices. They only want to ensure that you don't use the Enterprise license as an alternative distribution mechanism for iOS apps. According to me the following would be the drawbacks of attempting such a thing:
1) If the distribution to non-employees reaches high levels and this comes to Apple's knowledge(through a disgruntled employee maybe), it is more likely that they would take legal action against the enterprise(apart from shutting down the account), causing loss of money and loss of face.
2) Enterprise distribution certificates expire in 1 year(even the in-house ones), so if your really start an alternate distribution mecahnism using an enterprise license, you can imagine how difficult would the after sales support be.
3) Of course ethics is a matter, if you take that into account :)
回答2:
You are correct that the Enterprise Developer Program allows to deploy apps within a company and its employees only.
However, Apple is not (yet) intervening if you offer your Enterprise signed app to the public although it technically able to (see the "kill switch" comment above).
One example is the app provided for download at http://www.featurepoints.com. The app installs a provisioning profile named "TapGen InHouse" expiring 2014-06-30, effectively skirting the App Store and Apple's approval process.
So either Apple can not tell random customers from employees or they just don't care (at least as long if you are below a certain threshold).
来源:https://stackoverflow.com/questions/8323840/ios-enterprise-developer-program-how-would-apple-tell-random-customers-from-emp