android埠佔用
『壹』 Android中的adb埠被自己佔用怎麼辦修改埠沒有用
方式一
5037為adb默認埠,若5037埠被佔用,
查看佔用埠的進程PID
C:\Users\wwx229495>netstat -aon|findstr 5037
TCP 127.0.0.1:5037 0.0.0.0:0 LISTENING 3676
通過PID查看所有進程
C:\Users\wwx229495>tasklist /fi "PID eq 3676"
映像名稱 PID 會話名 會話# 內存使用
========================= ======== ================ =========== ============
svchost.exe 3676 Services 0 13,800 K
殺死佔用埠的進程
C:\Users\wwx229495>taskkill /pid 3676 /f
成功: 已終止 PID 為 3676 的進程。
『貳』 android 查看埠佔用怎麼解決
問題描述
有時候eclipse或者studio的adb埠經常被其他的進程佔用,關鍵是找到佔用的進程也殺不掉,或者殺掉又不斷重啟,無比頑強。
解決方案
找到佔用進程,然後打開進程文件位置直接卸載掉,或者退出這個應用,再殺掉這個進程。
首先當然要找到被佔用的進程
當你電腦console出現這個提示,說明你的adb埠被其他的進程佔用。
The connection to adb is down, and a severe error has occured.
You must restart adb and Eclipse.
Please ensure that adb is correctly located at
123
下一步控制台輸入adb start-server,確認埠是否被佔用
* daemon not running. starting it now *
ADB server didn't ACK
* failed to start daemon * 123
那麼確認埠被佔用了,下一步找到佔用的進程
開始–運行–CMD 到命令提示符,輸入 netstat -aon|findstr 「5037」,找到佔用adb5037埠的進程,
明顯進程號為11900佔用5037埠
找到11900進程的進程名稱,tasklist|findstr 「11900」
下一步殺死此進程
輸入taskkill /f /t /im 你的進程名,注意空格,例如:taskkill /f /t /im SogouPhoneService.exe
然後啟動adb測試下,adb start-server,你會發現很可能還是不可用,顯示進程還被佔用,就要用到下面的方法了。
當初電腦adb經常被埠佔用,被佔用的進程也無法殺掉,弄了好久,終於找到比較有效的方法
方法一:
找到任務管理器,找到佔用的進程,右鍵結束進程樹,這個時候可能提示無法結束,那麼可以設置優先順序為低級,然後結束進程。如下圖:
方法二:
很可能方法一都不管用,直接右鍵,打開文件位置,把這個程序卸載了吧,作為程序猿居然敢佔用5037這個埠的程序,還能讓它活過明天么,必須弄死它。
『叄』 android 如何查看指定的埠號是否被佔用
在命令行中輸入 netstat -a -n
『肆』 android怎麼判斷埠有沒有被佔用
使用 socket bind 你想要查看的埠看能否成功
『伍』 為什麼android adb 不能查看進程 埠
首先在使用ADB前所有手機輔助類軟體
1、CMD命令窗口輸入:adb nodaemon server 。然後就會提示你哪個埠被佔用了。
2、輸入netstat -ano | findstr "5037" 。然後會彈出提示告訴你哪些進程佔用了該埠,記住非0地址的後面的數字
3、打開任務管理器,點擊「進程「,「查看」-「選擇列」,勾選PID
4、查找第2步中看到的數字PID,然後結束相關進程,即可
『陸』 Android adb無法連接設備的總結
1、開發者模式蘆敏
開發者模式先檢查,USB調試是否打開,USB選項切換下試試。
2、檢查設備驅動
電腦上驅動有沒有載入好,也有可能是線的問題引起的識別不了,通過更換電腦、手機設備、數據線逐步排查。
3、設備識別號不對導致無法識別
如果手機廠商沒有對系統進行特別拆世的改動,那麼 Android 系統的 USB 調試模式驅動都是一樣的!
如果提示無法安裝驅動,可能因為 android_winusb.inf 這個文件中沒有該設備的供應商識別碼陪御枝(VID)和產品識別碼(PID),
所以需要添加對應的設備id,
ANDROID_SDK_HOME 對應的路徑下.android文件夾
裡面新建androisb.inf文件,復制設備的id進去
設備id在管理-設備列表中adb inteface中查看詳情,如下:
4、埠佔用
電腦上安裝手機助手之類的軟體可能會佔用adb埠,導致本身的adb服務無法使用。
首先查看5037埠佔用
進程id為6008的進程佔用了5037埠,通過以下兩條指令中的一條刪除掉對應進程
然後重啟adb服務
『柒』 android debug bridge 佔用 5073埠為什麼還是啟動不了adb
adb的默認埠是5037,如果電腦上安裝有什麼手機助手的話,有可能是被手機助手佔用了埠,依次執行adb
kill-server,adb
start-server試試
如果還是不行就找出佔用埠的進程殺掉,重試
『捌』 關於Android的Socket埠的問題
調用SocketServer.close()方法,就可以關閉了.可以在socket代碼的try cath接收字元的塊後面加上一個finnaly塊,設置一個Thread.sleep()等待一定時間後,執行Socket.close()和SocketServer.close()
try {
sp = new SocketPackage(request, type);
OutputStream os = client.getOutputStream();
os.write(sp.request);
} catch (Exception e) {
Log.e(TAG, "Response to server failed", e);
} finally {
try {
Log.i(TAG, "Closing socket....");
Thread.sleep(10000);
flag = false;
socket.close();
client.close();
thread.interrupt();
Log.i(TAG, "Closing socket successed");
} catch (Exception e) {
Log.e(TAG, "Closing socket failed", e);
}
}
server為SocketServer對象,client為Socket對象,通過SocketServer.accept()創建。
這里是向客戶端響應之後的關閉。