iOS 6 Adressbuch leer kABPersonPhoneProperty

In meinem Code verwende ich ABPeoplePickerNavigationController, um eine Person auszuwählen. Nachdem der Benutzer eine Person aus der Kontaktliste ausgewählt hat, überprüfe ich, ob der angegebene Personendatensatz eine Telefonnummer enthält:

- (BOOL) peoplePickerNavigationController:(ABPeoplePickerNavigationController*)peoplePicker shouldContinueAfterSelectingPerson:(ABRecordRef)person {
      ABMutableMultiValueRef phones;
      phones = ABRecordCopyValue(person, kABPersonPhoneProperty);
      if (phones == nil || ABMultiValueGetCount(phones) == 0)
      {
          return NO;
      }
      // other code....
}

Ich habe einen Kontakt erstellt, eine Telefonnummer hinzugefügt und meinen Code getestet. In iOS 5 funktioniert dieser Code gut.Telefone Variable enthält eine Telefonnummer.

Aber in iOS 6, nachdem der Kontakt mit Facebook-Konto verknüpft wurde,Telefone Variable enthält keine Werte.

Nach dem Trennen des Kontakts mit dem Facebook-Account funktioniert alles wieder.

Wie kann ich mit dieser Methode Telefonnummern von Personen lesen?

- (BOOL) peoplePickerNavigationController:(ABPeoplePickerNavigationController*)peoplePicker shouldContinueAfterSelectingPerson:(ABRecordRef)person

UPD

Wenn ich JA in der obigen Funktion zurückgebe, dann in Funktion

 (BOOL) peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker shouldContinueAfterSelectingPerson:(ABRecordRef)person property:(ABPropertyID)property identifier:(ABMultiValueIdentifier)identifier

Ich kann alle Telefonnummern einer Person auf normale Weise lesen. Warum kann ich sie in der ersten Funktion nicht lesen?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage