如何为pdf,xlsx和txt文件android制作intent.setType?

如何为pdf,xlsx和txt文件android制作intent.setType?,第1张

概述我想从存储中仅选择pdf,xlsx和txt文件,但intent.setType只能执行一个文件(仅限eg.txt文件(或)pdf文件).是否可以通过编码intent.setType()来获取所有三个文件,并且有办法吗?这是我的一些代码.privatevoidshowFileChooser(){Intentintent=newIntent(Intent.ACTION_G

我想从存储中仅选择pdf,xlsx和txt文件,但intent.setType只能执行一个文件(仅限eg.txt文件(或)pdf文件).是否可以通过编码intent.setType()来获取所有三个文件,并且有办法吗?

这是我的一些代码.

  private voID showfileChooser() {    Intent intent = new Intent(Intent.ACTION_GET_CONTENT);    intent.setType("application/pdf");    intent.addcategory(Intent.category_OPENABLE);    try {        startActivityForResult(                Intent.createChooser(intent, "Select txt file"),                0);    } catch (androID.content.ActivityNotFoundException ex) {        // Potentially direct the user to the Market with a Dialog    }}

解决方法:

@Fatehali Asamadi的方式还可以,但需要添加一些适当的用途.
对于Microsoft文档,使用(.doc或.docx),(.pt或.pptx),(.xls或.xlsx)扩展名.要支持或浏览这些扩展,您需要添加更多mimeTypes.

使用以下方法浏览REQUEST_CODE_DOC为onActivityResult(final int requestCode,final int resultCode,final Intent data)@OverrIDe方法的requestCode的文档.

private voID browsedocuments(){    String[] mimeTypes =            {"application/msword","application/vnd.openxmlformats-officedocument.wordprocessingml.document", // .doc & .docx                    "application/vnd.ms-powerpoint","application/vnd.openxmlformats-officedocument.presentationml.presentation", // .ppt & .pptx                    "application/vnd.ms-excel","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", // .xls & .xlsx                    "text/plain",                    "application/pdf",                    "application/zip"};    Intent intent = new Intent(Intent.ACTION_GET_CONTENT);    intent.addcategory(Intent.category_OPENABLE);    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {        intent.setType(mimeTypes.length == 1 ? mimeTypes[0] : "*/*");        if (mimeTypes.length > 0) {            intent.putExtra(Intent.EXTRA_MIME_TYPES, mimeTypes);        }    } else {        String mimeTypesstr = "";        for (String mimeType : mimeTypes) {            mimeTypesstr += mimeType + "|";        }        intent.setType(mimeTypesstr.substring(0,mimeTypesstr.length() - 1));    }    startActivityForResult(Intent.createChooser(intent,"Choosefile"), REQUEST_CODE_DOC);}

您可以获得清晰的概念并添加Here所需的mimeTypes

总结

以上是内存溢出为你收集整理的如何为pdf,xlsx和txt文件android制作intent.setType?全部内容,希望文章能够帮你解决如何为pdf,xlsx和txt文件android制作intent.setType?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1102172.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存