最近玩android,發現電腦在公司電腦上可以正常連線,回到家裡就不行了。用usb線連線手機和電腦,開啟cmd,輸入adb devices -l, 結果顯示可以識別手機,但是狀態為offline。
因為是offline,所以你也無法通過adb logclient得到手機的執行日誌。考慮到adb的執行原理,adb包括三個組成部分:
1. 執行於電腦上的adb客戶端,eclipse上面的adt外掛程式和ddms也可以產生adb客戶端。
2. 執行於電腦上作為後台程序執行的服務端,負責管理客戶端與裝置上的adb守護程式之間的通訊。
3. 以後臺程序的形式執行於裝置上的守護程序。
工作步驟如下:
使用adb命令啟動客戶端,客戶端會去確認是否有乙個adb服務程序在執行。如果沒有,則啟動。伺服器執行,adb伺服器就繫結本地的tcp埠5037並監聽adb客戶端發來的命令,接著伺服器將所有執行的裝置建立連線,通過掃瞄所有的5555到5585範圍內的奇數埠來定位所有的裝置。一旦伺服器找到adb守護程序就建立連線。裝置例項會取得兩個連續的埠,奇數埠用來響應adb連線,偶數埠用來連線控制台。
回到問題本身,在其他電腦上能直接連線,說明手機沒有問題,可能是服務端程序啟動有問題。使用命令adb help可以得到adb的幫助文件。
adb get-serialno 可以得到裝置的serial number接著,開啟另外乙個終端adb get-state 可以得到裝置的狀態offline|bootloader|device(現在顯示的事offline)
adb status-window 可以連續列印裝置狀態(事實證明這個確實有用)
adb kill-server kill server程序這個時候再來檢查裝置adb start-server 確保server程序啟動
顯示:* daemon not running. starting it now on port 5037 *
* daemon started successfully *
另外乙個視窗顯示:
c:\users\asus\desktop>adb status-window
[2j[2handroid debug bridge
state: unknown
[2j[2handroid debug bridge
state: device
貌似已經ok了
adb devices -l
已經有內容輸出了:
c:\users\asus>adb devices -l貌似蠻有意思的。。。list of devices attached
34bd66f2 device
wifi連線電腦和android裝置
參考 由於使用usb連線安卓裝置存在很多問題,像usb鬆動導致的adb斷開等問題,非常浪費時間,為了解決此類問題,把adb的連線模式從usb轉換成tcpip模式,通過無線wifi連線adb,設定如下 1,確保電腦和android裝置連線在同乙個wifi網路環境。3,本機command 命令下執行pi...
使用SSH連線電腦
2.伺服器安裝ssh server 3.客戶端生成公私鑰 4.上傳公鑰到伺服器 5.連線伺服器 6.給伺服器取別名,免除每次要輸入位址 7.檔案傳輸 8.可能會用到的一些ssh命令 本篇文章主要是描述如何使用ssh來遠端連線linux主機 ubuntu 的使用者,也適用於其他的linux發行版。su...
android USB連線電腦只充電問題
有以下幾方面需要排除 1 開發者選項中,開啟usb除錯。2 開發者選項中,選擇usb配置,可以看到選擇的是充電 mtp ptp等。3 電腦是否usb驅動有問題,可更換電腦驗證。4 資料線 和usb插口時候有問題。5 嘗試電腦背部usb插口。常規排查後,發現我的手機還是不行,連線不上。在點了一上午後,...