我正在编写一个应用程序,它使用 CNContactStore 将通过 REST 和 JSON 获取的联系信息存储到容器中。我想将这些联系人与任何其他帐户分开,并且仅存储在设备本地,但本地存储不存在,我找不到任何方法来创建/激活一个?
我可以使用以下方法获取默认商店的 ID(在设备上配置,例如 iCloud):
let store = CNContactStore()
let containerID = store.defaultContainerIdentifier()
...而且我可以(理论上)识别一个像这样的本地容器——如果确实存在的话:
var allContainers = [CNContainer]()
do {
allContainers = try store.containersMatchingPredicate(nil)
for container in allContainers {
if container.type == CNContainerType.Local {
print("Local container is: \(container.identifier)")
break
}
}
} catch {
print("Error fetching containers")
}
但是不存在本地容器。关于如何将我的联系人存储在本地或新的单独容器中的任何想法?