1.獲取設備信息
NSLog(@"設備名稱:%@",[[UIDevice currentDevice] systemName]); NSLog(@"版本號:%@",[[UIDevice currentDevice] systemVersion]); NSLog(@"設備名:%@",[[UIDevice currentDevice] name]); NSLog(@"設備模式:%@",[[UIDevice currentDevice] model]); NSLog(@"本地設備模式:%@",[[UIDevice currentDevice] localizedModel]); NSLog(@"唯一標識%@",[[UIDevice currentDevice] identifierForVendor].UUIDString); NSLog(@"%d",[[UIDevice currentDevice] orientation]);
UIDevice提供了多種屬性、類函數及狀態通知,幫助我們全方位了解設備狀況。
從檢測電池電量到定位設備與臨近感應,UIDevice所做的工作就是為應用程序提供用戶及設備的一些信息。
UIDevice類還能夠收集關于設備的各種具體細節,例如機型及iOS版本等。
其中大部分屬性都對開發工作具有積極的輔助作用。下面的代碼簡單的使用UIDevice獲取手機屬性
2.獲取app信息
NSDictionary *dicInfo = [[NSBundle mainBundle] infoDictionary]; // CFShow(dicInfo); NSString *strAppName = [dicInfo objectForKey:@"CFBundleDisplayName"]; NSLog(@"App應用名稱:%@", strAppName); // 當前應用名稱 NSString *strAppVersion = [dicInfo objectForKey:@"CFBundleShortVersionString"]; NSLog(@"App應用版本:%@", strAppVersion); // 當前應用軟件版本 比如:1.0.1 NSString *strAppBuild = [dicInfo objectForKey:@"CFBundleVersion"]; NSLog(@"App應用Build版本:%@", strAppBuild); // 當前應用版本號碼 int類型
bundle是一個目錄,其中包含了程序會使用到的資源. 這些資源包含了如圖像,聲音,編譯好的代碼,nib文件(用戶也會把bundle稱為plug-in). 對應bundle,cocoa提供了類NSBundle.
一個應用程序看上去和其他文件沒有什么區別. 但是實際上它是一個包含了nib文件,編譯代碼,以及其他資源的目錄. 我們把這個目錄叫做程序的main bundle。通過這個路徑可以獲取到應用的信息,例如應用名、版本號等。
3.本地化信息
NSLog(@"---%@",NSLocaleIdentifier); //Getting the User’s Language NSArray *languageArray = [NSLocale PReferredLanguages]; NSString *language = [languageArray objectAtIndex:0]; NSLog(@"語言:%@", language);//en NSLocale *locale = [NSLocale currentLocale]; NSString *country = [locale localeIdentifier]; NSLog(@"國家:%@", country); //en_US
NSLocale可以獲取用戶的本地化信息設置,例如貨幣類型,國家,語言,數字,日期格式的格式化,提供正確的地理位置顯示等等。下面的代碼獲取機器當前語言和國家代碼。
新聞熱點
疑難解答