android 判断模拟器

2018-08-01  本文已影响0人  我是周呀

资料来自网络  点我点我  资料资料

我查到的资料有很多,但是人懒,没有一个一个去试。选了三种,实现了判断的功能,算是站在巨人的肩上完成的。

啦啦

第一种:判断蓝牙

    虽然网上说很多模拟器都能屏蔽这个,但是天真的我去试了一下,妈蛋。为什么我下的模拟器都告诉我没有蓝牙,难道是我太帅了。上代码:


/**

* 判断蓝牙是否有效来判断是否为模拟器

*

* @return true 为模拟器

*/

public boolean notHasBlueTooth() {

BluetoothAdapter ba = BluetoothAdapter.getDefaultAdapter();

    if (ba ==null) {

return true;

    }else {

// 如果有蓝牙不一定是有效的。获取蓝牙名称,若为null 则默认为模拟器

        String name = ba.getName();

        if (TextUtils.isEmpty(name)) {

return true;

        }else {

return false;

        }

}

}


以上就是判断蓝牙的代码。当返回false时,那就是真机了,当为true时,就是模拟器了,后面雷同。我很懒的。

第二种:判断光传感器

话不多说,上代码。


/**

* 判断是否存在光传感器来判断是否为模拟器

* 部分真机也不存在温度和压力传感器。其余传感器模拟器也存在。

* @return true 为模拟器

*/

public static BooleannotHasLightSensorManager(Context context) {

SensorManager sensorManager = (SensorManager) context.getSystemService(SENSOR_SERVICE);

    Sensor sensor8 = sensorManager.getDefaultSensor(Sensor.TYPE_LIGHT); //光

    if (null == sensor8) {

return true;

    }else {

return false;

    }

}


第三种:判断CPU


/**

* 判断cpu是否为电脑来判断 模拟器

*

* @return true 为模拟器

*/

public static boolean checkIsNotRealPhone() {

String cpuInfo =readCpuInfo();

    if ((cpuInfo.contains("intel") || cpuInfo.contains("amd"))) {

return true;

    }

return false;

}

//用到的方法

public static StringreadCpuInfo() {

String result ="";

    try {

String[] args = {"/system/bin/cat", "/proc/cpuinfo"};

        ProcessBuilder cmd =new ProcessBuilder(args);

        Process process = cmd.start();

        StringBuffer sb =new StringBuffer();

        String readLine ="";

        BufferedReader responseReader =new BufferedReader(new InputStreamReader(process.getInputStream(), "utf-8"));

        while ((readLine = responseReader.readLine()) !=null) {

sb.append(readLine);

        }

responseReader.close();

        result = sb.toString().toLowerCase();

    }catch (IOException ex) {

}

return result;

}


好了,代码就到这里了。

我测试了一下:

1.逍遥模拟器 All 2. 蓝叠模拟器 All 3. 夜神模拟器 cpu

4. 靠谱助手 All5. 天天模拟器 cpu 6. 海马模拟器All 7.雷电模拟器 All

这些里面 夜神和天天的都跳过了CPU的验证,可能是我查的资料有问题吧。

我要说一声

上面的代码不是原创,准确的说,这是我复制的,写这篇文章,只是为了记录。怕以后忘了,所以不要打赏,如果觉得有用可以给个小心心的。

拜谢。

上一篇下一篇

猜你喜欢

热点阅读