我已经编写了以下意图过滤器来使用我的应用程序打开一个文本文件。它似乎有效,但只是有时。例如,如果我通过电子邮件发送文本文件,如果我选择从邮件中打开,我的应用程序不会显示。如果我先选择保存,然后打开,将显示我的应用程序。与投递箱类似的经验,如果我尝试从投递箱打开,我的应用程序将不会被列为能够打开,但如果我从投递箱导出到 sd 并使用文件管理器打开它,我的应用程序将被列出并且作品。
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</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="http" android:host="*" android:pathPattern=".*\\.txt" />
<data android:scheme="https" android:host="*" android:pathPattern=".*\\.txt" />
<!-- <data android:scheme="content" android:host="*" android:pathPattern=".*\\.txt" /> -->
<data android:scheme="file" android:host="*" android:mimeType="*/*" android:pathPattern=".*\\.txt" />
</intent-filter>