gpt4 book ai didi

Android - 与内容提供者的 Intent 匹配

转载 作者:行者123 更新时间:2023-11-30 02:47:40 25 4
gpt4 key购买 nike

来自阅读Intent文档,我看到它可用于启动 Activity 、服务或发送广播。

我想问一下Intents和Content Provider有什么关系。我使用了日历和联系人内容提供程序(在 Common Intents 之后),但那些仍然使用 startActivity。我问是因为 PackageManager 有一个名为 queryIntentContentProviders 的 API,评论如下:

Retrieve all providers that can match the given intent.

我想问一下, Intent 与内容提供者匹配的用例是什么。

最佳答案

因为这是作为 API 级别 19 (KitKat) 的一部分添加的,所以我猜这是与 Storage Access Framework 一起使用的.

  • The interaction starts when an application (in this example, a photo app) fires the intent ACTION_OPEN_DOCUMENT or ACTION_CREATE_DOCUMENT. The intent may include filters to further refine the criteria—for example, "give me all openable files that have the 'image' MIME type."
  • Once the intent fires, the system picker goes to each registered provider and shows the user the matching content roots.

示例内容提供者定义如下:

    <provider
android:name="com.example.android.storageprovider.MyCloudProvider"
...
android:enabled="@bool/atLeastKitKat">
<intent-filter>
<action android:name="android.content.action.DOCUMENTS_PROVIDER" />
</intent-filter>
</provider>

这是迄今为止我见过的唯一一个 Intent-to-Content-Provider 匹配的例子。

实际上,我不认为 Content Provider 之前可以定义 intent-filters,尽管我可能错了。

关于Android - 与内容提供者的 Intent 匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24748661/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com