国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 系統(tǒng) > iOS > 正文

iOS如何獲取設(shè)備型號(hào)的最新方法總結(jié)

2020-07-26 02:22:53
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

在開(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è)備的類型,如 iPhone , iPod touch , iPad 等;而其另一個(gè)屬性 name 表示當(dāng)前設(shè)備的名稱,由用戶在設(shè)置》通用》關(guān)于》名稱中設(shè)定,如 My iPhone , xxx 的 iPhone 等。然而,我們無(wú)法根據(jù)這兩個(gè)值獲得具體的型號(hào)。

不過(guò),每一種 iOS 設(shè)備型號(hào)都有對(duì)應(yīng)的一個(gè)或多個(gè)硬件編碼/標(biāo)識(shí)符,稱為 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)這里 。

參考鏈接:

  • The iPhone Wiki
  • fahrulazmi/UIDeviceHardware

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)武林網(wǎng)的支持。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 龙南县| 大庆市| 龙海市| 靖宇县| 海城市| 锡林郭勒盟| 那坡县| 上饶市| 惠水县| 福州市| 库车县| 新营市| 吴桥县| 乐亭县| 莎车县| 洛宁县| 凌源市| 吴川市| 伊金霍洛旗| 长岛县| 牡丹江市| 任丘市| 都匀市| 台中县| 宁陵县| 陆良县| 延安市| 昔阳县| 育儿| 五台县| 台北县| 桃江县| 吉首市| 凉城县| 白河县| 汉寿县| 汉寿县| 奉新县| 莆田市| 河曲县| 游戏|