Android 判断真机和模拟器的方法
Android 判断真机和模拟器的方法
最近有一些业务需求要判断是否在真机上运行还是在模拟器上运行两种不同的情况下做不同的业务逻辑操作。上网查了查还真有不少的资源。
接下来给大家展示下实例代码:
private static String getSystemProperty(String name) throws Exception { Class systemPropertyClazz = Class.forName("android.os.SystemProperties"); return (String) systemPropertyClazz.getMethod("get", new Class[]{String.class}) .invoke(systemPropertyClazz, new Object[]{name}); } public static boolean checkEmulator() { try { boolean goldfish = getSystemProperty("ro.hardware").contains("goldfish"); boolean emu = getSystemProperty("ro.kernel.qemu").length() > 0; boolean sdk = getSystemProperty("ro.product.model").equals("sdk"); if (emu || goldfish || sdk) { return true; } } catch (Exception e) { } return false; }
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
相关推荐
-
Android开发必备:秒杀真机超快模拟器Genymotion介绍
第一,这货速度太快,第二,模仿真机环境,第三,秒杀任何Android模拟器包括真机,不多说上图,我忒忙! 官网: http://www.genymotion.com/ 镜像图片可以创建多个模拟器 关键是有一切Google的服务,在Google眼里就是一个真机 骚年不知道外界的Android,已经发生了翻天覆地的变化!
-
Android 区别真机和模拟器的几种方法
现在的模拟器的功能太强大,从蓝牙,传感器等配件到IMEI,Mac,以及手机硬件信息什么都可以模拟 为了防止用户利用模拟器模仿真机进行刷单,刷流量等恶意操作. 需要获取设备返回的一些信息来鉴别设备的真伪. 下面是整理的模拟器和真机的区别 虽然大部分都可以模仿,伪造,但是如果综合所有维度来监控,应该不存在太大问题. 一,native方式. 通过c代码读取设备中的配置和硬件相关信息. 1,diskstats 获取闪存的分区状态信息. int fd = open("/proc/diskstats&quo
-
Android 判断真机和模拟器的方法
Android 判断真机和模拟器的方法 最近有一些业务需求要判断是否在真机上运行还是在模拟器上运行两种不同的情况下做不同的业务逻辑操作.上网查了查还真有不少的资源. 接下来给大家展示下实例代码: private static String getSystemProperty(String name) throws Exception { Class systemPropertyClazz = Class.forName("android.os.SystemProperties");
-
Android Studio真机无线连接USB设备调试运行详解流程
前言 一般情况下,多数移动开发者使用的是数据线连接电脑,进行各种移动设备的调试,更有胜者,非常迷恋模拟器,模拟器它好不好,答案是好,因为直接运行在电脑上,直接操作,调试,确实方便.尤其是ios开发小伙伴,多数app通过模拟器基本上都能开发好,再用真机验证就可以了.但对于android,就比较恼火了,模拟器一直不好用,卡.慢都是影响撸码的心情.另外android设备随便弄个便宜的都是容易的,基本上是真机开发.那么非一般情况呢,例如我们使用了NDK也就是C层的代码时,由于架构匹配方面,需要用真机开发
-
android判断软件是否第一次运行的方法
本文实例讲述了android判断软件是否第一次运行的方法.分享给大家供大家参考.具体如下: SharedPreferences sharedPreferences = this.getSharedPreferences("share", MODE_PRIVATE); boolean isFirstRun = sharedPreferences.getBoolean("isFirstRun", true); Editor editor = sharedPreferen
-
android判断相机图片朝向的简单方法
android应用里使用相机图片时必须要考虑的一个问题就是图片朝向,只有判断对朝向才能调整图片从而更好的展现.本文将介绍一种通过ExifInterface判断图片朝向的方法! 上代码: /** * * 利用给定路径下的图片设置ImageView * * @param imgPath 手机图片文件路径 * @param imgView 需要设置的ImageView */ public void setImg(String imgPath, ImageView imgView) { File fil
-
Android判断某个权限是否开启的方法
如下所示: /** * 读写权限 自己可以添加需要判断的权限 */ public static String[]permissionsREAD={ Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE }; /** * 判断权限集合 * permissions 权限数组 * return true-表示没有改权限 false-表示权限已开启 */ public static bo
-
Android判断定位功能是否可用的方法
定位功能是否可用由定位服务和定位权限共同决定: 判断定位服务: /** * 手机是否开启位置服务,如果没有开启那么所有app将不能使用定位功能 */ public static boolean isLocServiceEnable(Context context) { LocationManager locationManager = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE); boolean gps
-
快速解决低版本Xcode不支持高版本iOS真机调试的问题方法
今天在进行真机调试的时候,遇到了以下问题. Could not locate device support files. This iPhone 6s is running iOS 10.2(14C92), which may not be supported by this version of Xcode. 见文知意,主要原因是在调试前我将iOS 升级到了最新版10.2版本,而我的Xcode8.1支持的最高版本是10.1的. 其实每次iOS SDK版本升级都会遇到相同的问题,之前遇到过相同的
-
Android获取本机电话号码的简单方法
如何在Android上获取本机电话号码,目前Android上提供了一个API可以读取早期SIM卡上固化的号码, 复制代码 代码如下: private String getPhoneNumber(){ TelephonyManager mTelephonyMgr; mTelephonyMgr = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); return mTelephonyM
-
Android判断是否为飞行模式简单方法
判断是否为飞行模式: 复制代码 代码如下: boolean isAirplaneMode = Settings.System.getInt(mContext.getContentResolver(), Settings.System.AIRPLANE_MODE_ON, 0) ; 这里的mContext是android.content.Context
随机推荐
- javascript复制对象使用说明
- 解析XPath语法之在C#中使用XPath的示例详解
- flex 简单例子(含实例效果图 源码)
- mac系统下载、安装、使用Java8教程
- VS2015在升级到Update2之后运行Cordova项目异常的解决方案
- PHP 抓取网页图片并且另存为的实现代码
- MySQL中给自定义的字段查询结果添加排名的方法
- js调用打印机打印网页字体总是缩小一号的解决方法
- Python正则替换字符串函数re.sub用法示例
- 让Firefox支持event对象实现代码
- ASP XML制作菜单管理程序
- 使用Java把文本内容转换成网页的实现方法分享
- 阿里云ecs服务器 修改php上传最大限制的方法
- mysql中使用sphinx搜索子域名需注意的问题
- jQuery调用RESTful WCF示例代码(GET方法/POST方法)
- 浅析js绑定事件的常用方法
- 用RegFind从命令行快速操作注册表
- java Timer测试定时调用及固定时间执行代码示例
- Spring Boot集成教程之异步调用Async
- Spring MVC框架配置方法详解