Ответ 1
final TelephonyManager tm =(TelephonyManager)getBaseContext().getSystemService(Context.TELEPHONY_SERVICE);
String deviceid = tm.getDeviceId();
Возможный дубликат:
Как получить идентификатор устройства для Admob.
Я тестирую adMob на своем устройстве Android и следую документации, я пытаюсь получить идентификатор устройства, выполняющий adRequest. Однако я не могу найти идентификатор устройства в logCat! Что я делаю неправильно?
AdRequest adRequest = new AdRequest();
adRequest.addTestDevice(AdRequest.TEST_EMULATOR);
adRequest.addTestDevice("test");
Изменить: это не дубликат, эти методы из другого сообщения не работают для меня.
final TelephonyManager tm =(TelephonyManager)getBaseContext().getSystemService(Context.TELEPHONY_SERVICE);
String deviceid = tm.getDeviceId();
Сделайте запрос на живую рекламу во время работы на устройстве и просмотрите журналы. На информационном уровне должен быть журнал:
I/Ads: To get test ads on this device, call adRequest.addTestDevice("YOUR_HASHED_DEVICE_ID");
Поскольку SDK хэширует ваш идентификатор устройства, гораздо проще и чище брать это число непосредственно через журналы, а не пытаться захватить идентификатор устройства Android и делать некоторые ручные хэширования, чтобы попытаться получить этот же номер.
В android < 4
Как найти серийный номер устройства Android?
В новом Android 4.0+ вы можете найти номер идентификатора в настройках → Параметры разработчика