獲取設備信息

設備信息大致包括:設備型號,系統(tǒng)名,系統(tǒng)版本,設備名稱,設備模式(模擬器or真機),國家,語言,日期格式等等。

  • 獲取手機設備型號
// 獲取設備型號需要導入頭文件
#import <sys/types.h>
#import <sys/sysctl.h>

- (void)viewDidLoad {
    [super viewDidLoad];
    
    // 獲取設備型號
    size_t size;
    sysctlbyname("hw.machine", NULL, &size, NULL, 0);
    char *machine = (char *)malloc(size);
    sysctlbyname("hw.machine", machine, &size, NULL, 0);
    NSString *platform = [NSString stringWithCString:machine encoding:NSUTF8StringEncoding];
    // 根據獲取到的platform得出設備型號(比如**iPhone6,2**對應iPhone5S)
    NSLog(@"%@",platform);
}
  • UIDevice
    • 可獲取眾多關于設備的信息,詳見文檔,此處簡單列舉幾個(按住?command鍵點擊UIDevice進去看看)
    // 獲取設備名
    NSString *phoneName = [[UIDevice currentDevice] name];
    NSLog(@"%@",phoneName);
    
    // 獲取模式
    NSString *model = [[UIDevice currentDevice] localizedModel];
    NSLog(@"%@",model);
    
    // 獲取系統(tǒng)版本
    NSString *version = [[UIDevice currentDevice] systemVersion];
    NSString *sysName = [[UIDevice currentDevice] systemName];
    NSLog(@"%@--%@",sysName,version);
  • NSBundle
    • 可獲取大量關于應用的信息,軟件版本,編譯環(huán)境,應用標識等等
// 直接打印出來,要什么取什么
NSLog(@"%@",[[NSBundle mainBundle] infoDictionary]);

NSString *appIdenti = [[[NSBundle mainBundle] infoDictionary] valueForKeyPath:@"CFBundleIdentifier"];
    NSLog(@"%@",appIdenti);
  • NSLocal
    • 可獲得國家,語言等信息
    // 獲取語言
    NSArray *languageArray = [NSLocale preferredLanguages];
    NSString *language = [languageArray objectAtIndex:0];
    NSLog(@"語言:%@", language);
    
    // 獲取國家
    NSLocale *locale = [NSLocale currentLocale];
    NSString *country = [locale localeIdentifier];
    NSLog(@"國家:%@", country);
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容