重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
ContentProvider怎么在Android项目中使用?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
创新互联服务项目包括松溪网站建设、松溪网站制作、松溪网页制作以及松溪网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,松溪网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到松溪省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!一、概念及说明
ContentProvider定义:
内容提供者是一个Android应用的基础模块,提供内容给这个应用,它们封装数据和提供它给应用通过这个ContentResolver接口,使用ContentProvider可以在不同的应用程序之间共享数据,android为常见的一些数据提供了ContentProvider(视频、音频),ContentProvider使用表的形式来组织数据。
URI定义:
每一个ContentProvider都拥有一个公共的URI,这个URI用于表示这个ContentProvider所提供的数据。android所提供ContentProvider都存放在android.provider。
二、实现ContentProvider的过程
1。定义ContentProvider所需要的常量(最主要的是定义CONTENT_URI,CONTENT_URI是Uri类型,事实是通过字符串解析得到)
//定义ContentProvider所需要的常量 public class FirstProviderMetaData { // AUTHORIY等于自己的创建ContentProvider类的完全路径 public static final String AUTHORIY = "com.example.firstconent.FirstContentProvider"; // 数据库的名称 public static final String DATABASE_NAME = "FirstProvider.db"; // BaseColumns有两个字段_id和_count public static final class UserTableMetaData implements BaseColumns { // 表名 public static final String TABLE_NAME = "t_user"; // 访问该ContentProvider的URI public static final Uri CONTENT_URI = Uri .parse("content://" + AUTHORIY); // 表的数据类型 public static final String CONTENT_TYPE = "vnd.android.cursor.dir/users"; // 一列的数据类型 public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/users"; // 一个字段 public static final String USER_NAME = "name"; // 默认排序 public static final String DEFAULT_SORT_ORDER = "_id desc"; } }