【MonkeyRunner】[技術博客]用python編寫腳本查看設備信息

【MonkeyRunner】用python編寫腳本查看設備信息

原覺得是個簡單的操做,在實踐的時候發現了一些問題。
python腳本 test.py:python

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

在cmd中運行腳本android

>>>monkeyrunner  tset.py

這樣會報錯ui

LookupError: unknown encoding 'ms936'

在網上查閱一番後,緣由是編碼格式不一樣,查到的解決方案爲:
在cmd中先輸入chcp 437而後再運行腳本編碼

上面這種方法親測可用,可是本人以爲這個須要提早在cmd中輸入的方法很難受,因而提出另外一種解決方法:
在Python 中獲取設備信息的時候轉換成string類型,就能夠正常輸出了
修改test.py 的第三行以下:操作系統

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

而後再運行就能夠輸出設備名稱了。設計

經過MonkeyDevice.getProperty()方法能夠查看不少設備信息code

  • 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 顯示邏輯密度rem

  • am.current.package 正在運行的包的名稱
  • am.current.action 正在進行的活動
  • am.current.comp.class 啓動當前活動的組件的類名
  • am.current.comp.package 啓動當前多動的組件的包名
  • am.current.data 當前活動的Intent中包含的數據
  • am.current.categories 當前活動的Intent指定的類別get

  • clock.realtime 設備重啓後的毫秒數,包括睡眠時間
  • clock.uptime 設備重啓後的毫秒數,不包含睡眠時間
  • clock.millis 自1970年1月1日起到當前的毫秒數

相關文章
相關標籤/搜索