編輯:Android開發實例
工欲善其事,必先利其器。
和iOS開發相比,Android的開發環境的版本比較多,隨之而來的問題也多。顯然,我們不應該浪費寶貴的時間在解決開發環境帶來的問題上,為此本文總結了常見的開發環境問題和解決方法,供大家查詢和隨時補充。
Android SDK生成的用於調試的證書文件debug.keystore有效期是365天,當使用超過一年後控制台就會報這個錯誤。
Error generating final archive: Debug Certificate expired on 10/09/18 16:30
解決方法是手工刪除debug.keystore文件,Windows系統下位於"C:\Documents and Settings\username\.android"目錄,Linux和Mac系統下位於"~/.android/"目錄。下次啟動應用時,Eclipse會自動新建一個debug.keystore文件。最好"Project->Clean"一下項目以便觸發編譯器重新編譯。
導致這個問題的確切原因不清楚,可能是由於不正確關閉adb連接。
Failed to install helloworld.apk on device 'emulator-5554': timeout
解決方法1:更換電腦usb口(不使用前置usb口)或重裝手機驅動,將手機關機後再開機。
解決方法2:在Eclipse裡選擇"Window->Preferences->Android->DDMS->ADB connection time out",將缺省的5000ms改為更大的值,例如20000ms。
解決方法3:在命令行窗口裡依次輸入如下命令:
adb kill-server adb start-server
這是由於Eclipse開發環境無法找到所需的可執行文件造成的。
[2011-07-10 07:10:22 - demo] Android Launch! [2011-07-10 07:10:24 - demo] adb is running normally. [2011-07-10 07:10:24 - demo] Performing com.demo.DemoActivity activity launch [2011-07-10 07:10:25 - demo] Automatic Target Mode: launching new emulator with compatible AVD 'xxx' [2011-07-10 07:10:25 - demo] Launching a new emulator with Virtual Device 'xxx' [2011-07-10 07:11:06 - Emulator] invalid command-line parameter: Files\Android\android-sdk\tools/emulator-arm.exe.
解決方法是在Eclipse裡選擇"Window->Preferences->Android"選項,檢查"SDK Location"的路徑是否包含了空格,如果是"c:\Program Files\android"這種,改為"c:\Progra~1\android",這樣命令行就可以正常調用到了。
小提示:在命令行窗口裡輸入"dir /x"命令就可以列出8.3格式的文件名,看下面的結果:
2012-09-25 23:52 <DIR> WATCHD~1 WatchData 2012-09-01 11:01 <DIR> Winamp 2012-07-24 22:22 <DIR> WINDOW~4 Windows Live 2012-07-24 22:21 <DIR> WI3957~1 Windows Live SkyDrive
安裝應用程序時遇到存儲容量不足時會報這個錯誤:
Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE Please check logcat output for more details. Launch canceled!
如果是在模擬器上運行應用,可以擴大AVD的內存容量。
如果是在真機上運行,可以在AndroidManifest.xml裡修改安裝偏好,讓應用直接安裝到SD卡上解決。
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example" android:installLocation="preferExternal" > ... </manifest>
雖然很多人遇到這個問題,但問題的根源並不確切,可能有多種原因造成adb報這個錯誤:
[2010-10-12 09:36:48 - myapp] Android Launch! [2010-10-12 09:36:48 - myapp] adb is running normally. [2010-10-12 09:36:48 - myapp] Performing com.mycompany.myapp.MyActivity activity launch [2010-10-12 09:36:48 - myapp] Automatic Target Mode: using device 'xxx' [2010-10-12 09:36:48 - myapp] Uploading myapp.apk onto device 'xxx' [2010-10-12 09:36:48 - myapp] Failed to upload myapp.apk on device 'xxx' [2010-10-12 09:36:48 - myapp] java.io.IOException: Unable to open sync connection! [2010-10-12 09:36:48 - myapp] Launch canceled!
解決方法1:拔掉手機連接線再重新連上;
解決方法2:在手機上關閉Debug選項再重新打開,這個選項在手機的"設置->應用程序->開發->USB調試"裡。
這個問題與系統可同時打開文件數量設置有關,但一般不需要修改相關設置,用上一個問題(Unable to open sync connection)的方法即可解決。
升級ADT版本以後容易出現這個問題:本來一切正常的Android項目,升級以後所有的第三方Jar包裡的類都提示NoClassDefFoundError了。
原因可能出現在不同版本ADT使用的編譯ant腳本的區別,可能的解決方法有兩個:
方法1:在Eclipse裡右鍵點擊你的Android工程,選擇"Properties->Java Build Path->Order and Export",在這裡把所有第三方Jar包前面的復選框都勾上。
方法2:檢查你的第三方Jar包文件是否放在工程目錄下的"libs"目錄,如果不是,改過來。
“Debug certificate expired” error in Eclipse Android plugins
Android error: Failed to install *.apk on device *: timeout
The Android emulator is not starting, showing “invalid command-line parameter”
Solution: Android INSTALL_FAILED_INSUFFICIENT_STORAGE error
Android adb “Unable to open sync connection!”
com.android.ddmlib.SyncException: Too many open files
NoClassDefFoundError - Eclipse and Android
可以顯示在的Android任務,通過加載進度條的進展。進度條有兩種形狀。加載欄和加載微調(spinner)。在本章中,我們將討論微調(spinner)。Spinner 用
Android提供了許多方法來控制播放的音頻/視頻文件和流。其中該方法是通過一類稱為MediaPlayer。Android是提供MediaPlayer類訪問內置的媒體播放
本文演示如何在Android中實現ListView圓角效果。 無論是網站,還是APP,人們都愛看一些新穎的視圖效果。直角看多了,就想看看圓角,這幾年刮起了一陣陣的圓角設
ColaBox 登記收支記錄終於進入了復雜階段了。這個界面我也是查找了很多資料