我需要在我的应用中快速打开我的.doc文件,而不需要寻找合适的应用(选项)。
我在这里使用了这个
Intent intent = new Intent();
intent.setAction(android.content.Intent.ACTION_VIEW);
Uri uri = Uri.fromFile(file);
//String type = MimeTypeMap.getSingleton().getMimeTypeFromExtension(
// MimeTypeMap.getFileExtensionFromUrl(uri.toString()));
//intent.setDataAndType(uri, type == null ? "*/*" : type);
intent.setDataAndType(uri, "application/msword");
startActivity((Intent.createChooser(intent,
getString(R.string.open_using))));
此代码显示了我不需要的合适目标应用
答案 0 :(得分:1)
删除createChooser调用,并将意图传递给startActivity。然后它将打开mime类型的默认应用程序,假设设置了一个。如果没有设置,它仍然可以在那些声称可以打开它的应用程序中弹出一个选择器。如果你只想打开快速办公室,你可以按活动名称这样做,但如果没有安装快速办公室,它将失败(并可能抛出异常)。
答案 1 :(得分:0)
它对我有用。
PackageManager packageManager = getPackageManager();
Intent quickOffice = packageManager
.getLaunchIntentForPackage("com.quickoffice.android");
File sdcard = Environment.getExternalStorageDirectory();
//your file location
File file = new File(sdcard, "Meta Data.doc");
Uri path = Uri.fromFile(file);
quickOffice.setAction(Intent.ACTION_VIEW);
quickOffice.setDataAndType(path, "application/msword");// ---->application/msword
startActivity(quickOffice);