¿Cómo get la versión correcta de iOS mediante progtwigción?

Quiero get la versión actual del dispositivo del usuario para algunos análisis en el backend. Estoy tratando de getlo como se muestra a continuación,

[[[UIDevice currentDevice] systemVersion] floatValue]; **//not returning the minor version number** 

Cuando pruebo esto ejecutando en mi iPhone que está teniendo iOS 8.0.2, este api me devuelve 8.000000 como resultado, pero necesito la versión exacta de iOS que es 8.0.2

Cualquier ayuda para solucionar este problema se aprecia de antemano.

En iOS 8 y superior, puedes usar:

 [[NSProcessInfo processInfo] operatingSystemVersion] 

Si desea verificar la disponibilidad de una API en particular, hay una manera mejor que comprobar las versiones del sistema operativo, como se explica aquí .

Puede getlo con esto, en formatting NSString:

 [UIDevice currentDevice].systemVersion 

NUEVA EDICIÓN

PD

cambió su pregunta … ahora mi respuesta no tiene más sentido … la próxima vez agregue nuevas líneas con una edición evidente, para que todos entiendan el hilo de la pregunta / respuestas, por favor

 NSString *osVersion = [[UIDevice currentDevice] systemVersion]; 

C objective

 // define macro #define SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] != NSOrdenetworkingAscending) #define SYSTEM_VERSION_LESS_THAN(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] == NSOrdenetworkingAscending) 

luego usa así:

 if (SYSTEM_VERSION_LESS_THAN(@"10.0")){ //your code here } 

tal vez no sea la solución más elegante de la historia, pero definitivamente hace el trabajo, por lo que puede probar algo así en ObjC:

 - (NumVersion)systemVersion { NSArray *_separated = [[[UIDevice currentDevice] systemVersion] componentsSeparatedByString:@"."]; NumVersion _version = { 0, 0, 0, 0 }; if (_separated.count > 3) _version.stage = [[_separated objectAtIndex:3] integerValue]; if (_separated.count > 2) _version.nonRelRev = [[_separated objectAtIndex:2] integerValue]; if (_separated.count > 1) _version.minorAndBugRev = [[_separated objectAtIndex:1] integerValue]; if (_separated.count > 0) _version.majorRev = [[_separated objectAtIndex:0] integerValue]; return _version; } 

entonces:

 NumVersion version = [self systemVersion]; NSLog(@"%d, %d, %d, %d", version.majorRev, version.minorAndBugRev, version.nonRelRev, version.stage); 

Imprimirá (en mi caso en el mismo momento):

 11, 0, 2, 0 

lo que sería capaz de convertir a un formatting más deseable para su análisis.