数据库存取操作,ContentProvider和ContentResolver

        Android系统一共提供了四种数据存储方式。分别是:SharePreference、SQLite、Content Provider和File。由于Android系统中,数据基本都是私有的,都是存放于“data/data/程序包名”目录下,所以要实现数据共享,正确方式是使用Content Provider,读取系统浏览器中存储的书签历史的数据也是采用这种方法。

   一个Content Provider类实现了一组标准的方法接口,外界可以通过这一套标准及统一的接口和程序里的数据打交道。通过ContentResolver接口可以访问ContentProvider提供的数据。

常见的接口:

    通过Uri进行查询,返回一个Cursor:

Query(Uri uri, String[] projection, String selection, String[] selectionArgs,String sortOrder);

    将一组数据插入到Uri指定的地方:

Insert(Uri url, ContentValues values);

    更新Uri指定位置的数据

Update(Uri uri, ContentValues values, String where, String[] selectionArgs);

    删除指定Uri并且符合一定条件的数据:

delete(Uri url, String where, String[] selectionArgs)

 

用到的Uri

    在ContentProvider和 ContentResolver当中用到了Uri的形式通常有两种,一种是指定全部数据,另一种是指定某个ID的数据.

    在Uri.parse("content://com.android.browser/bookmarks")中能读取到bookmarks、url、title、folder、parent、favicon等信息。

你可能感兴趣的:(android开发笔记整理)