Unter iOS 7 wurde CTSubscriber
zum CoreTelephony
Framework hinzugefügt. Es gibt keine Dokumentation zur Verfügung, nur die Header-Datei:Was ist CTSubscriber (und wie man es benutzt) auf iOS 7?
/*
* CTSubscriberTokenRefreshed
*
* Description:
* The name of the NSNotification sent when the carrier token is available.
*/
CORETELEPHONY_EXTERN NSString * const CTSubscriberTokenRefreshed __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_7_0);
CORETELEPHONY_CLASS_AVAILABLE(7_0)
@interface CTSubscriber : NSObject
/*
* carrierToken
*
* Description:
* A data blob containing authorization information about the subscriber.
*
* May return nil if no token is available.
*/
@property (nonatomic, readonly, retain) NSData* carrierToken __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_7_0);
@end
Auch auf What's new on iOS 7, dies erwähnt wird:
Der Core-Telefonie Rahmen (
CoreTelephony.framework
) Sie Informationen über die Art der Funktechnologie optimal nutzen können im Einsatz durch das Gerät. Apps, die in Verbindung mit einem Mobilfunkanbieter entwickelt wurden, können sich auch bei einem bestimmten Teilnehmer für diesen Mobilfunkanbieter authentifizieren.
Ich denke, dass CTSubscriber
mit dem fett gedruckten Teil des Textes verwandt ist. Ich habe jedoch nichts darüber herausgefunden, wie dies geschieht.
Ich habe versucht, den folgenden Code (hinzugefügt application:didFinishLaunchingWithOptions:
) zu verwenden, um mit dieser API zu experimentieren, aber die Meldung nie abgefeuert wird und carrierToken
kehrt nil
:
CTSubscriber *subscriber = [CTSubscriberInfo subscriber];
NSLog(@"%@", subscriber.carrierToken);
[[NSNotificationCenter defaultCenter] addObserverForName:CTSubscriberTokenRefreshed object:nil queue:[NSOperationQueue mainQueue] usingBlock:^(NSNotification *note) {
NSLog(@"==========");
NSLog(@"%@", note);
NSLog(@"%@", subscriber.carrierToken);
}];
Also, ich habe folgende Fragen:
- Was genau („Autorisierungsinformationen“) hat
carrierToken
Rückkehr und wie man es machennil
nicht? - Woher weiß Apple, ob Ihre App "in Verbindung mit einem Träger" entwickelt wurde?
- Gibt Evonote den Telefónica-Benutzern 1 Jahr Premium-Konto (http://blog.evernote.com/blog/2013/08/13/evernote-and-telefonica-announce-global-partnership/)? (Wahrscheinlich nicht, da die Informationen, die sie benötigen, können auf
CTCarrier
erhalten werden)
Bitte werfen Sie einen Blick http://StackOverflow.com/Questions/18961271/Coretelephony-Framework-IOS-7 –
Dies beantwortet meine Fragen nicht. Es wird nur gesagt, dass einige Methoden privat sind (die, die ich gepostet habe, sind öffentlich) und die Informationen, die ich gepostet habe (Dokumentation und Header), sind auch da. –