안드로이드 앱에서 다른 앱을 실행하는 방법입니다.
먼저 해당 앱이 설치되어 있는지 체크합니다. 아래 메소드는 com.example.testapp 이라는 패키지명으로 시작하는
앱이 설치되어 있는지 체크해서 있다면 true 를 리턴합니다.
public boolean getPackageList() {
boolean isExist = false;
PackageManager pkgMgr = getPackageManager();
List<ResolveInfo> mApps;
Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);
mainIntent.addCategory(Intent.CATEGORY_LAUNCHER);
mApps = pkgMgr.queryIntentActivities(mainIntent, 0);
try {
for (int i = 0; i < mApps.size(); i++) {
if(mApps.get(i).activityInfo.packageName.startsWith("com.nanumtip.testapp")){
isExist = true;
break;
}
}
}
catch (Exception e) {
isExist = false;
}
return isExist;
}
앱이 설치되어 있다면 앱을 실행합니다.
Intent intent = getPackageManager().getLaunchIntentForPackage("com.nanumtip.testapp");
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
앱이 설치되어 있지 않다면 앱스토어로 이동합니다.
String url = "market://details?id=" + "com.nanumtip.testapp";
Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
startActivity(i);