gpt4 book ai didi

android - 具有一个 Activity 的多个文件扩展名/mimetype Intent 过滤器

转载 作者:塔克拉玛干 更新时间:2023-11-02 18:53:32 24 4
gpt4 key购买 nike

先生们,

我正在尝试获取它,以便我的 Android 应用程序可以响应正在打开的文件(通过匹配它们的扩展名)和 mime 类型(因此它们将在浏览器中运行)。

我听从了这里的建议:

Android intent filter for a particular file extension?

但仍然没有运气。

我的 android list 文件中的相关部分如下:

<activity android:name="MuPDFActivity"
android:label="@string/app_name"
android:theme="@android:style/Theme.NoTitleBar">
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<data android:mimeType="application/vnd.ms-xpsdocument"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<data android:mimeType="application/pdf"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<data android:mimeType="application/x-cbz"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:scheme="file"/>
<data android:mimeType="*/*"/>
<data android:pathPattern=".*\\.xps"/>
<data android:host="*"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:scheme="file"/>
<data android:mimeType="*/*"/>
<data android:pathPattern=".*\\.pdf"/>
<data android:host="*"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:scheme="file"/>
<data android:mimeType="*/*"/>
<data android:pathPattern=".*\\.cbz"/>
<data android:host="*"/>
</intent-filter>
</activity>

如您所见,我希望为 .pdf、.xps 和 .cbz 文件以及具有相关 mime 类型的文件调用该应用程序。此处的本地测试似乎表明 .pdf 和 application/pdf 部分都在工作,但尽我所能尝试,.xps(可能还有 .cbz)部分不起作用。

我在这里遗漏了什么明显的东西吗?每个 Activity 只能有一个 mimetype/文件模式吗?

如有任何帮助,我们将不胜感激。

谢谢,

罗宾

最佳答案

afaik,那更像是那样(一个具有各种值的过滤器):

 <intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<data android:mimeType="application/vnd.ms-xpsdocument"/>
<data android:mimeType="application/pdf"/>
</intent-filter>

另外,会不会是mime类型不对?

关于android - 具有一个 Activity 的多个文件扩展名/mimetype Intent 过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9215631/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com