如何在" Keychain"中保存一组值,即字符串值。并将这些值作为列表访问。 我能够在String中保存单个值并访问它,但在数组的情况下很难。
答案 0 :(得分:0)
将字符串数组序列化为JSON并保存。从钥匙串读取后反序列化。
答案 1 :(得分:0)
我建议你将它们编码为base64。使用Codable
或JSONSerialization
。由于你有一个字符串数组(而不是自定义对象),我建议使用JSON。类似下面的事情应该做:
func stringFromArray(_ array: [String]) -> String? {
return (try? JSONSerialization.data(withJSONObject: array, options: []))?.base64EncodedString()
}
func arrayFromString(_ string: String) -> [String]? {
guard let data = Data(base64Encoded: string) else {
return nil
}
return (try? JSONSerialization.jsonObject(with: data, options: .allowFragments)) as? [String]
}