Получение местного номера iPhone через SDK

Я ищу SDK API для получения локального номера телефона устройства
с SIM-карты. Есть способ сделать это?

Ответов (4)

Нет надежного способа. Вы найдете в Интернете код, который говорит вам искать SBFormattedPhoneNumber, и иногда он работает, но не всегда. В основном это люди, которые привезли свой номер телефона у другого оператора сотовой связи. В таких случаях вы получаете номер телефона, но не номер для текущего телефона и не тот, который гарантированно действителен для чего-либо вообще (он может даже не быть уникальным).

У меня нет оснований утверждать, что это несколько человек или много, но это недокументированный ключ, который по своей сути ненадежен.

Взгляните на это сообщение в блоге здесь .

NSString *num = [[NSUserDefaults standardUserDefaults] stringForKey:@”SBFormattedPhoneNumber”]; NSLog(@”Phone Number: %@”, num);

Адриан

Этот метод относится к номеру, хранящемуся в iTunes во время активации ... поэтому не используйте его. Начиная с версии 4.x вы можете воспользоваться фреймворком CoreTelephony, чтобы получить много информации о сети, но все еще не количество ...

CFShow([[NSUserDefaults standardUserDefaults] objectForKey:@"SBFormattedPhoneNumber"]); 

NSString *path = [NSHomeDirectory() stringByAppendingPathComponent:@"Library/Preferences/.GlobalPreferences.plist"];  
NSDictionary *dict = [NSDictionary dictionaryWithContentsOfFile:path];  
CFShow(dict);