将某些文件扩展名与我的Android应用程序关联
作者:互联网
我无法将自定义文件扩展名与我正在开发的Android应用程序相关联.在我的Android清单文件中,我有以下内容:
<data android:scheme="file" android:mimeType="*/*" android:pathPattern="*.*\\.myFileExt" />
<data android:scheme="content" android:mimeType="*/*" android:pathPattern="*.*\\.myFileExt" />
它有点工作.让我解释.我的gmail中有一个文件(发送给我自己的文件),它有适当的扩展名,所以当我从手机的浏览器下载并单击打开时,它会正确打开我的应用程序,但是如果我探索该文件路径;文件所在的位置,并尝试打开它,我的手机说没有应用程序可以打开此文件类型.
关于如何解决这个问题的任何想法?
解决方法:
有些情况有点棘手,我已决定使用:
<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="file" />
<data android:mimeType="*/*" />
<data android:pathPattern=".*\\.myFileExt" />
<data android:host="*" />
</intent-filter>
这有时会失败,因为有时只使用更全局的mime类型(在我的例子中是XML):
<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="text/xml" />
</intent-filter>
标签:android,android-manifest,file-extension 来源: https://codeday.me/bug/20190929/1829963.html