Show my app on app store to some selected user only - ios

I want to install my app only on selected user's iPhone (100k users). Sharing app with development certificate is not possible there. So, I want my app on app store should be visible to only selected users.
Is it possible to mail a unique link to user then those user can only download/see my app on app store?

Yes, it is possible.
If you have an entreprise account, that is even the only you can do. If you need to look it up I suggest you check "OTA" or "Over-The-Air" app publishing method. It's great and exactly for your situation. But if you're on the appstore that means you don't have an entreprise account, so I'll skip to the second solution straight away.
You need to have beta testers. In your iTunesConnect account, where you can manage all sorts of settings for your app, you should find a TestFlight tab. In this tab, you can set emails for people to beta test.
There are two types of testers,
Internal testers
They're a part of your development team, and they must be set as Admin or Manager or Tester to access the app. This would be done in the People tab in your developer.apple.com account. 25 users max.
External testers
This is what you most probably need
You can simply add up to 10.000 email addresses (that are linked to itunes accounts), and organize them in to groups if you want. You can also publish specific versions to specific groups.
In your case it might be simple "one app for all", so don't bother with groups yet.
All they have to do is install the testflight app, and they will be able to download the app from there. It's like a private appstore for them if you want.
If they don't have testflight, they'll receive an email with a link that will do the same.

Related

Move an app from a Testflight account to another one

I'm developing an iOS app in Xcode 12.2 for a client.
The client does not have an Apple Developer account yet, so I'm using the Testflight of my own account to test the app with the designer.
The app uses AppGroups, let's say I have a group named "group.com.myorg.appname".
I'm also using CoreData, and will implement NSCloudKitContainer very soon.
My question is:
Once the client has purchased a developer account, can I easily delete my version from my Testflight, and then add it to the client's Testflight, without issues?
For example, do I have to change the AppGroup identifier? And is this a problem for iCloud?
I have read this answer which contains lots of good information, but didn't allow me to be sure about iCloud or the AppGroup identifier. This was also very useful but incomplete. I've also read information about app transfert, but in my case the app is not published, it's just in Testflight, there's no publishing before moving to the client's account.
If you do not want to lose the IDs, the safest option is the transfer the app to the new account rather than deleting it. If you have push notification certificates, these would need to be regenerated on the new account. However the same goes for the App Groups. You will need to delete it from your old account to release the ID and make it available for the new one. There shouldn’t be issues doing this since it is not launched yet. https://developer.apple.com/forums/thread/70297

Is there any way to make a iOS app available for beta-testing (adhoc app) without using the tester UUID

I want to make my app available for the testers without adding their UUIDs to the distribution profile. Is there any way to achieve this. I know about Enterprise distribution but my app will eventually be uploaded to AppStore.
So I also want to know is it possible to use same Apple ID for both Enterprise App and App Store app.
Thank you
Yes, you can use the new Testflight feature on the developer portal: https://developer.apple.com/testflight/
You have two options when using this. For internal testing anyone who is tied to your account can test it. For external testing your app has to go through the approval process, and you can give out an email that will allow them to test it, or put their email in and it will send out an invitation to that person to install the app. Any updates to the app have to be approved before it can go to external testers.
UDID is no longer required. The focus is on test users rather than device. A single user may have multiple devices on which the beta app may be installed.
You can enable up to 25 users from your iTunes Connect team to be
internal testers and up to 1000 users to be external testers. External
testers do not need to be in your organisation; you can invite any
user with an email address to become one of your external testers.
reference from below link :
https://subodhnpushpak.wordpress.com/2015/01/05/deploying-ios-apps-without-udid-to-beta-testers-using-testflight-beta-testing/

Submitting apps from multiple developer accounts

For historical reasons our company has ended up with two apps being developed with different Apple developer accounts. This isn't a problem right now (apart from having to enter all the UDIDs twice) but if we submit the apps to the iTunes store from different accounts will they show up as being developed by different companies? The company name in the app IDs is the same but I'm not sure if that's used.
Are there any other reasons why this would be a bad idea?
App B won't show up if you use the 'Developer apps' link of App A in iTunes, but this is a matter of taste.
You can always transfer the ownership of an app:
https://blog.sensortower.com/blog/2013/12/15/how-to-transfer-ownership-of-your-ios-app-to-another-developer/

Distributing iOS App to non-employees

I am developing an app that I would like some people to download it. Specifically, the people who attend my event. I've looked into the different ways of doing that, and I couldn't find how to do it. Is there a way to do it other than the App Store? Like a download link or an email attachment?
Scenario: I have an event taking place at some venue. People who attend must download an app before entering the place.
You can use TestFlight or the iOS Enterprise Program
TestFlight
With TestFlight, you can let people 'test' your app. You can setup up to 25 internal testers and 1000 external testers to test your app.
Maybe it isn't exactly, what you are looking for, but it's the cheapest way.
They then can download the TestFlight-app and will see the apps which they are invited as beta-testers. It's a very easy and nice possibility, because you also can update your app and the testers will receive updates.
Check this tutorial how to make a proper setup to do that.
iOS Enterprise Program
With this special program which costs 300$/year you can install your apps within your enterprise. But your company must be a company with a D-U-N-S number to apply. Check the details on the apple website.
You can also use Diawi.com for that matter.
PROS:
1. Easy to use. Just drag the IPA file and the Provisioning Profile to the upload box. Wait for it to get uploaded. Generate Link. Send the link to your intended downloaders. They can download it super easy and fast.
2. No need to pass the app review in Apple.
CONS:
Few Users can download. Only the registered devices in your Apple Developer account can download the app which is limited to 100 and is renewable only for once a year.
If you intend this app for people not more than 100, use this. Otherwise use TestFlight that is already integrated in itunesconnect. The cons only is that the app needs to pass the review. Pros, up to 1000 people can download it.
Hope it helps.

Will Apple accept an app that requires a code or PIN to use?

I'm working on an iOS app and would like to make it easy for a selected group of non-technical users to quickly download and try it. I won't have their UDIDs ahead of time, nor is TestFlight a viable option because it takes too long to set up. My company isn't large enough to qualify for the Enterprise option, either.
What I'm wondering is: can I submit an app to Apple that requires the user to enter a code at launch? Then I can simply give that code to my demo users (and to Apple for review) and submit it to the store. Or will Apple reject something like that?
Thanks.
The entering of a PIN is not a problem (lots of apps use PIN numbers to protect a user's own data, such as a password vault), but it seems that if the intent is to limit the audience of the app, then that that might run afoul of section 2.22 of the app store guidelines.
If the purpose is testing for a limited number of users, can you just do ad hoc distribution?
For demonstrating our apps to clients, my company uses our iOS Enterprise account. With that account (which costs $299/year instead of $99/year), we can make builds that we can distribute through our own restricted channels, instead of the App Store. Those builds are signed with an Enterprise Distribution provisioning profile, which does not require specifying which devices will be used.
After that, we simply restrict who has access to download our app. We use Testflight for this. It enables us to upload our provisioned app, and allows us to invite specific users to download the app. The process of downloading the app is easy enough even for our non-technical clients.
But since you said you don't want to use Testflight, you can distribute your Enterprise apps however you find to be easiest.

Resources