2012-10-12 1 views
6

Mögliche Duplizieren:
How can we programmatically detect which iOS version is device running on?Wie überprüfe ich, ob auf einem Gerät iOS 6 ausgeführt wird?

Wie kann ich überprüfen, ob ein Gerät mit iOS 6? Ich muss sehen, überprüfen, ob das Betriebssystem iOS 6, um mein YouTube-Video-URLs zu ändern, da der Release Notes von Apple, wie man sie in iOS6 zu handhaben

Ab iOS 6, eingebettet YouTube-URLs in der Form von http://www.youtube.com/watch?v=oHg5SJYRHA0 wird nicht mehr funktionieren. Diese URLs dienen zum Anzeigen des Videos auf der YouTube-Website, nicht zum Einbetten von in Webseiten. Stattdessen wird das Format, das verwendet werden sollte, in https://developers.google.com/youtube/player_parameters beschrieben.

Ich dachte an eine if else Anweisung, damit umzugehen.

Dank für jede Hilfe

+1

Lassen Sie mich verweisen Sie auf [diese Frage und Antwort] (http://stackoverflow.com/questions/7848766/how-can-we-programmatical-detect-which-ios-version-is-device-running-on) ... – James

+0

Überprüfen Sie dies: http: // stackoverflow .com/questions/3339722/check-iphone-ios-version – Resh32

+0

nimm das hier definierte Makro. http://StackOverflow.com/a/8042056/593336 – mayuur

Antwort

35

Als Schwimmer Parameter Vor dem Vergleich sollten Sie 6,0 in einem float-Variable gesetzt, so dass LHS und RHS gleich sein sollten vergleichen:

float currentVersion = 6.0; 

if ([[[UIDevice currentDevice] systemVersion] floatValue] >= currentVersion) 
{ 
    NSLog(@"Running in IOS-6"); 
} 
+1

[[UIDevice currentDevice] systemVersion] ist wahrscheinlich die ineffizienteste Möglichkeit, nach iOS-Versionsnummern zu suchen. Es ist nicht klar, warum, aber diese Funktion benötigt wertvolle CPU-Zyklen, um eine Versionsnummer zurückzugeben. Verwenden Sie stattdessen NSFoundationVersionNumber. https://developer.apple.com/Bibliothek/ios/Dokumentation/Kakao/Referenz/Stiftung/Sonstiges/Foundation_Constants/Reference/reference.html – Abhinit

0

Versuchen unter

float deviceVersion = [[[UIDevice currentDevice] systemVersion] floatValue]; 
NSLog(@"My Device version is :%f ",deviceVersion); 

ich hoffe es wird dir helfen.

+0

Vielleicht möchten Sie etwas wie 'if (deviceVersion> = 6.0)' tun, denn sobald 6.1 ausläuft, wird dieser Code fehlschlagen und wieder auf 5.x setzen. – Shayne

+0

Die Überprüfung auf eine explizite Versionsnummer ist fast immer falsch. Suchen Sie stattdessen nach Funktionen. – Roger

+0

hey @Shayne du hast recht, aber hier zeige ich nur, dass ich auch nicht dafür favorisiere, deshalb ändere ich meine Antwort. – Kamarshad

1
NSString *versionString = [[UIDevice currentDevice] systemVersion]; // iOS version as string 
int versionStringInt = [ver intValue]; // iOS version as int 
float versionStringFloat = [ver floatValue]; // iOS version as float