gpt4 book ai didi

ios - watchOS 2 的钥匙串(keychain)共享 - 关于项目设置?

转载 作者:可可西里 更新时间:2023-11-01 01:38:49 30 4
gpt4 key购买 nike

我正在使用 Xcode 7.0 (7A220),目标是 iOS 9.0 和 watchOS 2.0。

我还没有让钥匙串(keychain)共享在我自己的 watchOS 2 应用程序中工作,但它在 this example project 中工作。 ,这是我的问题的一部分。

NatashaTheRobot ( here ) 有一个很好的演讲,她谈到了与 watchOS 的钥匙串(keychain)共享。( Working code from github here ),亲眼看到她的 iOS 应用程序和 watch 应用程序能够通过模拟器中的钥匙串(keychain)共享。

这是我对她的项目所做的并且它仍然有效:

  • 从 KeychainItemWrapper 初始化方法中删除了访问组字符串。这是有道理的,因为模拟器没有代码签名并且 access group gets deleted in KeychainItemWrapper initWithIdentifier: (查看 initWithIdentifier 中的注释:)
  • 从两个 View Controller 中的 KeychainItemWrapper initWithIdentifier 中删除了标识符字符串
  • 从两个授权中删除了指定钥匙串(keychain)访问组 key 的钥匙串(keychain)访问组 key

您可以删除这三样东西,钥匙串(keychain)共享在该项目的模拟器中仍然有效。为什么? 至少 不应该有权利吗?

最终破坏这个项目的是改变开发团队/配置文件,这让我认为项目设置是这个问题的真正关键。

在我自己的项目中,我添加了一个 watchOS 2 扩展,为两个目标添加了钥匙串(keychain)共享功能,甚至使用我的包种子 ID 添加了适当的访问组,我尝试为 iOS 应用程序、watchkit 应用程序创建单独的配置文件,和 watchkit 扩展。我确定我忘记了我已经尝试过的事情,我已经尝试解决这个问题大约一个星期但无济于事。我错过了什么?

Apple's docs on creating capabilities are not super specific on project settings .它说单击并打开项目中的功能。做到了。

Apple's other docs on generic keychain use didn't clear it up for me either .他们有一个项目,其中有 2 个目标共享一个钥匙串(keychain),但据我所知,我的项目设置和他们的并没有太大的不同。

This answer goes over the useyourloaf article from 2010 on keychain sharing ,但正如我之前提到的,模拟器似乎完全忽略了那些钥匙串(keychain)访问组标识符。

我一直在想,在所有这些过程中,一定有一些明显的东西被我遗漏了。任何指针将不胜感激。

最佳答案

自 watchOS 2.0 起,无法在 watch 与其配对设备之间共享钥匙串(keychain)项。

https://forums.developer.apple.com/thread/5938

关于ios - watchOS 2 的钥匙串(keychain)共享 - 关于项目设置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32837400/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com