如何在 WatchKit 扩展和 iPhone 应用程序之间共享钥匙串数据
How to share keychain data between a WatchKit extension and an iPhone app
我无法使用共享钥匙串在 WatchKit 和 iPhone 应用程序之间共享数据。当我尝试在钥匙串包装器中将 kSecAttrAccessible
用作 kSecAttrAccessibleAlways
时,SecItemUpdate
失败。请帮助我在钥匙串包装器中正确使用 kSecAttrAccessible
。
您应该使用正确的无障碍模式:
默认钥匙串模式 kSecAttrAccessibleWhenUnlocked
和 kSecAttrAccessibleWhenUnlockedThisDeviceOnly
不会让您的应用程序扩展在 iPhone 被锁定时访问数据。
因此,在这种情况下使用kSecAttrAccessibleAfterFirstUnlock
或kSecAttrAccessibleAfterFirstUnlockThisDeviceOnly
是合适的。这允许 WatchKit 扩展访问钥匙串,即使 iOS 应用程序在后台也是如此。
必须重新保存旧项目(kSecAttrAccessibleWhenUnlocked
)(读取、删除、使用新的辅助模式保存)。
我无法使用共享钥匙串在 WatchKit 和 iPhone 应用程序之间共享数据。当我尝试在钥匙串包装器中将 kSecAttrAccessible
用作 kSecAttrAccessibleAlways
时,SecItemUpdate
失败。请帮助我在钥匙串包装器中正确使用 kSecAttrAccessible
。
您应该使用正确的无障碍模式:
默认钥匙串模式 kSecAttrAccessibleWhenUnlocked
和 kSecAttrAccessibleWhenUnlockedThisDeviceOnly
不会让您的应用程序扩展在 iPhone 被锁定时访问数据。
因此,在这种情况下使用kSecAttrAccessibleAfterFirstUnlock
或kSecAttrAccessibleAfterFirstUnlockThisDeviceOnly
是合适的。这允许 WatchKit 扩展访问钥匙串,即使 iOS 应用程序在后台也是如此。
必须重新保存旧项目(kSecAttrAccessibleWhenUnlocked
)(读取、删除、使用新的辅助模式保存)。