Unity判断机型是否为iPhoneX,iPhoneXS,iPhoneXR,以及iPhoneXS Max

Posted Mr_厚厚

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity判断机型是否为iPhoneX,iPhoneXS,iPhoneXR,以及iPhoneXS Max相关的知识,希望对你有一定的参考价值。

原生ios常用的判断方法

iOS中判断机型的方式通常是利用屏幕分辨率,导航栏尺寸,是否支持某些功能特性等进行判断。

例如获取屏幕宽高:

CGFloat screenWidth = [UIScreen mainScreen].bounds.size.width;
CGFloat screenHeight = [UIScreen mainScreen].bounds.size.height;

Unity中通过device model判断

unity中通常获取iPhone设备的device model来进行机型判断,iPhoneX以后的设备判断方法如下:

bool IsIphoneXDevice = false;
	string modelStr = SystemInfo.deviceModel;
#if UNITY_IOS
    // iPhoneX:"iPhone10,3","iPhone10,6"  iPhoneXR:"iPhone11,8"  iPhoneXS:"iPhone11,2"  iPhoneXS Max:"iPhone11,6"
    IsIphoneXDevice = modelStr.Equals("iPhone10,3") || modelStr.Equals("iPhone10,6") || modelStr.Equals("iPhone11,8") || modelStr.Equals("iPhone11,2") || modelStr.Equals("iPhone11,6");
#endif

不同机型对应的model如下:

  • iPhoneX: “iPhone10,3”, “iPhone10,6”
  • iPhoneXR: “iPhone11,8”
  • iPhoneXS: “iPhone11,2”
  • iPhoneXS Max: “iPhone11,6”

维基百科中有最新的iPhone设备model表可查看:
https://www.theiphonewiki.com/wiki/Models

以上是关于Unity判断机型是否为iPhoneX,iPhoneXS,iPhoneXR,以及iPhoneXS Max的主要内容,如果未能解决你的问题,请参考以下文章

判断机型是否为iphoneX

iphonex对比iphone12屏幕对比

作为前端你必须知道的iPhoneX适配

常用宏定义 - 判断机型(屏幕尺寸)系统版本

听说今年出的iPhone长这样?亲们种草拔草吗?

iPhone x屏幕分辨率是多少