0

我有一个 pdf 阅读器应用程序,旨在提供选择选项以在应用程序内打开系统中的任何 pdf 文件。我已经参考了以下链接: 为什么我的应用程序不在打开 txt 文件的应用程序列表中? 我只希望我的应用程序出现在仅打开 pdf 文件的列表中,但现在我的应用程序出现在每种文件类型的列表中。我确实有,但我想知道是否应该指定 mimeType。我应该怎么做才能将我的应用程序限制为仅出现在打开的 pdf 文件列表中?

感谢高级,AA。

4

1 回答 1

3

我曾经写过一个类似的应用程序。我发布了我的 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>
于 2013-11-13T09:02:17.553 回答