• 16 Content Provider总结


    第16天

    Content Provider

    一, 什么是Content Provider?

    内容提供者 Android四大主件之一 :短信记录 通讯录 联系人 自定义

    >Content Provider  所有程序间数据的存储和检索的桥梁 把各个程序里的数据共享 
    各个程序间  数据共享的唯一途径 (Android  没有提供一块独立的空间  将各个程序的数据共享  
    只能通过  内容提供者  共享数据)
    

    二, 作用

    将自己程序的私有数据 提供里一套对外的访问接口(增,删,改,查)
    是基于Uri向外提供数据访问接口

    使用:
    Content Provider 提供私有数据
    Uri:统一资源标识符  (路径)
    ContentResolver:内容解析器 
    

    三,URI 统一资源标识符
    格式:content://应用程序包名.provider/表名(一般情况)

    四, 访问Content Provider 提供的数据

    1,获取CntentResolver对象
    2,通过CntentResolver对象 增删改查

    五,联系人的数据库文件的位置
    /data/data/com.android.providers.contacts/databases.contacts2.db
    六,数据库中重要的几张表
    主要包含三张表,contacts,raw_contacts,data

    contacts表:contacts表中一条记录对应联系人列表中的一个联系人
    (通过可能包含多个联系人的信息),此表不可直接插入联系人。
    它是raw_contacts表记录的整合
    
    raw_contacts表:未经处理的联系人,当插入一个联系人时,
    系统会检测当前表中是否有存在相同号码、姓名的联系人,
    根据用户设置是否聚合,将可以整合的记录指向同一个contact_id
    
    data表:data表中的记录仅仅保存的是某一种类型的数据,
    里面有一个地段mimetype_id,
    用来关联mimetype表中的类型
    ,一个raw_contact一般会对应多条data记录
    

    Uri:
    // ContentResolver是通过uri来获取数据的,
    // 电话号有电话号的uri
    // 邮箱有邮箱的uri
    // data有data的uri
    // 这一系列uri是contentprovider自己定义的,我们只是调用
    private static String uri_rawcontacts = “content://com.android.contacts/raw_contacts”;
    private static String uri_contacts_phones = “content://com.android.contacts/data/phones”;
    private static String uri_contacts_emails = “content://com.android.contacts/data/emails”;
    private static String uri_contacts_data = “content://com.android.contacts/data”;

    类型:
    vnd.android.cursor.item/name
    vnd.android.cursor.item/phone_v2
    vnd.android.cursor.item/email_v2

    附上URi地址图:这里写图片描述

  • 相关阅读:
    Java基础之IO流,使用File类以树形结构打印指定文件目录
    Java基础之IO流,以字节流的方式操作读写文件FileOutputStream和FileInputStream的使用
    Java基础之IO流,自定义字节流缓冲区装饰类(模仿)
    Java基础之IO流,转换流应用InputStreamReader,OutputStreamWriter
    碰撞处理游戏的原型
    flash中物体运动基础之六方向与角度
    flash中物体运动基础之七碰撞处理
    推导坐标旋转公式
    flash中物体运动基础之一匀速运动
    flash中物体运动基础之五障碍物
  • 原文地址:https://www.cnblogs.com/muyuge/p/6152245.html
Copyright © 2020-2023  润新知