10.Android学习之数据存储技术(四)

目录

10.数据存储技术(四)

4.使用Content Provider实现数据共享

4-1.Content Provider概述

4-2.创建Content Provider

4-3使用Content Provider

5.难点解答

5-1.内部存储与外部存储的区别

5-2.SharedPreferences 存储与文件存储的区别


10.数据存储技术(四)

4.使用Content Provider实现数据共享

Content Provider 主要用于在不同的应用程序之间实现数据共享。它提供了一套完整的机制, 允许一个程序访问另一个程序中的数据,同时还能保证被访问数据的安全性。

在Android程序中,共享数据的实现需要继承ContentProvider基类,该基类为其他应用程序使用和存储数据实现了一套标准方法,然而应用程序并不直接调用这些方法,而是使用一个ContentResolver对象去操作指定数据。

4-1.Content Provider概述

Content Provider内部如何保存数据由其设计者决定,但是所有的Content Provider都实现一组通用的方法,用来提供数据的增、删、改、查功能。

客户端通常不会直接使用这些方法,而是通过ContentResolver对象实现对Content Provider的操作。开发人员可以通过调用Activity或者其他应用程序组件的实现类中的getContentResolver()方法来获得ContentResolver对象,例如:

ContentResolver cr = getContentResolver();

使用ConentResover提供的方法可以获得Content Provider 中任何想要的数据。

当开始查询时,Android 系统确认查询的目标Conent Provider 并确保它正在运行。系统会初始化所有ContentProvider类的对象,开发人员不必完成此类操作,实际上,开发人员根本不会直接使用ContentProvider类的对象。通常,每个类型的Content Provider仅有一个单独的实例。但是该实例能与位于不同应用程序和进程的多个ContentResolver类的对象通信。不同进程之间的通信由ContentProvider类和ContentResolver类处理。

使用Content Provider时,通常会用到以下两个概念。

1.数据模型

Content Provider使用基于数据库模型的简单表格来提供其中的数据,这里每行代表一条记录, 每列代表特定类型和含义的数据。例如,联系人的信息可能以表10.2 所示的方式提供。

表1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值