gpt4 book ai didi

ios - 从 Facebook 或 gmail 或任何其他云 iOS 获取与 cncontactstore 的联系

转载 作者:行者123 更新时间:2023-11-28 18:54:40 24 4
gpt4 key购买 nike

目前我正在使用这段代码从 iPhone 中获取联系人

 CNContactStore *store = [[CNContactStore alloc] init];

[store requestAccessForEntityType:CNEntityTypeContacts completionHandler:^(BOOL granted, NSError * _Nullable error) {
if (granted == YES) {
//keys with fetching properties
NSArray *keys = @[CNContactGivenNameKey,CNContactFamilyNameKey, CNContactPhoneNumbersKey, CNContactImageDataKey];

[[CNContactsUserDefaults sharedDefaults] sortOrder];
NSString *containerId = store.defaultContainerIdentifier;
//NSComparator hg= [CNContact comparatorForNameSortOrder:CNContactSortOrderGivenName];

NSPredicate *predicate = [CNContact predicateForContactsInContainerWithIdentifier:containerId];
NSError *error;
NSArray *cnContacts = [store unifiedContactsMatchingPredicate:predicate keysToFetch:keys error:&error];

NSSortDescriptor *sortDescriptor;
sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"givenName"
ascending:YES];
NSArray *sortDescriptors = [NSArray arrayWithObject:sortDescriptor];
NSArray *sortedArray = [cnContacts sortedArrayUsingDescriptors:sortDescriptors];

}];

但在这里我只从 iCloud 获取联系人。

我如何从 Facebook、gmail 或任何其他云获取联系方式?请帮助解决这个问题。

最佳答案

我花了 2 天时间解决这个问题,但没有得到任何解决方案。

然后用一个补丁就完成了。这对我有用。

if ([container.name isEqualToString:@"Card"]) {
NSLog(@"iCloud");
}else if ([container.name isEqualToString:@"Address Book"]){
NSLog(@"google");
}else if ([container.name isEqualToString:@"Contacts"]){
NSLog(@"Yahoo");
}else{
NSLog(@"Other");
}

关于ios - 从 Facebook 或 gmail 或任何其他云 iOS 获取与 cncontactstore 的联系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35333022/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com