为什么我的应用程序列表中的app只能打开pdf文件?

时间:2013-11-13 08:35:39

标签: android

我有一个pdf阅读器应用程序,旨在提供选择选项,以在应用程序中打开系统中的任何pdf文件。我已经提到了以下链接: Why isn't my app on the list of apps to open txt file? 我只是希望我的应用程序位于仅打开pdf文件的列表中,但现在我的应用程序位于每种类型文件的列表中。我确实有,但我想知道是否应该指定mimeType。我应该怎么做才能限制我的应用程序只出现在打开的pdf文件列表中?

感谢高级, AA

1 个答案:

答案 0 :(得分:1)

我曾经写过类似的应用程序。我发布了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>