简体   繁体   English

Android - 如何检测应用程序是否在 Nox 模拟器上运行?

[英]Android - how to detect if app running on Nox emulator?

I don't want to allow my users to run my app on an emulator.我不想让我的用户在模拟器上运行我的应用程序。

I have succeeded detecting any other emulator, except Nox app player .我已成功检测到除Nox app player之外的任何其他模拟器。

Check my solutions here: How can I detect when an Android application is running in the emulator?在此处查看我的解决方案: 如何检测 Android 应用程序何时在模拟器中运行?

Nox emulator has same device data as an actual phone, they even simulate deviceId (IMEI number, it is not 000000000000 and nut null), and network operator name. Nox 模拟器具有与实际手机相同的设备数据,它们甚至模拟设备 ID(IMEI 号码,它不是000000000000和 nut null)和网络运营商名称。 Looks like every time I launch the Nox app player, it randomizes all the Build.PRODUCT and similar fields.看起来每次我启动 Nox 应用程序播放器时,它都会随机化所有Build.PRODUCT和类似字段。

Although there is a pattern, some of the fields have incompatible names, like the manufacturer is sony, but device model is HTC...虽然有模式,但有些字段的名称不兼容,例如制造商是 sony,但设备型号是 HTC...

Check BASEBAND version os the device.检查设备的BASEBAND版本。 In case of Nox player the baseband version is null.在 Nox 播放器的情况下,基带版本为空。 In the android devices you will get the BASEBAND version value.在 android 设备中,您将获得BASEBAND版本值。

Since SDK Lvl 14 you should use Build.getRadioVersion() in order to retrieve the baseband version.SDK Lvl 14 开始,您应该使用Build.getRadioVersion()来检索基带版本。

确认手机没有安装这3个应用 com.vphone.googlesign com.vphone.helper 和 com.vphone.launcher

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM