在SDK23也就是Android6.0.1里编写调用系统通讯录读写权限的程序,在AndroidManifest.xml中,已经配置了

<uses-permission android:name="android.permission.READ_CONTACTS"/>
<uses-permission android:name="android.permission.WRITE_CONTACTS"/>

但是运行中仍然出现异常,如下所示:

java.lang.SecurityException: Permission Denial: opening provider com.android.providers.contacts.ContactsProvider2 from ProcessRecord (pid=28104, uid=10176) requires android.permission.READ_CONTACTS or android.permission.WRITE_CONTACTS

原因是SDK23对应用程序权限做出了改动,有两种解决办法:
①使用SDK22开发,并且运行此程序的android虚拟机或者是手机的系统6.0以下。

②使用ContentResolver之前,加入如下代码,进行权限校验。
首先进行REQUESTCode:REQUEST_CODE_ASK_PERMISSONS常量的声明。

final private int REQUEST_CODE_ASK_PERMISSIONS = 123;

然后再调用ContentResolver之前,进行权限校验

int hasWriteContactsPermisson = checkSelfPermission(
android.Manifest.permission.READ_CONTACTS);
if(hasWriteContactsPermisson != PackageManager.PERMISSION_GRANTED)
{requestPermissions(new String[]{Manifest.permission.WRITE_CONTACTS},REQUEST_CODE_ASK_PERMISSIONS);return;
}
//使用ContentResolver查找联系人数据
Cursor cursor = getContentResolver().query(ContactsContract.Contacts.CONTENT_URI,null,null,null,null);

在小米手机上,运行结果:

java.lang.SecurityException: Permission Denial:错误解决办法相关推荐

  1. 错误解决: java.lang.SecurityException: Permission Denial

    场景: 当我们在别的应用内调用你某个程序的Activity有时候会发生这个错误: java.lang.SecurityException: Permission Denial: starting In ...

  2. 关于Android 8.0java.lang.SecurityException: Permission Denial错误的解决方法

    关于Android 8.0java.lang.SecurityException: Permission Denial错误的解决方法 参考文章: (1)关于Android 8.0java.lang.S ...

  3. 用java下载apk解析包出错_Android 9.0 安装包解析错误 java.lang.SecurityException: Permission Denial解决方案...

    在android 9.0自动下载更新时 遇到 安装包解析错误 错误示例.png 在android 7.0使用的是同一套框架却没有问题? 然后通过adb命令抓取一下异常发现 12-18 19:21:32 ...

  4. 解决java.lang.SecurityException: Permission Denial: ... with revoked permission异常的问题

    如果出现类似如下的异常问题:java.lang.SecurityException: Permission Denial: ... with revoked permission,说明app相应的某个 ...

  5. 解决 java.lang.SecurityException: Permission Denial: opening provider com.android.providers.contacts报错

    java.lang.SecurityException: Permission Denial: opening provider com.android.providers.contacts.Cont ...

  6. Android 11安装apk异常java.lang.SecurityException: Permission Denial:

    安装apk时出现There was a problem parsing the package 提示信息从抓log信息如下: 03-21 00:58:40.010   926  1129 W Acti ...

  7. java.lang.SecurityException Permission Denial opening provider ngyb.createdatabase.AccountProvider

    java.lang.SecurityException: Permission Denial: opening provider ngyb.createdatabase.AccountProvider ...

  8. android7.0调用CAMERA报异常 java.lang.SecurityException: Permission Denial: starting Intent...

    崩溃报错如下: Caused by: java.lang.SecurityException: Permission Denial: starting Intent { act=android.med ...

  9. java.lang.SecurityException: Permission Denial: startForeground from pid=29734, uid=10484 requires

    高德地图定位报错: java.lang.RuntimeException: Unable to create service com.itcast.mobilesafe07.service.Prote ...

最新文章

  1. python爬取南京市房价_python 爬取宁波市房价热力图
  2. php 计算字符串相邻最大重复数_php查找字符串出现次数的方法
  3. 时间更新服务器推荐 - NTP时间同步服务器集群:ntp.api.bz
  4. Git push “fatal: Authentication failed ”
  5. 如何解决PIP命令不可用
  6. css命名_CSS命名约定将节省您的调试时间
  7. extjs combobox下拉框显示位置问题
  8. I/O多路复用技术详解之poll模型
  9. 卸载ie8的一些方法
  10. JAVA系列---项目打包部署
  11. linux 中gnu的含义是,GNU是什么意思
  12. Ubuntu里安装快捷键截图软件Flameshot
  13. 视频教程-数据中台-数据仓库建模设计方法和实现-数据仓库
  14. 【C++】初识输入输出
  15. 怎么理解 Web 3.0?
  16. 12月14日:跟着猫叔写代码api中的增删改查
  17. 3.ERP选型——四点禁忌爱情攻略
  18. DataCom OLT HGU ONU(bridge+other)组播配置指导
  19. Mysql 多列合并为一列
  20. 内外网的安全隔离技术实现

热门文章

  1. 淘宝2011 9 23校园招聘会面试题
  2. windows 2016 域服务器时间同步
  3. 数据结构c语言程序题,严蔚敏《数据结构(c语言版)习题集》(包括基础部分).doc...
  4. SSRF(服务器请求伪造)
  5. 11JavaScript(基础语法)
  6. OpenCV处理鼠标事件
  7. oracle 数据全备份,oracle数据库全备份和增量备份
  8. 计算机主板电池没电什么情况,主板电池没电了会出现什么情况
  9. php隐藏指定id的div,CSS_纯css3显示隐藏一个div特效的具体实现,复制代码代码如下: !DOCTYPE H - phpStudy...
  10. iOS开发零基础教程之证书、描述文件、App ID的解释