Sistem Kameraları

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.