如何以编程方式检测iPhone XS或iPhone X? [英] How to programmatically detect iPhone XS or iPhone X?

查看:247
本文介绍了如何以编程方式检测iPhone XS或iPhone X?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的一个应用程序连接到一个Web应用程序服务,该服务向用户提供特定于设备的新闻。为了使其适应最新的iPhone版本,我需要以编程方式区分iPhone XS和iPhone X.如何做到这一点?

One of my apps connects to a web app service that delivers device specific news to to the user. To adapt this to the latest iPhone versions I need to programmatically distinguish between the iPhone XS and iPhone X. How can this be done?

[[ UIScreen mainScreen] bounds] .size 总是一个很好的起点,可以分辨出不同的设备。但是,iPhone XS和iPhone X具有相同的屏幕尺寸:1125 x 2436.因此,使用 [[UIScreen mainScreen] bounds] .size 在这种情况下不起作用。

[[UIScreen mainScreen] bounds].size was always a good starting point to tell the different devices apart. However, iPhone XS and iPhone X have the same screen dimensions: 1125 x 2436. Thus using [[UIScreen mainScreen] bounds].size does not work in this case.

有没有其他方法可以检测最新的iPhone版本?

Is there any other method to detect the latest iPhone versions?

编辑:
这是不重复的问题如何检测iPhone X,因为那里讨论的所有答案/解决方案都使用屏幕尺寸来指定设备类型。如上所述,iPhone X和iPhone XS具有完全相同的尺寸,因此解决方案无法区分这两者......

This is NOT a duplicate of the question "How to detected iPhone X" since all answers/solutions discussed there use the screen dimensions to specify the device type. As described above iPhone X and iPhone XS have the exact same dimensions and thus the solutions cannot tell these two apart...

推荐答案

我使用 DeviceUtil 来确定iOS设备的型号。

I use DeviceUtil to determine an iOS device's model.

根据这个 DeviceUtil GitHub帖子,返回的UIDevice hardwareString值是:

According to this DeviceUtil GitHub post, the returned UIDevice hardwareString values are:

iPhone11,2 = iPhone XS
iPhone11,4 = iPhone XS Max
iPhone11,8 = iPhone XR

奇怪的是,Xcode 10 GM模拟器的[UIScreen mainScreen] .bounds.size返回375 x 812适用于iPhone X,XS,XS Max和R设备。我原本预计XS Max和XR会有414 x 896.

Curiously, the Xcode 10 GM Simulator's [UIScreen mainScreen].bounds.size returns 375 x 812 for iPhone X, XS, XS Max, and R devices. I had expected 414 x 896 for the XS Max and XR.

这篇关于如何以编程方式检测iPhone XS或iPhone X?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆