Android 内容提供者

内容提供者

##索要方

用法:
ContentResolver resolver=getContentResolver();获得索要方
resolver.query(uri,“列数组”,条件,条件值,排序列名)
Uri :统一资源标识符
Uri uri=Uri.parse(“conten://字符串”);

// An highlighted block
ContentResolver resolver=getContentResolver();
        Uri uri=Uri.parse("content://com.student");

        Cursor query = resolver.query(uri, new String[]{ "name", "sex ",  "department", "address"}, null, null, null, null);
        while(query.moveToNext()){

            String name = query.getString(query.getColumnIndex("name"));
            String sex = query.getString(query.getColumnIndex("sex"));

            String department = query.getString(query.getColumnIndex("department"));
            String address = query.getString(query.getColumnIndex("address"));

            Log.e("######user","--"+name+"--"+sex+"--"+"--"+department+"--"+address);

        }

##内容提供者:ContentProvider
用法:
自定义一个类继承 ContentProvider
重写6个方法

oncreate():获得SQLiteOpenHelper对象.获得数据库对象
对象.getWriteableDatabase();

getType();return null
insert():db.insert(“表名”,null,值);
delete()?“表名”,“条件”,值):
update():(“表名”,“新值”,“条件”,值)
query():(“表名”,“列名”,“条件”,值,null,null,排序列名)

清单文件:
“<“provider
android:authorities=“com.student”
android:name=”.MyContentprovider”
android:exported=“true”/>

// An highlighted block
public class MyContentprovider extends ContentProvider {
    private  MySQLiteOpenHelper mySQLiteOpenHelper;
    private SQLiteDatabase db;
    @Override
    public boolean onCreate() {

       mySQLiteOpenHelper=new MySQLiteOpenHelper(getContext());
       db = mySQLiteOpenHelper.getWritableDatabase();
        if(db!=null){
            return true;
        }else{
            return  false;
        }
    }


    @Override
    public Cursor query( Uri uri, String[] projection, String selection, String[] selectionArgs,  String sortOrder) {

        return db.query("student",projection,selection,selectionArgs,null,null,sortOrder);
    }


    @Override
    public String getType( Uri uri) {
        return null;
    }


    @Override
    public Uri insert( Uri uri, ContentValues values) {
        db.insert("student",null,values);
        return uri;
    }

    @Override
    public int delete(Uri uri,  String selection,  String[] selectionArgs) {
        return db.delete("student",selection,selectionArgs);
    }

    @Override
    public int update( Uri uri,  ContentValues values,  String selection, String[] selectionArgs) {
        return db.update("student",values,selection,selectionArgs);
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值