IT/안드로이드+JAVA

[Android] 앱, 패키지 설치 여부 확인 (App Install Check)

안경 쓴 귀니 2021. 9. 11. 19:24
반응형

안드로이드에서 디바이스에 앱이 설치되어 잇는지 여부를 조회하는 방법

조회하려면 패키지명을 알아야 한다.

 

방법 1

 

String PACKAGE_NAME = "com.kakao.talk";

private boolean isPackageInstalled(String packageName, PackageManager packageManager) {
    try {
        packageManager.getPackageInfo(packageName, 0);
        return true;
    } catch (PackageManager.NameNotFoundException e) {
        return false;
    }
}

// 사용 방법
PackageManager pm = getPackageManager();
if (isPackageInstalled(PACKAGE_NAME, pm)) {
    // 설치
} else {
    // 미설치
}

 

 

방법 2

 

String PACKAGE_NAME = "com.kakao.talk";

Intent intent = getPackageManager().getLaunchIntentForPackage(PACKAGE_NAME);
if (intent == null) {
    // 미설치
} else {
    // 설치
}

 

 

주의사항

 

Android 11(API Level 30)부터 설치 여부를 조회할 수 없고,

매니페스트에서 아래와 같이 선언 후 사용해야 한다.

<manifest>
    <queries>
        <package android:name="com.kakao.talk"/>	// 패키지명
    </queries>
</manifest>

 

참고

 

https://developer.android.com/reference/android/content/pm/PackageManager

반응형