博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
如何判断Android设备是否为模拟器
阅读量:6681 次
发布时间:2019-06-25

本文共 2009 字,大约阅读时间需要 6 分钟。

 

android.os.Build.BRAND:获取设备品牌

 

如果获取的Landroid/os/Build;->BRAND的值 "generic"则为模拟器上运行。

android.os.Build.MODEL :获取手机的型号 设备名称。

如果发现Landroid/os/Build;->MODEL 为"sdk",则为模拟器上运行。

代码示例:

1     const-string v0, "phone" 2  3     invoke-virtual {p0, v0}, Lcom/xxx/LoadingActivity;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; 4  5     move-result-object v0 6  7     check-cast v0, Landroid/telephony/TelephonyManager; 8  9     invoke-virtual {v0}, Landroid/telephony/TelephonyManager;->getSubscriberId()Ljava/lang/String;10 11     sget-object v0, Landroid/os/Build;->BRAND:Ljava/lang/String;12 13     invoke-virtual {v0}, Ljava/lang/String;->toLowerCase()Ljava/lang/String;14 15     move-result-object v016 17     const-string v1, "generic"18 19     invoke-virtual {v0, v1}, Ljava/lang/String;->indexOf(Ljava/lang/String;)I20 21     move-result v022 23     const/16  v0, -124     25     if-eq v0, v2, :cond_026 27     sget-object v0, Landroid/os/Build;->MODEL:Ljava/lang/String;28 29     invoke-virtual {v0}, Ljava/lang/String;->toLowerCase()Ljava/lang/String;30 31     move-result-object v032 33     const-string v1, "sdk"34 35     invoke-virtual {v0, v1}, Ljava/lang/String;->indexOf(Ljava/lang/String;)I36 37     move-result v038 39     if-eq v0, v2, :cond_040 41     invoke-virtual {p0}, Lcom/xxx/LoadingActivity;->finish()V42 43     :cond_044     iget-object v0, p0, Lcom/xxx/LoadingActivity;->b:Landroid/content/SharedPreferences;45 46     invoke-interface {v0}, Landroid/content/SharedPreferences;->edit()Landroid/content/SharedPreferences$Editor;

 

以下信息可以被用来判断是否在模拟器上运行

模拟器输出的信息
1 C:\Users\dell>adb shell getprop 2  3 [ro.kernel.qemu]:[1] 4 [ro.hardware]:[goldfish] 5 [ro.build.tags]:[test-keys] 6 [ro.product.model]:[sdk] 7 [ro.product.brand]:[generic] 8 [ro.product.name]:[sdk] 9 [ro.product.device]:[generic]10 [ro.product.board]:[]11 [ro.product.manufacturer]:[unknown]12 [ro.board.platform]:[]13 [ro.build.product]:[generic]14 [ro.build.fingerprint]:[generic/sdk/generic:2.3.1/GSI11/93351:eng/test-keys]

 

转载地址:http://sdxao.baihongyu.com/

你可能感兴趣的文章
测试项目
查看>>
第一章ASP.NET SignalR简介
查看>>
SSH
查看>>
使用python3来生成安全的随机密码
查看>>
41-50(UIApplication和delegate,UIApplicationMain,UIWindow,程序启动的完整过程,控制器view的延迟加载)...
查看>>
HTTP服务器实现
查看>>
2017.03
查看>>
95Cloud 可信云计算管理系统(IaaS) ———持续数据保护(CDP)简介
查看>>
S7700交换机组网部分终端上不了网故障排查
查看>>
Scala开始开发工具
查看>>
vs2010 mvc3
查看>>
RocketMQ 源码分析 高可用
查看>>
我的友情链接
查看>>
CentOS 7.5.1804 安装配置docker
查看>>
我的友情链接
查看>>
浏览器的缓存原理
查看>>
Swift::1::变量和常量
查看>>
SFB 项目经验-79-如何升级Exchange 2016 CU10高可用 To CU11
查看>>
写在毕业后快一月
查看>>
改变学习方法,今天完成第6课
查看>>