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

2021-09-30 13:12:53 字數 989 閱讀 8015

三種常用的辦法獲取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)。

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

獲取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...