代码之家  ›  专栏  ›  技术社区  ›  Renish Dadhaniya

应用程序在iOS中将帐户A移动到B后可能会丢失钥匙链访问问题

  •  4
  • Renish Dadhaniya  · 技术社区  · 9 年前

    我们的iOS应用程序正在从帐户A转移到B,之前我们使用了在帐户A中创建的证书,并使用帐户A的证书在iTunes Connect上上载了一个版本。

    现在,当我们在iTunesconect上传应用程序进行Beta测试时,我们使用了在帐户B中创建的证书(由于转移应用程序帐户)。

    所以,live应用程序的应用程序标识符与app Store上Beta TestFlight测试应用程序的程序标识符不同。我们得到了可能丢失钥匙链的警告。

    现在,我们正在使用SSKeychain Wrapper for Store UUID来跟踪用户。 [SSSKeychain setPassword:UUID forService:@“com.example.appname帐户:@appname错误:&error]

    如果应用程序ID前缀已更改,那么SSKeychain将失去访问权限?

    因为我们跟踪数据库中的UUID,以便使用SSKeychain进一步使用。我的疑问是,如果APPID前缀发生了变化,那么它也会影响SSKeychain,并为所有设备生成新的UUID?

    那么,我们如何解决这个问题?请让我们了解这个问题的解决方案。

    1 回复  |  直到 9 年前
        1
  •  3
  •   ort11    9 年前

    钥匙链访问与应用程序ID前缀绑定。它们必须具有相同的前缀。我们有一个案例,在同一个开发人员帐户和不同的前缀中,不同的应用程序不会共享相同的密钥链访问。必须让苹果修复,所以一切都一样。

    在您的情况下,如果您将应用程序移动到帐户B,则应用程序ID将具有不同的前缀,并且无法访问“旧”密钥链。

    据我所知,如果应用前缀已更改,则没有解决方法。

    是的,所有设备都将获得新的数据密钥链存储,并且无法访问“旧”密钥链数据。