ContentProvider共享数据

ContentProvider在android中的作用是对外共享数据,可以通过ContentProvider把应用中的数据共享给其他应用访问,其他应用可以通过ContentProvider对你应用中的数据进行增删改查。

使用ContentProvider进行数据共享的最大好处是统一了数据的访问方式。

 

当应用需要通过ContentProvider对外共享数据时,第一步需要继承ContentProvider并重写下面方法:

public class PersonContentProvider extends ContentProvider{

   public boolean onCreate()

   public Uri insert(Uri uri, ContentValues values)

   public int delete(Uri uri, String selection, String[] selectionArgs)

   public int update(Uri uri, ContentValues values, String selection, String[] selectionArgs)

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

   public String getType(Uri uri)}

第二步需要在AndroidManifest.xml使用<provider>对该ContentProvider进行配置,为了能让其他应用找到该ContentProvider , ContentProvider 采用了authorities(主机名/域名)对它进行唯一标识,你可以把 ContentProvider看作是一个网站(想想,网站也是提供数据者),authorities 就是他的域名:

<manifest .... >

    <application android:icon="@drawable/icon" android:label="@string/app_name">

        <provider android:name=".PersonContentProvider" android:authorities="cn.howay.providers.personprovider"/>

    </application>

</manifest>

 ContentProvider类的主要方法的作用:

public boolean onCreate()----在其它应用第一次访问它时才被创建。

public Uri insert(Uri uri,ContentValues values)---外部应用往ContentProvider中添加数据

public int delete(Uri uri,String selection,String[] selctionArgs)---外部应用从Contentprovider中删除数据

public int update(Uri uri,ContentValues values,String selection,String[] selectionArgs)---外部应用更新Contentprovider中的数据

public Cursor query(Uri uri,String[] projection,String selection,String[] selectionArgs,String sortOrder)---外部应用从Contentprovider中获取数据

public String getType(Uri uri)---返回当前的Uri所代表数据的MIME类型

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值