본문 바로가기
Android

android11 intent 패키지명으로 외부 앱 실행 시 안되는 현상

by 일용직 코딩노동자 2021. 7. 22.
728x90
반응형
try{
  Intent intent = getPackageManager().getLaunchIntentForPackage(packageName);
  intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
  startActivity(intent);
}
catch (Exception e){
  e.printStackTrace();
  String url = "market://details?id=" + packageName;
  Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
  startActivity(i);
}

원래는 이렇게 하여서 패키지명으로 외부앱을 실행했습니다!

 

근데 안드로이드 11을 타겟팅하신다고 하시면 메니페스트에서 하나 추가해주셔야 합니다.

 

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="내 프로젝트 패키지명">

<!-- !!여기!! -->
    <queries>
        <package android:name="실행하고싶은 외부앱 패키지명" />
    </queries>
<!-- !!추가!! -->

    <application
    
    />

이렇게 

 

<queries 태그안쪽에 패키지 적으셔서 추가해주셔야 합니다..

 

버전 바뀔때마다 고통스럽네요 ..

728x90
반응형

댓글