以下の内容はhttps://kan-kikuchi.hatenablog.com/entry/UnityEngine_Deviceより取得しました。


Device Simulatorを使ってるかの判定と、何のデバイスやOSを使ってるか取得する方法【Unity】【Device Simulator】




この記事でのバージョン
Unity 2022.2.2f1


はじめに

UnityにはGameViewでセーフエリアやノッチも含めた色々な端末をシュミレート出来る

公式機能Device Simulatorというものがあり、一昔前は導入の必要がありましたが、



最近はデフォルトで入ってるので、より簡単に使う事出来るようになりました。


今回はこのDevice Simulatorを使っているかどうかの判定と、

何のデバイスやOSを使ってるのか取得する方法の紹介です!



UnityEngine.Device

まず、デバイスやOSの情報はUnityEngine.SystemInfoから取得出来ますが、

これはSimulatorを考慮しておらず、実際の端末の情報しか取得出来ません。

Debug.Log($"実行しているデバイス : {UnityEngine.SystemInfo.deviceModel}");
Debug.Log($"実行しているOS : {UnityEngine.SystemInfo.operatingSystem}");


なので、Simulator込みの情報を得るにはUnityEngine.Deviceを使います。



例えばデバイスやOSを取得してみると以下のような感じに。

Debug.Log($"実行しているデバイス : {UnityEngine.Device.SystemInfo.deviceModel}");
Debug.Log($"実行しているOS : {UnityEngine.Device.SystemInfo.operatingSystem}");


なお、Device Simulatorを使ってない時は実際の端末の情報が取得出来ますし、

実機(リリースビルド)でもそのまま使えるので、基本的にはこれだけ使えばOKです。


また、SystemInfoの値を比較すればDevice Simulatorを使ってるかの判定も行えます。

Debug.Log($"Simulatorを使っているか : {UnityEngine.SystemInfo.deviceModel != UnityEngine.Device.SystemInfo.deviceModel}");


ちなみにSystemInfoだけでなく、Device.ScreenDevice.Applicationもあります。






以上の内容はhttps://kan-kikuchi.hatenablog.com/entry/UnityEngine_Deviceより取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14