内容提供器究竟如何在表层下保存它的数据依赖于它的设计者。
但是所有的内容提供器实现了一个公共的接口来查询这个提供器和返回结果-增加,替换,和删除数据也是一样。
这是一个客户端直接使用的接口,一般是通过ContentResolver 对象。
你可以通过getContentResolver()从一个活动或其它应用程序组件的实现里获取一个ContentResolver:ContentResolver cr = getContentResolver();
然后你可以使用这个ContentResolver 的方法来和你感兴趣的任何内容提供器交互。
当初始化一个查询时,Android 系统识别查询目标的内容提供器并确保它正在运行。
系统实例化所有的ContentProvider 对象;你从来不需要自己做。事实上,你从来不会直接处理ContentProvider 对象。
通常,对于每个类型的ContentProvider 只有一个简单的实例。
但它能够和不同应用程序和进程中的多个ContentProvider 对象通讯。
进程间的交互通过ContentResolver 和ContentProvider 类处理。