【问题标题】:How can I list my app for download files?如何列出我的应用程序以供下载文件?
【发布时间】:2015-08-17 04:18:08
【问题描述】:

我想通过我的应用程序从浏览器下载文件。我正在尝试在complete action using 对话框中列出我的应用程序。它显示其他操作,如查看文件等,但在下载文件的情况下,它不会显示在对话框中。如何在图片中列出我的应用?

我在我的活动中使用了这些过滤器

<intent-filter> <action android:name="android.intent.action.SEND" /> <action android:name="android.intent.action.VIEW"/> <category android:name="android.intent.category.OPENABLE"/> <category android:name="android.intent.category.BROWSABLE"/> <category android:name="android.intent.category.DEFAULT"/> <data android:mimeType="*/*"/>

【问题讨论】:

  • @Nilesh,如何使用意图过滤器来做到这一点?

标签: android browser download


【解决方案1】:

我已经通过添加这些过滤器来做到这一点,现在它适用于所有情况。

 <intent-filter>
            <action
                android:name="android.intent.action.MAIN"/>
            <category
                android:name="android.intent.category.DEFAULT"/>
            <category
                android:name="android.intent.category.LAUNCHER"/>
            <category
                android:name="android.intent.category.BROWSABLE"/>
            <category
                android:name="android.intent.category.APP_BROWSER"/>
            <category
                android:name="android.intent.category.NOTIFICATION_PREFERENCES"/>
        </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="googlechrome"/>
            <data
                android:scheme="http"/>
            <data
                android:scheme="https"/>
            <data
                android:scheme="about"/>
            <data
                android:scheme="javascript"/>
        </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="googlechrome"/>
            <data
                android:scheme="http"/>
            <data
                android:scheme="https"/>
            <data
                android:scheme="about"/>
            <data
                android:scheme="content"/>
            <data
                android:scheme="javascript"/>
            <data
                android:mimeType="text/html"/>
            <data
                android:mimeType="text/plain"/>
            <data
                android:mimeType="application/xhtml+xml"/>
        </intent-filter>
        <intent-filter>
            <action
                android:name="android.intent.action.VIEW"/>
            <category
                android:name="android.intent.category.DEFAULT"/>
            <data
                android:mimeType="multipart/related"
                android:scheme="file"/>
        </intent-filter>
        <intent-filter>
            <action
                android:name="android.intent.action.MEDIA_SEARCH"/>
            <category
                android:name="android.intent.category.DEFAULT"/>
        </intent-filter>
        <intent-filter>
            <action
                android:name="android.speech.action.VOICE_SEARCH_RESULTS"/>
            <category
                android:name="android.intent.category.DEFAULT"/>
        </intent-filter>
        <intent-filter
            android:priority="-101">
            <action
                android:name="android.nfc.action.NDEF_DISCOVERED"/>
            <category
                android:name="android.intent.category.DEFAULT"/>
            <data
                android:scheme="http"/>
            <data
                android:scheme="https"/>
        </intent-filter>
        <intent-filter>
            <action
                android:name="android.intent.action.SEARCH"/>
        </intent-filter>
        <intent-filter>
            <action
                android:name="com.sec.android.airview.HOVER"/>
        </intent-filter>

【讨论】:

    【解决方案2】:

    &lt;intent-filter&gt; 标签内添加这两个标签

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

    【讨论】:

    • @Umesh Aawte ,这将在对话框中列出您的应用
    【解决方案3】:

    将此代码添加到manifest 中的launcher activity 标记中。

      <activity
        android:name=".YourActivity"
        android:theme="@style/AppTheme.NoActionBar">
    
        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />
        </intent-filter>
    
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    
        </activity>
    

    【讨论】:

      【解决方案4】:

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-09-03
        • 1970-01-01
        • 1970-01-01
        • 2017-01-16
        • 1970-01-01
        • 1970-01-01
        • 2012-08-12
        相关资源
        最近更新 更多