在钥匙串中存储整数 Swift

Storing Integer in Keychain Swift

我正在尝试在应用程序中实施试用。在试用中,用户可以使用一定数量的项目的功能(如创建笔记)。我目前将试验项目数存储在 UserDefaults.

问题出在iOS UserDefaults 数据被清除,当用户重新安装应用程序时,试用会更新。

我想允许每台设备进行一次试用,其中试用笔记计数应在重新安装后从存储的值继续。

实现此目的的一种方法是,将值存储在 KeyChain 中以记录音符计数。所以我的问题是,是否允许将非密码值存储在 KeyChain 中,或者是否有更好的方法来实现这一点?

严格来说,您不能在钥匙串中保存整数。

但您可以将整数转换为 String 并将其存储为 密码 或与其他数据一起以 JSON 格式存储为 安全笔记.

在使用 Apple 的 KeyChain API 一段时间后,我最终使用名为 KeyChainSwift 的外部库来处理 KeyChain,我的很多问题都消失了。例如在 Keychain 中存储任何类型的值(也包括整数)。这是 Cocapods 库的 link KeyChainSwift , and here is simple tutorial for using it : KeychainSwift tutorial