Затем я сравниваю его с серийным номером, найденным в меню «Настройки» (Настройки-> Об устройстве-> Статус-> Серийный номер).
Я проверил это, и кажется, что на некоторых устройствах (например, Nexus) два кода одинаковы, а на других (например, Galaxy Note) два кода совершенно разные: код Java возвращает мне 16-значный буквенно-цифровой (строчный) код, а на на экране я вижу 11-значный буквенно-цифровой (заглавные) код.
Как это возможно? Эти два кода одинаковы или что-то совершенно другое?
Если они одинаковы, есть ли способ преобразовать один из двух в другой?
Есть ли лучший способ идентифицировать устройство? Я знаю, что могу использовать
идентификатор устройства телефона (IMEI, MEID,...), который можно получить
Я получил серийный номер Android с помощью кода [code]android.os.Build.SERIAL [/code] Затем я сравниваю его с серийным номером, найденным в меню «Настройки» (Настройки-> Об устройстве-> Статус-> Серийный номер). Я проверил это, и кажется, что на некоторых устройствах (например, Nexus) два кода одинаковы, а на других (например, Galaxy Note) два кода совершенно разные: код Java возвращает мне 16-значный буквенно-цифровой (строчный) код, а на на экране я вижу 11-значный буквенно-цифровой (заглавные) код. [list] [*]Как это возможно? Эти два кода одинаковы или что-то совершенно другое?
[*]Если они одинаковы, есть ли способ преобразовать один из двух в другой?
[*]Есть ли лучший способ идентифицировать устройство? Я знаю, что могу использовать [list] идентификатор устройства телефона (IMEI, MEID,...), который можно получить [code]TelephonyManager tManager = (TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE); tManager.getDeviceId(); [/code] но не все устройства являются телефонами, и не все из них имеют этот код;
[*]Идентификатор Android, который можно получить [code]Secure.getString(context.getContentResolver(),Secure.ANDROID_ID); [/code] Но я не могу найти его нигде в меню «Настройки», и мне нужно, чтобы пользователь сообщил мне его код, прочитав его из пользовательского интерфейса.