【Kotlin/Android Studio】コードからAPI(OS)レベルを取得して分岐する方法!Build.VERSION.SDK_INT
この記事からわかること
- Android Studio/KotlinでコードからAPIレベルを取得する方法
- Build.VERSION.SDK_INTの使い方
- Android 10(API 29)とAndroid 11(API 30)でコードを分岐させるには?
index
[open]
\ アプリをリリースしました /
友達や家族の誕生日をメモ!通知も届く-みんなの誕生日-
posted withアプリーチ
環境
- Android Studio:Flamingo
- Kotlin:1.8.20
コードからAPIレベルを取得する方法
KotlinでコードからAPIレベルを取得するにはBuild
クラスのVERSION.SDK_INT
を使用します。Build.VERSION.SDK_INT
の中には自動でデバイスのAPIレベルが格納されています。
import android.os.Build
print(Build.VERSION.SDK_INT) // 34
取得できる数値はAndroid 14であれば34といったAPIレベルです。
AndroidのバージョンとAPIレベル
AndroidのバージョンとAPIレベル、バージョンコードは以下のようになっています。
プラットフォームのバージョン | API レベル | VERSION_CODE |
---|---|---|
Android 14 | 34 | UPSIDE_DOWN_CAKE |
Android 13 | 33 | TIRAMISU |
Android 12 | 32 | S_V2 |
Android 12 | 31 | S |
Android 11 | 30 | R |
Android 10 | 29 | R |
Android 9 | 28 | Q |
詳細は公式サイトを参考にしてください。
処理を分岐する
Build.VERSION.SDK_INT
で取得した値で分岐させることでAPIに応じて非推奨になってしまったコードなどを分けて記述することができるようになります。
if(Build.VERSION.SDK_INT <= 29){
// Android 10 (API 29) 以前で実行する処理
}else if(Build.VERSION.SDK_INT >= 30){
// Android 11 (API 30) 以降で実行する処理
}
まだまだ勉強中ですので間違っている点や至らぬ点がありましたら教えていただけると助かります。
ご覧いただきありがとうございました。