皆さんこんにちは。
開発でAPIレベルに分けて処理を分けることがあったので
メモとして残して置きます。
なぜAPIレベルごとに処理を分ける?
APIレベルごとに処理を分けるケースはどのようなときでしょうか。
例えばAndroidですと最近ではLiveData,ConstraintLayoutが良く使われていますが
ほんの数年前はRelativeLayoutだったりが主流でした。
数年で非推奨になったものもたくさんあります。
エンジニアの世界では最新の技術もすぐに廃れてしまいます。
なのでバージョンによって処理を変える必要が出てくるのです。
とても面倒くさいですがこれがエンジニアなんです。。
APIの場合分けコード
では本題のコードです。
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { //処理内容 }
Build.VERSION.SDK_INTが今動かしている端末のAPIレベル
Build.VERSION_CODES.QがターゲットにしたいAPIレベルです
この場合だと
「今動かしている端末がAPIレベル30以上だったら」
というif文になっています。
「Build.VERSION_CODES.」 まで入力すれば
補完でSDKバージョンがすべて表示されるので
以下のサイトを参考にしたら大丈夫です!
最後までお読みいただきありがとうございました!