2011-12-30 58 views
0

我今天開始研究Android編程,並創建了一個應該播放MP3的非常小的應用程序。我在Android SDK和eclipse中使用的工具。代碼在Android模擬器中完美無瑕地執行,但在導出它並嘗試在我的Samsung Galaxy S2上安裝apk後,我收到一條消息,告訴我解析文件時出現錯誤。解析定製apk文件時出錯

這是我的手機配置:Android v2.3.3,從未知來源安裝=允許,USB調試=啓用。我的項目的目標系統也已設置爲Android v2.3.3,且AVD的CPU架構已設置爲ARM(armeabi)。

我在導出時使用自定義梯形校正對apk進行簽名,因爲我最初認爲問題可能是調試密鑰,它不適用於真實設備。

我試圖安裝應用程序使用兩個,內部文件資源管理器和自定義瀏覽器(ES文件資源管理器),但它沒有用。

有關如何使我的手機執行我的自定義應用程序的建議將不勝感激。 :)

+0

你輸出了簽名還是未簽名? – Chillie 2011-12-30 16:27:53

+0

我假設我已經將其簽名爲Android文檔狀態導出爲「您可以使用Eclipse導出嚮導自動執行發佈簽名過程」。 – beta 2011-12-30 16:34:52

回答

3

首先,由於它抱怨.apk文件,請嘗試通過將擴展名重命名爲.zip來打開.apk文件。如果您可以重命名文件,並在Windows資源管理器中正常打開它,那麼應該表明文件本身沒有損壞。

其次,我會嘗試通過USB連接您的設備並使用命令adb -d install "path-to-your-apk-file.apk"進行安裝。如果這不起作用,希望adb會吐出更具描述性的東西,並且可以用錯誤更新您的問題。

+0

非常感謝您的回覆。我注意到,apk文件只是zip文件,我能夠成功打開並查看兩者,無符號以及帶符號的輸出。 我不能嘗試第二種選擇,因爲USB驅動程序由於某種原因未正確安裝在我的系統上(Windows 7 Ultimate x64)。我嘗試安裝三星Kies和谷歌USB驅動程序,但他們都似乎沒有工作。即使我的真實設備連接到計算機,「adb設備」也只會返回ADV。 可能會嘗試在我的Debian OS上設置工具。 – beta 2011-12-30 16:53:57

+0

所以你說,你的USB驅動不起作用,仍然期望它能正確地將.apk傳輸到你的設備上? – 2011-12-30 16:55:40

+0

嗯。尋找合適的adb驅動程序始終是一場噩夢):爲什麼不嘗試使用本教程的Samsung S2 http://naturalprogression.wordpress.com/2011/07/19/samsung-galaxy-s2-adb-device-驅動程序/此外,如果您要開發很多,您將需要在真實設備上開發。上傳,安裝和應用程序性能在真實設備上要好得多。 – Samuel 2011-12-30 16:58:13

1

我發現了自定義apk文件解析錯誤的答案here。刪除所需的API級別標記android:minSdkVersion in AndroidManifest.xml解決了這個問題。