2016-03-13 60 views
1

我在Ubuntu 14.04上的Android Studio中創建了一個空白活動項目。我可以使用installDebug目標執行gradle build並將其安裝到我的設備中。無法運行installDebug目標 - 「無法上傳一些APK」

雖然我想使用Nest API,但我無法使installDebug目標正常工作。作爲開始,我下載了their sample project並試圖一次性構建並安裝它。我得到這個:

:testapp:installDebug FAILED 

FAILURE: Build failed with an exception. 

* What went wrong: 
Execution failed for task ':testapp:installDebug'. 
> com.android.builder.testing.api.DeviceException:com.android.ddmlib.InstallException: Unable to upload some APKs 

我創建了一個應用,很大程度上基於這個示例,這也是行不通的。有誰知道如何解決這一問題?奇怪的是 - 它使用工作在某個點!

我試圖吹走我的Android SDK並重新安裝所有東西,並且從Nest的git倉庫中重新克隆項目並重新開始。它不再工作了。

+0

設備或模擬器?設備是否啓用了USB調試? – 323go

+0

@ 323go設備。啓用了USB調試。我在運行'adb devices'時看到它。與我創建的其他空白應用程序一起工作 –

+0

您的apk名稱中有空格? – 323go

回答

2

我非常高興我已經找到了解決這個問題的方法。

我開始注意到我的adb連接更加嚴重,因爲adb shell例如會掛起。

我忽略提及它,但我在Oracle Virtualbox中將Ubuntu 14.04用作Windows 10主機的guest虛擬機。我認爲這可能與它有關。

在VirtualBox中,我去了Devices > USB > USB Settings,並在Enable USB Controller下啓用了USB 2.0 (EHCI) Controller。以前這個設置爲1.1。

我的猜測是,如果應用程序足夠大,USB 1.1速度太慢,無法及時傳輸所有數據。

我希望這可以幫助未來的人。

1

這可能是因爲三件事情:

  1. 如果您正在使用的設備,設備未正確連接。確保在命令行上運行adb設備時可以看到它。

  2. 如果您正在使用模擬器,模擬器未運行或尚未啓動。

  3. 你的應用程序被配置爲使用一個馬車版本的gradle。衆所周知版本1.3.1會導致這個問題。 此問題最可能的原因將是gradle 1.3.1版。 根據我的經驗,升級gradle並不能解決問題。爲了解決這個問題,我不得不將它降級到一個相當令人難忘的1.2.3版本。 在android/build.gradle中查找com.android.tools.build:gradle:1.3.1,並將其更新爲com.android.tools.build:gradle:1.2.3。
1

我有另一個程序,使用adb和干擾構建。