Java 如何在Android中为文件创建隐式意图
我在外部存储器上有一个Java 如何在Android中为文件创建隐式意图,java,android,Java,Android,我在外部存储器上有一个XML文件,我有不同的应用程序可以打开这种文件格式 为了找到要打开XML文件的应用程序,我将发送这样的隐式意图: public static boolean isIntentAvailable(Context context, Intent intent) { List<ResolveInfo> list = context.getPackageManager().queryIntentActivities(intent, Pac
XML
文件,我有不同的应用程序可以打开这种文件格式
为了找到要打开XML
文件的应用程序,我将发送这样的隐式意图:
public static boolean isIntentAvailable(Context context, Intent intent) {
List<ResolveInfo> list = context.getPackageManager().queryIntentActivities(intent,
PackageManager.MATCH_DEFAULT_ONLY);
return !list.isEmpty();
}
但它不起作用。。。我如何才能正确地创建此意图?您可以这样做:
File file = new File("path to file");
//checking if the File exists
if (file.exists()) {
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.fromFile(file), "text/xml");
//checking if an Activity exists that can handle this Intent
if (intent.resolveActivity(getPackageManager()) != null) {
startActivity(intent);
}
}
你可以这样做:
File file = new File("path to file");
//checking if the File exists
if (file.exists()) {
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.fromFile(file), "text/xml");
//checking if an Activity exists that can handle this Intent
if (intent.resolveActivity(getPackageManager()) != null) {
startActivity(intent);
}
}