6.ContentProvider知识点总结

1.请介绍下ContentProvider是如何实现数据共享的。
    把自己的数据通过uri的形式共享出去
    android 系统下不同程序 数据默认是不能共享访问 

    需要去实现一个类去继承ContentProvider
    public class PersonContentProvider extends ContentProvider{
        Static{ }
    public boolean onCreate(){
        //..SqliteOpenHelper
    }
    query(Uri, String[], String, String[], String)
    insert(Uri, ContentValues)
    update(Uri, ContentValues, String, String[])
    delete(Uri, String, String[])
    }
2.为什么要用ContentProvider?它和sql的实现上有什么差别?
    屏蔽数据存储的细节,对用户透明,用户只需要关心操作数据的uri就可以了
    不同app之间共享,操作数据
    Sql也有增删改查的方法.  
    但是contentprovider 还可以去增删改查本地文件. xml文件的读取,更改,
    网络数据读取更改 
3、定义
    ContentProvider:为存储和获取数据提供统一的接口。可以在不同的应用程序之间共享数据。
    Android已经为常见的一些数据提供了默认的ContentProvider。
4、 Uri uri = Uri.parse("content://sms/");  
sms一定的知道是怎么来的 是通过查看系统短信的源码  smsProvider 得知

你可能感兴趣的:(Android面试)