Máy ảnh hệ thống

Trên các thiết bị chạy Android 11 trở lên, khung Android hỗ trợ camera hệ thống, là những thiết bị camera chỉ hiển thị với các quy trình có quyền android.permission.SYSTEM_CAMERA và quyền camera thông thường. Quyền android.permission.SYSTEM_CAMERA , được giới thiệu trong Android 11, có cấp độ bảo vệ là system|signature . Điều này có nghĩa là chỉ những ứng dụng được cài đặt trên phân vùng hệ thống có hoặc được ký bằng cùng chứng chỉ với hệ thống mới có thể được cấp quyền này. Các ứng dụng công cộng của bên thứ ba không thể truy cập vào camera hệ thống.

Camera hệ thống rất hữu ích cho các nhà sản xuất thiết bị muốn triển khai các tính năng yêu cầu quyền truy cập vào camera nhưng cũng bị hạn chế ở các ứng dụng hệ thống hoặc đặc quyền.

Vì các ứng dụng hệ thống được cấp quyền android.permission.SYSTEM_CAMERA cũng phải có quyền android.permission.CAMERA nên người dùng có thể chọn thu hồi quyền CAMERA thông thường để ngăn ứng dụng đó truy cập vào camera trên thiết bị.

Thực hiện

Để biến một thiết bị camera cụ thể thành camera hệ thống, HAL camera phải quảng cáo ANDROID_REQUEST_AVAILABLE_CAPABILITIES_SYSTEM_CAMERA trong danh sách khả năng của nó.

Để tạo một ứng dụng có quyền truy cập vào camera hệ thống, ứng dụng đó phải được đưa vào danh sách trắng trong tệp privapp-permissions.xml dành riêng cho thiết bị, tệp này chỉ định các ứng dụng phải được cấp quyền android.permission.SYSTEM_CAMERA .

Thẩm định

Để xác minh rằng không có camera hệ thống nào trên thiết bị có thể bị ứng dụng công khai phát hiện, hãy chạy thử nghiệm CTS android.permission.cts.Camera2PermissionTest.testSystemCameraDiscovery .

Tất cả các thử nghiệm CTS của camera đều chạy trên các thiết bị camera của hệ thống.