ContentProvider实现数据共享
上一节
下一节
当系统中部署越来越多的Android应用后,有时候就需要在不同的应用之间共享数据,比如现在有一个短信接收应用,用户想把接收到的短信的发送人添加到联系人管理应用中,就需要在不同应用之间共享数据。对于这种需求,操作方法有很多种,比如SharedPreferences、文件或数据库等直接去操作另一个应用程序所记录的方式。但这种方式显得太杂乱,因为不同的应用程序记录数据的方式差别太大,不利于应用程序之间进行数据交换。
ContentProvider概述
为了在应用程序之间交换数据,Android提供了ContentProvider,ContentProvider是不同应用程序之间进行数据交换的标准API,当一个应用程序需要把自己的数据交给其他应用程序使用时,该应用程序就可通过ContentProvider来实现;其他应用程序可以通过ContentResolver来操作ContentProvider提供的数据。ContentProvider也可以把数据保存在数据库、文件甚至网络中,ContentProvider工作模式如图8.1所示。