名簿から電話番号を取得しています。私はそれをこのようにやっています:
ABMultiValueRef arrTelefonos = ABRecordCopyValue(contacto,kABPersonPhoneProperty);
for(int i=0;i<ABMultiValueGetCount(arrTelefonos);i++) {
CFStringRef labelTelefono = ABMultiValueCopyLabelAtIndex(arrTelefonos,i);
CFStringRef numeroTelefono = ABMultiValueCopyValueAtIndex(arrTelefonos,i);
CFStringRef labelTelefonoLoc = ABAddressBookCopyLocalizedLabel(labelTelefono);
/* Do some stuff */
}
1つの場合を除いて、すべて問題ありません。特殊文字でラベル付けされた電話との連絡がある場合(私の場合、ラベルは「Teléfono」と「é」です。実行すると「無効なCFStringRef」が表示されます。
CFStringRef labelTelefono = ABMultiValueCopyLabelAtIndex(arrTelefonos,i);
CFStringRefが特殊文字を許可しないために問題がありますか?それが問題なら、誰かが解決策を知っていますか?
前もって感謝します