iOS如何獲取設(shè)備型號(hào)的最新方法總結(jié)
在開(kāi)發(fā)中,我們經(jīng)常需要獲取設(shè)備的型號(hào)(如 iPhone X , iPhone 8 Plus 等)以進(jìn)行數(shù)據(jù)統(tǒng)計(jì),或者做不同的適配。但蘋(píng)果并沒(méi)有提供相應(yīng)的系統(tǒng) API 讓我們直接取得當(dāng)前設(shè)備的型號(hào)。
其中, UIDevice 有一個(gè)屬性 model 只是用于獲取 iOS 設(shè)備的類(lèi)型,如 iPhone , iPod touch , iPad 等;而其另一個(gè)屬性 name 表示當(dāng)前設(shè)備的名稱(chēng),由用戶(hù)在設(shè)置》通用》關(guān)于》名稱(chēng)中設(shè)定,如 My iPhone , xxx 的 iPhone 等。然而,我們無(wú)法根據(jù)這兩個(gè)值獲得具體的型號(hào)。
不過(guò),每一種 iOS 設(shè)備型號(hào)都有對(duì)應(yīng)的一個(gè)或多個(gè)硬件編碼/標(biāo)識(shí)符,稱(chēng)為 device model 或者叫 machine name ,之前的小集介紹過(guò),我們可以通過(guò)如圖 1 中的代碼來(lái)獲取:

所以,通常的做法是,先獲取設(shè)備的 device model 值,再手動(dòng)映射為具體的設(shè)備型號(hào)(或者直接把 device model 值傳給后端,讓后端去做映射,這樣的好處是可以隨時(shí)兼容新設(shè)備)。
例如:去年發(fā)布的第一代 iPhone X 對(duì)應(yīng)的 device mode 為 iPhone10,3 和 iPhone10,6 ,而今年最新發(fā)布 iPhone XS 對(duì)應(yīng) iPhone11,2 ,iPhone XS Max 對(duì)應(yīng) iPhone11,4 和 iPhone11,6 ,iPhone XR 對(duì)應(yīng) iPhone11,8 ,完整的 device mode 數(shù)據(jù)參考 Wiki:
https://www.theiphonewiki.com/wiki/Models
綜上,我們可以先獲取 device model 值,記為 platform ,然后進(jìn)行對(duì)比判斷,轉(zhuǎn)換成具體的設(shè)備型號(hào)。實(shí)現(xiàn)代碼如圖 2、3 所示:


備注:圖中代碼只給了對(duì) iPhone 設(shè)備型號(hào)的判斷,而完整的包括 iPad 和 iPod touch 型號(hào)我已經(jīng)放在 GitHub Gist 上,大家可以參考, 詳見(jiàn)這里 。
參考鏈接:
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。
相關(guān)文章
你應(yīng)該知道的tableViewCell行高計(jì)算處理
這篇文章主要給大家介紹了關(guān)于tableViewCell行高計(jì)算的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2018-12-12
iOS 高德地圖仿微信發(fā)送實(shí)時(shí)位置
這篇文章主要介紹了iOS 高德地圖仿微信發(fā)送實(shí)時(shí)位置,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-03-03
iOS11實(shí)現(xiàn)App內(nèi)自動(dòng)連接Wi-Fi的方法
這篇文章主要給大家介紹了關(guān)于iOS11實(shí)現(xiàn)App內(nèi)自動(dòng)連接Wi-Fi的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2018-10-10
iOS實(shí)現(xiàn)視頻下載并自動(dòng)保存到相冊(cè)功能
這篇文章主要為大家詳細(xì)介紹了ios 視頻下載功能實(shí)現(xiàn),并自動(dòng)保存到相冊(cè),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-02-02
iOS通過(guò)攝像頭圖像識(shí)別技術(shù)分享
本篇文章給大家詳細(xì)講述了讓IOS開(kāi)發(fā)中通過(guò)攝像頭進(jìn)行圖像識(shí)別的相關(guān)技術(shù),對(duì)此有興趣的朋友參考學(xué)習(xí)下吧。2018-02-02
iOS中讀寫(xiě)鎖的簡(jiǎn)單實(shí)現(xiàn)方法實(shí)例
讀寫(xiě)鎖是計(jì)算機(jī)程序的并發(fā)控制的一種同步機(jī)制,也稱(chēng)“共享-互斥鎖”、多讀者-單寫(xiě)者鎖,讀操作可并發(fā)重入,寫(xiě)操作是互斥的,這篇文章主要給大家介紹了關(guān)于iOS中讀寫(xiě)鎖的簡(jiǎn)單實(shí)現(xiàn)方法,需要的朋友可以參考下2021-11-11

