Android Intent Filter:无法从预览中打开音频文件?
Posted
技术标签:
【中文标题】Android Intent Filter:无法从预览中打开音频文件?【英文标题】:Android Intent Filter: Can't open audio file from preview? 【发布时间】:2020-03-29 17:08:57 【问题描述】:我希望我的 android 应用能够从 VIEW 意图打开 MP3 文件和其他一些格式。我几乎可以完成这项工作,但在某些情况下它不会出现在“打开方式...”菜单中。
例如,如果我在“文件”中选择一个 mp3 文件并选择“打开方式”,我会看到一个包含我的应用程序列表(屏幕截图中的“N-Space”)。
Screenshot
但是当我点击 mp3 文件时,它会打开一个预览。如果我从这个预览屏幕中选择“打开方式”,我会得到一组不同的应用程序,其中不包括我的。
Screenshot
为什么同一个文件会出现一组不同的应用程序?它是使用不同的 MIME 类型还是不同的操作类型?如何让我的应用显示在该列表中?
这是我清单的相关部分:
<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="file" />
<data android:scheme="http" />
<data android:scheme="https" />
<data android:scheme="content" />
<data android:mimeType="audio/mpeg" />
<data android:mimeType="audio/mp3" />
<data android:mimeType="audio/mpeg3" />
<data android:mimeType="audio/x-mpeg-3" />
<!-- ... and more for other file types -->
</intent-filter>
我不能使用audio/*
,因为我的应用只支持某些音频格式。
【问题讨论】:
【参考方案1】:事实证明,第二个“打开方式...”菜单最多显示 3 个应用程序。我卸载了其中一些,然后我的应用程序出现了。可能是错误?
【讨论】:
以上是关于Android Intent Filter:无法从预览中打开音频文件?的主要内容,如果未能解决你的问题,请参考以下文章
阅读《Android 从入门到精通》(34)——Intent Filter
阅读《Android 从入门到精通》(34)——Intent Filter
Android - 在更新SDK版本23后,使用ACTION-VIEW intent-filter添加至少一个Activity