1. 程式人生 > >Call requires API level 11 (current min is 8)

Call requires API level 11 (current min is 8)

</pre><strong>【錯誤描述】</strong><p>在用Eclipse開發過程中,為了相容Android2.2和4.0以上版本,我在使用Notification類時做了2個版本的程式碼,程式碼根據系統版本不同執行相應模組,結果,等我輸完程式碼,發現系統提示了一個這麼的錯誤。</p><p></p><strong>【原因分析】</strong><p>建立專案時,我們設定了最低版本API Level,比如我的是8,因此,Eclipse檢查我呼叫的API後,發現版本號不能向低版本相容,比如我用的“Notification.Builder”是Level 11 以上才有的,自然超過了 8,所以提示錯誤。</p><p></p><strong>【解決方案】</strong>(1)臨時方案:右鍵點選專案->Android tools ->Clear Link Markers.即可臨時解決,但是如果除錯用的模擬器是低版本的,則在除錯完後還有這個錯誤。(2)最終方案:如果把manifest檔案中的user-sdk的android:minSdkVersion改為報錯的那個高版本就沒事。比如下面:<pre name="code" class="html"><uses-sdk
android:minSdkVersion=”11″   //這個之前是8
android:targetSdkVersion=”17″ />

【擴充套件】

這種錯誤不僅發生在Level11,也同時發生於其他因為設定了最低版本,但使用了高版本API的程式碼中,解決方案應該相同。

原文轉自:http://www.aitinan.com/3879.html