如何基于文件类型打开适当的应用程序

维舒

我试图打开放置在文件夹中的文件。这个想法是提供下载的应用程序可以打开的Office文件+ pdf的最大类型。因此,我下载了14种不同的文件类型示例,例如.docx,.ppt,.pdf等。我有WPS Office作为运行这些文件的应用程序。但是问题是当我使用下面的代码时,直接在WPS Office应用程序中打开文件。如果我更改为,target.setDataAndType(Uri.fromFile(open), "application/pdf");则会显示Adobe Reader和WPS Office作为选项。有什么方法可以让我最好地选择打开文件而无需特别指定/ pdf或/ msword?这样我就可以根据输入类型获得应用列表。

Intent target = new Intent(Intent.ACTION_VIEW);
                target.setDataAndType(Uri.fromFile(open), "application/msword");
                target.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);

                Intent intent = Intent.createChooser(target, "Open File");
                try {
                    startActivity(intent);
                } catch (ActivityNotFoundException e) {
                    // Instruct the user to install a PDF reader here, or
                    // something
                    Toast.makeText(
                            getApplicationContext(),
                            "Please install proper document reader in your device to open this file",
                            Toast.LENGTH_SHORT).show();
                } 
哈维斯拉什

我假设您要使用文件扩展名打开应用程序,而不指定application / *

 File file = new File(filePath);
    MimeTypeMap map = MimeTypeMap.getSingleton();
    String ext = MimeTypeMap.getFileExtensionFromUrl(file.getName());
    String type = map.getMimeTypeFromExtension(ext);

    if (type == null)
        type = "*/*";

    Intent intent = new Intent(Intent.ACTION_VIEW);
    Uri data = Uri.fromFile(file);

    intent.setDataAndType(data, type);

    startActivity(intent);

这应该得到扩展名并打开“最佳可能”应用程序

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何拖放文件以打开应用程序?

来自分类Dev

如何配置通过拖动到应用程序的启动器可以打开哪些文件类型?

来自分类Dev

如何使用Windows Phone 8应用程序打开类型文件[假设图像]进行编辑?

来自分类Dev

使用clickonce应用程序打开文件类型(xml)

来自分类Dev

使用clickonce应用程序打开文件类型(xml)

来自分类Dev

注册应用程序支持的文件类型以打开其他应用程序中的文件

来自分类Dev

想要在Android的适当应用程序中打开下载的文件

来自分类Dev

无法在Thunderbird的适当应用程序中打开附件

来自分类Dev

无法在Thunderbird的适当应用程序中打开附件

来自分类Dev

如何使用python在非默认文件类型应用程序(浏览器)中打开HTML文件?

来自分类Dev

如何使用<a>标记从Grails应用程序打开文件?

来自分类Dev

如何使用已安装的应用程序打开文件?

来自分类Dev

如何使用cygwin中的特定应用程序打开文件?

来自分类Dev

如何使用.Jar(Java)应用程序打开文件?

来自分类Dev

Swift:如何使用关联的应用程序打开文件?

来自分类Dev

如何检测打开了哪个文件以启动应用程序

来自分类Dev

Linux如何选择打开文件的应用程序?

来自分类Dev

如何使用默认应用程序从WSL“打开”文件?

来自分类Dev

如何从NaCl开发环境应用程序中打开文件?

来自分类Dev

如何在Qt应用程序中打开文件?

来自分类Dev

如何使用默认应用程序打开文件

来自分类Dev

如何使用.Jar(Java)应用程序打开文件?

来自分类Dev

如何用notepadqq应用程序打开.cpp文件?

来自分类Dev

如何在Macbook上具有默认应用程序的文件夹中打开该文件类型的特定文件类型?

来自分类Dev

如何更改未知文件类型的默认应用程序?

来自分类Dev

如何更改未知文件类型的默认应用程序?

来自分类Dev

如何在Rails应用程序中检测文件类型?

来自分类Dev

使用uwp应用程序打开任何类型的文件(无文件关联)

来自分类Dev

打开.pdf文件时,“不支持文件类型Zip存档(应用程序/ zip)”

Related 相关文章

  1. 1

    如何拖放文件以打开应用程序?

  2. 2

    如何配置通过拖动到应用程序的启动器可以打开哪些文件类型?

  3. 3

    如何使用Windows Phone 8应用程序打开类型文件[假设图像]进行编辑?

  4. 4

    使用clickonce应用程序打开文件类型(xml)

  5. 5

    使用clickonce应用程序打开文件类型(xml)

  6. 6

    注册应用程序支持的文件类型以打开其他应用程序中的文件

  7. 7

    想要在Android的适当应用程序中打开下载的文件

  8. 8

    无法在Thunderbird的适当应用程序中打开附件

  9. 9

    无法在Thunderbird的适当应用程序中打开附件

  10. 10

    如何使用python在非默认文件类型应用程序(浏览器)中打开HTML文件?

  11. 11

    如何使用<a>标记从Grails应用程序打开文件?

  12. 12

    如何使用已安装的应用程序打开文件?

  13. 13

    如何使用cygwin中的特定应用程序打开文件?

  14. 14

    如何使用.Jar(Java)应用程序打开文件?

  15. 15

    Swift:如何使用关联的应用程序打开文件?

  16. 16

    如何检测打开了哪个文件以启动应用程序

  17. 17

    Linux如何选择打开文件的应用程序?

  18. 18

    如何使用默认应用程序从WSL“打开”文件?

  19. 19

    如何从NaCl开发环境应用程序中打开文件?

  20. 20

    如何在Qt应用程序中打开文件?

  21. 21

    如何使用默认应用程序打开文件

  22. 22

    如何使用.Jar(Java)应用程序打开文件?

  23. 23

    如何用notepadqq应用程序打开.cpp文件?

  24. 24

    如何在Macbook上具有默认应用程序的文件夹中打开该文件类型的特定文件类型?

  25. 25

    如何更改未知文件类型的默认应用程序?

  26. 26

    如何更改未知文件类型的默认应用程序?

  27. 27

    如何在Rails应用程序中检测文件类型?

  28. 28

    使用uwp应用程序打开任何类型的文件(无文件关联)

  29. 29

    打开.pdf文件时,“不支持文件类型Zip存档(应用程序/ zip)”

热门标签

归档