Build.VERSION_CODESを使用するAndroidの互換性がよくわかりません
ビルド中、Build.VERSION_CODESは現在端末のシステムバージョンを判定するための定数値クラスです。Androidプラットホーム上に存在する各種システムバージョンに対応するバージョンコードが含まれています。互換するコードを記載するとき、これらの定数を使用して端末のシステムバージョンを調べ、異なるバージョンごと異なるコードロジックを実行することができます。
たとえば、Android 6.0(Marshmallow)以降で特定のコードを実行したい場合は、次のコードを実行すれば実現できます。
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
// 执行适用于Android 6.0及以上版本的代码
// 例如请求运行时权限
} else {
// 执行适用于低于Android 6.0版本的代码
// 例如使用旧的权限系统
}
Android のさまざまなバージョンの互換性を保ち、特定の API が古いバージョンで使用できないためにアプリがクラッシュしたり機能しなくなるのを防ぐために、この例では Android 6.0 バージョンを表す定数 Build.VERSION_CODES.M を使用しました。
Build.VERSION_CODES クラスには各 Android バージョンに対応する定数がアルファベット順で定義されています。例えば、Build.VERSION_CODES.JELLY_BEAN は Android 4.1 に、Build.VERSION_CODES.KITKAT は Android 4.4 に対応しています。
特定のシステムバージョンの場合に異なるコードロジックを実行する必要がある場合は、それぞれの要件に基づいた適切な定数の選択によって判別できます。開発中は、オフィシャルのAndroidバージョン別分布図表に基づいて、特殊な処理や互換性が必要なバージョンを把握できます。