0

我想确定是否安装了任何文件管理器。如果没有安装,则提供用户安装一个。

4

1 回答 1

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)));
}
于 2014-05-03T04:31:17.390 回答