Pembacaan layar dibatasi

Di Android 9 dan yang lebih lama, izin pengambilan buffer layar (READ_FRAME_BUFFER, CAPTURE_VIDEO_OUTPUT, dan CAPTURE_SECURE_VIDEO_OUTPUT) diberikan ke aplikasi yang memiliki tanda tangan atau izin istimewa. Hal ini memungkinkan aktivitas perekaman buffer layar yang lancar, seperti mengambil screenshot atau merekam konten layar perangkat.

Mulai Android 10, untuk mencegah akses diam-diam ke konten layar perangkat, izin pengambilan video tidak diberikan ke aplikasi dengan hak istimewa. Akses tanpa izin pengguna dibatasi, dan hanya diberikan ke aplikasi yang memiliki izin tanda tangan. Produsen perangkat yang menjalankan aplikasi dengan hak istimewa yang mengandalkan fungsi pengambilan senyap ini akan terpengaruh oleh persyaratan ini.

Mulai Android 10, jika Anda tidak memiliki izin tanda tangan pengambilan buffer layar yang tercantum, aplikasi Anda tidak dapat mengambil buffer layar tanpa izin pengguna. Untuk memastikan Anda memiliki izin yang diperlukan, telusuri file manifes untuk menemukan izin tanda tangan yang tercantum sebelumnya. Migrasikan semua aplikasi dengan hak istimewa yang terpengaruh (seperti yang ditemukan dalam penelusuran Anda) ke class MediaProjectionManager, yang memungkinkan aplikasi pihak ketiga mana pun untuk merekam buffer layar tanpa izin, tetapi dengan izin pengguna. Alur ini menampilkan dialog yang meminta pengguna untuk mengizinkan perekaman layar saat aplikasi memulainya. Di Android 10, fitur baru dialog mencakup hal berikut:

  • Memberikan asosiasi yang lebih terlihat dengan ikon Cast.
  • Memberikan informasi selengkapnya tentang sensitivitas data yang dapat diakses.
  • Mencegah pengguna menyembunyikan dialog pada inisiasi mendatang: dialog akan ditampilkan setiap saat.