WEB开发网
开发学院手机开发Android 开发 Android 数据存储之 ContentProvider 阅读

Android 数据存储之 ContentProvider

 2010-03-03 16:44:00 来源:WEB开发网   
核心提示:和ContentUris ,掌握它们的使用,Android 数据存储之 ContentProvider(2),会便于我们的开发工作,UriMatcher:用于匹配Uri,来操作数据,四、ContentProvider示例程序我们为昨天的SQLite示例程序添加一个ContentProvider,它的用法如下:1.首先把
和ContentUris 。掌握它们的使用,会便于我们的开发工作。

UriMatcher:用于匹配Uri,它的用法如下:

1.首先把你需要匹配Uri路径全部给注册上,如下:

//常量UriMatcher.NO_MATCH表示不匹配任何路径的返回码(-1)。

UriMatcher uriMatcher = new UriMatcher(UriMatcher.NO_MATCH);

//如果match()方法匹配content://com.changcheng.sqlite.provider.contactprovider/contact路径,返回匹配码为1

uriMatcher.addURI(“com.changcheng.sqlite.provider.contactprovider”, “contact”, 1);//添加需要匹配uri,如果匹配就会返回匹配码

//如果match()方法匹配 content://com.changcheng.sqlite.provider.contactprovider/contact/230路径,返回匹配码为2

uriMatcher.addURI(“com.changcheng.sqlite.provider.contactprovider”, “contact/#”, 2);//#号为通配符

2.注册完需要匹配的Uri后,就可以使用uriMatcher.match(uri)方法对输入的Uri进行匹配,如果匹配就返回匹配码,匹配码是调用addURI()方法传入的第三个参数,假设匹配content://com.changcheng.sqlite.provider.contactprovider/contact路径,返回的匹配码为1。

ContentUris:用于获取Uri路径后面的ID部分,它有两个比较实用的方法:

· withAppendedId(uri, id)用于为路径加上ID部分

· parseId(uri)方法用于从路径中获取ID部分

ContentResolver:当外部应用需要对ContentProvider中的数据进行添加、删除、修改和查询操作时,可以使用ContentResolver 类来完成,要获取ContentResolver 对象,可以使用Activity提供的getContentResolver()方法。 ContentResolver使用insert、delete、update、query方法,来操作数据。

四、ContentProvider示例程序

我们为昨天的SQLite示例程序添加一个ContentProvider,供其他应用来访问我们的数据。

1.为SQLite示例程序添加ContentProvider类

package com.changcheng.sqlite.provider;

import com.changcheng.sqlite.MyOpenHelper;

import android.content.ContentProvider;

import android.content.ContentUris;

import android.content.ContentValues;

import android.content.UriMatcher;

上一页  1 2 3 4 5 6  下一页

Tags:Android 数据 存储

编辑录入:coldstar [复制链接] [打 印]
赞助商链接