There is an iOS application in the app store that has been working for a long time, at the moment the application will be sold and the provisioning profile will be changed, in connection with which there are several questions that I could not find answers to, please help.
- Today, the token for authorized users is stored in the keychain, do I understand correctly that after changing the provisioning profile, access to the token will be lost?
- If I transfer the token to the sandbox during the migration, for example, to userdefaults, will I be able to access it after updating the provisioning profile or not? Will access to the sandbox be lost too?
- What is the way to seamlessly migrate from the old profile to the new one?
Today, the token for authorized users is stored in the keychain, do I understand correctly that after changing the provisioning profile, access to the token will be lost?
Yes. For all the details on this, see App ID Prefix Change and Keychain Access.
I want to draw attention to this quote from that post:
WARNING Think carefully before using the keychain to store secrets that are the only way to access irreplaceable user data.
If I transfer the token to the sandbox during the migration, for example, to userdefaults, will I be able to access it after updating the provisioning profile or not? Will access to the sandbox be lost too?
I believe you’re talking about your app’s container, that is, the directory where your app stores files. If so, that’s definitely preserved across an app transfer.
Having said that, we recommend against storing credentials in the file system. Also, I don’t think that’s a good strategy for managing this transfer anyway, because it requires the user to run your app prior to the transfer. See the Get Creative section of the above-mentioned post.
What is the way to seamlessly migrate from the old profile to the new one?
That question is too general to answer meaningfully.
Share and Enjoy
—
Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"