2012年4月7日

Android: Your project contains errors,please fix them before running your application

    這幾天不知死了多少腦細胞呀,前幾天更新Eclipse的ADT和新增Android 4.0.3 SDK之後,人生從彩色的一下變成黑白的!所有的Project只要重新Rebuild,就會出現莫名其妙的紅叉叉x在project圖示旁,無法產生執行檔apk,但偏偏又顯示Build Success ! 真是百思不得其解。於是相關軟體Eclipse, Java, Android SDKs 東試西試裝來卸去,我看乾坤大挪移起碼已經作到第7層了,搞得一個頭兩個大,還是無法搞定....Google也 Google 不出所以然來;真是令人食不知味,寢食難安呀!
    今天心情平靜些許突發奇想,就將這段不知所指的Error訊息"Your project contains errors,please fix them before running your application"全段Google一下,反正死馬當活馬醫吧!
    結果居然找到了!!http://www.eoeandroid.com/thread-160684-1-1.html 真是感謝之至,大陸同胞真是越來越棒。好了,問題到底出在哪裡呢?

   原來android要求所有的程序必须要簽名,否則就不能安裝。而在我們開發程式時,ADT幫我們用了debug keystore(在 preference->android->buid中設置)。而其效期只有一年,所以提示Your project contains errors... ,此指的是debug keystore過期了。找到這個debug keystore删除就ok了,系统會自動再生成一個新的。真是不清不楚的錯誤訊息,直接說"無法sign,key過期了"會死喔 :(

  算起來開發Android程式也剛超過1年多一點(2011/3/22),真是無巧不成書呀!

  現在回想起來,應是計畫壓力使自己太心急了點,又同時更新太多東西了,沒有好好思索其錯誤方式;也許就會想出是無法sign的問題。若你也發生同樣情形,希望這篇文章可以省去你幾個失眠的夜晚 :)

沒有留言: