获取手机的具体型号 及 iOS版本号

首先引入头文件:

#import "sys/utsname.h"

代码实现:

- (void)viewDidLoad {

[super viewDidLoad];

struct utsname systemInfo;

uname(&systemInfo);

NSString *deviceString = [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding];

NSLog(@"%@",deviceString);

NSLog(@"%@",[self judgeDeviceWith:deviceString]);

}

- (NSString *)judgeDeviceWith:(NSString *)deviceString{

//iPhone

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:@"iPhone4,1"])    return @"iPhone 4S";

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

if ([deviceString isEqualToString:@"iPhone5,2"])    return @"iPhone 5";

if ([deviceString isEqualToString:@"iPhone5,3"])    return @"iPhone 5C";

if ([deviceString isEqualToString:@"iPhone5,4"])    return @"iPhone 5C";

if ([deviceString isEqualToString:@"iPhone6,1"])    return @"iPhone 5S";

if ([deviceString isEqualToString:@"iPhone6,2"])    return @"iPhone 5S";

if ([deviceString isEqualToString:@"iPhone7,1"])    return @"iPhone 6 Plus";

if ([deviceString isEqualToString:@"iPhone7,2"])    return @"iPhone 6";

if ([deviceString isEqualToString:@"iPhone8,1"])    return @"iPhone 6s";

if ([deviceString isEqualToString:@"iPhone8,2"])    return @"iPhone 6s Plus";

//iPod

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:@"iPod5,1"])      return @"iPod Touch 5G";

//iPad

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:@"iPad2,4"])      return @"iPad 2 (32nm)";

if ([deviceString isEqualToString:@"iPad2,5"])      return @"iPad mini (WiFi)";

if ([deviceString isEqualToString:@"iPad2,6"])      return @"iPad mini (GSM)";

if ([deviceString isEqualToString:@"iPad2,7"])      return @"iPad mini (CDMA)";

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

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

if ([deviceString isEqualToString:@"iPad3,3"])      return @"iPad 3(4G)";

if ([deviceString isEqualToString:@"iPad3,4"])      return @"iPad 4 (WiFi)";

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

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

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

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

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

if ([deviceString isEqualToString:@"iPad5,3"])      return @"iPad Air 2";

if ([deviceString isEqualToString:@"iPad5,4"])      return @"iPad Air 2";

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

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

if ([deviceString isEqualToString:@"iPad4,4"]

||[deviceString isEqualToString:@"iPad4,5"]

||[deviceString isEqualToString:@"iPad4,6"])      return @"iPad mini 2";

if ([deviceString isEqualToString:@"iPad4,7"]

||[deviceString isEqualToString:@"iPad4,8"]

||[deviceString isEqualToString:@"iPad4,9"])      return @"iPad mini 3";

return nil;

}

***********************获取手机iOS系统的版本号******************************

[[[UIDevice currentDevice] systemVersion] floatValue]

时间: 2024-11-07 09:21:37

获取手机的具体型号 及 iOS版本号的相关文章

<WP8开发学习笔记>获取手机的常用型号(如Lumia920,而非RM-822)

之前WP7时代可以用API获得WP手机的型号如lumia510,但是到了WP8后用APi只能获得硬件版本号了如RM-822,这种型号可以让我们更详细的了解具体的硬件版本,比如国行和港行,设备版本号不一样(但是我不记得了╮(╯-╰)╭),一个支持4G,一个不支持,但是型号都是Lumia920,这或许是微软的考量吧. 但是当我们只想要手机常用的型号时,发现没有这个Api了,真的是很麻烦. 我在GitHub上找到了一个手机型号转换器,PhoneNameResolver,地址 https://githu

android 获取手机型号,本机电话号码,SDK版本以及firmwarw版本号(即系统版本号)

Android开发平台中,可通过TelephonyManager 获取本机号码. 1 TelephonyManager phoneMgr=(TelephonyManager)this.getSystemService(Context.TELEPHONY_SERVICE); 2 txtPhoneNumber.setText(phoneMgr.getLine1Number()); //txtPhoneNumber是一个EditText 用于显示手机号 注: 根据Android的安全机制,在使用Tel

Android编程获取手机型号,本机电话号码,sdk版本及firmware版本号(即系统版本号)

Android开发平台中,可通过TelephonyManager 获取本机号码. TelephonyManager phoneMgr=(TelephonyManager)this.getSystemService(Context.TELEPHONY_SERVICE); txtPhoneNumber.setText(phoneMgr.getLine1Number()); //txtPhoneNumber是一个EditText 用于显示手机号 注: 根据Android的安全机制,在使用Telepho

Android 获取手机的厂商、型号、Android系统版本号、IMEI、当前系统语言等工具类

最近在开发中,需要用到一些系统信息,这里我把这些方法写成一个工具类方便以后复用,该工具类有以下6个功能: 1.获取手机制造厂商 2.获取手机型号 3.获取手机系统当前使用的语言 4.获取Android系统版本号 5.获取手机IMEI串号 6.获取手机中的语言列表 SystemUtil类 [java] view plain copy /** * 系统工具类 * Created by zhuwentao on 2016-07-18. */ public class SystemUtil { /**

js获取手机型号和手机操作系统版本号

1.js 判断IOS版本号 先来观察 iOS 的 User-Agent 串: iPhone 4.3.2 系统:Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_3_2 like Mac OS X; en-us) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8H7 Safari/6533.18.5iPone 5.1 系统:Mozilla/5.0 (iPhone; U; CPU iPhone

iOS获取手机相关信息

iOS具体的设备型号: #include <sys/types.h> #include <sys/sysctl.h> - (void)test { //手机型号. size_t size; sysctlbyname("hw.machine", NULL, &size, NULL, 0); char *machine = (char*)malloc(size); sysctlbyname("hw.machine", machine, &

iOS学习笔记(十三)——获取手机信息(UIDevice、NSBundle、NSLocale)

iOS的APP的应用开发的过程中,有时为了bug跟踪或者获取用反馈的需要自动收集用户设备.系统信息.应用信息等等,这些信息方便开发者诊断问题,当然这些信息是用户的非隐私信息,是通过开发api可以获取到的.那么通过那些api可以获取这些信息呢,iOS的SDK中提供了UIDevice,NSBundle,NSLocale. UIDevice UIDevice提供了多种属性.类函数及状态通知,帮助我们全方位了解设备状况.从检测电池电量到定位设备与临近感应,UIDevice所做的工作就是为应用程序提供用户

iOS 整理笔记 获取手机信息(UIDevice、NSBundle、NSLocale)

/*    iOS的APP的应用开发的过程中,有时为了bug跟踪或者获取用反馈的需要自动收集用户设备.系统信息.应用信息等等,这些信息方便开发者诊断问题,当然这些信息是用户的非隐私信息,是通过开发api可以获取到的.那么通过那些api可以获取这些信息呢,iOS的SDK中提供了UIDevice,NSBundle,NSLocale.    UIDevice        UIDevice提供了多种属性.类函数及状态通知,帮助我们全方位了解设备状况.从检测电池电量到定位设备与临近感应,UIDevice

ios 获取手机相关的信息

获取手机信息      应用程序的名称和版本号等信息都保存在mainBundle的一个字典中,用下面代码可以取出来 //获取版本号 NSDictionary *infoDict = [[NSBundle mainBundle]infoDictionary]; NSString *versionNum = [infoDict objectForKey:@"CFBundleVersion"];//版本号 NSString *appName = [infoDict objectForKey: