Не удается получить номер телефона с iphone

В настоящее время я использую следующий код, чтобы получить номер телефона локального устройства:

NSString *num = [[NSUserDefaults standardUserDefaults]
                 stringForKey:@”SBFormattedPhoneNumber”];

NSLog(@”Phone Number: %@”, num);

но он не может получить номер, он показывает ноль. Может ли кто-нибудь подсказать мне, как решить эту проблему!

заранее спасибо


person siva    schedule 29.04.2011    source источник


Ответы (4)


Нет поддерживаемого способа получить номер телефона устройства. Любой метод (например, «SBFormattedPhoneNumber», упомянутый в других ответах), который сейчас работает, может привести к отклонению вашего приложения и может перестать работать в любой момент без предварительного уведомления.

Если вам нужен номер телефона, просто попросите пользователя ввести его.

person Anomie    schedule 29.04.2011

Используйте нижеприведенный код

Чтобы сохранить строку номера телефона

[[NSUserDefaults standardUserDefaults] setObject:@"1234567890")  
                                        forKey:@"SBFormattedPhoneNumber"];

Чтобы вернуть телефонную строку.

   NSString* num = [[NSUserDefaults standardUserDefaults] objectForKey:@"SBFormattedPhoneNumber"];

Прочтите руководство для блога.

http://ayeapi.blogspot.com/2009/12/sbformatphonenumber-is-lie.html

person Jhaliya - Praveen Sharma    schedule 29.04.2011

Вот решение !!! Проверьте эту ссылку или прочтите ответ ниже по той же ссылке !!!

Ответ по ССЫЛКЕ:

Чтобы расширить более ранний ответ, для меня это делает что-то вроде этого:

NSString *num = [[NSUserDefaults standardUserDefaults] stringForKey:@"SBFormattedPhoneNumber"];

Примечание. Это извлекает «номер телефона», который был введен во время активации iTunes на iPhone, и может иметь нулевое или неправильное значение. Это НЕ считывается с SIM-карты.

По крайней мере, в 2.1. В NSUserDefaults есть несколько других интересных ключей, которые также могут быть недолговечными. (Это в моем приложении, которое использует UIWebView)

WebKitJavaScriptCanOpenWindowsAutomatically
NSInterfaceStyle
TVOutStatus
WebKitDeveloperExtrasEnabledPreferenceKey

и так далее.

Не уверен, что делают остальные.

person Viktor Apoyan    schedule 29.04.2011
comment
пожалуйста, не копируйте просто другие ответы. если ответ - переполнение стека, достаточно простой ссылки. благодаря. - person Nate; 26.07.2012

Сохранение данных в NSUserDefaults.

[[NSUserDefaults standardUserDefaults] setObject:@"1234567890")  
                                        forKey:@"SBFormattedPhoneNumber"];

 NSString* num = [[NSUserDefaults standardUserDefaults] objectForKey:@"SBFormattedPhoneNumber"];

Это может вам помочь ..

person Nirav Jain    schedule 29.04.2011