『壹』 什麼是adb命令行
adb命令行是androidsdk里的一個工具,用這個工具可以直接操作管理android模擬器或者真實的android設備(如G1手機),它的主要功能有:
1、運行設備的shell(命令行)
2、管理模擬器或設備的埠映射
3、計算機和設備之間上傳/下載文件
4、將本地apk軟體安裝至模擬器或android設備
ADB是一個客戶端-伺服器端程序,其中客戶端是你用來操作的電腦,伺服器端是android設備。
(1)adb過濾命令擴展閱讀:
常用命令
1. 查看設備 *adbdevices
這個命令是查看當前連接的設備, 連接到計算機的android設備或者模擬器將會列出顯示
2. 安裝軟體
*adbinstall <apk文件路徑>
這個命令將指定的apk文件安裝到設備上
3. 卸載軟體
*adbuninstall <軟體名>
*adbuninstall -k <軟體名>
如果加 -k 參數,為卸載軟體但是保留配置和緩存文件。
4. 登錄設備shell
*adbshell
*adbshell <command命令>
這個命令將登錄設備的shell。
後面加<command命令>將是直接運行設備命令,相當於執行遠程命令。
5. 從電腦上發送文件到設備
*adbpush <本地路徑> <遠程路徑>
用push命令可以把本機電腦上的文件或者文件夾復制到設備(手機)。
『貳』 如何過濾 adb logcat 輸出
如何過濾adb logcat輸出 本文介紹如何在 shell 命令行中過濾 adb logcat 輸出的幾個小技巧。
『叄』 ADB是什麼 ADB常用命令介紹
ADB的全稱為AndroidDebugBridge,就是起到調試橋的作用。通過ADB我們可以在Eclipse中方面通過DDMS來調試Android程序,說白了就是debug工具。ADB的工作方式比較特殊,採用監聽SocketTCP5554等埠的方式讓IDE和Qemu通訊,默認情況下ADB會daem
『肆』 adb調試只能用一次,怎麼解決
將 adb 工具包的四個文件都復制到 C:\Windows\System 目錄里。
假如系統是32位的,則將四個文件都復制到 C:\Windows\System32 目錄里即可。
假如使用的Windows系統是64位的,則需要將其中的 AdbWinApi.dll 文件復制到C:\Windows\SysWOW64里即可。
使用
基本命令:ls、cd、cat、rm、cp、mkdir
這些命令是linux系統上的一些基本命令,至少要對 ls、cd、cat這幾個命令熟悉點,才能很流暢的使用adb工具,如果你還不熟悉,建議先去了解下這幾個命令吧。
①adb shell
這個是進入手機shell操作的一個命令。通常情況下,你調試用的模擬器或者手機通過usb連接電腦後,在win上通過Ctrl + R,輸入cmd,在dos窗口內執行該命令即可進入手機的shell操作。
如果你連接當前電腦的手機不止一部時,這時就需要藉助參數來進行選擇指定的設備了。如下圖:
②藉助ls、cd命令進入應用數據地址:/data/data/{包名如:coder.dasu.meizi}/
該目錄下就是存放該應用的 xml數據,cache數據,file數據,以及sqlite資料庫數據了,如下:
③cat命令查看SharePreference的xml數據
xml中經常保存一些應用的配置數據,比如用戶是否首次啟動app,用戶賬戶,用戶對應用操作的一些設置啊,比如關閉消息推送等等。
這些數據在開發時,都可以通過log方式列印出來,查看效果是否正確。但有時,如果想要查看較多的xml數據時,又懶得一個個的敲代碼,或者log信息太雜,忘記以前寫的過濾條件時,這時就可以藉助adb來實現了。
④ sqlite3 ***.db命令查看資料庫
以上介紹的一些功能其實就算不藉助adb,也可以使用列印log等方式實現。但如果我們開發過程中,需要經常查看一些資料庫內的數據時,也可以使用ddms,把db文件導出來藉助工具查看,但這樣總會麻煩了點,需要每次都進行導出db文件。所以,這時候,如果藉助 sqlite3這個命令,將會非常方便。
1.執行完 sqlite3 meizi.db 後,會進入一個sqlite命令狀態,在這里可以使用sql語言來進行查詢,也可以使用.help來查看sqlite3提供的一些快速命令.
2。如,執行 .table 可以查看當前資料庫所有的表,執行 .schema 可以查看創建資料庫的sql命令
3.上面那圖中有兩張表,我們看看USER表中有什麼數據,可以使用sql命令查詢
雖然需要執行sql命令才能查詢,但其實也就select一下,並不會很復雜,而且還可以借機多接觸一下sql語言,學習一下。
如果你也有調試資料庫這方面的需求,建議你也可以使用這個工具試試看。
(4)adb過濾命令擴展閱讀:
adb,網上介紹其實很多,就是用來對安卓系統進行一些命令操作的工具。如果你的應用需要經常查看 sharePreference文件數據、Sqlite 資料庫數據,以及本地的各種數據的話,那麼使用adb將會非常方便。
如果你需要從電腦上發送一些文件到手機里,或者從手機獲取一些文件到電腦上(比如視頻之類的應用,需要經常把應用存在手機里的視頻文件發送到電腦),那麼藉助adb也可以很方便實現。
如果你想做一些TV應用的話,那麼就應該要學學ADB了,學學如何通過wifi連接調試,如果pull,push文件等等了。
『伍』 android 怎麼使用應用的包名通過logcat命令來過濾某個應用的日誌
先通過windows cmd 進入adb shell,再輸入logcat|grepxxx
1、先進入adbshell。
『陸』 面試的時候被問到,測試過程中常用的adb命令有哪些
作為測試人員,經常用到的adb命令:
adb logcat 產看手機的日誌信息,在出現bug的時候可以通過這個命令幫助定位查看
adb shell 進入Android終端命令,然後可以通過一些命令來查看手機相關信息
adb push 向手機發送文件
adb pull 從手機獲取文件
adb shell am start -W 包名/界面名 查看應用啟動時間
adb install apk文件 通過adb命令行安裝app
adb uninstall 包名 通過adb命令行卸載app
adb --help 查看adb 命令幫助信息
adb shell pm list package 查看所有包名
adb shell monkey –p 包名 –v 測試次數 指定應用進行monkey測試
詳情教程有免費的公開課啊,黑馬程序員官網就可以看,或者對話框可以領取到課程大綱。我就在黑馬學出來的,現在稅後11k,感謝黑馬!
『柒』 adb常用的幾個命令
adb devices
adb shell reboot
adb shell reboot recovery
adb shell reboot fastboot
adb shell ls
adb shell cd等等……
『捌』 如何過濾 adb logcat 命令的輸出
1. 只顯示需要的輸出,白名單
最方便的當然是通過管道使用 grep 過濾了,這樣可以使用 grep 強大的正則表達式匹配。簡單的匹配一行當中的某個字元串,例如 MyApp:
adb logcat | grep MyApp
adb logcat | grep -i myapp #忽略大小寫。
adb logcat | grep --color=auto -i myapp #設置匹配字元串顏色。更多設置請查看 grep 幫助。
進階一點可以使用 grep 的正則表達式匹配。例如上一個例子會匹配一行中任意位置的 MyApp,可以設置為僅匹配 tag。默認的 log 輸出如下,如果修改過輸出格式相應的表達式也要修改。
I/CacheService( 665): Preparing DiskCache for all thumbnails.
可以看出 tag 是一行開頭的第三個字元開始,根據這點寫出表達式:
adb logcat | grep "^..MyApp"
根據這個格式也可以設置只顯示某個優先順序的 log,再匹配行首第一個字元即可。例如僅顯示 Error 級別 tag 為 MyApp 的輸出:
adb logcat | grep "^E.MyApp"
當然也可以匹配多個,使用 | 分割多個匹配表達式,要加轉義符。例如要匹配 tag 為 MyApp 和 MyActivity 的輸出:
adb logcat | grep "^..MyApp\|^..MyActivity"
adb logcat | grep -E "^..MyApp|^..MyActivity" #使用 egrep 無須轉義符
2. 過濾不需要的輸出,黑名單
還是使用 grep,用法也跟上面的一樣,加一個 -v 即可。例如要過濾 tag 為 MyApp 和 MyActivity 的輸出:
adb logcat | grep -v "^..MyApp\|^..MyActivity"
adb logcat | grep -vE "^..MyApp|^..MyActivity" #使用 egrep 無須轉義符
3. 顯示同一個進程的所有輸出
有時一個程序裡面的 tag 有多個,需要輸出該程序(同一個 PID)的所有 tag;僅使用 tag 過濾有時也會漏掉一些錯誤信息,而一般錯誤信息也是和程序同一個 PID。還是通過 grep 實現,思路是先根據包名找到 pid 號,然後匹配 pid。寫成 shell 腳本如下,參數是程序的 java 包名(如 com.android.media)。
查看源代碼列印幫助
1 #!/bin/bash
2 packageName=$1
3 pid=`adb shell ps | grep $packageName | awk '{print $2}'`
4 adb logcat | grep --color=auto $pid
4. 從當前開始顯示
logcat 有緩存,如果僅需要查看當前開始的 log,需要清空之前的。
adb logcat -c && adb logcat
5. 過濾 log 文件
有時需要分析 log 文件,過濾 log 文件還是使用 grep。例如 log 文件為 myapp.log,要匹配 tag 為 MyApp 和 MyActivity 的輸出,然後輸出到 newmyapp.log:
cat myapp.log | grep "^..MyApp\|^..MyActivity" > newmyapp.log
Windows 下推薦使用 Notepad++,一個免費強大的記事本,支持正則表達式查找替換。可以高亮顯示匹配內容,也可以刪除不需要的內容。
以上的技巧主要用到了 grep,其實 logcat 本身也有過濾功能,可以根據 tag、優先順序過濾 log,具體請參考 Android 官方文檔 Reading and Writing Logs。如果喜歡使用圖形界面,請參考 Using DDMS,DDMS 裡面的 logcat 也可以同樣過濾。
『玖』 使用adb命令怎麼刪除安卓系統文件夾
使用adb命令刪除安卓系統文件夾的方法:
1.連接安卓設備
這里以系統內置瀏覽器為例,輸入:adb shell rm /system/app/browser.apk回車,這個程序就被刪除了,刪除其它的程序把browser.apk改成需要刪除的程序名即可,有些設備系統程序還有odex文件,也需要同時刪除。
『拾』 幾種在shell命令行中過濾adb logcat輸出的方法
1. 只顯示需要的輸出,白名單
最方便的當然是通過管道使用 grep 過濾了,這樣可以使用 grep 強大的正則表達式匹配。簡單的匹配一行當中的某個字元串,例如 MyApp:
adb logcat | grep MyApp
adb logcat | grep -i myapp #忽略大小寫。
adb logcat | grep --color=auto -i myapp #設置匹配字元串顏色。更多設置請查看 grep 幫助。
進階一點可以使用 grep 的正則表達式匹配。例如上一個例子會匹配一行中任意位置的 MyApp,可以設置為僅匹配 tag。默認的 log 輸出如下,如果修改過輸出格式相應的表達式也要修改。
I/CacheService( 665): Preparing DiskCache for all thumbnails.
可以看出 tag 是一行開頭的第三個字元開始,根據這點寫出表達式:
adb logcat | grep "^..MyApp"
根據這個格式也可以設置只顯示某個優先順序的 log,再匹配行首第一個字元即可。例如僅顯示 Error 級別 tag 為 MyApp 的輸出:
adb logcat | grep "^E.MyApp"
當然也可以匹配多個,使用 | 分割多個匹配表達式,要加轉義符。例如要匹配 tag 為 MyApp 和 MyActivity 的輸出:
adb logcat | grep "^..MyApp\|^..MyActivity"
adb logcat | grep -E "^..MyApp|^..MyActivity" #使用 egrep 無須轉義符
2. 過濾不需要的輸出,黑名單
還是使用 grep,用法也跟上面的一樣,加一個 -v 即可。例如要過濾 tag 為 MyApp 和 MyActivity 的輸出:
adb logcat | grep -v "^..MyApp\|^..MyActivity"
adb logcat | grep -vE "^..MyApp|^..MyActivity" #使用 egrep 無須轉義符
3. 顯示同一個進程的所有輸出
有時一個程序裡面的 tag 有多個,需要輸出該程序(同一個 PID)的所有 tag;僅使用 tag 過濾有時也會漏掉一些錯誤信息,而一般錯誤信息也是和程序同一個 PID。還是通過 grep 實現,思路是先根據包名找到 pid 號,然後匹配 pid。寫成 shell 腳本如下,參數是程序的 java 包名(如 com.android.media)。
查看源代碼列印幫助
1 #!/bin/bash
2 packageName=$1
3 pid=`adb shell ps | grep $packageName | awk '{print $2}'`
4 adb logcat | grep --color=auto $pid
4. 從當前開始顯示
logcat 有緩存,如果僅需要查看當前開始的 log,需要清空之前的。
adb logcat -c && adb logcat
5. 過濾 log 文件
有時需要分析 log 文件,過濾 log 文件還是使用 grep。例如 log 文件為 myapp.log,要匹配 tag 為 MyApp 和 MyActivity 的輸出,然後輸出到 newmyapp.log:
cat myapp.log | grep "^..MyApp\|^..MyActivity" > newmyapp.log
Windows 下推薦使用 Notepad++,一個免費強大的記事本,支持正則表達式查找替換。可以高亮顯示匹配內容,也可以刪除不需要的內容。
以上的技巧主要用到了 grep,其實 logcat 本身也有過濾功能,可以根據 tag、優先順序過濾 log,具體請參考 Android 官方文檔 Reading and Writing Logs。如果喜歡使用圖形界面,請參考 Using DDMS,DDMS 裡面的 logcat 也可以同樣過濾。