TestFlight - User installed app via Public Link and no longer seeing updates - testflight

I have users that are no longer getting updates from TestFlight. It's saying that the version they are on has expired (as expected) but the new versions aren't showing as available.
I added the users using a public link. I'm wondering how TestFlight tracks installs from public links. Does it track their Apple ID or their iCloud account or what????
My users have their corporate accounts and their private emails and I'm sure they are using a combination of ways they are authenticated. But, it seems to me that TestFlight is somehow not tracking them correctly.

Related

App Store Connect Notary Service Agreements Error

I'm signing my macOS application with a Developer ID Application Certificate and sending it to Apple's notary service. When I'm uploading the build from XCode I'm getting the following error:
Failed retrieving request UUID for upload. You may have outstanding
agreements to sign on App Store Connect.
I've checked the following URLs and I don't have any new prompts for new agreements:
https://developer.apple.com/account/
https://appstoreconnect.apple.com/
https://appstoreconnect.apple.com/agreements/#/
Is this a bug from Xcode/App Store Connect or does the message refer to other agreements that must be signed?
After failing to solve this with an Apple Support person, I removed an admin who did not have a current individual Apple Development account from the Team. Solved the issue instantly.
Had the same issue and also no outstanding agreements to sign.
In the end, the problem was, that the user who wanted to upload the build for notarization didn't have "Access to Cloud Managed Developer ID Certificate" in the Users and Access section on App Store Connect. It worked before for that user, so something in the backend must have changed in the meanwhile.
I had the same problem, no agreements to sign, I had Access to Cloud Managed Developer ID Certificate and still got the error.
To fix it I went to Xcode->Preferences-> removed my developer account from Xcode the re-added my developer account to Xcode and it worked.
Update from November 2022: I no longer receive the error from the question, it was probably fixed by Apple on their side.

Xcode -How To Change App ID Suffix from Old Account To New Account? An app id with identifier is not available. Please enter a different string

I'm on Xcode 8.3.3 and my bundle identifier is:
com.abc.xyz
When I first signed up to create an Apple developer account I used my personal info and registered the above app's bundle id for the App ID Suffix.
My Old dev account email is blabla#bla.com
That was last year, now I registered as a business entity for a developer account and paid the $99 bucks.
My New dev account email is yadayada#yada.com
When I try to use the same bundle id for the new account's App ID Suffix I get the error:
There were errors in the data supplied. Please correct and re-submit.
An App ID with Identifier 'com.abc.xyz' is not available. Please enter
a different string.
I understand that 2 accounts can't have the same bundle id for the App Id Suffix. The issue is I'm using this bundle id for firebase and other services so it's not that simple to change it. From the app transfer directions Apple App Transfer it seems I also would have had to had the app in the App Store:
The App must have had at least one version that has been released to the App Store.
It says if I delete the app I can't use the bundle id:
Important: If you delete your app, you can’t restore it. The SKU or app name can’t be reused in the same organization. If you’ve uploaded a build, your bundle ID can’t be reused.
How can I either transfer my my bundle id from my old personal account (which I'm no longer paying for) to my new account which I am paying for?
How can I delete the App ID Suffix from my old account?
In either case I still have access to both accounts and I need my new account to use the same bundle id com.abc.xyz that was under my old account.
I just called Apple (800) 633-2152. Luckily on my old account the 1 yr membership had expired and I never renewed it so it automatically switched me over to a free account. The rep was able to delete the bundle id in the old account because it became a free account. I think if it was a paid account I would've been sol because she said "I was only able to delete it because you was under the free program".
Once she deleted it she sat on the phone with me and I was able to use the bundle id as the Apple ID Suffix on my new account.
If your like me and you have 2 accounts and you want to switch the bundle id from 1 account to the other you can definitely call and they'll do it if the first account is under a free plan. Otherwise your probably going to have to ask them to cancel it or wait until it expires.

Link a purchase to an apple ID

I'm implementing an in app purchase for a Non-renewing subscription in my app. I'm using an account system so I'm linking the purchase to the user account in my server. This works fine but recently I read that the purchase should be linked to an apple id. I'm a little confused because I thought you couldn't get access to an apple id. So I have some questions:
Could my app be rejected for link the purchase to an account in my system?
I read that I could use the UUID as user identifier in my server and save it in user defaults but I don't know how to identify the user if He switch devices?
If identify the user with the UUID works, I would like to control if the user logs in with the right account in my system so if he has the right UUID but a different account, He should not get access to my functionality. Is this possible or my app would be rejected for this kind of control?
Links:
In app purchase - Subscription - not based on Apple Id and How to store and fetch the response of in-app purchase in ios?
In the apple documentation saids that you should use transactions recipes for restore in case the user switch devices but in Non-renewing subscriptions the app will be responsable for the restoration process.
https://developer.apple.com/library/mac/documentation/NetworkingInternet/Conceptual/StoreKitGuide/Chapters/Restoring.html#//apple_ref/doc/uid/TP40008267-CH8-SW9

Google Play Store Private Channel and own domain

I just register and paid $25 USD to be able to upload an app in the Google Play Store. I used my personal email address, something like sonyaATmydomain.com. The app that I am uploading is for a different domain, e.g. hello.com. I uploaded the app and started to configure all the settings. The problem is that I did not realize that to make the app private (Private Channel) my developers email account must be the same domain as the app, e.g. sonyaAThello.com. So I added a new user with administrator permissions to the app, this new user using the correct domain, e.g. sonyaAThello.com. I logged with this new user account and I cannot see the Private Channel section. Then I logged with my personal email address user and also I couldn't see the option. Then I discovered that to see that section my setup account (the one that paid $25 USD) must be the app domain. But that is not possible. So I tried to transfer the app from my personal account to the new user domain account, BUT at this stage I doubt that is going to work. For what I have read, it seems to enable the private channel, I must have a Goggle Apps account and that is not free. Does anyone know if it is possible to setup the private channel for the play store without having to pay a Google Apps subscription and if yes what's the correct process? Unfortunately I already paid $25 USD but I can't manage to get the private channel :(, thanks a lot
Based off the documentation, it seems there is no getting around having a Google Apps for Work, Education, or Government account.
This work around may not work for you, but what you can do is publish to aplha/beta testers. This will allow you to grant access to whatever users or groups of your choosing. You do not need a production APK for aplha/beta testing, but I'm not sure if you'll be able to get other production information (analytics, ratings, etc).

Google Apps Marketplace multiple domains(app installations)

We migrating our app from the old Marketplace to the new one. And we faced with the problem like described here - Google Apps Marketplace app installation callback
But we have special app architecture, it allows to the same user authorize multiple domains. For example we have user(authorized with google +) admin#tester1.com and he needs to install app for following domains:
tester1.com where admin account is admin#tester1.com
tester2.com where admin account is admin#tester2.com
For tester1.com we can use licensing API and check if app is installed and who installed it. We already have authorized account admin#tester1.com and the same user installed app.
No issues for this scenario.
Next user needs to install app for tester2.com. In process of installation(at the marketplace side) user switching to new account admin#tester2.com and installing app.
When user backs to us, we using licensing API again and check if app is installed and who installed it. At this step app will be installed, but it will be installed by user admin#tester2.com which is currently not connected to our app.
For this scenario, how we can securely recognize that domain tester2.com should be linked to user admin#tester1.com? Any recommendations/advices?
Currently we see only one way - require user to authorize admin account for each domain that he wants to install with our app.
This appears to be a special case, and Google don't have any guidelines around how to handle it. Deciding how to charge for and provision your application is left up to the developer.

Resources