【问题标题】:fetch cngroup with identifier using Contacts framework使用 Contacts 框架获取带有标识符的 cngroup
【发布时间】:2017-10-08 11:13:54
【问题描述】:

我使用 CNMutableGroup 创建了一个组,到创建时,该组的标识符是:

 A9A00074-CA8F-4EA4-8E76-F26C37CB49B4:ABGroup

我将它保存在 NSUserDefaults 中。

文档说:

建议您在重新获取时使用标识符 团体。标识符可以在应用启动之间保持不变。

如何使用此标识符来获取组?

如果我这样做:

    CNMutableGroup *group = [CNMutableGroup new];
    group.name=kGroup;

即使组名相同,这也会创建一个新标识符。

我无法设置标识符,因为它是只读的。

我试过了:

 NSPredicate *predicate = [CNGroup predicateForGroupsInContainerWithIdentifier:[[NSUserDefaults standardUserDefaults]objectForKey:@"groupIDentifier"]];
 NSArray *groups = [store groupsMatchingPredicate:predicate error:&saveError];

组为零。

如何使用标识符访问群组?

【问题讨论】:

  • A9A00074-CA8F-4EA4-8E76-F26C37CB49B4:ABGroup @matt

标签: ios cncontactstore


【解决方案1】:

我不知道为什么,但 predicateForGroupsWithIdentifiers 为我工作:

NSPredicate *predicate = [CNGroup predicateForGroupsWithIdentifiers:@[[[NSUserDefaults standardUserDefaults]objectForKey:@"groupIDentifier"]]];
NSArray *groups = [store groupsMatchingPredicate:predicate error:&saveError];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-05-11
    • 2016-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多