Ich verwende den folgenden Code, um auf Kontakte in meiner iOS-Anwendung zuzugreifen. Es funktioniert gut in iOS < 10, aber mit Xcode 8 und iOS 10 stürzt:ABAddressBookRequestAccessWithCompletion stürzt unter iOS 10 ab
- (void)btcContacts_tap {
ABAddressBookRef addressBook = ABAddressBookCreateWithOptions(NULL, NULL);
ABAddressBookRequestAccessWithCompletion(addressBook, ^(bool granted, CFErrorRef error) {
if (granted) {
_addressBookController = [[ABPeoplePickerNavigationController alloc] init];
[[_addressBookController navigationBar] setBarStyle:UIBarStyleBlack];
_addressBookController.delegate = self;
[_addressBookController setPredicateForEnablingPerson:[NSPredicate predicateWithFormat:@"%[email protected] > 0", ABPersonPhoneNumbersProperty]];
[_addressBookController setPeoplePickerDelegate:self];
[self presentViewController:_addressBookController animated:YES completion:nil];
}
else {
dispatch_async(dispatch_get_main_queue(), ^{
[self showMessage:NSLocalizedStringFromTable(@"PLEASE_GRANT_CONTACTS", LIApplicationLanguage(), nil) andAdvertise:@"" andService:nil andTransactionState:kTTTransactionStateInfo];
});
}
});
}
I NSSetUncaughtExceptionHandler
ein Verfahren zur Protokollierung des Crash-Berichts, sondern auch die Exception-Handler gesetzt habe Aufruf nicht ...
Hat jemand anderes dieses Problem auch?
Husein es ist von iOS 9 veraltet. Sie können das nicht verwenden. Sie sollten Contact Framework verwenden. – user3182143
Wenn Sie die Anwendung mit Kontakten Rahmen tun möchten, werde ich Ihnen helfen. Ich werde Antwort mit Kontakte Framework posten. – user3182143