Android 11 veya sonraki sürümlerin yüklü olduğu cihazlarda Android çerçevesi, yalnızca android.permission.SYSTEM_CAMERA
iznine ve normal kamera izinlerine sahip işlemler tarafından görülebilen kamera cihazları olan sistem kameralarını destekler.
Android 11'de kullanıma sunulan android.permission.SYSTEM_CAMERA
izni, system|signature
koruma seviyesine sahiptir. Bu, yalnızca sistem bölümüne yüklenen veya sistemle aynı sertifikayla imzalanan uygulamalara bu iznin verilebileceği anlamına gelir. Üçüncü taraf herkese açık uygulamalar, sistem kameralarına erişemez.
Sistem kameraları, 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.SYSTEM_CAMERA
izni verilen sistem uygulamalarının android.permission.CAMERA
iznine de sahip olması gerektiğinden kullanıcılar, bu tür uygulamaların cihazdaki kameralara erişmesini engellemek için normal CAMERA
izinlerini iptal edebilir.
Uygulama
Belirli bir kamera cihazının sistem kamerası olması için kamera HAL'ının, özellikler listesinde
ANDROID_REQUEST_AVAILABLE_CAPABILITIES_SYSTEM_CAMERA
reklamını yapması gerekir.
Sistem kamerasına erişimi olan bir uygulama oluşturmak için uygulamanın, cihaza özel privapp-permissions.xml
dosyasında izin verilenler listesine eklenmesi gerekir. Bu dosya, android.permission.SYSTEM_CAMERA
izninin verilmesi gereken uygulamaları belirtir.
Doğrulama
Cihazdaki hiçbir sistem kamerasının herkese açık bir uygulama tarafından keşfedilemediğini 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.