Prog./Android

[Android] Device 유일값 만들기

Cella 2011. 12. 2. 14:24

안드로이드에서 단말 유일의 값을 만들어야 할 필요가 있는 경우가 있다..? (말 참 이상하게 쓴다..)

stackoverflow 검색하다가 발견한 방법

androidID, deviceID, simID를 조합해서 만드는 방법이다.


  final TelephonyManager tm =(TelephonyManager)getBaseContext().getSystemService(Context.TELEPHONY_SERVICE);

   final String tmDevice, tmSerial, tmPhone, androidId;

    tmDevice = "" + tm.getDeviceId();
    tmSerial = "" + tm.getSimSerialNumber();
    androidId = "" + android.provider.Settings.Secure.getString(getContentResolver(),
android.provider.Settings.Secure.ANDROID_ID);

    UUID deviceUuid = new UUID(androidId.hashCode(), ((long)tmDevice.hashCode() << 32) | tmSerial.hashCode());

    String deviceId = deviceUuid.toString();


여기에 퍼미션 <uses-permission android:name="android.permission.READ_PHONE_STATE" />
를 추가해줘야한다.

stackoverflow 참조 주소는

http://stackoverflow.com/questions/2785485/is-there-a-unique-android-device-id