appium之adb常用命令


 

一、真機遠程調試步驟:

(非數據線操作要求需要手機和pc端在同一個路由器下)

  1、將手機連接到pc端

  2、adb devices  檢測設備

  3、adb tcpip 5555 確定手機和pc端的通訊(端口)

  4、拔掉手機

  5、adb connect  <手機ip地址>

  6、adb disconnect 取消遠程調試

 

1、adb是什么?

  adb是用來連接安卓手機和pc端的橋梁

2、adb組成:

  1、客戶端(client):運行在自己電腦上,可以通過adb命令來調用起一個客戶端;

  2、服務端(server):運行在自己電腦上的后台,負責管理client和daemon進行通信;

  3、守護進程(daemon):運行在模擬器或Android設備后台;

 

二、adb命令

  1、adb devices 檢測設備

  2、adb version 檢測版本

  3、adb shell 登錄設備    (ll   ls  cp 命令  都可以用,進入到linux命令環境了,相當於執行遠程命令)

  4、adb pull <手機路徑> <本機路徑>     從手機中拉取信息到本地電腦上

  5、adb push <本機路徑> <手機路徑>   從本機電腦中推送信息到手機上

  6、adb logcat   打印日志

    打印日志到本地:adb logcat >本地路徑(如:adb logcat > D:\log.txt)

  7、查看包名:adb shell "dumpsys window windows | grep mFocusedApp"

 

 三、常用五個配置項

  1、devicesName (設備名稱)           命令獲取:  adb devices

  2、platformName  (設備操作系統名稱)      設備:Android

  3、platformVersion (操作系統版本)      Android版本:9.0

  4、appPackage   (需要連接APP的包名)     命令獲取:pm listpackages -3    (獲取手機上安裝的第三方應用)

   或直接獲取當前的app包名:adb shell "dumpsys window windows | grep mFocusedApp"

  5、appActivity    (需連接App的啟動項名稱)    命令:dumpsys window windows |grep -i current

  6、unincodeKeyboard (輸入中文時,需要添加)   例:app['unicodeKeyboard']=True

# 比如下面 platformName  和 platformVersion 兩個配置項
desired_caps = {}
desired_caps['platformName'] = 'Android'  #測試平台,不能寫錯
desired_caps['platformVersion'] = '9'   #平台版本,不能寫錯

desired_caps['deviceName'] = 'test'   #設備名稱
#apk 文件路徑名,如果設備還沒有此應用,則會安裝。 什么是apk文件?
#android application package <安卓移動App安裝包>
# desired_caps['app'] = r'd:\apk\toutiao.apk'   #一般可以在手機上先安裝好app
#app package名,一定要有,是開發者給app取的名字,可以唯一標識這個app # 安卓上運行某個app,不是根據它的路徑而是appid ,也就是這package name
desired_caps['appPackage'] = 'io.manong.developerdaily'
# app默認Activity,也是必須的參數。
desired_caps['appActivity'] = 'io.toutiao.android.ui.activity.LaunchActivity'
# 一定要有該參數,否則測試過程中無法輸入中文,加上這個參數會新加一種unicode輸入法(測試完成后 需在手機設置中切換回來自己的輸入法,否則不能使用)
desired_caps['unicodeKeyboard']  = True
# 保證了app 測試前不會清除應用數據,缺省是會清除數據的
desired_caps['noReset'] = True
# appium server 認為 和客戶端之間 無響應最大時間,超過這個時間就會停止服務
desired_caps['newCommandTimeout'] = 6000
desired_caps['automationName']='uiautomator2'

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM