内容提供者

内容提供者,作为android的四大组件之一,说明他的重要性。但是我还是一再强调,它在实际开发中,使用得比较比较少的。
什么是内容提供者?

画重点:
- 提供内容给应用s,这个有s的,说明是给多个应用提供内容/数据
- 类似于一个接口一样,可以当成接口来理解
- 跟多个应用分享数据
为什么要有内容提供者呢?
作为一个应用程序,自己的数据有可能要提供给其他应用,也有可能要被其他应用操作。而应用程序里的数据是私有的:

比如说我们上节课创建的数据库,按linux里的权限规则,每三个一组, 第一组表示自己的权限 第二组表示与自己同组的权限 第三组表示第三方用户权限
所以,第三方用户是没有权限读写执行本应用的内容的。
于是,就需要这么一个内容提供者了。
内容提供者应用场景
举个例子,比如说你是淘宝app,里面有一个开团的活动。用户需要添加开团提醒,你是不是要向闹钟或者日历里添加一个事件呀。
微信,QQ,支付宝这些应用,获取通讯录里的联系人,然后向你推荐好友,就是通过内容提供者获取到通讯录信息的。
android的媒体库,也是一个内容提供者。比如说你做的微信要发朋友圈了,或者你的应用要上传图片,获取系统里的图片内容视频内容,可以通过内容提供者来获取。
你浏览过什么东西,搜索过什么关键字。你去上淘宝呀,头条之类的就会给你推荐,它们之间也可以通过内容提供者来提供数据,只要双方把利益问题处理好就行。
短信也有内容提供者,而第三方备份工具呢则是通过内容提供者去获取短信内容的。
接下来,我们去学习一下如何使用内容提供者,向第三方应用提供数据操作。