목록

2021년 3월 31일 수요일

Android11의 패키지 가시성(Package Visibility)

언젠가 부터 내가 만든 앱에서 

앱 설치 여부와 관계없이

아래의 코드 실행시 NameNotFoundException이 발생하고 있다.


PackageManager.getPackageInfo("com.star.apps", 0);


원인을 찾아보니,

Android11버전부터는 개인 정보보호를 위해

동일 기기에 설치된 다른 앱을 쿼리하고 상호 작용하는 방식이 변경되었다고 한다.


다른 앱을 쿼리하고 상호 작용하려면 AndroidManifest.xml에 다음을 추가하자.

<queries>
<package android:name="com.star.apps" />
</queries>

또는 아래의 permission을 추가해도 된다. 

QUERY_ALL_PACKAGES는 Android 11버전에 새로 추가되었다고 한다.

<uses-permission android:name="android.permission.QUERY_ALL_PACKAGES" />


자세한 내용은 아래를 참고하면 된다.

https://developer.android.com/about/versions/11/privacy/package-visibility




댓글 없음:

댓글 쓰기