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

发布了109 篇原创文章 · 获赞 403 · 访问量 88万+

猜你喜欢

转载自blog.csdn.net/cordova/article/details/82945154
max