snippit:
NSString *phoneNumber = (NSString *) [[NSUserDefaults standardUserDefaults] objectForKey:@"SBFormattedPhoneNumber"]; // Will return null in simulator!
NSLog(@"Formatted phone number [%@]", phoneNumber);
I [vor kurzem] lief diesen Code als Service-Leistung auf OS 2.2.1 [und OS 3.0].
Es funktioniert wie erwartet, wenn auf dem Gerät ausgeführt wird, und gibt meine Telefonnummer mit den vollständigen internationalen Vorwahlnummern [1 in meinem Fall] zurück.
Bei der Ausführung im Simulator ist der Wert [returned] eine Null-Zeichenfolge und funktioniert daher nur auf einem tatsächlichen iPhone-Gerät.
Ich habe es nicht auf einem iPod Touch getestet.
...
Ran diesen Code auf einem anderen Gerät in dieser Woche, und bekam einen Nullwert anstelle der Nummer.
Bei weiteren Untersuchungen scheint es, dass die Zahl, die von diesem Code-Snippit zurückgegeben wird, die Nummer ist, die in iTunes für das Gerät eingerichtet ist.
Wenn Sie die iPhone-Nummer in iTunes bei der Geräteaktivierung nicht eingegeben haben, oder vielleicht (wie in meinem Fall), wenn der Standardwert nicht die iPhone-Nummer war und Sie trotzdem auf OK geklickt haben, so dass iTunes nicht auflistet die Telefonnummer, wenn Ihr iPhone eingesteckt ist, gibt dieser Code eine leere Zeichenfolge zurück.
[Oben ist eine editierte Verkettung Kommentare Vor kurzem habe ich zu diesem Thema zu einem anderen Beitrag geschrieben http://www.alexcurylo.com/blog/2008/11/15/snippet-phone-number/]
Können Sie die Seriennummer zugreifen? –
wurde ein Fehler mit
aber scheint zu funktionieren. –Siehe http://stackoverflow.com/questions/193182/programmy-get-own-phone-number-in-iphone-os für warum SBFormattedPhoneNumber nicht mehr funktioniert. – Archie