iOS如获取设备型号的方法有哪些

介绍

小编给大家分享一下iOS如获取设备型号的方法有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获、下面让我们一起去了解一下吧!

在开发中,我们经常需要获取设备的型号(如iPhone, iPhone 8 +等)以进行数据统计,或者做不同的适配。但苹果并没有提供相应的系统API让我们直接取得当前设备的型号。

其中,UIDevice有一个属性模型只是用于获取iOS设备的类型,如iPhone, iPod touch, iPad等,而其另一个属性名称表示当前设备的名称,由用户在设置》通用》关于》名称中设定,如我的iPhone, xxx的iPhone等。然而,我们无法根据这两个值获得具体的型号。

不过,每一种iOS设备型号都有对应的一个或多个硬件编码/标识符,称为设备模型或者叫机器名称,之前的小集介绍过,我们可以通过如图1中的代码来获取:

所以,通常的做法是,先获取设备的设备模型值,再手动映射为具体的设备型号(或者直接把设备模型值传给后端,让后端去做映射,这样的好处是可以随时兼容新设备)。

例如:去年发布的第一代iPhone X对应的设备模式为iPhone10, 3和iPhone10, 6,而今年最新发布iPhone XS对应iPhone11, 2, iPhone XS马克斯对应iPhone11, 4和iPhone11, 6, iPhone XR对应iPhone11, 8日完整的设备模式数据参考Wiki: https://www.theiphonewiki.com/wiki/Models


综上,我们可以先获取设备模型值,记为平台,然后进行对比判断,转换成具体的设备型号。实现代码如图2、3所示:

 iOS如获取设备型号的方法有哪些

 iOS如获取设备型号的方法有哪些

备注:图中代码只给了对iPhone设备型号的判断,而完整的包括iPad和iPod touch型号我已经放在GitHub要点上,大家可以参考,详见这里。

参考链接:

<李>

iPhone Wiki

<李>

fahrulazmi/UIDeviceHardware

以上是“iOS如获取设备型号的方法有哪些”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

iOS如获取设备型号的方法有哪些