閱讀23 返回首頁    go 阿裏雲 go 技術社區[雲棲]


android定義新的api解決一些低版本不能運行的問題

Android Call requires API level 11 (current min is 8)的解決方案

【錯誤描述】

    在用Eclipse開發過程中,為了兼容Android2.2和4.0以上版本,我在使用Notification類時做了2個版本的代碼,代碼根據係統版本不同執行相應模塊,結果,等我輸完代碼,發現係統提示了一個這麼的錯誤。

【原因分析】

    不詳,可能和Run Android Lint有點關係吧。就是創建項目時,我們設置了最低版本API Level,比如我的是8,因此,Eclipse檢查我調用的API後,發現版本號不能向低版本兼容,比如我用的“Notification.Builder”是Level 11 以上才有的,自然超過了8,所以提示錯誤。

【解決方案】

   右鍵點擊項目->Android tools ->Clear Link Markers.即可臨時解決,但是如果調試用的模擬器是低版本的,則在調試完後還有這個錯誤。

  如果把manifest文件中的user-sdk的android:minSdkVersion改為報錯的那個高版本就沒事。比如下麵:

<uses-sdk

        android:minSdkVersion="11"   //這個之前是8

        android:targetSdkVersion="17" />


  

【擴展】

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

最後更新:2017-04-03 12:53:54

  上一篇:go 配置Mysql用戶權限命令
  下一篇:go android之動畫popowindows