221

重複の可能性:
デバイスの Android API レベルをプログラムで取得しますか?

現在アプリケーションを実行している電話の Api レベルを取得するにはどうすればよいですか? シンプルだと思いますが、検索すると大量のがらくたが表示されるため、見つけることができません。

4

4 に答える 4

429

Checkandroid.os.Build.VERSIONは、システムが実行している Android OS に関するさまざまな情報を保持する静的クラスです。

minSdkVersionが 4 未満に設定されているように、可能なすべてのバージョン (元の Android バージョンに戻る) に関心がある場合は、リリースの整数に変換できるを使用する必要がandroid.os.Build.VERSION.SDKあります。String

少なくとも API バージョン 4 (Android 1.6 Donut) を使用している場合、API レベルを取得する現在推奨されている方法android.os.Build.VERSION.SDK_INTは、整数である の値を確認することです。

どちらの場合でも、取得する整数は、 で定義されているすべての列挙値にマップされandroid.os.Build.VERSION_CODESます。

SDK_INT value        Build.VERSION_CODES        Human Version Name       
    1                  BASE                      Android 1.0 (no codename)
    2                  BASE_1_1                  Android 1.1 Petit Four
    3                  CUPCAKE                   Android 1.5 Cupcake
    4                  DONUT                     Android 1.6 Donut
    5                  ECLAIR                    Android 2.0 Eclair
    6                  ECLAIR_0_1                Android 2.0.1 Eclair                  
    7                  ECLAIR_MR1                Android 2.1 Eclair
    8                  FROYO                     Android 2.2 Froyo
    9                  GINGERBREAD               Android 2.3 Gingerbread
   10                  GINGERBREAD_MR1           Android 2.3.3 Gingerbread
   11                  HONEYCOMB                 Android 3.0 Honeycomb
   12                  HONEYCOMB_MR1             Android 3.1 Honeycomb
   13                  HONEYCOMB_MR2             Android 3.2 Honeycomb
   14                  ICE_CREAM_SANDWICH        Android 4.0 Ice Cream Sandwich
   15                  ICE_CREAM_SANDWICH_MR1    Android 4.0.3 Ice Cream Sandwich
   16                  JELLY_BEAN                Android 4.1 Jellybean
   17                  JELLY_BEAN_MR1            Android 4.2 Jellybean
   18                  JELLY_BEAN_MR2            Android 4.3 Jellybean
   19                  KITKAT                    Android 4.4 KitKat
   20                  KITKAT_WATCH              Android 4.4 KitKat Watch
   21                  LOLLIPOP                  Android 5.0 Lollipop
   22                  LOLLIPOP_MR1              Android 5.1 Lollipop
   23                  M                         Android 6.0 Marshmallow
   24                  N                         Android 7.0 Nougat
   25                  N_MR1                     Android 7.1.1 Nougat
   26                  O                         Android 8.0 Oreo
   27                  O_MR1                     Android 8 Oreo MR1
   28                  P                         Android 9 Pie
   29                  Q                         Android 10
  10000                CUR_DEVELOPMENT           Current Development Version

Android N と O の間に、Android SDK がエイリアシングCUR_DEVELOPMENTを開始し、Android の次のメジャー バージョンのデベロッパー プレビューが同じSDK_INT値になることに注意してください ( 10000)。

于 2010-10-22T04:40:34.650 に答える
141
Integer.valueOf(android.os.Build.VERSION.SDK);

値は次のとおりです。

Platform Version   API Level
Android 9.0        28
Android 8.1        27
Android 8.0        26
Android 7.1        25
Android 7.0        24
Android 6.0        23
Android 5.1        22
Android 5.0        21
Android 4.4W       20
Android 4.4        19
Android 4.3        18
Android 4.2        17
Android 4.1        16
Android 4.0.3      15
Android 4.0        14
Android 3.2        13
Android 3.1        12
Android 3.0        11
Android 2.3.3      10
Android 2.3        9
Android 2.2        8
Android 2.1        7
Android 2.0.1      6
Android 2.0        5
Android 1.6        4
Android 1.5        3
Android 1.1        2
Android 1.0        1

注意:android.os.Build.VERSION.SDK_INT ifを使用しないでください<uses-sdk android:minSdkVersion="3" />

Build.VERSION.SDK_INTSDK 4 (Donut 1.6) 以降であるため、Android 1.5 以前のすべてのデバイスで例外が発生します。

于 2010-10-22T09:11:15.313 に答える
47

android.os.Build.VERSION.SDK_INT

ここで可能な値を見つけることができます: VERSION_CODES.

于 2010-10-22T04:41:45.877 に答える
-14

これを試してください: Float.valueOf(android.os.Build.VERSION.RELEASE) <= 2.1

于 2010-10-22T05:23:35.973 に答える