【ContentProvider内容提供者】数据与界面分开(不同应用程序)
1,内容提供者是Android中的四大组件之一,可以将应用中的数据对外进行共享
,2,内容提供者将数据封装,只暴露出我们希望提供给其他程序的数据(相当于java类的公有方法私有属性的封装)
,3,内容提供者将数据的访问方式统一,不必针对不同数据类型采取不同的访问策略
,4,内容提供者中数据更改可被监听
创建ContentProvider:
public class Provider extends ContentProvider {
@Override
public boolean onCreate() {
System.out.println("创建");
return false;
}
@Override
public Cursor query(Uri uri, String[] projection, String selection,
String[] selectionArgs, String sortOrder) {
System.out.println("查询");
return null;
}
@Override
public String getType(Uri uri) {
System.out.println("获取类型");
return null;
}
@Override
public Uri insert(Uri uri, ContentValues values) {
System.out.println("插入");
return null;
}
@Override
public int delete(Uri uri, String selection, String[] selectionArgs) {
System.out.println("删除");
return 0;
}
@Override
public int update(Uri uri, ContentValues values, String selection,
String[] selectionArgs) {
System.out.println("更新");
return 0;
}
}
1,内容提供者是Android中的四大组件之一,可以将应用中的数据对外进行共享
,2,内容提供者将数据封装,只暴露出我们希望提供给其他程序的数据(相当于java类的公有方法私有属性的封装)
,3,内容提供者将数据的访问方式统一,不必针对不同数据类型采取不同的访问策略
,4,内容提供者中数据更改可被监听
创建ContentProvider:
public class Provider extends ContentProvider {
@Override
public boolean onCreate() {
System.out.println("创建");
return false;
}
@Override
public Cursor query(Uri uri, String[] projection, String selection,
String[] selectionArgs, String sortOrder) {
System.out.println("查询");
return null;
}
@Override
public String getType(Uri uri) {
System.out.println("获取类型");
return null;
}
@Override
public Uri insert(Uri uri, ContentValues values) {
System.out.println("插入");
return null;
}
@Override
public int delete(Uri uri, String selection, String[] selectionArgs) {
System.out.println("删除");
return 0;
}
@Override
public int update(Uri uri, ContentValues values, String selection,
String[] selectionArgs) {
System.out.println("更新");
return 0;
}
}