adb 簡介與常用命令

1. adb 簡介

adb 的全稱為 Android Debug Bridge,就是起到調試橋的作用。

借助 adb 工具,我們可以管理設備或手機模擬器的狀態。還可以進行很多手機操作,如安裝軟件、系統升級、運行 shell 命令等等。其實簡而言說,adb 就是連接 Android 手機與 PC 端的橋梁,可以讓用戶在電腦上對手機進行全面的操作。

通過 adb 我們也可以在 Eclipse 中方面通過 DDMS 來調試 Android 程序(即 debug 工具)。

adb 的工作方式比較特殊,采用監聽 Socket TCP 5554 等端口的方式讓 IDE 和 Qemu 通訊,默認情況下 adb 會 daemon 相關的網絡端口,所以當我們運行 Eclipse 時 adb 進程就會自動運行。

?

2. adb 常用命令

查看設備

adb devices

這個命令是查看當前連接的設備, 連接到計算機的 android 設備或者模擬器將會列出顯示。

查看手機系統版本

adb shell getprop ro.build.version.release

安裝軟件

adb install <apk文件路徑>

這個命令將指定的apk文件安裝到設備上

卸載軟件

adb uninstall <軟件名>
adb uninstall -k <軟件名>

-k 參數表示卸載軟件但是保留配置和緩存文件.

進入設備或模擬器的 shell

adb shell  # 進入 shell 中,執行各種 shell 命令
adb shell [command]  # 執行一條 shell 命令

通過上面的命令,就可以進入設備或模擬器的shell環境中,在這個 Linux Shell 中,你可以執行各種 Linux 的命令。另外

如果只想執行一條 shell 命令,可以采用以下的方式,如:adb shell dmesg 會打印出內核的調試信息。

發布端口

可以設置任意的端口號,做為主機向模擬器或設備的請求端口。如:

adb forward tcp:5555 tcp:8000

從電腦上發送文件到設備

adb push <本地路徑> <遠程路徑>

用 push 命令可以把本機電腦上的文件或者文件夾復制到設備(手機)。

從設備上下載文件到電腦

adb pull <遠程路徑> <本地路徑>

用 pull 命令可以把設備(手機)上的文件或者文件夾復制到本機電腦。

查看設備的 Log 日志

常用格式如下:

// 格式1:打印默認日志數據
adb logcat // 格式2:需要打印日志詳細時間的簡單數據
adb logcat -v time// 格式3:需要打印級別為Error的信息
adb logcat *:E// 格式4:需要打印時間和級別是Error的信息
adb logcat -v time *:E// 格式5:將日志保存到電腦固定的位置,比如D:\log.txt
adb logcat -v time > D:\log.txt

查看 bug 報告

adb bugreport

記錄無線通訊日志

一般來說,無線通訊的日志非常多,在運行時沒必要去記錄,但我們還是可以通過命令,設置記錄:

adb shell
logcat -b radio

獲取設備的 ID 和序列號

adb get-product
adb get-serialno

adb 服務器殺死和啟動

adb kill-server
adb start-server

裝包、卸載包

adb -s deviceid install <apk在PC端的路徑>
adb shell pm install <apk在移動端的路徑>
adb uninstall <包名>

與 Activity 操作等相關

1)獲取當前啟動 app 的包名:

adb shell dumpsys window w |findstr \/ |findstr name=

2)通過獲取到的包名獲取到啟動 app 的 activity:

adb shell monkey -p 包名 -vvv 1

與進程相關

列出當前進程:

adb shell ps | findstr <包名>

殺死某個包的進程:

adb shell am force-stop <包名>

性能相關

獲取內存:

adb shell dumpsys meminfo <包名>

獲取 CPU:

adb shell dumpsys cpuinfo | findstr <包名>
adb shell top -n 1 | findstr <包名>

獲取流暢度相關:

adb shell dumpsys gfxinfo <包名>

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/88711.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/88711.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/88711.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

阿里云-跨賬號同步OSS Bucket

說明 阿里云A賬號的OSS BUCKET同步到B賬號的指定OSS BUCKET。 賬號Bucket NamesRAM角色A{源buctket}OSS-SYNCERB{目標buctket} 步驟 在阿里云A,B賬號分別建上表buckets, 最好是相同地域的在A號-RAM控制臺建立角色OSS-SYNCER&#xff0c;并賦權AliyunOSSFullAccess&#xff…

uniapp小程序無感刷新token

request.js // request.js import {getApptoken,getStoredApptoken } from ./tokenRequest // 從合并模塊導入// 全局配置 const MAX_RETRIES 1 // 最大重試次數 const baseURL https://your-api.com// 請求隊列和刷新狀態 let requestsQueue [] let isRefreshing false// …

MySQL優化高手筆記

語雀完整版&#xff1a;https://www.yuque.com/g/mingrun/embiys/dv3btw/collaborator/join?tokenzMBwPzSMfSGINLuv&sourcedoc_collaborator# 《MySQL優化高手筆記》MySQL優化高手一、MySQL架構01 天天寫CRUD,你知道你的系統是如何跟MySQL打交道的嗎通過驅動連接數據庫&am…

Git 詳解:從概念,常用命令,版本回退到工作流

本文將從 Git 的核心概念講起&#xff0c;詳細介紹常用命令、各階段版本回退、分支控制以及企業內常見的 Git 工作流。 Git 與 GitHub 簡介 Git 簡介 Git 是一個開源的分布式版本控制系統&#xff0c;由 Linus Torvalds 于 2005 年開發。它與集中式版本控制系統&#xff08;…

CMSIS(Cortex Microcontroller Software Interface Standard)ARM公司為 Cortex-M 系列處理器

CMSIS&#xff08;Cortex Microcontroller Software Interface Standard&#xff09;是ARM公司為 Cortex-M 系列處理器&#xff08;如 M0/M3/M4/M7/M23/M33 等&#xff09;定義的一套硬件抽象層標準&#xff0c;旨在簡化嵌入式開發&#xff0c;提高代碼的可移植性和復用性。 核…

[特殊字符] 掃描式處理:Python 自動提取 PDF 中關鍵詞相關表格并導出為 Excel

本文演示如何利用 pdfplumber 批量處理指定文件夾下 PDF 文檔&#xff1a;定位關鍵詞&#xff08;如“主要會計數據”&#xff09;出現的頁碼及下一頁&#xff0c;提取其中的表格并保存為獨立 Excel 文件。適用于財務報告、審計表格、統計報表等場景。 1?? 第一步&#xff1a…

python3的返回值能返回多個嗎?

在Python中&#xff0c;函數可以通過返回一個元組&#xff08;tuple&#xff09; 來間接實現返回多個值的效果。以下是具體說明&#xff1a; 實現方式&#xff1a;直接返回逗號分隔的值 Python會自動將這些值打包成一個元組&#xff1a; def multiple_return():a 1b "he…

UE5 Secondary Materials

首先放入材質A材質B放入Secondary Materials兩個效果就能融合到一起了動態設置secondary material

AUTOSAR進階圖解==>AUTOSAR_SWS_FlashTest

AUTOSAR Flash Test模塊詳解與分析 基于AUTOSAR標準的Flash Test模塊架構、功能與應用分析目錄 1. Flash Test模塊概述 1.1 模塊作用與功能1.2 適用范圍 2. Flash Test模塊架構 2.1 模塊位置2.2 組件關系 3. 狀態管理 3.1 狀態定義3.2 狀態轉換 4. 后臺測試執行流程 4.1 測試間…

msf復現永恒之藍

永恒之藍&#xff08;EternalBlue&#xff09;是利用 Windows 系統的 SMB 協議漏洞&#xff08;MS17-010&#xff09;來獲取系統最高權限的漏洞&#xff0c;利用 Metasploit 框架&#xff08;MSF&#xff09;復現該漏洞是一個復雜且具有一定風險的操作&#xff0c;必須在合法合…

格密碼--LWE,DLWE和ss-LWE

格密碼–LWE&#xff0c;DLWE和ss-LWE 0.數學符號數學符號含義備注Zq\mathbb{Z}_qZq?模qqq的整數集合&#xff0c;即{0,1,2,...,q?1}\{0,1,2,...,q-1\}{0,1,2,...,q?1}用于定義LWE、DLWE、ss-LWE等問題中矩陣和向量的元素取值范圍&#xff0c;是基礎整數環x∈RSx \in_R Sx∈…

【閉包】前端的“保護神”——閉包詳解+底層原理

目錄 一、閉包是什么&#xff1f;概念 二、閉包為什么存在&#xff1f;作用 1. 創建私有變量 2. 實現數據封裝與信息隱藏 3. 模擬私有方法 4. 保存函數執行時的狀態 5. 回調函數和事件處理 6. 模塊化編程 7. 懶加載與延遲執行 三、閉包怎么用&#xff1f;實踐業務場景 …

算法學習筆記:19.牛頓迭代法——從原理到實戰,涵蓋 LeetCode 與考研 408 例題

牛頓迭代法&#xff08;Newtons Method&#xff09;是一種強大的數值計算方法&#xff0c;由英國數學家艾薩克?牛頓提出。它通過不斷迭代逼近方程的根&#xff0c;具有收斂速度快、適用范圍廣的特點&#xff0c;在科學計算、工程模擬、計算機圖形學等領域有著廣泛應用。牛頓迭…

小白學Python,操作文件和文件夾

目錄 前言 一、操作文件路徑 1.獲取當前路徑 2.創建文件夾 &#xff08;1&#xff09;mkdir()函數 &#xff08;2&#xff09;makedirs() 函數 3.拼接路徑 4.跳轉路徑 5.判斷相對路徑和絕對路徑 6.獲取文件路徑和文件名 二、操作文件和文件夾 1.查詢文件大小 2.刪除…

015_引用功能與信息溯源

引用功能與信息溯源 目錄 引用功能概述支持的模型引用類型API使用方法引用格式應用場景最佳實踐 引用功能概述 什么是引用功能 Claude的引用功能允許在回答基于文檔的問題時提供詳細的信息來源引用&#xff0c;幫助用戶追蹤和驗證信息的準確性。這個功能特別適用于需要高可…

ROS2中的QoS(Quality of Service)詳解

ROS2中的QoS&#xff08;Quality of Service&#xff09;詳解1. 主要QoS參數2. 為什么需要設置QoS3. QoS兼容性規則4. 選擇QoS策略的建議5. 調試QoS問題的方法6. 踩坑&#xff1a;訂閱話題沒有輸出可能的原因&#xff1a;調試方法QoS是ROS2中用于控制通信質量和行為的機制。它定…

Cursor三大核心AI功能

一&#xff1a;Tab鍵&#xff1a;智能小助手 1.1 單行/多行代碼補全 在代碼中寫出要實現的功能&#xff0c;第一次按Tab生成代碼&#xff0c;第二次按Tab接受代碼。1.2 智能代碼重寫 對已有代碼重新編寫。 寫個注釋告訴AI重構方法&#xff0c;然后鼠標點到方法內部&#xff0c;…

cesium添加原生MVT矢量瓦片方案

項目中需要基于cesium接入mvt格式的服務并支持屬性拾取查詢&#xff0c;通過一系列預研測試&#xff0c;最后選擇cesium-mvt-imagery-provider開源插件完成&#xff0c;關鍵源碼信息如下&#xff1a; npm i cesium cesium-mvt-imagery-provider //安裝依賴包// 加載圖層import…

AI金融風控:識別欺詐,量化風險的新利器

AI金融風控&#xff1a;識別欺詐&#xff0c;量化風險的新利器深度學習算法穿透海量交易數據&#xff0c;92.5%的不良貸款識別率宣告了金融風險防控新時代的來臨。深圳桑達銀絡科技有限公司在2025年6月申請的“基于人工智能的金融交易反欺詐系統”專利&#xff0c;揭示了金融風…

【unitrix】 5.0 第二套類型級二進制數基本結構體(types2.rs)

一、源碼 這是一個使用 Rust 類型系統實現類型級(type-level)二進制數的設計。 //! 類型級二進制數表示方案&#xff08;第二套方案&#xff09; //! //! 使用嵌套泛型結構體表示二進制數&#xff0c;支持整數和小數表示。use crate::sealed::Sealed;/// 類型級二進制數結構體 …