2015-03-02 72 views
13

測試任何應用程序都變得非常令人沮喪。 我啓動仿真器和運行應用程序在第一時間和它的工作原理,並立即開始在ADB日誌AdbCommandRejectedException在仿真器上測試時獲取屬性

DeviceMonitor: Failed to connect to client '2560': EOF 
PropertyFetcher: AdbCommandRejectedException getting properties for device emulator-5554: device offline 

logcat中顯示任何拋出此。我已經試過一切來阻止這一點。殺死和啓動adb服務器並不能解決問題。我必須重新啓動AVD。

任何幫助將不勝感激。謝謝

+0

我有完全相同的問題...我在OS X 10.10 – JDS 2015-05-10 16:41:05

+1

我現在使用http://www.genymotion.com,它的工作原理沒有給出神祕的錯誤消息 – JDS 2015-07-07 15:09:29

回答

1

試試這個,我希望它會幫助你。

1-adb kill-server
2-adb啓動服務器重新啓動adb。
它可以在你的android sdk目錄子文件夾plattform-tools中找到。

嘗試通過單擊F7來鎖定和解鎖模擬器,並在執行此操作時檢查logcat。

+0

使用'kill-server'和'啓動服務器「沒有區別。 logcat是空的,因爲模擬器甚至沒有正確連接到Android Studio。在我的情況下,模擬器啓動時甚至無法看到Android徽標,但屏幕保持黑屏。 – JDS 2015-05-14 20:43:35

+0

您使用的是ARM還是Intel Image? – 2015-05-15 09:54:55

4

這通常發生是因爲android模擬器只是減慢和adb命令超時。但是你可以設置參數來增加這個超時。

如果您通過gradle運行adb命令。例如connnectedCheck。你可以使用android插件DSL來設置這個參數,如下圖所示:

android { 
    adbOptions { 
     timeOutInMs 60000 // set timeout to 1 minute 
    } 
} 

這是在Android gradle插件1.2.0中添加的。不幸的是,它只有在啓用了multidex的情況下才有效。由於某些原因,他們忘記將其包含在單個apk版本中。但是有一個解決方法來處理這個問題。你可以調用靜態方法,如下所示。

com.android.ddmlib.DdmPreferences.setTimeOut(60000) 

如果您直接使用adb運行adb命令,您可以選擇設置環境變量來處理此問題。

export ADB_INSTALL_TIMEOUT=5 

記住ADB_INSTALL_TIMEOUT以秒爲單位,而不是以毫秒爲單位的gradle中的DSL。

+0

可悲的是這似乎也沒有幫助。我認爲我的問題是,模擬器沒有啓動(屏幕保持黑屏,沒有顯示Android徽標)。但是,由於你的詳細答案,我可能會獎賞你的賞金。 – JDS 2015-05-17 09:52:50

+0

完美的答案,我有一個問題,特拉維斯花了很多時間來連接,有時我因爲超時而失敗了,現在一切正常! – jmsalcido 2016-06-09 17:15:05

0

它發生在我身上的是一個真實的設備。

嘗試撤消USB調試授權(從設備設置 - >開發人員選項)。 然後重新連接設備並授權。

0

我對使用模擬器的人的建議是讓AVD下車。獲取真實設備或下載Genymotion。免費版本完成作業。

0

我面臨着類似的問題,我跑

ADB設備

在終端

和我的設備顯示我重新啓動它開始爲我工作的設備離線。但是,你經常遇到這個問題,重啓並不是一個好的解決方案。

0

將電話連接到PC的USB電纜會影響adb設備脫機/設備狀態。嘗試用已知的工作電纜替換電纜。

相關問題