Android 内容提供者。。内容接收者

本文介绍了Android中的ContentProvider,它是用于安全地与其他应用共享数据的机制。首先解释了ContentProvider的基本概念,接着详细讲解如何创建ContentProvider,包括继承SQLiteOpenHelper和实现相关数据库操作。然后提到了内容接收者,即如何通过getContentResolver获取数据。最后,讨论了自定义权限的设置及其在ContentProvider中的作用。
摘要由CSDN通过智能技术生成

ContentProvider介绍

内容提供者很好理解,就是给其他的应用程序,提供一个访问我们sqlite的文件的机会.
因为涉及到数据的安全,才有了提供者和解析者.
只有提供者提供了数据,解析者才可以拿到

代码实现:

先创建一个类然后继承SQLiteOpenHelper,实现其中的方法
package com.example.mylianxiren;

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;

public class MySQLite extends SQLiteOpenHelper {

    public MySQLite(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
        super(context, name, factory, version);
    }

    @Override
    public void onCreate(SQLiteDatabase sqLiteDatabase) {
        sqLiteDatabase.execSQL("create table student(" +
                "id integer primary key autoincrement," +
                "name varchar(20)," +
                "prth varchar(30))");
    }

    @Override
    public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) {

    }
}

在oncreate中创建数据库的列表。。特别注意主键和自增(primary key,autoincrement)

创建内容提供者

右键直接创建

package com.example.app02;

import android.content.ContentProvider;
import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.net.Uri;

public class MyContentProvider extends ContentProvider {

    private SQLiteDatabase readableDatabase;

    public MyContentProvider() {
    }

    @Override
    public int delete(Uri uri, String sele
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值