│ ├────Phones
│ └────Photos
├────Images
│ └────Thumbnails
├────MediaStore
│ ├────Albums
│ ├────Artists
│ ├────Audio
│ ├────Genres
│ └────Playlists
├────Settings
└────Video
CallLog:地址和接收到的电话信息
Contact.People.Phones:存储电话号码
Setting.System:系统设置和偏好设置
使用Content Provider对外共享数据的步骤
1>继承ContentProvider类并根据需求重写以下方法:
public boolean onCreate();//处理初始化操作 /** * 插入数据到内容提供者(允许其他应用向你的应用中插入数据时重写) * @param uri * @param initialValues 插入的数据 * @return */ public Uri insert(Uri uri, ContentValues initialValues); /** * 从内容提供者中删除数据(允许其他应用删除你应用的数据时重写) * @param uri * @param selection 条件语句 * @param selectionArgs 参数 * @return */ public int delete(Uri uri, String selection, String[] selectionArgs); /** * 更新内容提供者已存在的数据(允许其他应用更新你应用的数据时重写) * @param uri * @param values 更新的数据 * @param selection 条件语句 * @param selectionArgs 参数 * @return */ public int update(Uri uri, ContentValues values, String selection, String[] selectionArgs); /** * 返回数据给调用者(允许其他应用从你的应用中获取数据时重写) * @param uri * @param projection 列名 * @param selection 条件语句 * @param selectionArgs 参数 * @param sortOrder 排序 * @return */ public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) ; /** * 用于返回当前Uri所代表数据的MIME类型 * 如果操作的数据为集合类型(多条数据),那么返回的类型字符串应该为vnd.android.cursor.dir/开头 * 例如要得到所有person记录的Uri为content://com.bravestarr.provider.personprovider/person, * 那么返回的MIME类型字符串应该为"vnd.android.cursor.dir/person" * 如果操作的数据为单一数据,那么返回的类型字符串应该为vnd.android.cursor.item/开头 * 例如要得到id为10的person记录的Uri为content://com.bravestarr.provider.personprovider/person/10, * 那么返回的MIME类型字符串应该为"vnd.android.cursor.item/person" * @param uri */ public String getType(Uri uri)










