iOS學(xué)習(xí)筆記(十三)——獲取手機(jī)信息(UIDevice堡僻、NSBundle糠惫、NSLocale)

iOS的APP的應(yīng)用開發(fā)的過程中,有時(shí)為了bug跟蹤或者獲取用反饋的需要自動(dòng)收集用戶設(shè)備钉疫、系統(tǒng)信息寞钥、應(yīng)用信息等等,這些信息方便開發(fā)者診斷問題陌选, 當(dāng)然這些信息是用戶的非隱私信息理郑,是通過開發(fā)api可以獲取到的。那么通過那些api可以獲取這些信息呢咨油,iOS的SDK中提供了UIDevice您炉,NSBundle,NSLocale役电。

UIDevice

UIDevice提供了多種屬性赚爵、類函數(shù)及狀態(tài)通知,幫助我們?nèi)轿涣私庠O(shè)備狀況。從檢測(cè)電池電量到定位設(shè)備與臨近感應(yīng)冀膝,UIDevice所做的工作就是為應(yīng)用程序提供用戶及設(shè)備的一些信息唁奢。UIDevice類還能夠收集關(guān)于設(shè)備的各種具體細(xì)節(jié),例如機(jī)型及iOS版本等窝剖。其中大部分屬性都對(duì)開發(fā)工作具有積極的輔助作用麻掸。下面的代碼簡(jiǎn)單的使用UIDevice獲取手機(jī)屬性。

[cpp]view plaincopy

print?

//設(shè)備相關(guān)信息的獲取

NSString?*strName?=?[[UIDevice?currentDevice]?name];

NSLog(@"設(shè)備名稱:%@",?strName);//e.g.?"My?iPhone"

NSString?*strId?=?[[UIDevice?currentDevice]?uniqueIdentifier];

NSLog(@"設(shè)備唯一標(biāo)識(shí):%@",?strId);//UUID,5.0后不可用

NSString?*strSysName?=?[[UIDevice?currentDevice]?systemName];

NSLog(@"系統(tǒng)名稱:%@",?strSysName);//?e.g.?@"iOS"

NSString?*strSysVersion?=?[[UIDevice?currentDevice]?systemVersion];

NSLog(@"系統(tǒng)版本號(hào):%@",?strSysVersion);//?e.g.?@"4.0"

NSString?*strModel?=?[[UIDevice?currentDevice]?model];

NSLog(@"設(shè)備模式:%@",?strModel);//?e.g.?@"iPhone",?@"iPod?touch"

NSString?*strLocModel?=?[[UIDevice?currentDevice]?localizedModel];

NSLog(@"本地設(shè)備模式:%@",?strLocModel);//?localized?version?of?model

NSBundle

bundle是一個(gè)目錄,其中包含了程序會(huì)使用到的資源. 這些資源包含了如圖像,聲音,編譯好的代碼,nib文件(用戶也會(huì)把bundle稱為plug-in). 對(duì)應(yīng)bundle,cocoa提供了類NSBundle.一個(gè)應(yīng)用程序看上去和其他文件沒有什么區(qū)別. 但是實(shí)際上它是一個(gè)包含了nib文件,編譯代碼,以及其他資源的目錄. 我們把這個(gè)目錄叫做程序的main bundle赐纱。通過這個(gè)路徑可以獲取到應(yīng)用的信息脊奋,例如應(yīng)用名、版本號(hào)等疙描。

[cpp]view plaincopy

print?

//app應(yīng)用相關(guān)信息的獲取

NSDictionary?*dicInfo?=?[[NSBundle?mainBundle]?infoDictionary];

//????CFShow(dicInfo);

NSString?*strAppName?=?[dicInfo?objectForKey:@"CFBundleDisplayName"];

NSLog(@"App應(yīng)用名稱:%@",?strAppName);

NSString?*strAppVersion?=?[dicInfo?objectForKey:@"CFBundleShortVersionString"];

NSLog(@"App應(yīng)用版本:%@",?strAppVersion);

NSString?*strAppBuild?=?[dicInfo?objectForKey:@"CFBundleVersion"];

NSLog(@"App應(yīng)用Build版本:%@",?strAppBuild);

NSLocale

NSLocale可以獲取用戶的本地化信息設(shè)置诚隙,例如貨幣類型,國(guó)家起胰,語(yǔ)言久又,數(shù)字,日期格式的格式化效五,提供正確的地理位置顯示等等籽孙。下面的代碼獲取機(jī)器當(dāng)前語(yǔ)言和國(guó)家代碼。

[cpp]view plaincopy

print?

//Getting?the?User’s?Language

NSArray?*languageArray?=?[NSLocale?preferredLanguages];

NSString?*language?=?[languageArray?objectAtIndex:0];

NSLog(@"語(yǔ)言:%@",?language);//en

NSLocale?*locale?=?[NSLocale?currentLocale];

NSString?*country?=?[locale?localeIdentifier];

NSLog(@"國(guó)家:%@",?country);?//en_US

/**

* @author 張興業(yè)

*http://blog.csdn.net/xyz_lmn

*??iOS入門群:83702688

*??android開發(fā)進(jìn)階群:241395671

*??我的新浪微博:@張興業(yè)TBOW

*/

參考:

http://developer.apple.com/library/ios/#documentation/uikit/reference/UIDevice_Class/Reference/UIDevice.html

https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSBundle_Class/Reference/Reference.html

https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSLocale_Class/Reference/Reference.html

http://mobile.tutsplus.com/tutorials/iphone/ios-sdk-accessing-device-data-with-uidevice-and-nslocale/

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末火俄,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子讲冠,更是在濱河造成了極大的恐慌瓜客,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,454評(píng)論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件竿开,死亡現(xiàn)場(chǎng)離奇詭異谱仪,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)否彩,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,553評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門疯攒,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人列荔,你說我怎么就攤上這事敬尺。” “怎么了贴浙?”我有些...
    開封第一講書人閱讀 157,921評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵砂吞,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我崎溃,道長(zhǎng)蜻直,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,648評(píng)論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮概而,結(jié)果婚禮上呼巷,老公的妹妹穿的比我還像新娘。我一直安慰自己赎瑰,他們只是感情好王悍,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,770評(píng)論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著乡范,像睡著了一般配名。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上晋辆,一...
    開封第一講書人閱讀 49,950評(píng)論 1 291
  • 那天渠脉,我揣著相機(jī)與錄音,去河邊找鬼瓶佳。 笑死芋膘,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的霸饲。 我是一名探鬼主播为朋,決...
    沈念sama閱讀 39,090評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼厚脉!你這毒婦竟也來了习寸?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,817評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤傻工,失蹤者是張志新(化名)和其女友劉穎霞溪,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體中捆,經(jīng)...
    沈念sama閱讀 44,275評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡鸯匹,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,592評(píng)論 2 327
  • 正文 我和宋清朗相戀三年爽待,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了嫂沉。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,724評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡狂窑,死狀恐怖蟋滴,靈堂內(nèi)的尸體忽然破棺而出染厅,到底是詐尸還是另有隱情,我是刑警寧澤津函,帶...
    沈念sama閱讀 34,409評(píng)論 4 333
  • 正文 年R本政府宣布糟秘,位于F島的核電站,受9級(jí)特大地震影響球散,放射性物質(zhì)發(fā)生泄漏尿赚。R本人自食惡果不足惜散庶,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,052評(píng)論 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望凌净。 院中可真熱鬧悲龟,春花似錦、人聲如沸冰寻。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,815評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)斩芭。三九已至轻腺,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間划乖,已是汗流浹背贬养。 一陣腳步聲響...
    開封第一講書人閱讀 32,043評(píng)論 1 266
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留琴庵,地道東北人误算。 一個(gè)月前我還...
    沈念sama閱讀 46,503評(píng)論 2 361
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像迷殿,于是被迫代替她去往敵國(guó)和親儿礼。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,627評(píng)論 2 350

推薦閱讀更多精彩內(nèi)容