"私人"意图过滤器仅供自我应用使用

Bea*_*ear 5 android intentfilter

我创建了一个文件浏览器并注册

<action android:name="android.intent.action.GET_CONTENT" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.OPENABLE" />
Run Code Online (Sandbox Code Playgroud)

但我不希望我的内部文件浏览器开始显示供用户选择何时另一个应用程序发送具有"可打开"类别的隐式意图.我怎么能这样做?我应该创建自己的动作名称吗?

我没有明确的,因为我希望用户在我的应用程序中选择其他文件浏览器.

has*_*ian 1

我同意Chris StrattonTal Kanel 的观点。但是您可以在意图过滤器中使用特定的“数据”。文档说:

仅当过滤器同样不指定任何 URI 或数据类型时,既不包含 URI 也不包含数据类型的 Intent 对象才能通过测试。

因此,如果意图具有“可打开”类别,并且没有与您的意图过滤器特定数据部分相匹配的数据部分,则您的内部文件资源管理器将不会向用户显示。