2011-03-08 154 views
66

我是Android新手。當我在Eclipse中運行我的Android應用程序,我在控制檯收到這些消息:Android無法在設備上安裝HelloWorld.apk(null)錯誤

[2011-03-08 12:57:35 - HelloWorld] ------------------------------ 
[2011-03-08 12:57:35 - HelloWorld] Android Launch! 
[2011-03-08 12:57:35 - HelloWorld] adb is running normally. 
[2011-03-08 12:57:35 - HelloWorld] Performing com.oreilly.helloworld.HelloWorldActivity activity launch 
[2011-03-08 12:57:35 - HelloWorld] Automatic Target Mode: Preferred AVD 'MY_AVD' is not available. Launching new emulator. 
[2011-03-08 12:57:35 - HelloWorld] Launching a new emulator with Virtual Device 'MY_AVD' 
[2011-03-08 12:57:39 - HelloWorld] New emulator found: emulator-5554 
[2011-03-08 12:57:39 - HelloWorld] Waiting for HOME ('android.process.acore') to be launched... 
[2011-03-08 13:00:14 - HelloWorld] WARNING: Application does not specify an API level requirement! 
[2011-03-08 13:00:14 - HelloWorld] Device API version is 11 (Android 3.0) 
[2011-03-08 13:00:14 - HelloWorld] HOME is up on device 'emulator-5554' 
[2011-03-08 13:00:14 - HelloWorld] Uploading HelloWorld.apk onto device 'emulator-5554' 
[2011-03-08 13:00:14 - HelloWorld] Installing HelloWorld.apk... 
[2011-03-08 13:02:22 - HelloWorld] Failed to install HelloWorld.apk on device 'emulator-5554! 
[2011-03-08 13:02:22 - HelloWorld] (null) 
[2011-03-08 13:02:23 - HelloWorld] Launch canceled! 

如何解決的問題,使我的應用程序將啓動?

+0

類似的問題(相同的錯誤消息):stackoverflow.com/questions/3821699/android-hello-world – apollodude217 2011-05-13 02:49:35

+0

嘗試使用adb手動安裝apk。 – Jichao 2011-03-13 17:05:58

回答

8

我得到這個不時,但它通常與模擬器正在緩慢啓動。不用重試重試之間關閉仿真器。如果仍然失敗,請發佈客戶端日誌(logcat)。

另一個原因可以是在後臺運行並仍然結合到調試端口重影的Eclipse過程。關閉eclipse,查看進程列表,看看是否還有Eclipse正在運行。全部殺死它們並重新啓動Eclipse。

+0

這是我的關鍵 - 謝謝。 – user3329922 2015-06-18 17:16:06

0

Jichao說什麼總是爲我工作。

通常,當我看到這個錯誤,如果我使用Eclipse,我將關閉並重新打開該程序。然後,我將從目標手機上卸載應用程序。這有時可以解決問題,但並非總是如此。

接下來,我將打開命令終端和頭部到Android的SDK,然後運行:

./adb install <AppName>.apk 

這做同樣的事,通過Eclipse中運行做,但它會給你一個錯誤消息。

(9次了10年它只是說「INSTALL_ALREADY_EXISTS」,我去,再卸載應用程序關閉手機的目標,然後運行ADB,我工作的罰款。)

2

剛剛嘗試以下步驟,

  1. 進入主頁屏幕,然後再開始運行該應用程序。
  2. 無需每次卸載。只要正確卸載應用程序一次。

    進入設置 - >管理應用程序 - >點擊菜單 - >過濾器 - >第三方應用程序。 檢查你的應用程序是否在那裏。

  3. 修改你的應用程序後,只需保存它。右鍵單擊您的項目並選擇「以Android應用程序運行」。
  4. 注意:在運行應用程序之前,請再次檢查仿真器是否顯示主屏幕。

將主屏幕:從日食到菜單:窗口 - > Android的虛擬設備 - >啓動

9

重啓設備爲我工作。使用adb install可以安裝apk,但在eclipse中調試時,每次啓動應用程序時都會使用它。

1

至於我,我有同樣的問題,它有助於提高SD量和最大VM應用程序堆大小。 (Android SDK和AVD管理器 - 虛擬設備 - 編輯) 有趣的是,SD和堆返回到以前的值也可以。這意味着,仿真器參數的任何改變及其重建都足夠了。(簡單的重啓將不利於)

3

我有同樣的問題,並通過添加Android SDK中的文件夾的路徑工具平臺工具系統PATH變量然後重新啓動設備來解決它。

2

@Bolton的答案爲我工作。 一些細節......

我有我的電話在幾個星期前。我馬上嘗試了HelloAndroid示例應用程序(在安裝了req'd軟件等之後)。該應用程序在模擬器和手機上工作 - 馬上!

在那之後不久,我紮根我的手機,但沒有任何閃光或ROM的內核。我只是在模擬器上試驗,直到昨天(寫一個簡單的記事本應用程序)。當我試圖調試手機上的應用程序,這是我觀察到:

  1. Eclipse控制檯報道了「......未能安裝在設備上...(空)」的消息。但

  2. 的HelloAndroid程序沒有得到被推到了手機! (它出現在應用程序抽屜裏,我能啓動它。)

  3. 它根本不會在手機上從Eclipse運行啓動。

我搜索了這裏和其他地方昨晚(包括這個線程)沒有運氣。最後,我重新啓動了手機 - 我從來沒有嘗試過(doh!),因爲我認爲它不會有所作爲 - 並且從Eclipse啓動應用程序!

還是不知道原因,但我會回到這裏,如果我弄明白。

+0

有相同的經驗。 – KarenAnne 2013-07-10 06:11:09

4

如果你在Android模擬器上運行它,你不想在運行之間關閉它。系統將嘗試加載應用程序,並且由於啓動模擬器需要多長時間,該應用程序會超時。您可以通過轉到Window - > Preferences - > Android - > DDMS來增加ADB時間,並增加ADB超時時間(默認值爲5000ms),或者通過保持模擬器處於打開狀態並在仿真器啓動並運行後運行它。

我個人會建議讓開,因爲它確實比較快,一旦它運行加載該應用程序的模擬器,但它可能是系統上的漏電。做更多的幫助你。

2

我有同樣的問題:無法在設備上「XXXXXXXXX」安裝test.apk:空

我嘗試重新啓動手機,重新啓動Eclipse,並沒有什麼!

然後,我從Eclipse工作區中刪除此項目,然後再次導入。 (文件,導入,現有項目到工作區)。我不清楚問題是什麼,但現在工作正常。

1

我已經導入一個現有的項目,並開始運行... 我也面臨同樣的問題(警告:應用程序沒有指定API設備API版本是11(Android 3.0))。在我解決這個失敗的所有嘗試之後,我只是在其他包下創建了一個新項目以保持相同的名稱,並手動複製了先前imporetd項目的所有文件內容,然後再次開始運行......令我驚訝的是,它在我的第一個項目中成功執行嘗試......我認爲這個問題是由於缺乏導入版本的兼容性......我希望它可以幫助一些......

1

我正面臨着身邊很多論壇上的這個問題的時間和again.Got,但無法找到這一問題的合理的解決方案。

我曾經收到此錯誤信息, 。 。 。 將test.apk上傳到設備'emulator-5554' 未能在設備'emulator-5554'上安裝test.apk:timeout 啓動取消!

引發此錯誤的仿真器和應用程序的部署開始需要一些顯著時間,在此之前,該仿真器超時。

一個簡單的修正此問題的是保持開放的仿真器出現此問題時,* 只是再次運行應用程序。這僅將應用程序部署到已啓動的仿真器*。由於應用程序部署期間的主要部分時間是由於模擬器啓動緩慢,所以在此運行期間消耗的時間不多。

希望這會有所幫助!

101

嘗試更改ADB連接超時。我認爲它的默認值是5000ms,我將它改爲10000ms,以消除這個問題。如果你在Eclipse中,你可以通過Window - > Preferences來完成,然後它在Android下的DDMS中。

如下所述:Android error: Failed to install *.apk on device *: timeout

+1

很酷......謝謝。這爲我解決了這個問題。 – 2012-03-16 07:28:44

+3

很好的回答! – 2012-08-23 15:28:58

+3

傑出 - 謝謝。我不得不最終增加到300000毫秒,但它仍然有效。大量的道具! – user1288395 2012-11-07 00:30:10

2

我遇到了同樣的問題,並試圖增加ADB連接超時......沒有工作。

我試圖把「Android的SDK /工具」和「Android的SDK /平臺工具」,在PATH變量....無影響。

我試過重新啓動Eclipse並讓AVD在運行前啓動。同樣的問題。

有時候我可以把它與封閉組合並重新打開項目,然後清洗和重建項目。它並不總是能夠工作,但是由於我最後一次沒有重啓AVD,我認爲問題在於Eclipse本身。您可以嘗試刪除項目的「bin」目錄中的所有內容,然後進行清理和重建。這可能是一些臨時或中間文件沒有正確刪除。我不得不做的另一件事是刪除我的AVD。它沒有正確刪除,我必須進入並手動刪除AVD的子文件夾,然後重新創建AVD。這些組合可以暫時解決問題。希望有所幫助。

4

您可能想要考慮的其他問題是通過擦除用戶數據來重置模擬器。

爲了做到這一點,你: - 右鍵單擊​​包資源管理器 項目名稱 - 去「運行爲」,然後「運行配置」 - 在「運行配置」窗口中單擊「目標」選項卡 - 然後勾選您選擇的模擬器的名稱 - 勾選'擦除用戶數據',單擊應用

而下一次啓動模擬器時,它應該會提示您詢問是否真的要擦除數據。點擊是,並希望它可以幫助你安裝應用程序。

0

我得到了同樣的錯誤。

我剛剛離開AVD,即使它說"Failed to install *.apk on device-emulator-5554"。它隨後自動加載項目。

我認爲這個錯誤是由於AVD啓動緩慢造成的。

0

我得到了與我的設備相同的錯誤。
首先確保你沒有上傳調試apk到已經安裝了相同的apk但已用發行證書籤名的設備上。在這種情況下,您必須先從設備上卸載它。
在其他情況下,我的解決辦法是重新啓動一切:

  1. 重啓設備
  2. pskill模擬器,arm.exe
  3. pskill的eclipse.exe
  4. pskill adb.exe

後該設備,adb和eclipse正在工作。

0

當它顯示紅色書寫 - 錯誤時,請勿關閉仿真器 - 保持原樣並再次運行應用程序。

2

如果拔下設備並重新插入設備不起作用,請嘗試將上傳超時時間增加到20000毫秒。它在窗口→首選項→Android→DDMS→「ADB連接超時(ms)」。

0

重新啓動ADT或嘗試更改ADB連接超時。我認爲它的默認值是5000ms,我將它改爲10000ms,以消除這個問題。如果你在Eclipse中,你可以通過Window - > Preferences來完成,然後它在Android下的DDMS中。

0

好的,這種方法只在連接到真實設備而不是Android模擬器時纔有用。

當設備的USB調試模式出現問題時,重置DDMS ADB連接超時將無法很好地與真實設備配合使用。

因此,禁用和重新啓用USB調試模式似乎通過在設備上創建新的ADB會話來解決問題。

0

去設置 - 安全驗證應用如被選中,更改爲未選中狀態,然後切換到檢查狀態

+0

先生,這個問題在11年3月8日8:07 – 2014-02-27 09:26:45

0

1)本項目目錄中刪除APK /建設/輸出/ APK

2)如果您使用genymotion模擬器重啓genymotion

3)使項目&重建項目

4)再次運行

相關問題