android項目出現紅色感嘆號、調用API出錯的幾種解決辦法

        新建安卓項目或者導入安卓項目時,有時發現項目的最頂層目錄出現紅色感嘆號,項目無法編譯運行。我在網上查了一下修復辦法,大多隻提到一種,而導致android項目出現紅色感嘆號的可能是有好多種的,我暫時把我發現的修復辦法記錄一下:

一,原因:項目的R文件沒有生成;

辦法:在代碼不報錯的前提下 Project ---》 clean一下工程,R文件就能夠自動生成,如果沒有,請檢查下代碼裏是否存在報錯。


二,原因:項目所引用的jar包出現錯誤,多數是由jar的路徑出現錯誤導致,這是網上提到比較多的;

辦法:選定項目,鼠標右鍵,選定BuldPath--》Config BuildPath即可進入到包的管理界面,在右邊的面板上選定Libraries,發現部分jar包出現紅色叉號,這是出錯的包,選定出現錯誤的包後,點擊最右邊的Remove按鈕移除(記住移除的包名,後面重新引進);

然後在重新Add jar,指定路徑即可正確加入,而這些包的路徑一般是在本出錯項目的libs文件夾裏,進入選定剛纔刪掉的包即可。



三,原因:項目指定的編譯Android  API Level和當前使用的不一;

辦法:Android項目指定的API Level版本,可以打開項目最頂層目錄的project.properties文件,如裏面有一行 “target=android-18”,再查看當前項目使用的Android API Level版本:Windows--》property,點擊左邊面板Android,即可在右邊看到當前使用的Android API Level(如果沒有,則需要在SDK Location上指定你安卓SDK解壓出來的路勁;

將project.properties的“target=android-18“中的18指定到當前版本,clean工程再運行。



四,原因:項目被指定爲一個不可運行的庫、項目Project Build Target沒有選定;

辦法:選定項目,右鍵--》Preferences,在彈出窗口左邊面板選定Android就會在右邊看到Android面板,在Projec Build Target中指定一個Androidx.x勾上(如果沒有,則需要在SDK Location上指定你安卓SDK解壓出來的路勁);再看下方Library,把IsLibray的鉤去掉,clean一下運行。



五,原因:項目所依賴的第三方庫沒有加入:

辦法:將所依賴的jar copy到項目libs下即可。

如果第三方的庫打包成一個項目庫,將項目庫copy一份到和當前項目一樣的目錄下,在Eclipse中引進,在項目面板空選定,右鍵-->Import, 點擊打開General--》Exisiting Projects into Workspace指定庫的目錄即可引進到Eclipse,然後按照 上面問題四 找到他的Is Library鉤上;

 再回到項目,同樣找到IS Library(不要鉤),發現右邊有個Add按鈕,點擊,指定到剛纔導入到Eclipse的第三發庫即可,clean,運行。



如果引用了第三方的庫後項目又重新出錯,我發現的有兩種可能:

1,第三方庫打成安卓項目,則它自己自帶有android-support-v4.jar包,引入後與我們自身項目的anadroid-support-v4.jar包版本不一會產生衝突;

解決辦法:在我們的安卓項目下在libs文件夾中找到android-support-v4.jar,然後刪掉,重新clean一遍工程,android-support-v4.jar就會正確的重新生成;


2,第三方jar打包成android項目也是有原因的,一般來講主要是第三jar依賴其他資源,如項目的re文件夾下的資源,或者AndroidManifest.xml文件等,這時只需把第三方jar所以來的 資源都copy一份到安卓項目相同的文件夾下整合即可。




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章