什么是ContentProvider,它通常用于什么?

时间:2017-01-04 06:01:10

标签: android android-contentprovider

我是Android开发的初学者,需要有关 ContentProvider 的帮助。

public class My Application extends  ContentProvider {}

4 个答案:

答案 0 :(得分:6)

ContentProvider管理对结构化数据集的访问。它封装了数据并提供了定义数据安全性的机制。 ContentProvider是一个标准接口,它将一个进程中的数据与另一个进程中运行的代码连接起来。

enter image description here

请参考以下链接,

https://developer.android.com/guide/topics/providers/content-provider-creating.html

https://www.tutorialspoint.com/android/android_content_providers.htm

答案 1 :(得分:1)

内容提供商组件根据请求将数据从一个应用程序提供给其他应用程序。一个应用程序无法直接访问(读/写)其他应用程序的数据。每个应用程序都有自己的id数据目录和自己的受保护内存区域。 内容提供商是跨应用程序共享数据的最佳方式。内容提供程序是一组数据,包含在自定义API中以进行读写。应用程序/进程必须将自己注册为数据提供者。 用简单的语言你可以说内容提供者是一个公开他的属性的共享数据库,代表它们,其他应用程序可以根据实现权限访问和存储数据

答案 2 :(得分:0)

ContentProvider主要用于从一个应用程序到另一个应用程序的访问数据。

例如,通过使用ContentProvider,我们可以获得手机联系人,从手机呼叫日志到我们自己的android应用程序。我们也可以访问存储在(sqlite)数据库中的数据。

答案 3 :(得分:0)

内容提供商可以帮助应用程序管理对自己存储的数据的访问,由其他应用程序存储,并提供与其他应用程序共享数据的方式。它们封装了数据,并提供了定义数据安全性的机制。内容提供程序是将一个进程中的数据与另一个进程中运行的代码连接起来的标准接口。实现内容提供商具有许多优点。最重要的是,您可以配置内容提供商,以允许其他应用程序安全地访问和修改您的应用程序数据。 并不是说它们仅用于与其他应用程序共享数据。您仍然可以使用它们,因为它们提供了很好的抽象,但您不必与其他应用程序共享数据。此抽象允许您对应用程序数据存储实现进行修改,而不会影响依赖于访问数据的其他现有应用程序

您可以从documentation获取更多信息。