In Android 9 und niedriger wurden die Berechtigungen zur Bildschirmpuffererfassung ( READ_FRAME_BUFFER
, CAPTURE_VIDEO_OUTPUT
und CAPTURE_SECURE_VIDEO_OUTPUT
) Apps gewährt, die entweder über Signatur- oder privilegierte Berechtigungen verfügten. Dies ermöglichte nahtlose Bildschirmpuffer-Erfassungsaktivitäten, wie z. B. das Erstellen von Screenshots oder das Aufzeichnen des Bildschirminhalts eines Geräts.
Um den stillen Zugriff auf den Bildschirminhalt eines Geräts zu verhindern, werden ab Android 10 privilegierten Apps keine Videoaufnahmeberechtigungen mehr gewährt. Der Zugriff ohne Zustimmung des Benutzers ist eingeschränkt und wird nur Apps gewährt, die über Signaturberechtigungen verfügen. Von dieser Anforderung betroffen sind Gerätehersteller, die privilegierte Apps ausführen, die auf dieser stillen Erfassungsfunktion basieren.
Wenn Sie ab Android 10 nicht über die aufgeführten Signaturberechtigungen für die Bildschirmpuffererfassung verfügen, kann Ihre App ohne Zustimmung des Benutzers keine Bildschirmpuffer erfassen. Um sicherzustellen, dass Sie über die erforderlichen Berechtigungen verfügen, durchsuchen Sie Ihre Manifestdatei nach den zuvor aufgeführten Signaturberechtigungen. Migrieren Sie alle betroffenen privilegierten Apps (wie in Ihrer Suche gefunden) in die MediaProjectionManager- Klasse, die es jeder Drittanbieter-App ermöglicht, Bildschirmpuffer ohne Berechtigungen, aber mit Zustimmung des Benutzers zu erfassen. Dieser Ablauf zeigt ein Dialogfeld an, das den Benutzer auffordert, die Bildschirmaufnahme zuzulassen, wenn eine App sie initiiert. Zu den neuen Funktionen des Dialogs in Android 10 gehören die folgenden:
- Bietet sichtbarere Assoziationen mit dem Cast -Symbol.
- Bietet weitere Informationen zur Sensibilität der Daten, auf die zugegriffen werden kann.
- Verhindert, dass Benutzer den Dialog bei zukünftigen Initiierungen ausblenden: Der Dialog wird jedes Mal angezeigt.