【问题标题】:Associate App with file extension - Intent filter Not working?将应用程序与文件扩展名关联 - 意图过滤器不起作用?
【发布时间】:2013-03-04 18:55:25
【问题描述】:

我希望我的应用程序能够在 android 环境中的任何位置打开 pdf 文件。我环顾四周,并根据我所读到的内容添加了这些意图。但是,在测试和打开 pdf 时,它只是使用默认应用程序 Polaris 打开它?

据我了解,在活动中我使用下面的代码来获取传入的信息。

Intent intent = getIntent();
String action = intent.getAction();
String type = intent.getType();

我尝试禁用 Polaris,然后在打开时显示无法找到执行此应用程序的应用程序。

<activity
        android:name=".UserLogIn"
        android:label="User Authentication" >
        <intent-filter>
            <action android:name="com.example.USERLOGIN" />

            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
        <intent-filter>
            <action android:name="android.intent.action.VIEW" />

            <category android:name="android.intent.category.BROWSABLE" />
            <category android:name="android.intent.category.DEFAULT" />

            <data android:scheme="http" />
            <data android:host="*" />
            <data android:pathPattern=".*\\.pdf" />
        </intent-filter>
        <intent-filter>
            <action android:name="android.intent.action.VIEW" />

            <category android:name="android.intent.category.BROWSABLE" />
            <category android:name="android.intent.category.DEFAULT" />

            <data android:scheme="http" />
            <data android:host="*" />
            <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:scheme="file" />
            <data android:host="*" />
            <data android:pathPattern=".*\\.pdf" />
        </intent-filter>
</activity>

【问题讨论】:

    标签: java android pdf android-intent associate


    【解决方案1】:

    这对我有用:

        <activity
            android:name=".ui.PdfViewerActivity" >
            <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:mimeType="application/pdf" />
            </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:host="*" />
                <data android:scheme="file" />
                <data android:scheme="smb" />
                <data android:scheme="content" />
                <data android:scheme="http" />
                <data android:scheme="https" />
                <data android:mimeType="*/*" />
                <data android:pathPattern=".*\\.pdf" />
            </intent-filter>
        </activity>
    

    【讨论】:

      猜你喜欢
      • 2011-04-15
      • 2011-02-10
      • 1970-01-01
      • 2018-01-13
      • 2015-12-07
      • 1970-01-01
      • 1970-01-01
      • 2015-05-27
      相关资源
      最近更新 更多