① android 如何通過代碼設置adb指令,使手機關機
RunTime.GetRunTime.exec("su -c adb reboot -p");
② 電腦控制android設備(手機、平板)的開關機指令是什麽例如adb命令
你好,在關機狀態下,你是怎麼用PC檢測到設備的存在的??
麻煩不吝賜教,不勝感激!!
③ 如何用adb reboot的命令重啟手機
需要安裝USB驅動或者ADB驅動
安裝完,USB線連接PC打DOS命令輸入adb shell進入設備shell命令輸入reboot重啟手機。
④ Android手機軟重啟adb命令是什麼
運行設備的shell(命令行)。
管理模擬器或設備的埠映射。
計算機和設備之間上傳/下載文件。
將本地apk軟體安裝至模擬器或android設備。
ADB一個 客戶端-伺服器端 程序, 其中客戶端是用來操作的電腦,伺服器端是android設備。
1、 查看設備 *adbdevices。這個命令是查看當前連接的設備, 連接到計算機的android設備或者模擬器將會列出顯示。
2、 安裝軟體:adbinstall <apk文件路徑>。
這個命令將指定的apk文件安裝到設備上。
3、 卸載軟體
adbuninstall <軟體名>。
adbuninstall -k <軟體名>。
如果加 -k 參數,為卸載軟體但是保留配置和緩存文件。
⑤ 使用adb命令或shell命令定時重啟手機或關機
各種應用中的流量下無圖和省流量模式關掉。
⑥ ADB常用命令
Android 調試橋 (adb) ,可與設備進行通信。adb 命令可用於執行各種設備操作(例如安裝和調試應用),並提供對 Unix shell(可用來在設備上運行各種命令)的訪問許可權。它是一種客戶端-伺服器程序,包括以下三個組件:
客戶端: 用於發送命令。客戶端在開發機器上運行。可以通過發出 adb 命令從命令行終端調用客戶端。(可以通過它對Android應用進行安裝、卸載、調試)
PC上的手機助手基本都是通過adb命令去完成的。有時候裝了這類手機助手的話,它自帶的adb程序可能會與Android SDK下的adb程序產生沖突,5037埠被佔用,導致adb命令無法連接到設備。Windows下通過netstat -ano|findstr "5037"
守護程序 (adbd): 用於在設備上運行命令。守護程序在每個設備上作為後台進程運行
執行adb shell ps | grep adbd, 可以找到該後台進程,Windows使用findstr替代grep.
adb nodaemon server
伺服器(Service): 用於管理客戶端與守護程序之間的通信。伺服器在開發機器上作為後台進程運行
adb服務啟動後,Windows可以在任務管理中找到adb.exe; linux ps -ef | gref adb 可以查看service
一般都是通過這樣子的格式 adb [-d|-e|-s <設備序列號>] <子命令>
通常只有一台設備就忽略 [-d|-e|-s ] 這一部分
這里介紹一些常用的命令:
獲取設備列表及設備狀態
獲取設備的狀態
注意:設備的狀態有 3 鍾,device , offline , unknown
device:設備正常連接
offline:連接出現異常,設備無響應
unknown:沒有連接設備
結束 adb 服務
啟動 adb 服務
注意:通常兩個命令一起用,有時候我們開啟server會失敗,這是因為我們裝了的手機助手,豌豆莢或者其他軟體自帶有自己的adb,導致埠沖突開啟失敗。一般在連接出現異常,使用 adb devices 未正常列出設備, 設備狀態異常時使用 kill-server,然後運行 start-server 進行重啟服務。
列印 Android 的系統日誌
列印 mpsys、mpstate、logcat 的輸出,也是用於分析錯誤輸出比較多
列印日誌後重定向到一個文件中
安裝應用,覆蓋安裝是使用 -r 選項
注意:有些adb版本無法支持安裝中文的apk
查看手機應用包名
查看應用對應的apk文件在手機上的安裝位置則可以在上面的命令後加-f參數
卸載應用,後面跟的參數是應用的包名,請區別於 apk 文件名
'-k' means keep the data and cache directories , -k 選項,卸載時保存數據和緩存目錄
將 Android 設備上的文件或者文件夾復制到本地
adb pull /sdcard/test.txt C:\Users\Administrator\Desktop\log
推送本地文件至 Android 設備
獲取連接到的手機的序列號
獲取設備的連接狀態
等待設備連接成功
該命令將會阻塞一直到默認連接的那部機器狀態變為device,也就是連接成功。
其實adb shell命令就是調用的是Android設備中的system/bin目錄下的命令。
Android的內核本身就是Linux,所以Android本身也支持Linux命令,但是因為是手機系統,所以進行了一定的刪減,部分命令不支持,而不支持的部分,我們可以通過安裝busybox這個軟體進行。
如何在手機中執行Shell命令?
每次都加上adb shell來進行命令的發送與執行
先通過adb shell進入手機Shell執行狀態,然後直接輸入Linux命令。
使一個apk處於禁用狀態,相當於卸載了:
其中 PACKAGE_OR_COMPONENT的格式是 package/class, 如 com.UCMobile/.main.UCMobile
eg:adb shell su disable com.UCMobile/.main.UCMobile
同時我們在手機上發現,UC瀏覽器的圖標不見了
讓一個apk從禁用狀態恢復過來
其中 PACKAGE_OR_COMPONENT的格式是 package/class, 如 com.UCMobile/.main.UCMobileeg:
adb shell su enable com.UCMobile/.main.UCMobile
同時我們從手機上發現,UC瀏覽器的圖標又出現了。
查看一個apk所在的路徑
adb shell pm path com.UCMobile
查看手機中裝的所有的包
屏幕開始錄像並且儲存到/sdcard中,同時名字為demo.mp4
錄屏設置時長10s,命名為demo.mp4
注意:現在僅支持一部分手機錄屏,不支持的手機會出現以下提示
解決方法:
安裝了scrcpy之後,只需要輸入如下命令,即可錄取指定設備的屏幕
scrcpy -s device --render-expired-frames -Nr ./demo.pm4
--render-expired-frames:盡可能最大幀率
-N:不在PC端展示
-r:錄制mp4/mkv文件
關閉設備請求,開啟設備
設備關機以及重啟
pm(package manager)可以獲取一些安裝到Android設備上的app的信息
pm list packages 用法:list packages [ options] filter
獲取所有的應用的包名
列出系統應用
列出第三方應用
查看它們的關聯文件
adb shell pm list package -f
查看軟體包的安裝來源
pm mp 包名 很多mp信息
安裝應用
apk如果在電腦用 adb install
如果在Android設備上用 adb shell pm install
卸載應用,同adb uninstall ,後跟包名
清除應用數據
am(activity manager,字面意思就跟activity有關,大家都知道Android的界面都是由一個個activity顯示的)
啟動一個Activity
獲取到package和launch_activity
AndroidSDK中aapt工具,檢索命令結果,可以獲取到package和launch_activity
這里涉及到一個點,如何找到程序的入口,首先你要知道是哪個activity才能啟動;
啟動華為系統相機
打開音樂播放器
播放指定音樂:
先停止目標應用,再啟動
等待應用完成啟動
啟動網頁(android.intent.action.VIEW具體參考Android官網)
結束應用
input
模擬輸入,向獲得焦點的EditText控制項輸入內容
返回主界面
發送一個點擊操作的指令,參數是<x> <y>坐標
從左往右滑動屏幕, /從 100 100 經歷300毫秒滑動到 200 200
長按操作,在 100 100 位置長按 1000毫秒