Android Intent选择设置默认应用

时间:2014-04-05 22:32:16

标签: java android android-intent filechooser

我正在开发一个Android应用程序,当用户点击链接和/或文件时,我想让他们选择他们想要用来打开该链接和/或文件的应用程序。目前它按照预期的方式工作,但我无法让用户选择一个复选框,让他们选择默认的应用程序来打开该文件,这样他们就不必每次都选择它时间。我想在对话框中有一个复选框,然后将它的值与应用程序选项一起提交给共享首选项。之后,每次单击该文件时,都会打开默认应用程序。本质上,我试图得到一个像这样的对话框,enter image description here

但我一直得到这个,

enter image description here

以下是代码:

Intent intent = new Intent(Intent.ACTION_VIEW).setDataAndType(uri, mimeChoice);
startActivity(Intent.createChooser(intent,getActivity().getString(R.string.open_with_title)));

1 个答案:

答案 0 :(得分:0)

像tambykojak指出的那样,“Android操作系统会根据您构建的意图来处理这个问题”,并且没有默认应用程序的选项。但是,您将通过gettin安装的应用程序来构建您自己的自定义对话框: 例如:

Facebook :“com.facebook.katana”; Whatsapp :“com.whatsapp”; Twitter :“com.twitter.android”; Google Play商店:“com.android.vending”; Chrome :“com.android.chrome”等...

并在偏好设置中保存“默认”选项。

更多信息:

<强> How to force Share Intent to open a specific app?

<强> How to filter specific apps for ACTION_SEND intent (and set a different text for each app)