android:在浏览器中从Web下载文件时,设置意图过滤器以激发活动的问题

问题描述

|| 我在启动活动以响应从浏览器窗口下载文件时遇到问题。 当我单击浏览器中的文件下载按钮时,它会下载到SD卡,而不是关闭MainActivity(甚至提示我该怎么做)。 然后,如果我使用文件浏览器在SD卡上找到文件并选择它,则启动我的MainActivity。 我是否误解了意图过滤器的工作原理?我已经使用PC上的wirehark验证了下载文件的mime类型,以验证它是否符合预期。 [如果我删除PathPattern并简单地设置了mime类型,那么当按下下载按钮时,系统会提示我说设备上没有任何文件可以处理此文件,我还是要继续下载。 任何帮助,将不胜感激。 这是我清单中的条目:
 <activity android:name=\".activity.main.MainActivity\"
           android:label=\"@string/app_name\">

     <intent-filter>
        <action android:name=\"android.intent.action.MAIN\" />
        <category android:name=\"android.intent.category.LAUNCHER\" />
     </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:mimeType=\"application/xml-mydata\" 
              android:pathPattern=\".*\\\\.mydata\" />
     </intent-filter>
  </activity>
    

解决方法

从概念上讲,您的情况似乎不错,尽管我会抛弃ѭ1。这是一个示例项目,演示了这类
<intent-filter>
元素。 我将确保您的MIME类型具有有效的语法。如果允许破折号,我会忘了头顶。     

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...