2016-11-03 2 views
0

Я не хочу, чтобы мои пользователи запускали мое приложение на эмуляторе.Android - как определить, работает ли приложение на эмуляторе Nox?

Мне удалось обнаружить любой другой эмулятор, кроме Nox app player.

Проверьте свои решения здесь: How can I detect when an Android application is running in the emulator?

Nox эмулятор имеет те же данные устройства, как фактический телефон, они даже имитировать DeviceId (номер IMEI, не 000000000000 и гайка нуль), и имя оператора сотовой сети. Похоже, каждый раз, когда я запускаю Nox app player, он рандомизирует все Build.PRODUCT и подобные им поля.

Хотя есть шаблон, некоторые поля имеют несовместимые имена, как производитель сони, но модель устройства HTC ...

+0

как вы решили свою проблему? – Daryn

+0

@ Дарын, я этого не сделал, до сих пор не нашел решения. – lxknvlk

+0

@lxknvlk вы нашли решение? –

ответ

0

Проверить BASEBAND версию операционной системы устройства. В случае Nox-плеера версия основной полосы равна NULL. В устройствах Android вы получите значение версии BASEBAND.

С SDK Lvl 14 вы должны использовать Build.getRadioVersion(), чтобы получить версию основной полосы.

+0

Является ли это надежным? – lxknvlk

+0

Для большинства Android-устройств Да, его надежность. Но проверьте в соответствии с вашим требованием. Я тестировал это на нескольких устройствах и эмуляторах. Кажется, этого достаточно для моего требования. Сообщите мне, если это сработает для вас –