Sui dispositivi con Android 11 o versioni successive,
che supporta il sistema
fotocamere, ovvero fotocamere visibili solo ai processi con
Autorizzazione android.permission.SYSTEM_CAMERA
e autorizzazioni normali di accesso alla fotocamera.
L'autorizzazione android.permission.SYSTEM_CAMERA
, introdotta in
Android 11 ha
con un livello di protezione di system|signature
. Ciò significa che solo le app installate su
la partizione di sistema con o firmata con lo stesso certificato del sistema può
la concessione dell'autorizzazione. Le app pubbliche di terze parti non possono accedere alle fotocamere del sistema.
Le fotocamere di sistema sono utili per i produttori di dispositivi che vogliono implementare funzionalità che richiedono l'accesso a una fotocamera, ma sono anche limitate a privilegi o app di sistema.
Poiché alle app di sistema a cui viene concesso
L'autorizzazione android.permission.SYSTEM_CAMERA
deve avere anche
android.permission.CAMERA
gli utenti possono scegliere di revocare le normali autorizzazioni di CAMERA
per impedire
a un'app di questo tipo di accedere alle fotocamere del dispositivo.
Implementazione
Per trasformare una determinata videocamera in una videocamera di sistema, la videocamera HAL deve
fai pubblicità
ANDROID_REQUEST_AVAILABLE_CAPABILITIES_SYSTEM_CAMERA
nel suo elenco di funzionalità.
Per creare un'app che ha accesso a una videocamera di sistema, l'app deve essere inclusa nella lista consentita
nel file privapp-permissions.xml
specifico del dispositivo, che specifica le app
che
android.permission.SYSTEM_CAMERA
a cui devi concedere l'autorizzazione.
Convalida
Per verificare che nessuna videocamera del sistema sul dispositivo possa essere rilevata da un pubblico
esegui il comando
android.permission.cts.Camera2PermissionTest.testSystemCameraDiscovery
CTS
test.
Tutti test CTS della fotocamera su dispositivi con fotocamere di sistema.