Libreta de direcciones de iOS 6 vacía kABPersonPhoneProperty

En mi código, uso ABPeoplePickerNavigationController para seleccionar persona. Después de que el usuario seleccione a la persona de la lista de contactos, veo si el registro de persona especificada tiene algún número de teléfono:

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

Creé contacto, le agregué un número de teléfono y probé mi código. En iOS 5 este código funciona bien.teléfonos móviles variable contiene un número de teléfono.

Pero en iOS 6, después de vincular el contacto a la cuenta de Facebook,teléfonos móviles La variable no contiene ningún valor.

Después de desvincular el contacto con la cuenta de Facebook todo vuelve a funcionar bien.

¿Cómo puedo leer los números de teléfono de esta persona?

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

UPD

Si vuelvo SÍ en la función anterior, entonces en la función

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

Puedo leer todos los números de teléfono de la persona de manera normal. Entonces, ¿por qué no puedo leerlos en la primera función?

Respuestas a la pregunta(2)

Su respuesta a la pregunta