獲取iOS裝置型號的方法總結

2021-09-07 03:03:29 字數 2253 閱讀 6319

三種常用的辦法獲取ios裝置的型號:

1. [uidevice currentdevice].model (推薦);

2. uname(struct utsname *name) ,使用此函式需要#include ;

3.sysctlbyname(const char *name, void *oldp, size_t *oldlenp, void *newp,

size_t newlen) ,使用此函式需要#include ,#include;

推薦使用第一種方法,為最上層的api,在專案開發中推薦使用高階的api ,因為其識別度高,更簡潔易用。2、3兩種都是bsd級別的api ,為底層的api,不推薦。

示例:1. nsstring * strmodel  = [uidevice currentdevice].model ;

2. struct utsname systeminfo 

uname(&systeminfo) 

nsstring * strmodel = [nsstring stringwithcstring:systeminfo.machine

encoding:nsutf8stringencoding];

3. size_t size 

sysctlbyname ("hw.machine" , null , &size ,null ,0)

char *model = (char *)malloc(size)

sysctlbyname ("hw.machine" , model , &size ,null ,0)

nsstring * strmodel = [nsstring stringwithcstring: model

encoding:nsutf8stringencoding];

獲取了裝置型號之後,還不能準確的了解其裝置型別,還需要找到與其型號對應的裝置說明。

如ipad2,1對應的是 ipad2(wifi)。

此對應表已有前人很好總結出來:

structutsname systeminfo;

uname(&systeminfo);

nsstring*devicestring = [nsstringstringwithcstring:systeminfo.machine encoding:nsutf8stringencoding];

通過,如上方式即可獲取到裝置的型號資訊,具體對應關係如下,截止2013,2,5。

iphone 5,1   iphone5(移動,聯通)

iphone 5,2   iphone5(移動,電信,聯通)

iphone 4,1     iphone4s

iphone 3,1     iphone4(移動,聯通)

iphone 3,2     iphone4(聯通)

iphone 3,3     iphone4(電信)

iphone 2,1       iphone3gs

iphone 1,2     iphone3g

iphone 1,1     iphone

ipad 1,1     ipad 1

ipad 2,1     ipad 2(wifi)

ipad 2,2     ipad 2(gsm)

ipad 2,3     ipad 2(cdma)

ipad 2,4     ipad 2(32nm)

ipad 2,5     ipad mini(wifi)

ipad 2,6     ipad mini(gsm)

ipad 2,7     ipad mini(cdma)

ipad 3,1     ipad 3(wifi)

ipad 3,2     ipad 3(cdma)

ipad 3,3     ipad 3(4g)

ipad 3,4     ipad 4(wifi)

ipad 3,5     ipad 4(4g)

ipad 3,6     ipad 4(cdma)

ipod 5,1     ipod touch 5

ipod 4,1     ipod touch 4

ipod 3,1     ipod touch 3

ipod 2,1     ipod touch 2

ipod 1,1     ipod touch

獲取iOS裝置型號的方法總結

三種常用的辦法獲取ios裝置的型號 1.uidevice currentdevice model 推薦 2.uname struct utsname name 使用此函式需要 include 3.sysctlbyname const char name,void oldp,size t oldlen...

iOS 獲取最新裝置型號方法

1.ios 獲取最新裝置型號方法 列表最新對照表 方法 import sys utsname.h struct utsname systeminfo uname systeminfo nsstring devicestring nsstring stringwithcstring systeminf...

IOS 獲取最新裝置型號方法

1.ios 獲取最新裝置型號方法 列表最新對照表 方法 import sys utsname.h struct utsname systeminfo uname systeminfo nsstring devicestring nsstring stringwithcstring systeminf...