Search code examples
iosiphonexcodeapp-store-connectprovisioning-profile

"Potential Loss of Keychain Access"? Can I ignore it? Would exising app users who paid for the app have issues?


A previous developer created and uploaded our app with our dev team. They then transferred it to our client's account and released it. However it kept our Team ID. When uploading to the App store, I get the following:

"Potential Loss of Keychain Access - The previous version of software has an application-identifier value of ['XXXXXX.XXXXXXX'] and the new version of software being submitted has an application-identifier of ['YYYYYY.XXXXXXX']. This will result in a loss of keychain access."

I can accept losing Keychain Access as I understand that there is little that can be done here and it may not affect this app.

However, my question is, could current users be affected? There are no passwords in the app or any user details stored, it is mostly an informative app. I assume it won't stop them updating the app or block them from using their current build? These users have paid for the app, so if they stop getting access all of a sudden, they might be upset!

i.e. I'm not sure about the following technologies from Apple:

Important: The only apps that can ignore this warning without consequences are those that do not use technologies that rely on the App ID prefix, like keychain access, Handoff, and UIPasteboard sharing.


Solution

  • I think you need to check with the developers to see if they are using anything related to the app ID prefix.

    As stated by Apple, the app Prefix is critical to using a couple of their capabilities.
    Basically, most of the technologies listed are all about inter-app communication. If you only offer one iOS / Mac app, you aren't doing any special interactions with other apps with the same app prefix, and you don't have anything to worry about. Pasteboard is basically a shared clipboard used to share information between apps by the same developer. Handoff is about syncing state between apps on different platforms (e.g. Sharing Safari tabs between your Mac and your iPhone).

    The other thing to worry about would be the first error you show. That error means that if your app is storing any information in the keychain, the new version of the app would lose access to anything that was stored in the keychain by the old version of the app. If, like you say, your app really isn't using the keychain to store information (it doesn't have to just be passwords, FYI), you don't need to worry about that either.

    I would definitely have the developers check for anything related to the keychain to confirm, as well as anything related to the PasteBoard or Handoff.

    EDIT

    As to the affect on current app users, they should not be affected if you are not using any of the above technologies. Existing users will get the update and should not notice any difference. More on that in this answer.