2012-08-07 59 views
3

我們有adb客戶端連接到多個android設備的測試套件。 我們的測試套件提出了這些連接請求,獲取設備狀態並在其中運行應用程序。如何讓adb服​​務器不響應?

我想模擬adb服務器掛起的情況。 我試着發出「adb kill-server」,但是客戶端的任何adb請求啓動adb服務器。 反正我們可以阻止adb服務器聽adb客戶端請求嗎?

當然,編譯adb服務和改變我們自己的代碼還有很長的路要走。 但是要完成這個任何簡單的方法?

+1

阻止adb服務器使用的端口? – 2013-01-16 02:42:45

回答

2

你是否需要仍然有一個連接(不響應命令),或者它可以完全消除連接?聽起來像殺死連接會很好,因爲你說你試過adb kill-server

在這種情況下,如果嘗試以TCP/IP模式連接到設備而未設置adb服務器以偵聽網絡端口,該怎麼辦?即類似於:

adb tcpip 12345 
+1

其實我很想知道我們可以重現adb沒有迴應的狀態。因爲它可能在幾個場景中很有用(比如說你正在adb上寫一個工具,你需要檢查adb狀態)。 – 2013-01-09 10:21:21

2

另一個建議是在設備中完全禁用adb接口。雖然這可能會或可能不會阻止adb服務器,但您仍然可以獲得所需的結果,即adb客戶端無法連接。 可以這樣做的方式是有根的設備上,做

  • adb shell
  • su
  • echo 1 > /sys/class/android_usb/f_adb/on

這一個是我可以在一個HTC生動,我有做手上。對於其他設備,路徑可能不同,但它們應該全都相似。一旦重新啓動手機,adb就會重新開始工作。