Androidのシステム情報を取得する
|Android端末から機種名やバージョンなどビルド情報を取得する方法を紹介します。
Android.os.Buildを使うと、機器固有の情報を取り扱うことができます。
Android.os.Buildから取得できる文字列、情報
取得できるビルド情報 | 説明 |
---|---|
BOARD | ボード(基盤)名称 |
BOOTLOADER | ブートローダのバージョン番号(Android 1.6未対応) |
BRAND | ブランド名(たとえばキャリア、メーカー名など) |
CPU_ABI | ネイティブコードの命令セット(armeabi-v7aなどCPU-ABI順) |
CPU_ABI2 | ネイティブコードの第2命令セット(Android 1.6未対応) |
DEVICE | デバイス名 |
DISPLAY | ユーザへ表示するビルドID |
FINGERPRINT | 一意にビルドを識別することができる識別子 |
HARDWARE | ハードウェア名(Android1.6未対応) |
HOST | ホスト名 |
ID | 変更番号もしくは一意なラベル |
MANUFACTURER | 製造者名 |
MODEL | 最終的にユーザへ表示するモデル名 |
PRODUCT | 製品名 |
RADIO | 無線ファームウェアのバージョン(Android1.6未対応) |
TAGS | release-keys、test-keysなど。ビルドのタグ名 |
TIME | システム時刻 |
TYPE | ビルドタイプ。userやengなど |
UNKNOWN | 情報不明時の識別子(不明を示す文字列"unknown"など。Android1.6未対応) |
USER | ユーザ情報 |
VERSION.CODENAME | 開発コードネーム。リリース時は"REL" |
VERSION.INCREMENTAL | ソースコード管理番号(チェンジセットの変更回数など) |
VERSION.RELEASE | ユーザーに表示するバージョン番号 |
VERSION.SDK | 非推奨 SDK_INT利用のこと。 |
VERSION.SDK_INT | フレームワークのバージョン情報 |
Build.UNKNOWNは不明な場合を定義しています。大抵、”unknown”など不明を示す文字列が入っています。
この場合は、ほかのビルド情報に格納されている情報が”unknown”と一致していれば不明または未提供の情報と判断できます。
取得できる情報は、Androidのバージョンによって異なっており、最新のAndroid2.2をベースに考えるとAndroid 1.6では、
- ブートローダーのバージョン: Build.BOOTLOADER
- CPU第2命令セット: Build.CPU_ABI2
- ハードウェア情報: Build.HARDWARE
- ラジオ(無線)ファームウェアバージョン: Build.RADIO
- 情報不明時の識別子: Build.UNKNOWN
が取得できません。
以下、サンプルコードと主な開発環境(NexusOne、JN-DK01、エミュレータ)で取得できるBuild情報です。
サンプルコード
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | Log.d( "build" , "BOARD:" + Build.BOARD); Log.d( "build" , "BOOTLOADER:" + Build.BOOTLOADER); //Android 1.6未対応 Log.d( "build" , "BRAND:" + Build.BRAND); Log.d( "build" , "CPU_ABI:" + Build.CPU_ABI); Log.d( "build" , "CPU_ABI2:" + Build.CPU_ABI2); //Android 1.6未対応 Log.d( "build" , "DEVICE:" + Build.DEVICE); Log.d( "build" , "DISPLAY:" + Build.DISPLAY); Log.d( "build" , "FINGERPRINT:" + Build.FINGERPRINT); Log.d( "build" , "HARDWARE:" + Build.HARDWARE); //Android 1.6未対応 Log.d( "build" , "HOST:" + Build.HOST); Log.d( "build" , "ID:" + Build.ID); Log.d( "build" , "MANUFACTURER:" + Build.MANUFACTURER); Log.d( "build" , "MODEL:" + Build.MODEL); Log.d( "build" , "PRODUCT:" + Build.PRODUCT); Log.d( "build" , "RADIO:" + Build.RADIO); //Android 1.6未対応 Log.d( "build" , "TAGS:" + Build.TAGS); Log.d( "build" , "TIME:" + Build.TIME); Log.d( "build" , "TYPE:" + Build.TYPE); Log.d( "build" , "UNKNOWN:" + Build.UNKNOWN); //Android 1.6未対応 Log.d( "build" , "USER:" + Build.USER); Log.d( "build" , "VERSION.CODENAME:" + Build.VERSION.CODENAME); Log.d( "build" , "VERSION.INCREMENTAL:" + Build.VERSION.INCREMENTAL); Log.d( "build" , "VERSION.RELEASE:" + Build.VERSION.RELEASE); Log.d( "build" , "VERSION.SDK:" + Build.VERSION.SDK); Log.d( "build" , "VERSION.SDK_INT:" + Build.VERSION.SDK_INT); |
NexusOne
Googleの開発機NexusOne(Android2.2)のビルド情報です
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | 09 - 28 01 : 51 : 33.190 : DEBUG/build( 3366 ): BOARD:mahimahi 09 - 28 01 : 51 : 33.190 : DEBUG/build( 3366 ): BOOTLOADER: 0.33 . 0012 09 - 28 01 : 51 : 33.190 : DEBUG/build( 3366 ): BRAND:google 09 - 28 01 : 51 : 33.190 : DEBUG/build( 3366 ): CPU_ABI:armeabi-v7a 09 - 28 01 : 51 : 33.190 : DEBUG/build( 3366 ): CPU_ABI2:armeabi 09 - 28 01 : 51 : 33.190 : DEBUG/build( 3366 ): DEVICE:passion 09 - 28 01 : 51 : 33.190 : DEBUG/build( 3366 ): DISPLAY:FRF91 09 - 28 01 : 51 : 33.190 : DEBUG/build( 3366 ): FINGERPRINT:google/passion/passion/mahimahi: 2.2 /FRF91/ 43546 :user/release-keys 09 - 28 01 : 51 : 33.190 : DEBUG/build( 3366 ): HARDWARE:mahimahi 09 - 28 01 : 51 : 33.190 : DEBUG/build( 3366 ): HOST:android-test- 27 .mtv.corp.google.com 09 - 28 01 : 51 : 33.190 : DEBUG/build( 3366 ): ID:FRF91 09 - 28 01 : 51 : 33.190 : DEBUG/build( 3366 ): MANUFACTURER:HTC 09 - 28 01 : 51 : 33.190 : DEBUG/build( 3366 ): MODEL:Nexus One 09 - 28 01 : 51 : 33.190 : DEBUG/build( 3366 ): PRODUCT:passion 09 - 28 01 : 51 : 33.190 : DEBUG/build( 3366 ): RADIO:unknown 09 - 28 01 : 51 : 33.190 : DEBUG/build( 3366 ): TAGS:release-keys 09 - 28 01 : 51 : 33.190 : DEBUG/build( 3366 ): TIME: 1277930906000 09 - 28 01 : 51 : 33.190 : DEBUG/build( 3366 ): TYPE:user 09 - 28 01 : 51 : 33.200 : DEBUG/build( 3366 ): UNKNOWN:unknown 09 - 28 01 : 51 : 33.200 : DEBUG/build( 3366 ): USER:android-build 09 - 28 01 : 51 : 33.200 : DEBUG/build( 3366 ): VERSION.CODENAME:REL 09 - 28 01 : 51 : 33.200 : DEBUG/build( 3366 ): VERSION.INCREMENTAL: 43546 09 - 28 01 : 51 : 33.200 : DEBUG/build( 3366 ): VERSION.RELEASE: 2.2 09 - 28 01 : 51 : 33.200 : DEBUG/build( 3366 ): VERSION.SDK: 8 09 - 28 01 : 51 : 33.200 : DEBUG/build( 3366 ): VERSION.SDK_INT: 8 |
シャープ・JN-DK01
シャープの開発機JN-DK01のビルド情報です。Android1.6のため、無線ファームウェア番号などには未対応です。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | 09 - 28 02 : 14 : 27.067 : DEBUG/build( 2103 ): BOARD:JNDK01 09 - 28 02 : 14 : 27.067 : DEBUG/build( 2103 ): BRAND:SHARP 09 - 28 02 : 14 : 27.067 : DEBUG/build( 2103 ): CPU_ABI:armeabi 09 - 28 02 : 14 : 27.067 : DEBUG/build( 2103 ): DEVICE:JNDK01 09 - 28 02 : 14 : 27.067 : DEBUG/build( 2103 ): DISPLAY:JNDK01-userdebug 1.6 S6196 01.01 . 00 test-keys 09 - 28 02 : 14 : 27.067 : DEBUG/build( 2103 ): FINGERPRINT:SHARP/JNDK01/JNDK01/JNDK01: 1.6 /S6196/ 01.01 . 00 :userdebug/test-keys 09 - 28 02 : 14 : 27.067 : DEBUG/build( 2103 ): HOST:TG572802 09 - 28 02 : 14 : 27.067 : DEBUG/build( 2103 ): ID:S6196 09 - 28 02 : 14 : 27.067 : DEBUG/build( 2103 ): MANUFACTURER:SHARP 09 - 28 02 : 14 : 27.067 : DEBUG/build( 2103 ): MODEL:JN-DK01 09 - 28 02 : 14 : 27.067 : DEBUG/build( 2103 ): PRODUCT:JNDK01 09 - 28 02 : 14 : 27.067 : DEBUG/build( 2103 ): TAGS:test-keys 09 - 28 02 : 14 : 27.067 : DEBUG/build( 2103 ): TIME: 1278051843000 09 - 28 02 : 14 : 27.067 : DEBUG/build( 2103 ): TYPE:userdebug 09 - 28 02 : 14 : 27.067 : DEBUG/build( 2103 ): USER:nbproj 09 - 28 02 : 14 : 27.067 : DEBUG/build( 2103 ): VERSION.CODENAME:REL 09 - 28 02 : 14 : 27.067 : DEBUG/build( 2103 ): VERSION.INCREMENTAL: 01.01 . 00 09 - 28 02 : 14 : 27.067 : DEBUG/build( 2103 ): VERSION.RELEASE: 1.6 09 - 28 02 : 14 : 27.067 : DEBUG/build( 2103 ): VERSION.SDK: 4 09 - 28 02 : 14 : 27.067 : DEBUG/build( 2103 ): VERSION.SDK_INT: 4 |
Android SDK 標準シミュレータ(API Levele.8)
ゴールドフィッシュのビルド情報です。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | 09 - 27 16 : 59 : 32.143 : DEBUG/build( 325 ): BOARD:unknown 09 - 27 16 : 59 : 32.163 : DEBUG/build( 325 ): BOOTLOADER:unknown 09 - 27 16 : 59 : 32.163 : DEBUG/build( 325 ): BRAND:generic 09 - 27 16 : 59 : 32.163 : DEBUG/build( 325 ): CPU_ABI:armeabi 09 - 27 16 : 59 : 32.173 : DEBUG/build( 325 ): CPU_ABI2:unknown 09 - 27 16 : 59 : 32.203 : DEBUG/build( 325 ): DEVICE:generic 09 - 27 16 : 59 : 32.203 : DEBUG/build( 325 ): DISPLAY:sdk-eng 2.2 FRF91 43546 test-keys 09 - 27 16 : 59 : 32.203 : DEBUG/build( 325 ): FINGERPRINT:generic/sdk/generic/: 2.2 /FRF91/ 43546 :eng/test-keys 09 - 27 16 : 59 : 32.203 : DEBUG/build( 325 ): HARDWARE:goldfish 09 - 27 16 : 59 : 32.213 : DEBUG/build( 325 ): HOST:android-test- 25 .mtv.corp.google.com 09 - 27 16 : 59 : 32.213 : DEBUG/build( 325 ): ID:FRF91 09 - 27 16 : 59 : 32.213 : DEBUG/build( 325 ): MANUFACTURER:unknown 09 - 27 16 : 59 : 32.213 : DEBUG/build( 325 ): MODEL:sdk 09 - 27 16 : 59 : 32.213 : DEBUG/build( 325 ): PRODUCT:sdk 09 - 27 16 : 59 : 32.233 : DEBUG/build( 325 ): RADIO:unknown 09 - 27 16 : 59 : 32.233 : DEBUG/build( 325 ): TAGS:test-keys 09 - 27 16 : 59 : 32.233 : DEBUG/build( 325 ): TIME: 1277931480000 09 - 27 16 : 59 : 32.243 : DEBUG/build( 325 ): TYPE:eng 09 - 27 16 : 59 : 32.243 : DEBUG/build( 325 ): UNKNOWN:unknown 09 - 27 16 : 59 : 32.273 : DEBUG/build( 325 ): USER:android-build 09 - 27 16 : 59 : 32.273 : DEBUG/build( 325 ): VERSION.CODENAME:REL 09 - 27 16 : 59 : 32.283 : DEBUG/build( 325 ): VERSION.INCREMENTAL: 43546 09 - 27 16 : 59 : 32.283 : DEBUG/build( 325 ): VERSION.RELEASE: 2.2 09 - 27 16 : 59 : 32.303 : DEBUG/build( 325 ): VERSION.SDK: 8 09 - 27 16 : 59 : 32.303 : DEBUG/build( 325 ): VERSION.SDK_INT: 8 |