您的位置:首页 > 移动开发 > IOS开发

[iOS]获取设备具体型号信息

2015-06-30 16:55 579 查看
本文地址; http://blog.csdn.net/zhaoyabei/article/details/46697859

应用统计中有时候需要上传设备型号,如果这样写:

[[UIDevice currentDevice] model]


获得的设备型号不是具体型号,如在iPhone5S上面运行,实测得到字符串为@”iPhone”,我想要的是具体型号。

这里提供一个方法来获得设备具体型号(版本与机型的对应关系来源于维基百科):

- (NSString *)platform{
struct utsname systemInfo;
uname(&systemInfo);
NSString *deviceString = [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding];
//未考虑iPhone3等较老设备,未考虑iPad设备(公司的应用不支持iPad)
if ([deviceString hasPrefix:@"iPhone3"])    return @"iPhone 4";
if ([deviceString isEqualToString:@"iPhone4,1"])    return @"iPhone 4S";
if ([deviceString isEqualToString:@"iPhone5,1"]||[deviceString isEqualToString:@"iPhone5,2"])    return @"iPhone 5";
if ([deviceString isEqualToString:@"iPhone5,3"]||[deviceString isEqualToString:@"iPhone5,4"])    return @"iPhone 5C";
if ([deviceString hasPrefix:@"iPhone6"])    return @"iPhone 5S";
if ([deviceString isEqualToString:@"iPhone7,1"])    return @"iPhone 6 Plus";
if ([deviceString isEqualToString:@"iPhone7,2"])    return @"iPhone 6";
if ([deviceString isEqualToString:@"i386"])         return @"Simulator";
if ([deviceString isEqualToString:@"x86_64"])       return @"Simulator";
//如果没有匹配直接返回系统提供的类似@"iPhone5,3"这种型号
return deviceString;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: