Android 11에서는 앱이 사용자가 기기에 설치한 다른 앱을 쿼리하고 상호작용하는 방법을 변경합니다. <queries>
요소를 사용하여 앱은 액세스할 수 있는 다른 패키지 집합을 정의할 수 있습니다. 이 요소를 통해 앱에 표시될 다른 패키지를 시스템에 알려 최소 권한의 원칙을 촉진할 수 있습니다. 또한 Google Play와 같은 앱 스토어에서 앱이 사용자에게 제공하는 개인정보 보호 및 보안을 평가할 수 있습니다.
앱이 Android 11 이상을 타겟팅하면 앱의 매니페스트 파일에 <queries>
요소를 추가해야 할 수 있습니다. <queries>
요소 내에서 이름, 인텐트 서명 또는 제공자 권한별로 패키지를 지정할 수 있습니다.
앱이 Android 11 이상을 타겟팅할 때 설치된 다른 앱의 패키지 공개 상태를 관리하는 방법에 관한 가이드에서 자세히 알아보세요.
변경사항 테스트
이 동작 변경사항이 앱에 적용되었는지 테스트하려면 다음 단계를 완료하세요.
- Android 스튜디오 3.6.1 이상을 설치합니다.
- Android 스튜디오에서 지원하는 최신 버전의 Gradle을 설치합니다.
- 앱의
targetSdkVersion
을30
로 설정합니다. - 앱의 매니페스트 파일에
<queries>
요소를 포함하지 않습니다. getInstalledApplications()
또는getInstalledPackages()
를 호출합니다. 두 메서드는 모두 필터링된 목록을 반환해야 합니다.- 작동하지 않는 앱 기능을 확인합니다.
- 적절한
<queries>
항목을 도입하여 이러한 기능을 수정합니다.