Android之ContentProvider

刚开始看到ContentProvider的时候,看得云里雾里,就没有耐心看下去了。但是后面需要用到才认真看了一下。就用最简洁的话描述我眼中的ContentProvider。

当A程序要访问B程序的数据的时候(不管是数据库、文件亦或是网络存储),那么B程序必须要实现ContentProvider接口(B也就是内容提供者)。A程序使用ContentResolver cr = getContentResolver();来访问B程序暴露的数据。

由B程序实现ContentProvider类,里面包括常用的query、insert、delete、update这些数据操作接口。那么程序A使用cr也有对应的接口来访问和操作B的数据。

典型的是getContentresolver().insert(String url, ContentValues values);这个url是需要B实现的时候提供的,要不然A怎么访问到B的数据呢。values就是A想插入到B数据库中的数据。

A:ContentResolver------> B:ContentProvider

只要抓住上面的主线就可以比较清楚的明白他们的实现了。多找些程序看看就比较清楚了。

你可能感兴趣的:(Android之ContentProvider)