當使用Java 8功能時,我在非android模塊中獲得call requires api level X
。 如何刪除它。 與註釋抑制似乎沒有以正確的方式給我調用需要在非android模塊中的api級別
回答
https://developer.android.com/guide/platform/j8-jack.html
Android支持所有的Java 7語言功能和對Java 8語言特性,通過平臺版本而異的一個子集。
對Java 8語言功能的支持需要一個名爲Jack的新編譯器。 Jack僅支持Android Studio 2.1及更高版本。
Android不支持所有Java 8語言功能。然而,開發應用定位的Android 7.0 (API級24)當使用以下功能:
- 默認和靜態接口方法
- Lambda表達式(也可在API級23和下部)
- 重複標註
- 方法引用(也API級別23可用,下)
- 類型的註釋(也API級別23可用,下)
...強調我。
Ups,現在我明白你不是在問關於Android模塊......所以你怎麼樣使用那些?如果將它們集成到Android應用程序中,即使它們沒有調用任何Android API,它們仍然必須遵守上述規則,但它們將由Android OS JVM運行。如果您僅在支持Java8的普通完整JVM上使用它們(例如在主機操作系統上運行的JUnit測試)(以便代碼不會落入.apk),只需將lint作爲緊急解決方案關閉即可。儘管我不知道它是不是應該足夠聰明才能意識到你沒有在Android代碼中使用Java8。 – Ped7g
這裏不是OP。在我的項目中,它抱怨在我們使用API API 14的應用程序庫模塊上的「調用需要API級別9(當前最小值爲1)」。 – Giszmo
@Giszmo Java8相關性如何?如果特定的API調用有問題,那麼我認爲這是不同的皮棉檢查?爲什麼你的構建過程認爲它是在「當前minSdk = 1」:我不知道,谷歌或發佈問題的全部細節(構建腳本,項目定義等)。但是我沒有看到你的問題與Java8特性的聯繫。 – Ped7g
- 1. Google AD(ADmobs)需要APi級別4.0 Android
- 2. Android API級別要求
- 3. 非支持庫android項目所需的最低API級別
- 4. 無法擴展ListFragment - 「調用需要API級別11」
- 5. TextureView setSurfaceTexture方法需要API 16級別
- 6. 最低Android API級別AdMob必需?
- 7. 在API級別的Android的<API級別旋轉的ImageView 11
- 8. Android:使用Google Vision API的最低API級別要求?
- 9. 在Node.js中需要Forever模塊用於Rest API
- 10. 在Qt中選擇Android API級別QMake
- 11. Android Studio:無法在TreeMap上調用.remove(),同時使用API級別23(需要24)
- 12. 在ReactJS中需要模塊的麻煩
- 13. 調用需要API級別24(當前最小值爲8):new android.location.GnssStatus.Callback
- 14. 調用需要API級別16(當前最小值爲14):android.app.Notification.Builder#build
- 15. 調用需要API級別5(當前最小值爲3):android.app.Service#startForeground
- 16. getView僅在android api級別8上滾動時調用
- 17. 在pytest中,如何確保在課程級別之前調用模塊級別的燈具
- 18. Cobalt需要升級EME API
- 19. 在需要的頁面上調用模塊Opencart
- 20. 調用Grails 2 r:需要taglib中的模塊
- 21. 選擇在Android的API級別15
- 22. Android API中Dialog.setOnShowListener的替代級別7
- 23. 的Eclipse:呼叫需要API級別11上的源文件
- 24. Eclipse Android更改API級別
- 25. Android應用程序或活動可以在更高API級別調用API嗎?
- 26. 調用的Android庫模塊
- 27. onCreateView()需要API級別11 ..如何支持舊設備上的活動(Android Activity)
- 28. API級別5上的選項卡非常暗,但是API級別4更低?
- 29. DNN 6用戶級別模塊權限
- 30. 在模塊級別公開Django應用程序的模型
你解決了嗎? https://code.google.com/p/android/issues/detail?id=78382外觀相關。 – Giszmo
發佈您的Gradle文件和代碼,以便SO成員可以重現相同的行爲,只需按照[如何創建最小,完整和可驗證的示例](http://stackoverflow.com/help/mcve)以及關於studio的詳細信息, JDK版本雖然錯誤報告(通過Giszmo鏈接)似乎引人注目 –
張貼您的代碼和gradle – NishchalAndroid