2011-10-17 83 views
0

我有一個iPhone應用程序。用戶可以選擇一個聯繫人。在選擇後,打開用戶必須選擇電話號碼的另一個視圖。當選擇包含「+」的聯繫人號碼時,應用程序崩潰

This works great。但是,當電話號碼包含這樣的國家代碼+49 ...該應用程序崩潰。

-(BOOL)personViewController:(ABPersonViewController *)personViewController shouldPerformDefaultActionForPerson:(ABRecordRef)person property:(ABPropertyID)property identifier:(ABMultiValueIdentifier)identifier{ 
    ABMutableMultiValueRef multi = ABRecordCopyValue(person, property); 
    CFStringRef phone = ABMultiValueCopyValueAtIndex(multi, identifier); 

    ///....some code 

    [self dismissModalViewControllerAnimated:YES]; 

    [personViewController.navigationController dismissModalViewControllerAnimated:YES]; 
    return NO; 
} 

它停在這條線

CFStringRef phone = ABMultiValueCopyValueAtIndex(multi, identifier); 

但日誌中沒有錯誤輸出。任何想法如何解決這個問題?

+0

可能重複[!地址簿電話號碼(+45)前綴導致崩潰(http://stackoverflow.com/問題/ 4712071 /地址簿,電話號碼 - 45前綴導致崩潰) – JeremyP

回答

1

我不知道你在哪裏插入那個「+」,但是你應該試着讓它替換它可以使用的東西。

[yourString stringByReplacingOccurrencesOfString:@"+" withString:@"00"]; 

如果它不利於試圖請點擊此鏈接: Address book Phone number (+45) prefix causing crash!

相關問題