Tôi nhận được call requires api level X
trong các mô-đun không phải là Android khi sử dụng các tính năng Java 8. Cách xóa. Đàn áp với chú thích dường như không đúng cách để tôiCuộc gọi yêu cầu cấp api trong các mô-đun không phải là android
Trả lời
https://developer.android.com/guide/platform/j8-jack.html
Android hỗ trợ tất cả các tính năng ngôn ngữ Java 7 và một tập hợp con các tính năng Java 8 ngôn ngữ khác nhau tùy theo phiên bản nền tảng.
Hỗ trợ tính năng ngôn ngữ Java 8 yêu cầu trình biên dịch mới có tên là Jack. Jack chỉ được hỗ trợ trên Android Studio 2.1 trở lên.
Android không hỗ trợ tất cả các tính năng ngôn ngữ Java 8. Tuy nhiên, các tính năng sau đây có sẵn khi phát triển các ứng dụng nhắm mục tiêu Android 7.0 (API level 24):
- mặc định và phương thức giao diện tĩnh
- biểu thức Lambda (cũng có sẵn trên mức API 23 và thấp hơn)
- Chú thích có thể lặp lại
- Phương pháp Tham khảo (cũng có sẵn ở cấp API 23 trở xuống)
- Loại chú thích (cũng có sẵn ở cấp API 23 trở xuống)
... nhấn mạnh bởi tôi.
Ups, bây giờ tôi đã hiểu bạn không hỏi về mô-đun Android ... sử dụng chúng? Nếu bạn tích hợp chúng vào ứng dụng Android, chúng vẫn phải tuân thủ các quy tắc trên, ngay cả khi chúng không gọi bất kỳ API Android nào, nhưng chúng sẽ được chạy bởi hệ điều hành Android JVM. Nếu bạn đang sử dụng chúng chỉ trên JVM chính thức hỗ trợ Java8 (giống như các kiểm tra JUnit đang chạy trên hệ điều hành máy chủ) (để mã đó không rơi vào .apk), chỉ cần tắt lint là giải pháp khẩn cấp. Mặc dù tôi tự hỏi nếu nó không đủ thông minh để nhận ra bạn không sử dụng Java8 với mã Android. – Ped7g
Không phải OP ở đây. Trong dự án của tôi, nó phàn nàn về "Cuộc gọi yêu cầu cấp API 9 (min hiện tại là 1)" trên mô-đun thư viện mà chúng tôi sử dụng trên một ứng dụng có API tối thiểu là 14. – Giszmo
@Giszmo Java8 có liên quan như thế nào? Nếu cuộc gọi API cụ thể được đề cập, thì đó là kiểm tra lint khác nhau mà tôi nghĩ? Tại sao quá trình xây dựng của bạn cho rằng nó nằm trong "minSdk = 1" hiện tại: Tôi không biết, google hoặc đăng câu hỏi với đầy đủ chi tiết (xây dựng tập lệnh, định nghĩa dự án, v.v.). Nhưng tôi không thấy kết nối của vấn đề của bạn với các tính năng Java8. – Ped7g
- 1. Android: Tìm các cuộc gọi API yêu cầu quyền
- 2. Alertdialog.Builder setview: Cuộc gọi yêu cầu cấp API 21
- 3. setAdapter "Cuộc gọi yêu cầu cấp API 11 (min hiện tại là 8): android.widget.AbsListView # setAdapter"?
- 4. Cuộc gọi yêu cầu cấp API 24 (mức tối thiểu hiện tại là 12): android.icu.util.calendar
- 5. Lệnh gọi hoặc yêu cầu API Tumblr
- 6. RequireJS: lồng nhau yêu cầu cuộc gọi
- 7. API cuộc gọi trong nhà cung cấp nội dung để tìm kiếm toàn cầu
- 8. android: Theme.Material.Light yêu cầu cấp API 21 (min hiện tại là 8)
- 9. Gọi không đồng bộ - Yêu cầu EndInvoke phải không?
- 10. Ripple yêu cầu cấp API 21 (min hiện tại là 11), android?
- 11. SPA với Spring Boot - phục vụ index.html cho các yêu cầu không phải API
- 12. Các cuộc gọi không đồng bộ của Android Okhttp
- 13. Angular2/ngrx và các cuộc gọi API
- 14. Android ActivityRecognition java.lang.NullPointerException: Api thích hợp không được yêu cầu
- 15. <animated-vector> yêu cầu cấp API 21 (min hiện tại là 15)
- 16. Cách tối ưu hóa các cuộc gọi REST API
- 17. Yêu cầu main.cpp phải không?
- 18. Tại sao một số nhà cung cấp API yêu cầu khóa API?
- 19. Xử lý các cuộc gọi api trong Redux với Axios
- 20. Cuộc gọi API không hoạt động bên trong Anko Async
- 21. điều chỉnh các cuộc gọi http api với độ trễ
- 22. Nhiều cuộc gọi đến yêu cầu Alamofire, nhận tham chiếu cho mỗi cuộc gọi
- 23. Google có phải là nhà cung cấp OpenID duy nhất yêu cầu "identifier_select" không?
- 24. Cuộc gọi ngẫu nhiên Api không thành công - Yêu cầu bị hủy: Không thể tạo kênh bảo mật SSL/TLS
- 25. Yêu cầu API gộp
- 26. requireJS optimizer không bao gồm các cuộc gọi yêu cầu lồng nhau
- 27. Các cuộc gọi API Mocking và Win32
- 28. Nâng cấp các cuộc gọi tới API Java của Datastax đã biến mất trong 3
- 29. Đây có phải là cuộc gọi đuôi không? (Javascript)
- 30. iPhone ASIHTTP - Phân biệt giữa các cuộc gọi API?
Bạn đã giải quyết vấn đề này chưa? https://code.google.com/p/android/issues/detail?id=78382 có liên quan. – Giszmo
đăng các tệp và mã gradle của bạn để các thành viên SO có thể tái tạo cùng một hành vi, chỉ cần làm theo [Cách tạo một ví dụ tối thiểu, hoàn chỉnh và có thể xác minh được] (http://stackoverflow.com/help/mcve) cùng với chi tiết về studio, Các phiên bản JDK mặc dù báo cáo lỗi (liên kết bởi Giszmo) dường như hấp dẫn –
đăng mã của bạn và gradle – NishchalAndroid