设备判断 iphone3? iphone4? iphone5?

来源:互联网 发布:macbook软件没法删除 编辑:程序博客网 时间:2024/06/05 11:56
//.h#import <Foundation/Foundation.h>#import <sys/utsname.h>@interface DeviceInfo : NSObject+(NSString*)deviceString;+(BOOL)isRetina;@end//.m#import "DeviceInfo.h"@implementation DeviceInfo+(NSString*)deviceString{        struct utsname systemInfo;        uname(&systemInfo);        NSString *deviceString = [NSStringstringWithCString:systemInfo.machineencoding:NSUTF8StringEncoding];                if ([deviceString isEqualToString:@"iPhone1,1"])    return @"iPhone 1G";        if ([deviceString isEqualToString:@"iPhone1,2"])    return @"iPhone 3G";        if ([deviceString isEqualToString:@"iPhone2,1"])    return @"iPhone 3GS";        if ([deviceString isEqualToString:@"iPhone3,1"])    return @"iPhone 4";        if ([deviceString isEqualToString:@"iPhone3,2"])    return@"Verizon iPhone 4";        if ([deviceString isEqualToString:@"iPod1,1"])      return @"iPod Touch 1G";        if ([deviceString isEqualToString:@"iPod2,1"])      return @"iPod Touch 2G";        if ([deviceString isEqualToString:@"iPod3,1"])      return @"iPod Touch 3G";        if ([deviceString isEqualToString:@"iPod4,1"])      return @"iPod Touch 4G";        if ([deviceString isEqualToString:@"iPad1,1"])      return @"iPad";        if ([deviceString isEqualToString:@"iPad2,1"])      return @"iPad 2 (WiFi)";        if ([deviceString isEqualToString:@"iPad2,2"])      return @"iPad 2 (GSM)";        if ([deviceString isEqualToString:@"iPad2,3"])      return @"iPad 2 (CDMA)";        if ([deviceString isEqualToString:@"i386"])         return @"Simulator";        if ([deviceString isEqualToString:@"x86_64"])       return @"Simulator";            return deviceString;    }+(BOOL)isRetina{        struct utsname systemInfo;        uname(&systemInfo);        NSString *deviceString = [NSStringstringWithCString:systemInfo.machineencoding:NSUTF8StringEncoding];                if ([deviceString isEqualToString:@"iPhone1,1"])    return NO;        if ([deviceString isEqualToString:@"iPhone1,2"])    return NO;        if ([deviceString isEqualToString:@"iPhone2,1"])    return NO;        if ([deviceString isEqualToString:@"iPhone3,1"])    return YES;        if ([deviceString isEqualToString:@"iPhone3,2"])    return YES;        if ([deviceString isEqualToString:@"iPod1,1"])      return NO;        if ([deviceString isEqualToString:@"iPod2,1"])      return NO;        if ([deviceString isEqualToString:@"iPod3,1"])      return NO;        if ([deviceString isEqualToString:@"iPod4,1"])      return YES;        if ([deviceString isEqualToString:@"iPad1,1"])      return YES;        if ([deviceString isEqualToString:@"iPad2,1"])      return YES;        if ([deviceString isEqualToString:@"iPad2,2"])      return YES;        if ([deviceString isEqualToString:@"iPad2,3"])      return YES;        if ([deviceString isEqualToString:@"i386"])         return NO;        if ([deviceString isEqualToString:@"x86_64"])       return NO;        returnNO;//    return deviceString;    }@end+ (NSString*)deviceString{    // 需要#import "sys/utsname.h"    struct utsname systemInfo;    uname(&systemInfo);    NSString *deviceString = [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding];         if ([deviceString isEqualToString:@"iPhone1,1"])    return @"iPhone 1G";    if ([deviceString isEqualToString:@"iPhone1,2"])    return @"iPhone 3G";    if ([deviceString isEqualToString:@"iPhone2,1"])    return @"iPhone 3GS";    if ([deviceString isEqualToString:@"iPhone3,1"])    return @"iPhone 4";    if ([deviceString isEqualToString:@"iPhone4,1"])    return @"iPhone 4S";    if ([deviceString isEqualToString:@"iPhone5,2"])    return @"iPhone 5";    if ([deviceString isEqualToString:@"iPhone3,2"])    return @"Verizon iPhone 4";    if ([deviceString isEqualToString:@"iPod1,1"])      return @"iPod Touch 1G";    if ([deviceString isEqualToString:@"iPod2,1"])      return @"iPod Touch 2G";    if ([deviceString isEqualToString:@"iPod3,1"])      return @"iPod Touch 3G";    if ([deviceString isEqualToString:@"iPod4,1"])      return @"iPod Touch 4G";    if ([deviceString isEqualToString:@"iPad1,1"])      return @"iPad";    if ([deviceString isEqualToString:@"iPad2,1"])      return @"iPad 2 (WiFi)";    if ([deviceString isEqualToString:@"iPad2,2"])      return @"iPad 2 (GSM)";    if ([deviceString isEqualToString:@"iPad2,3"])      return @"iPad 2 (CDMA)";    if ([deviceString isEqualToString:@"i386"])         return @"Simulator";    if ([deviceString isEqualToString:@"x86_64"])       return @"Simulator";    NSLog(@"NOTE: Unknown device type: %@", deviceString);    return deviceString;}

原创粉丝点击