Unity的iPhoneX 系列型号判断

string modelStr = SystemInfo.deviceModel;
bool IsIphoneXDevice = modelStr.Equals("iPhone10,3") || modelStr.Equals("iPhone10,6") || modelStr.Equals("iPhone11,8") || modelStr.Equals("iPhone11,2") || modelStr.Equals("iPhone11,6") || modelStr.Equals("iPhone12,1") || modelStr.Equals("iPhone12,3") || modelStr.Equals("iPhone12,5");
return IsIphoneXDevice;

上面那个还得写机型太麻烦,下面是新算法,以下是各种机型宽高比

iPhone老系列

宽高比 型号
0.66 4
0.56 5
0.56 normal

iPhone X系列

宽高比 型号
0.46 x
0.46 x max
0.46 xr 11
0.46 11pm

iPad系列

宽高比 型号
0.75 normal
0.75 pro

iphone老机型和pad宽高比在0.5以上,x系列均在0.5以下可以以此分辨
这种算法不仅不用根据新型号更新,还能在unity运行期间就起作用

float scale = (float)Screen.width / Screen.height;
Debug.Log(string.Format("分辨率————{0} * {1}  宽高比:{2}", Screen.width, Screen.height, scale));

return scale < 0.5f;
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。