Với mỗi bản phát hành, một số API Android cụ thể có thể trở nên lỗi thời hoặc cần phải được tái cấu trúc để cung cấp trải nghiệm tốt hơn cho nhà phát triển hoặc hỗ trợ nền tảng mới các chức năng khác nhau. Trong những trường hợp này, Android sẽ chính thức ngừng sử dụng các phiên bản lỗi thời API và hướng nhà phát triển đến API mới để sử dụng thay thế.
Ngừng sử dụng có nghĩa là chúng tôi đã kết thúc dịch vụ hỗ trợ chính thức đối với các API này, nhưng chúng sẽ vẫn có sẵn cho các nhà phát triển. Trang này nêu bật một số trong bản phát hành Android này. Để xem các trường hợp ngừng sử dụng khác, hãy tham khảo Báo cáo điểm khác biệt về API.
RenderScript
Kể từ Android 12, API RenderScript không được dùng nữa. Chúng sẽ tiếp tục hoạt động, nhưng chúng tôi hy vọng rằng nhà sản xuất thiết bị và thành phần sẽ ngừng cung cấp tính năng hỗ trợ tăng tốc phần cứng theo thời gian. Để khai thác tối đa tăng tốc GPU, bạn nên ngừng dùng RenderScript.
Danh sách phát trên Android
Danh sách phát trên Android không dùng nữa. API này không còn được duy trì nhưng chức năng hiện tại vẫn giữ nguyên vẫn đảm bảo khả năng tương thích.
Bạn nên đọc và lưu danh sách phát dưới dạng m3u tệp.
Ngừng sử dụng API Hiển thị
Các thiết bị Android ngày càng có nhiều kiểu dáng thiết bị, chẳng hạn như
màn hình lớn, máy tính bảng và thiết bị có thể gập lại. Để hiển thị nội dung một cách phù hợp
đối với từng thiết bị, ứng dụng của bạn cần xác định kích thước màn hình hoặc kích thước hiển thị. Giao bóng
Android đã cung cấp các API khác nhau để truy xuất thông tin này. Trong
Chúng tôi đã ra mắt Android 11
API WindowMetrics
và không dùng nữa
các phương thức sau:
Trong Android 12, bạn tiếp tục đề xuất sử dụng WindowMetrics
và sẽ ngừng sử dụng các phương thức này:
Ứng dụng nên dùng các API WindowMetrics
để truy vấn về ranh giới của cửa sổ, hoặc
Configuration.densityDpi
để truy vấn mật độ hiện tại.
Lưu ý rằng Jetpack WindowManager
thư viện bao gồm một WindowMetrics
hỗ trợ Android 4.0.1 (API cấp 14) trở lên.
Ví dụ
Dưới đây là một số ví dụ về cách sử dụng WindowMetrics
.
Trước tiên, hãy đảm bảo ứng dụng của bạn có thể tạo các hoạt động có thể đổi kích thước hoàn toàn.
Một hoạt động phải dựa vào WindowMetrics
từ ngữ cảnh hoạt động để
mọi tác vụ liên quan đến giao diện người dùng, đặc biệt là
WindowManager.getCurrentWindowMetrics()
.
Nếu ứng dụng của bạn tạo một MediaProjection
, các giới hạn phải có kích thước chính xác
vì phép chiếu chụp lại màn hình. Nếu ứng dụng có thể đổi kích thước hoàn toàn,
ngữ cảnh hoạt động trả về giới hạn chính xác.
Kotlin
val projectionMetrics = activityContext .getSystemService(WindowManager::class.java).maximumWindowMetrics
Java
WindowMetrics projectionMetrics = activityContext .getSystemService(WindowManager.class).getMaximumWindowMetrics();
Nếu không thể đổi kích thước hoàn toàn, ứng dụng phải truy vấn các giới hạn từ một
Thực thể WindowContext
và truy xuất WindowMetrics của màn hình tối đa
khu vực có sẵn cho ứng dụng bằng cách sử dụng
WindowManager.getMaximumWindowMetrics()
Kotlin
val windowContext = context.createWindowContext(mContext.display!!, WindowManager.LayoutParams.TYPE_APPLICATION, null) val projectionMetrics = windowContext.getSystemService(WindowManager::class.java) .maximumWindowMetrics
Java
Context windowContext = mContext.createWindowContext(mContext.getDisplay(), WindowManager.LayoutParams.TYPE_APPLICATION, null; WindowMetrics projectionMetrics = windowContext.getWindowManager() .getMaximumWindowMetrics();