To distribute App only to my clients and white label on already uploaded my app to Appstore - ios

I'm iOS developer and googled my queries's answer but still i'm having some vague concept of following queries so need some expert feedback. Thanks in advance.
How can I distribute my app to my clients(who may have more than 1000s of users), I know i can't go with Enterprise account(as its restricted to only employee but my problem is to distribute to clients not employees), I think Apple Business manager has solution of my problem https://business.apple.com/, am I right ?
I already have published app on store now some of my clients want branding and then upload onto store with their name, so can Is it possible to rebrand app with same feature exist on store with different account ? AFAIK Apple isn't like it and reject app sooner or later ? If its true then what will be right solution to rebrand my iOS App.
Looking for help on these queries.

For case 1, you can create a B2B custom app which the client can then access through Apple business manager for distribution to their users via an MDM.
For case 2, the clients would need to get their own developer program membership and make you a member of their team. You can then rebrand the app and upload a build for them to distribute under their company name.
Both of these scenarios and more are discussed in this WWDC 2019 session

Related

Do anyone know how really B2B App distribution works in Apple?

I have been developing an iOS App since 3 years and in the last update I send to App Store Connect they reject it due to they told me that my application din't obey the rules that an app should follow in the App Store.
This means that my app don't target a regular App Store user, they only can login to my App if they hire my company's services.
So then they "recommended us" (obligated us) to distribute our App by B2B distribution.
As I have been reading the way it works is to sign up each of our clients to the B2B program. I hope this could be wrong because we have more than 10000 users that we can't manage their Apple ID to add them to our B2B program one by one.
Do exists another way to distribute my App like give to my user a key/url to let them join to our B2B program or what?
I think that I am missing something.
Thanks for your help, all information I have tried to get from Apple web page is cumbersome and I have tried to talk with them but they only send me Emails 1 per day and with no really relevant info like they don't wanna know about me.

Upload iOS App to website without submitting it to App Store

I have a client who want their own App, and only to have it in their own shop for clients, not in the iOS App Store. I was wondering if it is possible to create an App, not to submit it to App Store, but to upload it to a website, and make it available for direct download to 50 devices?
For a situation like this they should really use the Business to Business app store.
https://developer.apple.com/programs/volume/b2b/
This will enable them to limit the availability of the app to invitation only. It allows private distribution and you can set your own pricing (can be free if appropriate). This is available with the standard developer license (not the Enterprise one).
There is no officially sanctioned way to do this, that I know of, other than Enterprise-internal, or by using the developer's (your) license, which doesn't sound like what you need.
Be careful: https://www.theiphonewiki.com/wiki/Misuse_of_enterprise_and_developer_certificates
Apple has very tight control over the platform, and specifically prevent what your client wants.
I would question why your client wants to circumvent Apple here. While it is true that Apple take 30% of the price, they also provide a lot of infrastructure and security in return. Perhaps they want to maximize profit, or their content doesn't satisfy Apple's restrictions?
Developing a web app may be an alternative. When done right these can provide similar interfaces, and access can be controlled, and Apple is out of the equation.
Failing that, you could create a separate developer account for this, and the 50 devices could be registered individually by their ID. This will not be anonymous any longer, and it will have to be renewed yearly.
Technically yes you can distribute an app outside of the App Store using the Enterprise Deployment Program.
However, according to the terms of the Enterprise Deployment Program the distribution is limited to only employees of your organization, and in your scenario you mention that they want to distribute the app to their clients.
See the full details in the Apple documentation here:
https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/AppDistributionGuide/DistributingEnterpriseProgramApps/DistributingEnterpriseProgramApps.html

Private set of users for iOS App

I would like to create an iOS App for a limited set of people.
It should be possible to download the app for free from App Store, but in order to use it
the idea is that you are required to be a member of the organization, which in this case is a local sports organization.
To solve the problem I thought of giving away activation keys to members that can be entered when they create an account, and therefore only members will be using the app.
Will the app be rejected by App Store? If so, is it possible to go around this in some away?
Thanks.
No you will not be rejected by the App Store.
During the review you will only need to give the access to demo account.
Your app will be available to anyone but you are free to give the credential to any person you want.
edit
Fyi I have such apps. The AppStore only block 'discriminating' app based on carrier or location (you can choose the countries anyway), but you are perfectly in the rules if you give access only to your clients...
edit edit
2.22 like I said is against arbitrary criterias, not linked to the login mechanism
for 11.1 and so on, I understand the point, but in my case (and I think yours) there is no problem if
you sell your service before, the app is just complimentary
you dont sell anything within the app
you dont charge for the app itself or anything within the app, you charge only the use of the server/back office/whatsoever
I guess that Apple dont care, they just don't want to bypass the applestore but I dont think that it is your case.
You should try Enterprise distribution for such purpose.
Yes your app may be rejected. Check the App Store Review Guidelines. In 2.2 it says
Apps that arbitrarily restrict which users may use the App, such as by location or carrier, may be rejected
There are different alternatives.
You can opt in for the Apple Developer Enterprise Program, this'll cost you 300$ a year and requires you to be a legal entity.
If you want to test it with a limited number of people (<1000) try looking into Testflight it was bought by Apple and is deeply integrated in the development process.
No, there will not. You need to to give some demo account info as test data to review while submitting to app store in the iTunes Connect portal.
Demo use case(worked for me): Implementation is like, there need some userid/unique pin to the registered account holders to start the application. At the time they input this pin, authenticate the user with our server and give the permission to let in to the app.
Otherwise you need to go for enterprise distribution. Find more about enterprise distribution here.

Customization of an app for Enterprise

One of the customers wants my iOS app to be customised and distribute to employees of his client. I found Custom B2B approach best but he is insisting on enterprise distribution and I am sure like me he does not know much about Enterprise deployment and its limitations. I will not be giving the source code but just the customised binary. My questions :
a. Is it possible to build an ipa and sign it with the enterprise certificate and deliver it ?
b. Will there be lot of support required from my side on enterprise distribution and device management ?
c. Is it possible to limit the number of licences of app while distributing it on enterprise network ? If yes, what is the best way to achieve it ?
Apple supports three app deployment methods.
B2C - aka - the normal app store
B2B - this looks and acts like the normal app store but the app is not visible to the general public.
The only way to get an app to someone is via invitation using a redemption code. This looks to the user like a hybrid of a gift card redemption and a link to an app in the app store.
For this you "purchase" (they can be free) a set of redemption codes from Apple. They send them to you in a spreadsheet. You are then responsible for distributing the codes and tracking which have been used. Apple will send a report of those that were successfully redeemed.
This method can only be used if the app meets Apples criteria for B2B. If they feel it is something that could be on the general app store that is where they expect it to be. The sticking points are really around functionality that can only be used by your business partners, no redeeming public value.
This is also a valuable in ensuring that you don't have an app that gets poor reviews by people that can't use it because it is only useful to your partners.
B2A - aka Enterprise Deployment. This is a special and seperate development account that allows you to host an internal app store and package your own applications for in house deployment. Apple will only allow companies that meet certain requirements to have this type of account. There are strict rules around the deployment as well. Apps may only be distributed to employee devices and are not allowed to be distributed to non employees/customers/business partners.

iPhone App for restricted set of users?

Is it possible to create an iPhone App for certain group of users ? Like, can we create some kind of private group on App Store and our clients could go to that group and then the app would be available to them ?
If my app has a start-up page like asking for License/Pin , so could only those users access it who have that Pin , would it be acceptable for App Store ?
Basically I want to set access of my app to limited set of users, so what are my options here ? I dont want to go to 'Enterprise Program' as my users are not employees of my organization they could be any one , any where in the world.
In general the application should be available for everyone, otherwise it will not be accepted for publishing on Appstore. However it is allowed to require some kind of registration, whether is for free or does cost something. It is also possible for a software to require some kind of hardware as well. For example an application that works as a remote control for a media player.
There is no such thing as a group on Appstore.
You could register as an Enterprise. Ther is an iOS Enterprise Deployment Guide Link
As I know you can manage your enterprise devices there and also distribute Apps to your devices without the need to use the AppStore. You need an enterprise distribution profile to sign the app and then users can install your enterprise app via iTunes.
I believe the following post might solve your issue:
http://www.foraker.com/ios-app-distribution-options/
In short, Apple allows you to create B2B applications, where only the selected companies can use the created applications:
https://developer.apple.com/programs/volume/b2b/

Resources