我有一个 pdf 阅读器应用程序,旨在提供选择选项以在应用程序内打开系统中的任何 pdf 文件。我已经参考了以下链接: 为什么我的应用程序不在打开 txt 文件的应用程序列表中? 我只希望我的应用程序出现在仅打开 pdf 文件的列表中,但现在我的应用程序出现在每种文件类型的列表中。我确实有,但我想知道是否应该指定 mimeType。我应该怎么做才能将我的应用程序限制为仅出现在打开的 pdf 文件列表中?
感谢高级,AA。
我有一个 pdf 阅读器应用程序,旨在提供选择选项以在应用程序内打开系统中的任何 pdf 文件。我已经参考了以下链接: 为什么我的应用程序不在打开 txt 文件的应用程序列表中? 我只希望我的应用程序出现在仅打开 pdf 文件的列表中,但现在我的应用程序出现在每种文件类型的列表中。我确实有,但我想知道是否应该指定 mimeType。我应该怎么做才能将我的应用程序限制为仅出现在打开的 pdf 文件列表中?
感谢高级,AA。
我曾经写过一个类似的应用程序。我发布了我的 AndroidManifest.xml 片段供您参考:
<activity
android:name=".OpenFileActivity"
android:configChanges="orientation|keyboardHidden"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.VIEW" >
</action>
<category android:name="android.intent.category.DEFAULT" >
</category>
<category android:name="android.intent.category.BROWSABLE" >
</category>
<data
android:mimeType="application/pdf"
android:scheme="file" >
</data>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" >
</action>
<category android:name="android.intent.category.DEFAULT" >
</category>
<category android:name="android.intent.category.BROWSABLE" >
</category>
<data
android:mimeType="application/pdf"
android:scheme="content" >
</data>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" >
</action>
<category android:name="android.intent.category.DEFAULT" >
</category>
<category android:name="android.intent.category.BROWSABLE" >
</category>
<data
android:host="*"
android:pathPattern=".*\.[pP][dD][fF]"
android:scheme="file" />
</intent-filter>
</activity>