将设备标识符存储在 iOS 应用程序的钥匙串中是个好主意吗
Posted
技术标签:
【中文标题】将设备标识符存储在 iOS 应用程序的钥匙串中是个好主意吗【英文标题】:Is it a good idea to store device identifier in keychain for iOS app 【发布时间】:2012-05-22 07:40:32 【问题描述】:作为 Apple 在 ios 5 中弃用的 uniqueIdentifier,我正在考虑使用 CFUUIDCreate 函数来创建 UUID。但是当我每次调用 CFUUIDCreate 时,它都会创建新的 UUID。所以我的计划是在应用程序第一次启动时使用 CFUUIDCreate 并将其存储在 NSUserDefaults 中。因此,如果用户删除或重新安装应用程序,UUID 将被删除。所以我想知道是否可以将生成的 UUID 存储在钥匙串中。所以我的问题是
1) 如果我删除应用程序,那么 UUID 是否会出现在钥匙串中? 2) 将其存储在钥匙串中是个好主意吗?
我看过gekitz
但我只想使用设备的 MAC 地址,那么 Apple 是否允许开发人员检索设备的 MAC 地址?
非常感谢任何帮助。提前致谢。
【问题讨论】:
【参考方案1】:是的,还要设置
[keychain setObject:(id)kSecAttrAccessibleAlwaysThisDeviceOnly forKey:(id)kSecAttrAccessible];
【讨论】:
以上是关于将设备标识符存储在 iOS 应用程序的钥匙串中是个好主意吗的主要内容,如果未能解决你的问题,请参考以下文章
访问钥匙串中的安全项目有时会在 iOS 中返回错误 -25308 (errSecInteractionNotAllowed)