您的位置:首页 > 移动开发

Android 判断软件app是否运行在bluestacks模拟器上(或者其他模拟器)

2017-05-12 14:06 615 查看
         方法如下:

/**
* 检测是否运行在模拟器上
*
* @return
* @throws Exception
* @author qiulinhe
* @createTime 2017年5月12日 下午1:57:29
*/
public boolean isEmulator() {
String buildDetails = (Build.FINGERPRINT + Build.DEVICE + Build.MODEL + Build.BRAND + Build.PRODUCT + Build.MANUFACTURER + Build.HARDWARE)
.toLowerCase();
//我试了网上所有的方法,都没用,最后看打出来的string,找到特殊的字符串:kot49h,这个是bluestacks模拟器返回的
if (buildDetails.contains("keyshlteatt") || buildDetails.contains("kot49h") || buildDetails.contains("generic")
|| buildDetails.contains("unknown") || buildDetails.contains("emulator") || buildDetails.contains("sdk")
|| buildDetails.contains("genymotion") || buildDetails.contains("x86") // this includes vbox86
|| buildDetails.contains("goldfish") || buildDetails.contains("test-keys")) {
return true;
}
return false;
}

   试了一个遍网上的其他方法,都是没有用的,最新的bluestacks蓝叠是没有的,只有从他们返回的字符串入手,我打印的情况如下:

真实的htc手机 的htc/htccn_chs/htc_a51dtul:4.4.4/ktu84p/484493.10:user/release-keyshtc_a51dtulhtc 

d820thtchtccn_chshtcqcom

05-12 13:50:25.741: I/System.out(7811): 

模拟器的bluestacks :samsung/hlteuc/hlteatt:4.4.2/kot49h/n900aucucmlg:user/release-keyshlteattsamsung-sm-n900

asamsunghlteucsamsunguniversal5420

真实三星平板的samsung/gts210wifizs/gts210wifi:5.0.2/lrx22g/t810zsu1aog5:user/

release-keysgts210wifism-t810samsunggts210wifizssamsunguniversal5433
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android