iOS获取设备型号和App版本号等信息
2017-03-19 20:49
405 查看
iOS开发过程中,有时候为了更好的用户体验或者为了bug跟踪,可能会需要获取用户的应用信息、系统信息、设备信息。这些信息的获取可以根据不同的设备或者App、系统版本来提供不同的功能或更好的用户体验,或者让开发者能更好的分析用户的问题原因。
1.获取设备名称:
2.获取系统版本号:
3.获取设备唯一标识符
4.获取设备的型号
5.获取app相关信息:
OC代码获取iOS设备型号:
之后
1.获取设备名称:
NSString *deviceName = [[UIDevice currentDevice] name];
2.获取系统版本号:
NSString *sysVersion = [[UIDevice currentDevice] systemVersion];
3.获取设备唯一标识符
NSString *deviceUUID = [[[UIDevice currentDevice] identifierForVendor] UUIDString];
4.获取设备的型号
NSString *deviceModel = [[UIDevice currentDevice] model];
5.获取app相关信息:
NSDictionary *infoDic = [[NSBundle mainBundle] infoDictionary]; // 获取App的版本号 NSString *appVersion = [infoDic objectForKey:@"CFBundleShortVersionString"]; // 获取App的build版本 NSString *appBuildVersion = [infoDic objectForKey:@"CFBundleVersion"]; // 获取App的名称 NSString *appName = [infoDic objectForKey:@"CFBundleDisplayName"];
OC代码获取iOS设备型号:
// 需要#import <sys/utsname.h> + (NSString*)deviceModelName { struct utsname systemInfo; uname(&systemInfo); NSString *deviceModel = [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding]; //iPhone 系列 if ([deviceModel isEqualToString:@"iPhone1,1"]) return @"iPhone 1G"; if ([deviceModel isEqualToString:@"iPhone1,2"]) return @"iPhone 3G"; if ([deviceModel isEqualToString:@"iPhone2,1"]) return @"iPhone 3GS"; if ([deviceModel isEqualToString:@"iPhone3,1"]) return @"iPhone 4"; if ([deviceModel isEqualToString:@"iPhone3,2"]) return @"Verizon iPhone 4"; if ([deviceModel isEqualToString:@"iPhone4,1"]) return @"iPhone 4S"; if ([deviceModel isEqualToString:@"iPhone5,1"]) return @"iPhone 5"; if ([deviceModel isEqualToString:@"iPhone5,2"]) return @"iPhone 5"; if ([deviceModel isEqualToString:@"iPhone5,3"]) return @"iPhone 5C"; if ([deviceModel isEqualToString:@"iPhone5,4"]) return @"iPhone 5C"; if ([deviceModel isEqualToString:@"iPhone6,1"< b489 /span>]) return @"iPhone 5S"; if ([deviceModel isEqualToString:@"iPhone6,2"]) return @"iPhone 5S"; if ([deviceModel isEqualToString:@"iPhone7,1"]) return @"iPhone 6 Plus"; if ([deviceModel isEqualToString:@"iPhone7,2"]) return @"iPhone 6"; if ([deviceModel isEqualToString:@"iPhone8,1"]) return @"iPhone 6s"; if ([deviceModel isEqualToString:@"iPhone8,2"]) return @"iPhone 6s Plus"; if ([deviceModel isEqualToString:@"iPhone9,1"]) return @"iPhone 7 (CDMA)"; if ([deviceModel isEqualToString:@"iPhone9,3"]) return @"iPhone 7 (GSM)"; if ([deviceModel isEqualToString:@"iPhone9,2"]) return @"iPhone 7 Plus (CDMA)"; if ([deviceModel isEqualToString:@"iPhone9,4"]) return @"iPhone 7 Plus (GSM)"; //iPod 系列 if ([deviceModel isEqualToString:@"iPod1,1"]) return @"iPod Touch 1G"; if ([deviceModel isEqualToString:@"iPod2,1"]) return @"iPod Touch 2G"; if ([deviceModel isEqualToString:@"iPod3,1"]) return @"iPod Touch 3G"; if ([deviceModel isEqualToString:@"iPod4,1"]) return @"iPod Touch 4G"; if ([deviceModel isEqualToString:@"iPod5,1"]) return @"iPod Touch 5G"; //iPad 系列 if ([deviceModel isEqualToString:@"iPad1,1"]) return @"iPad"; if ([deviceModel isEqualToString:@"iPad2,1"]) return @"iPad 2 (WiFi)"; if ([deviceModel isEqualToString:@"iPad2,2"]) return @"iPad 2 (GSM)"; if ([deviceModel isEqualToString:@"iPad2,3"]) return @"iPad 2 (CDMA)"; if ([deviceModel isEqualToString:@"iPad2,4"]) return @"iPad 2 (32nm)"; if ([deviceModel isEqualToString:@"iPad2,5"]) return @"iPad mini (WiFi)"; if ([deviceModel isEqualToString:@"iPad2,6"]) return @"iPad mini (GSM)"; if ([deviceModel isEqualToString:@"iPad2,7"]) return @"iPad mini (CDMA)"; if ([deviceModel isEqualToString:@"iPad3,1"]) return @"iPad 3(WiFi)"; if ([deviceModel isEqualToString:@"iPad3,2"]) return @"iPad 3(CDMA)"; if ([deviceModel isEqualToString:@"iPad3,3"]) return @"iPad 3(4G)"; if ([deviceModel isEqualToString:@"iPad3,4"]) return @"iPad 4 (WiFi)"; if ([deviceModel isEqualToString:@"iPad3,5"]) return @"iPad 4 (4G)"; if ([deviceModel isEqualToString:@"iPad3,6"]) return @"iPad 4 (CDMA)"; if ([deviceModel isEqualToString:@"iPad4,1"]) return @"iPad Air"; if ([deviceModel isEqualToString:@"iPad4,2"]) return @"iPad Air"; if ([deviceModel isEqualToString:@"iPad4,3"]) return @"iPad Air"; if ([deviceModel isEqualToString:@"iPad5,3"]) return @"iPad Air 2"; if ([deviceModel isEqualToString:@"iPad5,4"]) return @"iPad Air 2"; if ([deviceModel isEqualToString:@"i386"]) return @"Simulator"; if ([deviceModel isEqualToString:@"x86_64"]) return @"Simulator"; if ([deviceModel isEqualToString:@"iPad4,4"] ||[deviceModel isEqualToString:@"iPad4,5"] ||[deviceModel isEqualToString:@"iPad4,6"]) return @"iPad mini 2"; if ([deviceModel isEqualToString:@"iPad4,7"] ||[deviceModel isEqualToString:@"iPad4,8"] ||[deviceModel isEqualToString:@"iPad4,9"]) return @"iPad mini 3"; return deviceModel; } 记得一定要#import <sys/utsname.h>
之后
let modelName = UIDevice.currentDevice().modelName
相关文章推荐
- iOS获取设备型号和App版本号等信息
- iOS获取设备型号和App版本号等信息
- 获取iOS App 包名、版本号、设备信息、签名
- IOS-获取Model(设备型号)、Version(设备版本号)、app(程序版本号)等
- iOS-获取Model(设备型号)、Version(设备版本号)、app(程序版本号)等
- iOS获取设备的序列号,自定义名,设备名,手机版本号,手机序列号,,手机型号,地方型号,当前App名称,App版本号...
- IOS-获取Model(设备型号)、Version(设备版本号)、app(程序版本号)
- IOS-获取Model(设备型号)、Version(设备版本号)、app(程序版本号)等
- IOS-获取Model(设备型号)、Version(设备版本号)、app(程序版本号)等
- IOS-获取Model(设备型号)、Version(设备版本号)、app(程序版本号)等
- IOS-获取Model(设备型号)、Version(设备版本号)、app(程序版本号)
- IOS-获取Model(设备型号)、Version(设备版本号)、app(程序版本号)
- IOS-获取Model(设备型号)、Version(设备版本号)、app(程序版本号)等
- 获取iOS App 包名、版本号、设备信息、签名
- IOS-获取Model(设备型号)、Version(设备版本号)、app(程序版本号)等
- IOS 获取Model(设备型号)Version(设备版本号)app(程序版本号)等
- swift 获取app、ios 版本号及设备信息
- IOS-获取Model(设备型号)、Version(设备版本号)、app(程序版本号)等
- IOS-获取Model(设备型号)、Version(设备版本号)、app(程序版本号)等
- IOS-获取Model(设备型号)、Version(设备版本号)、app(程序版本号)等