본문 바로가기
개발/Android

[Android] 앱과 패키지 설치 여부 확인하기

by blacktree 2023. 2. 13.
반응형



Android 앱을 개발할 때 특정 작업을 하기 전에 사용자의 기기에 다른 앱이 설치되어 있는지 확인하고 싶을 수 있습니다. 예를 들어 지도를 표시하기 위해 Google 지도 앱을 실행하기 전에 Google 지도 앱이 설치되어 있는지 확인할 수 있습니다.

Android 기기에 앱이 설치되어 있는지 확인하는 방법은 다음과 같습니다.

1. Package Manager 불러오기

앱이 설치되어 있는지 확인하려면 PackageManager를 사용해야 합니다. Activity에서 getPackageManager()를 호출하여 PackageManager 인스턴스를 가져옵니다.

2. PackageInfo 확인

다음 단계는 PackageManager에서 getPackageInfo()를 호출하여 확인하려는 앱의 패키지 이름을 전달하는 것입니다. 이 메서드는 앱이 설치되어 있으면 PackageInfo 개체를 반환하고 그렇지 않으면 예외를 처리가 됩니다.

try {
    PackageInfo packageInfo = getPackageManager().getPackageInfo("com.example.app", PackageManager.GET_ACTIVITIES);
} catch (PackageManager.NameNotFoundException e) {
    // app not installed
}

 

위의 코드에서 "com.example.app"을 확인하려는 앱의 패키지 이름으로 바꿉니다.

3. 결과 처리

앱이 설치되어 있으면 PackageInfo 개체를 받게 됩니다. 설치되어 있지 않으면 NameNotFoundException이 발생합니다. 

이 정보를 사용하여 다음에 수행할 작업을 결정할 수 있습니다. 

예를 들어 사용자에게 메시지를 표시하거나 Google Play 스토어로 리디렉션하여 앱을 설치할 수 있습니다.

다음은 앱이 설치되지 않은 경우 메시지를 표시하는 예입니다.

try {
    PackageInfo packageInfo = getPackageManager().getPackageInfo("com.example.app", PackageManager.GET_ACTIVITIES);
} catch (PackageManager.NameNotFoundException e) {
    Toast.makeText(this, "앱이 설치되어 있지 않습니다.", Toast.LENGTH_SHORT).show();
}

 

Package Manager의 PackageInfo를 통해 Android 기기에 앱이 설치되어 있는지 확인할 수 있습니다.

 

728x90
반응형

댓글