#java #android
Разрабатываю андроид-приложение и очень важно чтобы оно не запускалось с помощью
эмуляторов. Есть возможность проверить устройство на подлинность ?
Ответы
Ответ 1
На en SO предлагают FINGERPRINT проверять: public static boolean isEmulator() { return Build.FINGERPRINT.startsWith("generic") || Build.FINGERPRINT.startsWith("unknown") || Build.MODEL.contains("google_sdk") || Build.MODEL.contains("Emulator") || Build.MODEL.contains("Android SDK built for x86") || Build.MANUFACTURER.contains("Genymotion") || (Build.BRAND.startsWith("generic") && Build.DEVICE.startsWith("generic")) || "google_sdk".equals(Build.PRODUCT); } Можно попробовать воспользоваться Android emulator detector'ом. Есть ещё такой вариант.Ответ 2
Давным давно я использовал для этого запрос: //требуется специальный пермишен String deviceID = Settings.Secure.getString( context.getContentResolver(), Settings.Secure.ANDROID_ID); на эмуляторе это возвращает NULL, а на реальных девайсах некий LONG Не знаю насколько сейчас этот способ работает
Комментариев нет:
Отправить комментарий