「Unity/os判定」の版間の差分
提供: 初心者エンジニアの簡易メモ
| (同じ利用者による、間の4版が非表示) | |||
| 行2: | 行2: | ||
// unity_editer | // unity_editer | ||
#elif UNITY_IPHONE | #elif UNITY_IPHONE | ||
| − | if (SystemInfo.deviceModel.Contains ("iPad")) { | + | if (SystemInfo.deviceModel.Contains("iPad")) { |
// iPad | // iPad | ||
} else { | } else { | ||
// iPhone | // iPhone | ||
} | } | ||
| + | string versionString = SystemInfo.operatingSystem.Replace("iPhone OS ", "");// iOS 10未満 | ||
| + | versionString = versionString.Replace("iOS ", ""); // iOS 10以降 | ||
| + | Debug.Log("versionString=" + versionString); | ||
| + | float version = float.Parse(versionString); // 14.3 | ||
| + | Debug.Log("ios version=" + version); | ||
#elif UNITY_ANDROID | #elif UNITY_ANDROID | ||
// Android | // Android | ||
| + | AndroidJavaClass cls = new AndroidJavaClass("android.os.Build$VERSION"); | ||
| + | int apiLevel = cls.GetStatic<int>("SDK_INT"); | ||
| + | // android11相当(API30) | ||
| + | if (apiLevel >= 30) { | ||
| + | } | ||
#endif | #endif | ||
エディタでAndroidを選択していた時は、UNITY_EDITORとUNITY_ANDROIDがtrueになるので、順序に気をつける | エディタでAndroidを選択していた時は、UNITY_EDITORとUNITY_ANDROIDがtrueになるので、順序に気をつける | ||
2021年2月9日 (火) 02:17時点における最新版
#if UNITY_EDITOR
// unity_editer
#elif UNITY_IPHONE
if (SystemInfo.deviceModel.Contains("iPad")) {
// iPad
} else {
// iPhone
}
string versionString = SystemInfo.operatingSystem.Replace("iPhone OS ", "");// iOS 10未満
versionString = versionString.Replace("iOS ", ""); // iOS 10以降
Debug.Log("versionString=" + versionString);
float version = float.Parse(versionString); // 14.3
Debug.Log("ios version=" + version);
#elif UNITY_ANDROID
// Android
AndroidJavaClass cls = new AndroidJavaClass("android.os.Build$VERSION");
int apiLevel = cls.GetStatic<int>("SDK_INT");
// android11相当(API30)
if (apiLevel >= 30) {
}
#endif
エディタでAndroidを選択していた時は、UNITY_EDITORとUNITY_ANDROIDがtrueになるので、順序に気をつける
