所以我一直在四处寻找,似乎无法弄清楚,或者可能是因为我在模拟器中?
基本上我正在尝试下载一个文件,然后显示一个应用程序选择器,以便用户可以自由选择要在其中打开它的应用程序。
我不确定的一件事是,您如何为 Intent 制作通配符 mime 类型?我的意思是,例如下载的文件可以作为附件由邮件客户端共享和打开,所以它真的应该支持任何东西。
为了简洁起见,下载代码工作和下载,所以假设下载完成并且文件在缓存目录中:
Intent install = new Intent(Intent.ACTION_VIEW);
// Create intent to show chooser
Intent chooser = Intent.createChooser(install, "Open in...");
// Verify the intent will resolve to at least one activity
if (install.resolveActivity(_progressDialog.getContext().getPackageManager()) != null) {
_progressDialog.getContext().startActivity(chooser);
}
我做错了什么吗?
最佳答案
我相信您还需要提供 MIME 类型,例如与
intent.setDataAndType(Uri, mimetype);
mimetype 类似于“text/plain”。您可以使用特殊方法或查找表从文件扩展名、标题中提取它(我现在不记得它是如何完成的)。
但这至少在模拟器中不起作用。
关于Android:下载文件然后显示应用程序选择器打开它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23844870/