본문 바로가기

안드로이드 개발

안드로이드 모델명 및 브랜드 이름 등 값 가져오기


기기별 혹은 브랜드 별로 구분을 해야 할 필요등이 생겼을때 유용한 방법 입니다.

        import android.os.Build; // android.os.Build 를 참조하기 위해서 import 합니다.

        Log.i("BOARD", Build.BOARD);
        Log.i("BRAND", Build.BRAND);
        Log.i("CPU_ABI", Build.CPU_ABI);
        Log.i("DEVICE", Build.DEVICE);
        Log.i("DISPLAY", Build.DISPLAY);
        Log.i("FINGERPRINT", Build.FINGERPRINT);
        Log.i("HOST", Build.HOST);
        Log.i("ID", Build.ID);
        Log.i("MANUFACTURER", Build.MANUFACTURER);
        Log.i("MODEL", Build.MODEL);
        Log.i("PRODUCT", Build.PRODUCT);
        Log.i("TAGS", Build.TAGS);
        Log.i("TYPE", Build.TYPE);
        Log.i("USER", Build.USER);

각 해당 하는 항목의 값을 적절히 사용하시면 될 것 같습니다.

삼성 갤럭시S의 경우는

LOGCAT에

NFO/BOARD(32174): SHW-M110S
INFO/BRAND(32174): samsung
INFO/CPU_ABI(32174): armeabi-v7a
INFO/DEVICE(32174): SHW-M110S
INFO/DISPLAY(32174): FROYO.SK22
INFO/FINGERPRINT(32174): samsung/SHW-M110S/SHW-M110S/SHW-M110S:2.2/FROYO/SK22:user/release-keys
INFO/HOST(32174): sep-57
INFO/ID(32174): FROYO
INFO/MANUFACTURER(32174): samsung
INFO/MODEL(32174): SHW-M110S
INFO/PRODUCT(32174): SHW-M110S
INFO/TAGS(32174): release-keys
INFO/TYPE(32174): user
INFO/USER(32174): root

이런식으로 찍히는것을 확인 할 수 있습니다.


에뮬레이터의 경우는

INFO/BOARD(1601): unknown
INFO/BRAND(1601): generic
INFO/CPU_ABI(1601): armeabi
INFO/DEVICE(1601): generic
INFO/DISPLAY(1601): sdk-eng 2.2 FRF91 43546 test-keys
INFO/FINGERPRINT(1601): generic/sdk/generic/:2.2/FRF91/43546:eng/test-keys
INFO/HOST(1601): android-test-25.mtv.corp.google.com
INFO/ID(1601): FRF91
INFO/MANUFACTURER(1601): unknown
INFO/MODEL(1601): sdk
INFO/PRODUCT(1601): sdk
INFO/TAGS(1601): test-keys
INFO/TYPE(1601): eng

이런식으로 찍히는 것을 확인 할 수 있습니다.