注:isTrulyDevice()方法返回 false则设备为模拟器。
/**
* 真实设备检测
*
* @return true:真机,false:模拟器
*/
public final static boolean isTrulyDevice() {
//ro.radio.use-ppp—>yes or ro.product.cpu.abi—>x86 一定是模拟器
//ro.radio.use-ppp—>null or init.svc.console->null 一定是真机
String abi = properties(“ro.product.cpu.abi”);
String usePPP = properties(“ro.radio.use-ppp”);
String console = properties(“init.svc.console”);

 boolean emulator1 = "x86".equals(abi);boolean emulator2 = "yes".equals(usePPP);boolean device1 = TextUtils.isEmpty(usePPP);boolean device2 = TextUtils.isEmpty(console);return !(emulator1 || emulator2) && (device1 || device2);
}
private final static String properties(String key) {try {Process process = Runtime.getRuntime().exec("getprop " + key);InputStream inputStream = process.getInputStream();BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));StringBuffer buffer = new StringBuffer();String line = null;while ((line = reader.readLine()) != null) {buffer.append(line);}return buffer.toString();} catch (IOException e) {e.printStackTrace();return "";}
}

app检测android模拟器代码相关推荐

  1. 检测Android模拟器的方法和代码实现

    专自:https://bbs.pediy.com/thread-225717.htm 刚刚看了一些关于Detect Android Emulator的开源项目/文章/论文, 我看的这些其实都是13年1 ...

  2. 一行代码帮你检测Android模拟器优劣

    码个蛋(codeegg)第 797 次推文 作者:普通的程序员 博客:https://www.jianshu.com/p/434b3075b5dd 文章目录 简介 初代常规手段 进阶手段 改良手段和新 ...

  3. 利用任务调度特性检测Android模拟器

    Author:leonnewton 0x00 前言 DEXLabs发表过题为<Detecting Android Sandboxes>的博客,文章提出了一个检测Android沙箱的方法,并 ...

  4. 利用cache特性检测Android模拟器

    Author:leonnewton 0x00 序 目前对Android模拟器的检测,主要是从特定的系统值来进行区分的.例如,getDeviceId().getLine1Number()这类函数,还有a ...

  5. android恶意代码检测报告,用机器学习检测Android恶意代码

    参考资料 原理 原理就不详细讲了,我参考资料中给的链接已经说得很清楚了,我就说一说原文中说得不是很清楚,我自己进行了一些揣摩理解的地方. 我以method作为单位进行提取,每个method看成互不相关 ...

  6. Android模拟器检测体系梳理,kotlin入门

    随着技术的不断发展,目前模拟器基本已经能够完成手机90%以上的功能.此外,由于在PC端工作,与传统手机相比,具有以下几点优势: 更炫:支持大屏幕.提供更炫酷的视觉效果,从而能够天然的将一些移动端由于适 ...

  7. Android模拟器检测体系梳理

    转自:https://www.wireghost.cn/2018/05/10/Android模拟器检测体系梳理/ 模拟器作为一种虚拟机,配合改机工具,能够以较低成本实现设备多开,因此而备受黑灰产的青睐 ...

  8. Android模拟器检测体系梳理,android驱动开发入门

    安卓系统兼容性:目前模拟器上的Android系统仍然停留在4.x,部分达到5.1,使得部分对安卓版本有要求的应用或游戏在模拟器上运行体验不好. 底层关键技术 >>>> 虚拟化技 ...

  9. Android模拟器的检测

    Android模拟器的检测 需求:最近有一个需求,要检测出模拟器,防止恶意刷流量刷注册. 1.基于特征属性来检测模拟器,比如IMSI,IDS,特殊文件等等. 这个方案局限性太大,貌似现在大部分模拟器默 ...

最新文章

  1. URL和URI的区别 【转】
  2. ROW_NUMBER() OVER函数的基本用法用法
  3. github page hexo博客gitee_hexo + github 博客搭建
  4. c语言是结构化 模块化,c语言是完全模块化和结构化的语言,怎么理解,什么是模块化和结构化...
  5. Windows 钩子的使用
  6. SIP与RTP综合应用5-RTP解包过程
  7. 《电路分析导论(原书第12版)》一2.8 导体和绝缘体
  8. 如何实现用户自己定义控件。
  9. WebServer起不来,如何查看原因
  10. ymPrompt.js消息提示组件 详解 .
  11. [Delphi]用程序更改 IE 的代理服务器(Proxy)设置及本地连接
  12. 计算机进入局域网共享,win10打开局域网共享的四个步骤——亲测有效
  13. 消息队列(MQ) 企业服务总线(ESB)
  14. html引入png不显示透明北京,完美解决透明png图片及透明png背景,兼容所有浏览器...
  15. 802.11--802.11n协议 PHY
  16. 企业微信客户朋友圈怎么发?朋友圈规则有哪些?
  17. 报错 The type类名 is already defined
  18. nginx防恶意刷新
  19. 文献 | 越想快乐,越不快乐
  20. 《CS:GO》玩家快看,英特尔显卡驱动更新,帧率提升超两倍!

热门文章

  1. Ubuntu下安装PEA
  2. 电磁学中一些基础知识2
  3. 和猿辅导国奖选手的妈妈聊聊:数学新生代的成长之路
  4. 4.1 画图抓图工具
  5. 个人博客后台系统分类管理
  6. RMS调度器概念及用法
  7. 记录Nginx的升级实践以及实现的三种方法详解
  8. php 执行cmd 权限,[转载]ubuntu php 调用系统命令 以及实现同时执行多
  9. 详解爱奇艺ZoomAI视频增强技术的应用 | 公开课笔记
  10. 服务器销售开场白30秒,精准开场白,拒绝被秒杀 ——终端门店销售开场话术的三段式设计...