신규 단말기에서 내가 만든 앱이 PDF, HWP 연결이 안된다는 CS가 급증하기 시작했다. 재빨리 대응하기 위해 디버깅을 시작해 보았다. resolveinfo 값이 android 11(API30) 이상 버전에서 null 값으로 들어왔다. 앱을 만들 때는 기기에 설치된 다른 앱 중 내 앱에서 액세스하려는 일련의 앱을 고려해야 한다고 한다.
PackageManager pm = getPackageManager();
ResolveInfo info = pm.resolveActivity(intent,PackageManager.MATCH_DEFAULT_ONLY);
다른 앱과 상호작용해야 한다면 앱의 manifest 파일에 요소를 추가해야한다. 나는 application 연결을 필요하니 아래와 같은 모든 권한을 추가해 주었다. 후에 정상적으로 info를 가져오는 것을 확인할 수 있다. 또한 QUERY_ALL_PACKAGES의 퍼미션을 추가해도 되는데, 스토어정책상 소명이 필요하다.
<manifest package="com.example.game">
<queries>
<intent>
<action android:name="android.intent.action.VIEW" />
<data android:mimeType="application/*" />
</intent>
</queries>
...
</manifest>