Di Android 9 dan yang lebih rendah, izin pengambilan buffer layar ( READ_FRAME_BUFFER
, CAPTURE_VIDEO_OUTPUT
, dan CAPTURE_SECURE_VIDEO_OUTPUT
) diberikan ke aplikasi yang memiliki izin tanda tangan atau hak istimewa. Ini memungkinkan aktivitas pengambilan buffer layar yang mulus, seperti mengambil tangkapan layar, atau merekam konten layar perangkat.
Mulai Android 10, untuk mencegah akses senyap ke konten layar perangkat, izin pengambilan video tidak diberikan ke aplikasi istimewa. Akses tanpa persetujuan pengguna dibatasi , dan hanya diberikan ke aplikasi yang memiliki izin tanda tangan. Produsen perangkat yang menjalankan aplikasi istimewa yang mengandalkan fungsi pengambilan senyap ini dipengaruhi oleh persyaratan ini.
Mulai Android 10 jika Anda tidak memiliki izin tanda tangan tangkapan layar buffering yang tercantum, aplikasi Anda tidak dapat merekam buffer layar tanpa persetujuan pengguna. Untuk memastikan Anda memiliki izin yang Anda butuhkan, cari file manifes Anda untuk izin tanda tangan yang terdaftar sebelumnya. Migrasikan semua aplikasi istimewa yang terpengaruh (seperti yang ditemukan dalam pencarian Anda) ke kelas MediaProjectionManager , yang memungkinkan aplikasi pihak ketiga untuk menangkap buffer layar tanpa izin, tetapi dengan persetujuan pengguna. Alur ini menampilkan dialog yang meminta pengguna untuk mengizinkan pengambilan layar saat aplikasi memulainya. Di Android 10, fitur baru dari dialog mencakup hal berikut:
- Memberikan asosiasi yang lebih terlihat dengan ikon Cast .
- Memberikan informasi lebih lanjut tentang sensitivitas data yang dapat diakses.
- Mencegah pengguna menyembunyikan dialog pada inisiasi mendatang: dialog ditampilkan setiap saat.