Bestimmen Sie das Gerät des Benutzers mithilfe des iOS SDK und des vollständigen Cocoa Touch / Objective-C-Codes

8

Ich habe die folgende UIDevice-Kategorie basierend auf verschiedenen Quellen geschrieben. Ich habe die platformCode -Methode aktualisiert, so dass sie weniger niedrig ist, als man sieht.

Das funktioniert perfekt, aber die Methode platformCode ist niedrig. Weißt du, ob diese Art von Anruf mit Cocoa Touch-Code ersetzt werden kann? Hier ist der relevante Code:

UIDevice_enhanced.h

%Vor%

UIDevice_enhanced.m

%Vor%     
Oliver 06.11.2011, 02:28
quelle

2 Antworten

2

Dies kann als eine "objektive-c" -Methode betrachtet werden:

%Vor%

Dies wäre eine obj-c-Version von utsname machine (aus dieser Zeile: NSString* platform =  [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding]; ).

utsname :

  

Der Header <sys/utsname.h> definiert die Struktur utsname, die enthält   mindestens die folgenden Mitglieder:

     

char sysname[] Name dieser Implementierung des Betriebssystems
char nodename[] Name dieses Knotens innerhalb einer Implementierung abhängig   Kommunikationsnetzwerk
char release[] aktuelles Versionslevel von   diese Implementierung
char version[] aktuelle Version dieser Version   Release
char machine[] Name des Hardwaretyps, auf dem der   System läuft

UIDevice Klassenreferenz :

  

systemName Der Name des Betriebssystems, das auf dem Gerät ausgeführt wird   repräsentiert durch den Empfänger. (schreibgeschützt)
@property (nonatomic, readonly, retain) NSString *system

Da jedoch systemName nur @ iPhone OS zurückgibt, müssen Sie c-code verwenden, um die tatsächliche Modellnummer des Geräts zu erhalten. Hier ist ein anderer Weg, es zu tun:

%Vor%     
chown 06.11.2011 04:00
quelle
1

Sie müssen den C-Aufruf der unteren Ebene verwenden, um den infoString zu erhalten. Für meine Zwecke habe ich eine winzige Objective-C-Bibliothek geschrieben, die das abstrahiert und eine Objective-C-Schnittstelle darstellt.

%Vor%

Sie können es auf github bekommen, wenn Sie möchten: GBDeviceInfo

    
lms 20.09.2012 09:47
quelle

Tags und Links