我从通讯录提取联系人,但弹出窗口不显示要求访问联系人的权限。它会自动拒绝,但是当我在演示中尝试相同的代码时,它会正常运行,但它不会在我的应用程序中运行。 我读过很多文章,但我没有得到任何解决方案。我是否在plist或设置中缺少某些东西?流行的请求访问联系人不显示ios 9
CNContactStore * contactStore = [[CNContactStore alloc]init];
if ([CNContactStore authorizationStatusForEntityType:CNEntityTypeContacts] == CNAuthorizationStatusNotDetermined) {
[contactStore requestAccessForEntityType:CNEntityTypeContacts completionHandler:^(BOOL granted, NSError * __nullable error) {
if (granted==YES)
{
}
else
{
NSLog(@"Error");
}
}];
}
或第二种方法
CFErrorRef error = nil;
ABAddressBookRef addressBook = ABAddressBookCreateWithOptions(NULL, &error);
if (ABAddressBookGetAuthorizationStatus() == kABAuthorizationStatusNotDetermined) {
ABAddressBookRequestAccessWithCompletion(addressBook, ^(bool granted, CFErrorRef error)
{
if (error)
{
NSLog(@"error %@", error);
}
else if (granted)
{
}
CFRelease(addressBook);
});
}
是的,但我已经完成重置设备和模拟器。多次。 –
打印_userInfo的描述: { NSLocalizedDescription =“访问被拒绝”; NSLocalizedFailureReason =“此应用程序未被授予访问联系人的权限。”; } –
我不会在info.plist中添加任何内容。 –