Android 11 veya sonraki sürümleri çalıştıran cihazlarda Android çerçevesi, yalnızca android.permission.SYSTEM_CAMERA
izni ve normal kamera izinleriyle işlemler tarafından görülebilen kamera cihazları olan sistem kameralarını destekler. Android 11'de sunulan android.permission.SYSTEM_CAMERA
izni, system|signature
koruma düzeyine sahiptir. Bu, yalnızca sistem bölümünde yüklü veya sistemle aynı sertifikayla imzalanmış uygulamalara bu iznin verilebileceği anlamına gelir. Üçüncü taraf genel uygulamalar sistem kameralarına erişemez.
Sistem kameraları, bir kameraya erişim gerektiren ancak ayrıcalıklı veya sistem uygulamalarıyla sınırlı olan özellikleri uygulamak isteyen cihaz üreticileri için kullanışlıdır.
android.permission.CAMERA
izni verilen sistem uygulamalarının da android.permission.SYSTEM_CAMERA
iznine sahip olması gerektiğinden, kullanıcılar böyle bir uygulamanın cihazdaki kameralara erişmesini önlemek için normal CAMERA
izinlerini iptal etmeyi seçebilir.
uygulama
Belirli bir kamera cihazını sistem kamerası yapmak için, kamera HAL'ının yetenekler listesinde ANDROID_REQUEST_AVAILABLE_CAPABILITIES_SYSTEM_CAMERA
reklamını yapması gerekir.
Bir sistem kamerasına erişimi olan bir uygulama oluşturmak için uygulamanın, android.permission.SYSTEM_CAMERA
izninin verilmesi gereken uygulamaları belirten cihaza özel privapp-permissions.xml
dosyasında beyaz listeye alınması gerekir.
doğrulama
Cihazdaki hiçbir sistem kamerasının genel bir uygulama tarafından bulunamadığını doğrulamak için android.permission.cts.Camera2PermissionTest.testSystemCameraDiscovery
CTS testini çalıştırın.
Tüm kamera CTS testleri sistem kamera cihazlarında çalışır.