2013-10-07 5 views
0

파일 관리자가 설치되어 있는지 확인하고 싶습니다. 설치되지 않은 경우 설치 프로그램을 설치하십시오.Android에 astro (또는 다른 파일 관리자)가 설치되어 있는지 여부를 확인하십시오.

+0

일반적으로이 작업을 수행 할 수 없습니다. PackageManager를 사용하여 알려진 특정 응용 프로그램 패키지 (Astro, Open Intents의 공식 빌드 등)의 존재 여부를 확인하거나 알려진 준 표준 의도를 처리 할 수있는 항목이 있는지 확인할 수 있습니다. –

답변

1

원하는 것을 수행하려면 확인할 각 파일 관리자의 활동 이름 및 패키지 이름 시작을 알아야합니다. 그 후 다음과 같이 할 수 있습니다.

String packageName = "com.metago.astro" 
String activityName = packageName+"."+[LaunchActivityName]; 

Intent intent = new Intent(Intent.ACTION_MAIN); 
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK); 
intent.setComponent(new ComponentName(packageName, activityName)); 
intent.addCategory("android.intent.category.LAUNCHER"); 

List<ResolveInfo> list = context.getPackageManager().queryIntentActivities(intent, 
       PackageManager.MATCH_DEFAULT_ONLY); 

if(list.size() > 0){ 
    startActivity(intent); 
}else{ 
    String googlePlayURL= "market://details?id=" + packageName; 
    startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(googlePlayURL))); 
} 
관련 문제