Create groups of TestFlight internal testers? - ios

I am using internal testing in TestFlight in App Store Connect. When I upload a build, sometimes I want it to go to only 1 or 2 App Store Connect Users, not all of them. Is there a way to do that? I could delete all the testers I don't want to send to, but then later I would have to reinvite them, which is a pain. I see that External testing allows grouping, but don't see a way to do that for Internal.

Yes since a couple of days it is possible to do exactly what you want.
On the left side of the TestFlight page you can now add new internal tester groups:
When you do so the following dialog will pop up:

Related

Is there a way to programmatically update the list of authorized external testers (by email) for testflight

I would like to know if it is possible to add and remove users (by email) from the list of authorized external users for testflight.
If so, where can I find documentation on how to do that?
Not manually, but automated.
The app store connect API can create and delete beta testers (i.e., Testflight users). You should study that documentation first, then come back with more questions if there are things you don't understand.

How can I distribute an iOS app to 50k users by invitation only?

I have a client who wants to deliver the app to 50k specific users, at start. Then he wants to go public with the app after some time. However, this could not be seen by users as beta testing, since it's just an "exclusive" earlier possibility to access the app, not tests.
We know these users since they are a part of other service users group. We will probably create accounts for them and distribute login/one-time-passwords by invitation or give them the possibility to log in with credentials from the other service.
I've been searching for the solution (e.g. https://www.knowband.com/blog/mobile-app/share-ios-app-without-publishing-on-apple-app-store/) but still, I'm not sure which way to go. We're still in the middle of development so we can provide a possible solution and even make changes in the onboarding/login process. But we have to have a decision on this matter.
From possible solutions:
AppStore - we would not give the possibility to register in the app and just people with credentials could log in. But is it even possible with an iOS app and not be rejected by Apple? I know that many apps don't have registration within the app (e.g. banking apps) - how do they do that? They just say that registration is available only on some www/in person at the bank and you receive credentials to your account somewhere else?
Enterprise distribution - this is probably not possible since users won't be employees of my client. These are regular people.
VPP - I've heard about it recently and never tried it but isn't it just a "simpler" Enterprise solution and shouldn't users be also employees of my client? Can VPP apps be changed to regular AppStore apps afterwards?
I think right now option 1 seem the most possible one since the app will be distributed to all the users after some time (we will add registration then). Any ideas on the matter? How can we not be rejected using solution 1 during a review?
Solution 1 is possible, you provide apple with certs in App Store connect when you submit to the store. Specifically the field 'Sign-in required'
I would do that, it's got very little time overhead as compared to the other two.

Where is redeem code for public link for TestFlight?

Sent public URL to a user, and he reported TestFlight does not show the app, but asked for a redeem code? Where can I or he find this code?
The redeem code is sent by mail when you add an external or internal new tester in TestFlight.
When you open your app in App Store Connect, go to "My Apps" and select your app. Then go to the "TestFlight" section, complete the "Information" section, and then add external testers as needed and the build to test.
After this Apple sends emails to all testers with the invitation.
A good tutorial on TestFlight can be found on raywenderlich.com.
This issue is happening to me also. Some customers are saying they are asked to enter the redeem code while using the public link for downloading the app from TestFlight, so they are unable to download the app.
Workaround was to add the user's email id to the test group so it will send email invites with redeem code.
But I still do not understand why the public URL for downloading the app is asking for a redeem code? And what will be the redeem code for people using the public link? Another interesting thing is it's happening only to some users.
[tl;dr user is doing it wrong + Apple designed this flow poorly.]
Presumably what is happening is some users who haven't previously installed TestFlight (or who opened the link in an app other than Safari, which won't automatically open TestFlight for them) are clicking on the public link, which if opened on an iOS device shows: "Step 1 Get TestFlight".
(notice that on many devices some portion of "Step 2" will be covered up, such as the critical "Start Testing" button in the screenshot above.)
And then instead of returning to the webpage after installing TestFlight and scrolling down and clicking the "Start Testing" button under "Step 2 Join the Beta", some users are mistakenly staying in the TestFlight app and either tapping the "Redeem" button as it is the only interactable element on the mostly empty default TestFlight screen or reading the subtitle that says to "contact the developer for an invitation code."
(Note the big title text would be confusing to users who thought this was how they start testing and they would naturally think at this point something has gone wrong.)
Unfortunately this is a natural consequence of the way this workflow is designed, and I don't see a simple way around it besides educating your users.
Certainly one workaround is to invite the user via email, so they will get a code they can enter into the "Redeem" alert text field, but this should not be necessary.
It may seem obvious to technically-savvy people, but one can clearly see some people not understanding that they need to switch back and forth like that. Until this design flaw is fixed, a certain percentage will make this mistake. I suggest sending Apple some feedback about this.
My rep is too low to comment, but something you can also do is ask your testers to do a "long press" on the link. This will allow them to open the link in either Safari or TestFlight. Opening in TestFlight will sometimes resolve this issue.
For public links, when you click the link, it'll open a page with two steps to follow. The first step is to download the TestFlight app. The second step is to install your app. After you install TestFlight, go back to the link and press the install button on the second step. There is no need to redeem codes for public links.
Struggling with the same issue here.
I found a couple of things.
If you're trying to renew a previously added a user, go to the same version you initially issued the code on. If you don't see reissue as an option, try deleting / then add new external tester. If you try to reissue the redeem code on a different (newer?) TestFlight version that option is unavailable. First time-adds should also show the reissue button after you send the first invite.
TestFlight "redeem" button is the top of the left panel.
If you are working on an app-managed computer. You need to have rights to run TestFlight and access the AppleStore.
I have one last hurtle and I think it's a security feature of the managing application (JAMF ?).
It typically happens when the user is not registered to the App Store and/or iTunes with the given email address. In my case it turned out that my tester gave me his iCloud email which was why he experienced the same issue.

Testflight internal group?

Can I create an internal group in testflight. We have 2 different builds of our app that we want to test and the app isn't ready yet to be reviewed by Apple for external testing. For example: the login does nothing, you need a separate piece of hardware to test it, etc...
Normally you have an "iTunes Connect Users" group with the people register on you iTunes account like developers, admins and so on.
You also have an "External Testers" group with a possibility to add 2.000 emails to the people outside of the iTunes account.
You just need to create another group (you'll find a button with this text "NEW GROUP") and add the people to test that features and each time you upload a new build you add the group by clicking on the build that you want to test your app.
I hope this answer helps you.

Transfer App option not available iTunes Connect

I have created a app long time ago on my iTunes account and now i would like transfer it on different iTunes account. After googling i found transfer app is available at under App information > Additional information > Transfer App like here But i am unable to find Transfer app option on my account like here. I have already read Criteria for Transferring an App. Please let me know what can i do.
Yes , Here is your solution
When you are a member under an organisation you can't able to see that option in your appstore account
Only the admin will have that access and can able to see transfer app option.
Get those admin credentials to transfer the app.
It worked for me
Only the person who has role "Admin, Account holder" can transfer app to another account.
Other admins cannot transfer app to another account and they cannot see Transfer app option under Additional information
One possible reason listed in App Transfer Criteria that I don't see mentioned in other answers is this:
The App must have had at least one version that has been released to the App Store.
Make sure that you had at least one actual version published on the App Store. Published TestFlight builds don't count.

Resources