SiriKit 和 CNContactStore

SiriKit and CNContactStore

你真的可以在 Siri 扩展中访问联系人数据库吗?

我正在尝试做一个 INSendPaymentIntent 扩展,用户可以在其中指定他要汇款的人。这适用于模拟器(Xcode 8.3.2,iOS 10.3)就好了,但是当我 运行 设备上的相同代码时,Siri 立即停止工作并告诉 "Sorry, You’ll Need To Continue In The App".我得到的唯一控制台输出是 "Program ended with exit code: 0"。据我所知,Siri 在我尝试实例化 CNContactStore() 后停止工作。

有没有人在 Siri 扩展中成功获得对真实设备上联系人存储的访问权限?

事实证明问题不在于 CNContactStore。如果您的扩展程序占用太多内存,则会发生错误 "Program ended with exit code: 0",在这种情况下,系统会终止它。看来 CNContactStore 是压死骆驼的最后一根稻草:)