当前位置:   article > 正文

ContentProvider数据库共享之——读写权限与数据监听_contentprovider声明了只读权限 为什么三方应用还是可以写呢

contentprovider声明了只读权限 为什么三方应用还是可以写呢

前言:随着工作的时间越来越长,越来越觉得自己学知识的速度太慢,原定的两年,现在已经过了快九个月了,仍然对很多知识懵懵懂懂,对JAVA理解的还是不够彻底,现在终于有点时间能放纵地看一些自己感兴趣的东西了,不知道这样的时间能持续多久,但抓住每一分能利用的时间把自己变得强大,终有一天,你会成为你想成为的人。记住,你永远是最棒的!

 

相关文章:
1、《ContentProvider数据库共享之——概述》
2、《ContentProvider数据库共享之——实例讲解》
3、《ContentProvider数据库共享之——MIME类型与getType()》
4、《ContentProvider数据库共享之——读写权限与数据监听》

 

经过前面三篇文章,我想大家对ContentProvider已经有了大部分的了解,但在第二篇中,我们提到过一个函数:

 

getContentResolver().notifyChange(uri, null);

这个函数是在数据库中数据有变更我时候用来通知第三方应用的,这篇就带领大家看看有关数据库变更通知与第三方监听有关的东东;
在这之前,还有个ContentProvider共享数据库读写权限的知识 给大家补上;

一、数据库读写权限

 

1、概述

在AndroidManifest.xml中provider标签中有三个额外的参数permission、readPermission、writePermission;
先看下面这段代码:

 

  1. <provider
  2. android:name=".PeopleContentProvider"
  3. android:authorities="com.harvic.provider.PeopleContentProvider"
  4. android:exported="true"
  5. android:permission="com.harvic.contentProviderBlog"
  6. android:readPermission="com.harvic.contentProviderBlog.read"
  7. android:writePermission="com.harvic.cotentProviderBlog.write"/>

在这段代码中有几个参数要特别注意一下:

  • exported:这个属性用于指示该服务是否能被其他程序应用组件调用或跟他交互; 取值为(true | false),如果设置成true,则能够被调用或交互,否则不能;设置为false时,只有同一个应用程序的组件或带有相同用户ID的应用程序才能启动或绑定该服务。具体参见:《Permission Denial: opening provider 隐藏的android:exported属性的含义》
  • readPermission:使用Content Provider的查询功能所必需的权限,即使用ContentProvider里的query()函数的权限;
  • writePermission:使用ContentProvider的修改功能所必须的权限,即使用ContentProvider的insert()、update()、delete()函数的权限;
  • permission:客户端读、写 Content Provider 中的数据所必需的权限名称。 本属性为一次性设置读和写权限提供了快捷途径。 不过,readPermission和writePermission属性优先于本设置。 如果同时设置了readPermission属性,则其将控制对 Content Provider 的读取。 如果设置了writePermission属性,则其也将控制对 Content Provider 数据的修改。也就是说如果只设置permission权限,那么拥有这个权限的应用就可以实现对这里的ContentProvider进行读写;如果同时设置了permission和readPermission那么具有readPermission权限的应用才可以读,拥有permission权限的才能写!也就是说只拥有permission权限是不能读的,因为rea
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/秋刀鱼在做梦/article/detail/940998
推荐阅读
相关标签
  

闽ICP备14008679号