Android 9 이하에서는 화면 버퍼 캡처 권한(READ_FRAME_BUFFER
, CAPTURE_VIDEO_OUTPUT
및 CAPTURE_SECURE_VIDEO_OUTPUT
)이 서명 또는 독점 권한 중 하나를 보유했던 앱에 부여되었습니다. 이를 통해 스크린샷을 캡처하거나 기기의 화면 콘텐츠를 기록하는 등의 원활한 화면-버퍼 캡처 활동이 가능했습니다.
Android 10부터는 기기의 화면 콘텐츠에 대한 자동 액세스를 막기 위해 권한 있는 앱에 동영상 캡처 권한이 부여되지 않습니다. 사용자 동의가 없는 액세스는 제한되며, 서명 권한을 보유한 앱에만 부여됩니다. 이 자동 캡처 기능을 사용하는 권한 있는 앱을 실행하는 기기 제조업체는 이 요구사항의 영향을 받습니다.
Android 10부터는 나열된 화면-버퍼 캡처 서명 권한이 없을 때 앱이 사용자의 동의 없이 화면 버퍼를 캡처할 수 없습니다. 필요한 권한이 있는지 확인하려면 매니페스트 파일에서 이전에 나열된 서명 권한을 검색하세요. 영향을 받은 모든 권한 있는 앱(검색에서 발견된)을 MediaProjectionManager 클래스로 이전하면 모든 서드 파티 앱이 권한 없이 화면 버퍼를 캡처할 수 있지만 사용자의 동의는 얻어야 합니다. 이 흐름에서는 앱에서 화면 캡처를 시작한 경우 이를 허용하도록 사용자에게 요청하는 대화상자가 표시됩니다. Android 10의 대화상자에 포함되는 새로운 기능은 다음과 같습니다.
- 전송 아이콘에 대한 좀 더 가시적인 연결성을 제공합니다.
- 액세스 가능한 데이터의 민감도에 관한 추가 정보를 제공합니다.
- 향후 시작 시 사용자가 대화상자를 숨기지 못하도록 합니다. 즉, 대화상자가 항상 표시됩니다.