iOS 系统版本判断

宏定义

#define IOS9_OR_LATER ( [[[UIDevice currentDevice] systemVersion] compare:@"9.0"] != NSOrderedAscending )

#define IOS8_OR_LATER ( [[[UIDevice currentDevice] systemVersion] compare:@"8.0"] != NSOrderedAscending )

#define IOS7_OR_LATER ( [[[UIDevice currentDevice] systemVersion] compare:@"7.0"] != NSOrderedAscending )

#define IOS6_OR_LATER ( [[[UIDevice currentDevice] systemVersion] compare:@"6.0"] != NSOrderedAscending )

#define IOS5_OR_LATER ( [[[UIDevice currentDevice] systemVersion] compare:@"5.0"] != NSOrderedAscending )

#define IOS4_OR_LATER ( [[[UIDevice currentDevice] systemVersion] compare:@"4.0"] != NSOrderedAscending )

#define IOS3_OR_LATER ( [[[UIDevice currentDevice] systemVersion] compare:@"3.0"] != NSOrderedAscending )

#define IS_IPAD         (UI_USER_INTERFACE_IDIOM()==UIUserInterfaceIdiomPad)

#define IS_IPHONE_5     [SNSystemInfo is_iPhone_5];
+ (NSString *)osVersion
{
    return [[UIDevice currentDevice] systemVersion];
}

+ (NSString *)platform
{
    size_t size;
    sysctlbyname("hw.machine", NULL, &size, NULL, 0);
    char *machine = malloc(size);
    sysctlbyname("hw.machine", machine, &size, NULL, 0);
    NSString *platform = [NSString stringWithCString:machine encoding:NSUTF8StringEncoding];
    free(machine);
    return platform;
}

+ (NSString *)platformString
{
    NSString *platform = [self platform];

    if ([platform isEqualToString:@"iPhone1,1"])   return @"iPhone1G GSM";
    if ([platform isEqualToString:@"iPhone1,2"])   return @"iPhone3G GSM";
    if ([platform isEqualToString:@"iPhone2,1"])   return @"iPhone3GS GSM";
    if ([platform isEqualToString:@"iPhone3,1"])   return @"iPhone4 GSM";
    if ([platform isEqualToString:@"iPhone3,3"])   return @"iPhone4 CDMA";
    if ([platform isEqualToString:@"iPhone4,1"])   return @"iPhone4S";
    if ([platform isEqualToString:@"iPhone5,1"])   return @"iPhone5";
    if ([platform isEqualToString:@"iPhone5,2"])   return @"iPhone5";
    if ([platform isEqualToString:@"iPod1,1"])   return @"iPod Touch 1G";
    if ([platform isEqualToString:@"iPod2,1"])   return @"iPod Touch 2G";
    if ([platform isEqualToString:@"iPod3,1"])   return @"iPod Touch 3G";
    if ([platform isEqualToString:@"iPod4,1"])   return @"iPod Touch 4G";
    if ([platform isEqualToString:@"iPad1,1"])   return @"iPad1 WiFi";
    if ([platform isEqualToString:@"iPad2,1"])   return @"iPad2 WiFi";
    if ([platform isEqualToString:@"iPad2,2"])   return @"iPad2 GSM";
    if ([platform isEqualToString:@"iPad2,3"])   return @"iPad2 CDMAV";
    if ([platform isEqualToString:@"iPad2,4"])   return @"iPad2 CDMAS";
    if ([platform isEqualToString:@"iPad2,5"])   return @"iPad mini WiFi";
    if ([platform isEqualToString:@"iPad3,1"])   return @"iPad3 WiFi";
    if ([platform isEqualToString:@"iPad3,2"])   return @"iPad3 GSM";
    if ([platform isEqualToString:@"iPad3,3"])   return @"iPad3 CDMA";
    if ([platform isEqualToString:@"i386"] || [platform isEqualToString:@"x86_64"])
        return @"iPhone Simulator";

    return platform;
}

//获取系统当前时间
+ (NSString *)systemTimeInfo
{
    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
    [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
    NSString *currentDateString = [dateFormatter stringFromDate:[NSDate date]];
    return currentDateString;
}

+ (NSString *)appVersion
{
    NSString *version = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleShortVersionString"];
    return [NSString stringWithFormat:@"%@", version];
}

+ (BOOL)is_iPhone_5
{
    if ([UIScreen mainScreen].bounds.size.height == 568.0f) {
        return YES;
    }else{
        return NO;
    }
}

if ([platform isEqualToString:@"iPhone1,1"]) return @"iPhone 2G (A1203)";

    if ([platform isEqualToString:@"iPhone1,2"]) return @"iPhone 3G (A1241/A1324)";

    if ([platform isEqualToString:@"iPhone2,1"]) return @"iPhone 3GS (A1303/A1325)";

    if ([platform isEqualToString:@"iPhone3,1"]) return @"iPhone 4 (A1332)";

    if ([platform isEqualToString:@"iPhone3,2"]) return @"iPhone 4 (A1332)";

    if ([platform isEqualToString:@"iPhone3,3"]) return @"iPhone 4 (A1349)";

    if ([platform isEqualToString:@"iPhone4,1"]) return @"iPhone 4S (A1387/A1431)";

    if ([platform isEqualToString:@"iPhone5,1"]) return @"iPhone 5 (A1428)";

    if ([platform isEqualToString:@"iPhone5,2"]) return @"iPhone 5 (A1429/A1442)";

    if ([platform isEqualToString:@"iPhone5,3"]) return @"iPhone 5c (A1456/A1532)";

    if ([platform isEqualToString:@"iPhone5,4"]) return @"iPhone 5c (A1507/A1516/A1526/A1529)";

    if ([platform isEqualToString:@"iPhone6,1"]) return @"iPhone 5s (A1453/A1533)";

    if ([platform isEqualToString:@"iPhone6,2"]) return @"iPhone 5s (A1457/A1518/A1528/A1530)";

    if ([platform isEqualToString:@"iPhone7,1"]) return @"iPhone 6 Plus (A1522/A1524)";

    if ([platform isEqualToString:@"iPhone7,2"]) return @"iPhone 6 (A1549/A1586)";

    

    if ([platform isEqualToString:@"iPod1,1"])   return @"iPod Touch 1G (A1213)";

    if ([platform isEqualToString:@"iPod2,1"])   return @"iPod Touch 2G (A1288)";

    if ([platform isEqualToString:@"iPod3,1"])   return @"iPod Touch 3G (A1318)";

    if ([platform isEqualToString:@"iPod4,1"])   return @"iPod Touch 4G (A1367)";

    if ([platform isEqualToString:@"iPod5,1"])   return @"iPod Touch 5G (A1421/A1509)";

    

    if ([platform isEqualToString:@"iPad1,1"])   return @"iPad 1G (A1219/A1337)";

    

    if ([platform isEqualToString:@"iPad2,1"])   return @"iPad 2 (A1395)";

    if ([platform isEqualToString:@"iPad2,2"])   return @"iPad 2 (A1396)";

    if ([platform isEqualToString:@"iPad2,3"])   return @"iPad 2 (A1397)";

    if ([platform isEqualToString:@"iPad2,4"])   return @"iPad 2 (A1395+New Chip)";

    if ([platform isEqualToString:@"iPad2,5"])   return @"iPad Mini 1G (A1432)";

    if ([platform isEqualToString:@"iPad2,6"])   return @"iPad Mini 1G (A1454)";

    if ([platform isEqualToString:@"iPad2,7"])   return @"iPad Mini 1G (A1455)";

    

    if ([platform isEqualToString:@"iPad3,1"])   return @"iPad 3 (A1416)";

    if ([platform isEqualToString:@"iPad3,2"])   return @"iPad 3 (A1403)";

    if ([platform isEqualToString:@"iPad3,3"])   return @"iPad 3 (A1430)";

    if ([platform isEqualToString:@"iPad3,4"])   return @"iPad 4 (A1458)";

    if ([platform isEqualToString:@"iPad3,5"])   return @"iPad 4 (A1459)";

    if ([platform isEqualToString:@"iPad3,6"])   return @"iPad 4 (A1460)";

    

    if ([platform isEqualToString:@"iPad4,1"])   return @"iPad Air (A1474)";

    if ([platform isEqualToString:@"iPad4,2"])   return @"iPad Air (A1475)";

    if ([platform isEqualToString:@"iPad4,3"])   return @"iPad Air (A1476)";

    if ([platform isEqualToString:@"iPad4,4"])   return @"iPad Mini 2G (A1489)";

    if ([platform isEqualToString:@"iPad4,5"])   return @"iPad Mini 2G (A1490)";

    if ([platform isEqualToString:@"iPad4,6"])   return @"iPad Mini 2G (A1491)";

    

    if ([platform isEqualToString:@"i386"])      return @"iPhone Simulator";

    if ([platform isEqualToString:@"x86_64"])    return @"iPhone Simulator";

    return platform;

时间: 2024-12-13 15:31:30

iOS 系统版本判断的相关文章

iPhone 屏幕适配判断 和 iOS系统版本判断

? 1 2 3 4 5 6 7 8 9 if([[[UIDevicecurrentDevice]systemVersion]floatValue]>=7.0) {     // iOS7.0及以上版本系统适配 } if([UIScreen mainScreen].bounds.size.height == 568) {     // iPhone 屏幕适配 } 可以写成宏定义放在pch文件中, ? 1 2 3 4 // 判断是否为iPhone5 #define iPhone5 ([UIScree

iOS系统版本判断方法

在iOS系统中提供了系统版本的判断函数,因此我们可以很容易得到他的当前系统版本: [[UIDevice currentDevice] systemName];//系统名字[[UIDevice currentDevice] systemVersion];//系统版本号[[UIDevice currentDevice] uniqueIdentifier];//[[UIDevice currentDevice] model];  //设备型号 这些方法都能够帮助你快速得到你所想要的关于系统硬件和软件的

ios系统版本判断

double version = [[UIDevice currentDevice].systemVersion doubleValue];

计算一段文字内容的size+系统版本判断

注:IOS7弃用sizeWithFont和sizeWithFont:constrainedToSize:lineBreakMode:方法 1.计算一行text内容的size CGSize timeSize; if (isIOS7Height) { timeSize = [_timeLabel.text sizeWithAttributes:@{NSFontAttributeName:kNameFont}]; } else { timeSize = [_timeLabel.text sizeWit

Windows 系统版本判断

Windows 系统版本判断 博客分类: C/C++ 很多情况下,需要软件判断操作系统,其实网上写的都很少,我希望这篇文章能给大家帮助 首先我们要在.h中定义下面的东西 Cpp代码   #define PRODUCT_UNDEFINED                       0x00000000 #define PRODUCT_ULTIMATE                        0x00000001 #define PRODUCT_HOME_BASIC             

获取iOS系统版本和设备的电量

获取iOS系统版本 --- UIDevice的使用 UIDevice类是一个单例,其唯一的实例( [UIDevice currentDevice] ) 代表了当前使用的设备. 通过这个实例,可以获得设备的相关信息(包括系统名称,版本号,设备模式等等). 也可以使用使用该实例来监测设备的特征(比如物理方向). NSString *strName = [[UIDevice currentDevice] name]; // 设备名称 NSString *strId = [[UIDevice curre

iOS 系统版本的判断

iOS 宏定义系统版本的判断 #define iOS7 ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0) #define iOS7Later ([UIDevice currentDevice].systemVersion.floatValue >= 7.0f) #define iOS8Later ([UIDevice currentDevice].systemVersion.floatValue >= 8.0f)

获取iOS系统版本

获取ios设备系统信息的方法 之 [UIDevice currentDevice] 获取iphone的系统信息使用[UIDevice currentDevice],信息如下: [[UIDevice currentDevice] systemName]:系统名称,如iPhone OS [[UIDevice currentDevice] systemVersion]:系统版本,如4.2.1 [[UIDevice currentDevice] model]:The model of the devic

如何查看iOS系统版本在iPhone设备上的占有率

我们平时开发的时候有时要考虑到系统的兼容版本,但是怎么知道各个版本的系统占有率,其实这个苹果官方是有提供的.进入如下链接到的页面就可以知道各大系统版本的占有率了,不过说实在的iPhone用户的系统更新率还是蛮快的,当然这个要得益于苹果的系统推送,你懂的,手动滑稽- https://developer.apple.com/support/app-store/