выполнение Android в эмуляторе или устройстве?

Есть ли способ узнать, работает ли мое приложение на эмуляторе или на устройстве?


person Arutha    schedule 11.02.2010    source источник


Ответы (2)


Я использую этот фрагмент кода, который работает как на эмуляторах Intel, так и на ARM:

if (Build.MODEL.contains("google_sdk") ||
    Build.MODEL.contains("Emulator") ||
    Build.MODEL.contains("Android SDK")) {
  RunsInEmulator = true;
}
person Ernie    schedule 11.05.2012

Secure.getString(getContentResolver(), Secure.ANDROID_ID); 

(где Secure равно android.provider.Settings.Secure)

Это значение будет null на эмуляторе и не равно нулю на устройствах.

person CommonsWare    schedule 11.02.2010
comment
Это не работает с эмулятором, работающим в версии 2.2. Он возвращает идентификатор. - person Arutha; 02.11.2010
comment
@Arutha: Да, это новое поведение для Android 2.2. - person CommonsWare; 02.11.2010