14

Widziałem jedno z moich najlepszych pytań: Is there a unique Android device ID?Niepowtarzalny identyfikator urządzenia z Androidem po ostrzeżeniu MarshMallow "nie zaleca się identyfikatorów urządzeń"?

Użyłem następującego kodu, aby uzyskać unikalny identyfikator.

public static String getDeviceId(Activity context) { 

    PermissionsChecker checker = new PermissionsChecker(context); 

    if (checker.lacksPermissions(Manifest.permission.READ_PHONE_STATE)) 
     PermissionsActivity.startActivityForResult(context, 0, REQUIRED_PERMISSION); 
    else { 
     TelephonyManager tm = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE); 

     final String tmDevice = tm.getDeviceId(); 
     final String androidId = Settings.Secure.getString(context.getContentResolver(), Settings.Secure.ANDROID_ID); 

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

     return deviceUuid.toString(); 
    } 
    return null; 
} 

Ale ja dostaję jakieś ostrzeżenie na najechaniu na

tm.getDeviceId();

i

Settings.Secure.getString(context.getContentResolver(), Settings.Secure.ANDROID_ID); następująco:

Korzystanie getString uzyskać identyfikatory urządzeń nie jest zalecane .

Używanie identyfikatorów urządzeń nie jest zalecane, poza wysokimi wartościami zapobieganie oszustwom i korzystanie z zaawansowanych telefonii. W przypadku reklam przy użyciu przypadków reklamowych należy użyć obiektu AdvertisingIdClient $ Info # getId, a w przypadku analiz należy użyć InstanceId # getId.

Czy istnieje rozwiązanie? Czy to jest szkodliwe, czy cokolwiek innego?

+2

Możesz użyć numeru IMEI jako unikalnego identyfikatora. I to jest po prostu ostrzeżenie, ponieważ teraz dni hacker root telefony i zmienić identyfikator urządzenia. –

+0

To się zmieni po przywróceniu fabryki. Nie chcę tego. –

+0

Nie, IMEI w żadnym wypadku się nie zmieni. –

Odpowiedz

-1

Nie można naprawdę "rozwiązać" tego ostrzeżenia.

Ale jeśli chcesz, możesz wyłączyć ostrzeżenie, dodając @SuppressLint ("HardwareIds"), który się tym zajmie.

Należy pamiętać, że dzięki temu ostrzeżeniu Lint daje możliwość ponownego rozważenia, czy należy opublikować, czy nie.

Powiązane problemy