【MonkeyRunner】[技术博客]用python编写脚本查看设备信息

【MonkeyRunner】用python编写脚本查看设备信息

原以为是个简单的操作,在实践的时候发现了一些问题。
python脚本 test.py:

from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice
device = MonkeyRunner.waitForConnection()
a = device.getProperty("build.device")
print(a)

在cmd中运行脚本

>>>monkeyrunner  tset.py

这样会报错

LookupError: unknown encoding 'ms936'

在网上查阅一番后,原因是编码格式不同,查到的解决方案为:
在cmd中先输入chcp 437然后再运行脚本

上面这种方法亲测可用,但是本人觉得这个需要提前在cmd中输入的方法很难受,于是提出另一种解决方法:
在Python 中获取设备信息的时候转换成string类型,就可以正常输出了
修改test.py 的第三行如下:

a = str(device.getProperty("build.device"))

然后再运行就可以输出设备名称了。

通过MonkeyDevice.getProperty()方法可以查看很多设备信息

  • build.board 设备系统板的的代码名称

  • build.brand 操作系统的提供商

  • build.device 设备设计名称

  • build.fingerprint 设备唯一标识符

  • build.ID 设备编号

  • build.model 设备的用户可见名称

  • build.product 整体产品名称

  • build.CPU_ABI 代码指令集

  • build.manufacturer 制造商

  • build.version.incremental 内部代码

  • build.version.release 此版本用户可见名称

  • build.version.sdk 此版本用户可见SDk版本

  • build.version.codename 开发代号

  • display.width 设备显示宽度

  • display.height 设备显示高度

  • display.density 显示逻辑密度

  • am.current.package 正在运行的包的名称

  • am.current.action 正在进行的活动

  • am.current.comp.class 启动当前活动的组件的类名

  • am.current.comp.package 启动当前多动的组件的包名

  • am.current.data 当前活动的Intent中包含的数据

  • am.current.categories 当前活动的Intent指定的类别

  • clock.realtime 设备重启后的毫秒数,包括睡眠时间

  • clock.uptime 设备重启后的毫秒数,不包含睡眠时间

  • clock.millis 自1970年1月1日起到当前的毫秒数

原文地址:https://www.cnblogs.com/bhlt1998/p/10841216.html