Unity 6.5で、UnityEngine.Android名前空間にAndroidBuild.Versionが追加されます。
AndroidBuildはstaticクラスで、VersionはAndroidBuildの入れ子になったクラスです。
Versionクラスは、次の3個のstaticプロパティーを持ちます。
apiLevel
apiLevel staticプロパティーは、ゲーム・アプリケーションが実行されているAndroid端末の、API Level(OSバージョン)を取得できるプロパティーです。
内部的には、Androidのandroid.os.Build.VERSION.SDK_INTを利用しているようです。
minApiLevel
minApiLevel staticプロパティーは、ゲーム・アプリケーションが実行可能な最小API Level(OSバージョン)を司るプロパティーです。
関連:https://developer.android.com/ndk/guides/sdk-versions?hl=ja#minsdkversion
targetApiLevel
targetApiLevel staticプロパティーは、targetSdkVersionのラッパーのようです。アプリがターゲットとする API レベルを示す整数です。
関連
- https://developer.android.com/guide/topics/manifest/uses-sdk-element?hl=ja#target
- https://developer.android.com/google/play/requirements/target-sdk?hl=ja
まとめ
AndroidBuild.Version.apiLevelにより、実行中のAndroid端末のAPILevel(OSバージョン)が簡潔に取得できるようになって良さそうです。
今までは、「AndroidJavaClassによるandroid.os.Buildのラッパー」を作ったり、SystemInfo.operatingSystemを使っていた、はず(多分)
個人的には、AndroidBuild.Versionの各種プロパティー名は「apiLevel」という名前にするよりも、Android公式に合わせた「sdkVersion」の方が好みです。