Как заблокировать запуск моего приложения на эмуляторе Bluestacks? - PullRequest
0 голосов
/ 10 октября 2019

Я пытаюсь заблокировать запуск моего приложения на эмуляторах, но я не знаю, как заблокировать его запуск на bluestacks. Это то, что я пробовал.

            || Build.FINGERPRINT.startsWith("generic")
            || Build.FINGERPRINT.startsWith("unknown")
            || Build.HARDWARE.contains("goldfish")
            || Build.HARDWARE.contains("ranchu")
            || Build.MODEL.contains("google_sdk")
            || Build.MODEL.contains("Emulator")
            || Build.MODEL.contains("Android SDK built for x86")
            || Build.MANUFACTURER.contains("Genymotion")
            || Build.PRODUCT.contains("sdk_google")
            || Build.PRODUCT.contains("google_sdk")
            || Build.PRODUCT.contains("sdk")
            || Build.PRODUCT.contains("sdk_x86")
            || Build.PRODUCT.contains("vbox86p")
            || Build.PRODUCT.contains("emulator")
            || Build.PRODUCT.contains("simulator")
            || Build.MANUFACTURER.contains("CMDC")
            || Build.MANUFACTURER.contains("BlueStacks")

1 Ответ

0 голосов
/ 10 октября 2019
TelephonyManager tm = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
String networkOperator = tm.getNetworkOperatorName();
if("Android".equals(networkOperator)) {
    // Emulator
}
else {
    // Device
}

У эмулятора нет сим-карты, поэтому он возвращает пустую строку: "" при выполнении кода выше. В то время как Android всегда возвращает «Android» в качестве оператора сети, это может помочь.

Ответ JJ Kiim

ссылка -

https://stackoverflow.com/a/6577813/9024123

https://stackoverflow.com/a/35896310/9024123

...