文章目录

  • 一、权限申请原理对话框操作回调接口 RationaleCallbacks
  • 二、永久拒绝权限后引导设用户置权限

一、权限申请原理对话框操作回调接口 RationaleCallbacks


权限申请 对话框操作回调接口 RationaleCallbacks:

① 权限申请原理对话框 ( Rationale Dialog ) : 该对话框的作用是 , 向用户说明为什么本应用要申请该权限 , 用户拒绝权限申请后 , 再次申请会自动弹出该对话框 ;

② 对话框显示内容设置 : 如果用户之前拒绝过所申请的权限 , 再次申请就会自动弹出该对话框 , 对话框内容是如下 requestPermissions 方法的第三个参数 String rationale 的内容 ;

    /*** 申请一组权限, 如果系统要求 ( 用户之前拒绝过 ) , 显示 权限申请原理对话框 , * 向用户表明申请该权限的原因 .** @param host        上下文对象 , 一般是 Activity.* @param rationale   解释为什么申请改组权限的原因的信息;*                    这些信息会在用户第一次拒绝权限申请后显示在 权限申请原理对话框 中.* @param requestCode 追踪本次权限申请的申请码 , 必须小于 256.* @param perms       本次申请的权限 , 这是一个可变参数 .* @see Manifest.permission*/public static void requestPermissions(@NonNull Activity host, @NonNull String rationale,int requestCode, @Size(min = 1) @NonNull String... perms) {requestPermissions(new PermissionRequest.Builder(host, requestCode, perms).setRationale(rationale).build());}

① 接口方法 :

    /*** 权限申请原理对话框处理*/public interface RationaleCallbacks {// 用户点击确定键 , 开始申请权限void onRationaleAccepted(int requestCode);// 用户拒绝 , 界面消失void onRationaleDenied(int requestCode);}

二、永久拒绝权限后引导设用户置权限


永久拒绝操作 : 如果用户在权限申请时 , 选择了 “拒绝 , 不要再询问” , 这是永久拒绝了应用的权限申请 , 如下图 ;


此时就 无法在应用中申请权限了 , 只能手动引导用户前往应用设置界面 , 自行开启权限 ;

此时可以调用 pub.devrel.easypermissions.AppSettingsDialog 对话框 , 该对话框的作用是引导用户前往设置界面 , 自行为应用授权 ; 如果用户点击确定后会跳转到 设置 中的 应用信息 界面 , 在该界面中 , 用户可以在 权限 选项中 , 手动为应用授权 ;

如果用户仍选择 取消 选项 , 此时直接退出界面即可 , 最好是提示下用户 , 拒绝后的后果 ;

【Android 应用开发】Google 官方 EasyPermissions 权限申请库 ( 权限申请原理对话框操作回调接口 | 永久拒绝权限后引导设用户置权限 )相关推荐

  1. 【Android 应用开发】Google 官方 EasyPermissions 权限申请库 ( 最简单用法 | 一行代码搞定权限申请 | 推荐用法 )

    文章目录 一.添加依赖 二.在 AndroidManifest.xml 中配置权限 三.权限申请最简单用法 四.推荐使用的用法 五.GitHub 地址 上一篇博客 [Android 应用开发]Goog ...

  2. 【Android 应用开发】Google 官方 EasyPermissions 权限申请库 ( 完整代码示例 | 申请权限 | 申请权限原理对话框 | 引导用户手动设置权限对话框 )

    文章目录 一.申请权限 二.申请权限原理对话框 三.引导用户手动设置权限对话框 四.在 AndroidManifest.xml 中配置权限 五.完整代码示例 六.GitHub 地址 一.申请权限 申请 ...

  3. Android的非Google官方衍生品

    Android的非Google官方衍生品 什么是Android的Google官方衍生品 Android Wear Android Auto Android TV Android的非Google官方衍生 ...

  4. Android鬼点子-通过Google官方示例学NDK(4)

    如果你看遍了网上那些只是在C++里面输出一个 ' helloWorld ' 的NDK教程的话,可以看看本系列的文章,本系列是通过NDK的运用的例子来学习NDK. 如果对这方面感兴趣,可以看看前三篇. ...

  5. Android进阶——AIDL详解之使用远程服务AIDL实现进程间带远程回调接口和自定义Bean的较复杂通信小结(二)

    文章大纲 引言 一.远程回调AIDL接口的应用 1.封装基本的父类和一些工具类 2. 创建服务端的AIDL 2.1.定义回调AIDL接口 2.2.定义业务AIDL接口 3.实现服务端对应AIDL的带有 ...

  6. 【Android 应用开发】Google 官方 EasyPermissions 权限申请库 ( 简介 | 权限申请处理细节 | 添加依赖 | 界面权限申请结果处理 | 权限申请结果回调接口 )

    文章目录 一.EasyPermissions 简介 二.EasyPermissions 权限申请处理细节 三.添加 EasyPermissions 依赖 四.权限申请结果处理 方法 onRequest ...

  7. 【Android NDK 开发】NDK 交叉编译 ( NDK 函数库目录 | Linux 交叉编译环境搭建 | 指定头文件目录 | 指定函数库目录 | 编译 Android 命令行可执行文件 )

    文章目录 I . NDK platforms 目录下的 函数库 II . Ubuntu 配置 NDK 交叉编译环境 III . 同时指定编译的头文件和库文件 IV . 指定编译的头文件 V . 指定编 ...

  8. Tv开发 Google 官方demo leanback遇到的问题

    今天在跑Google针对tv开发出点框架 Leanback的时候,遇到一个问题,就是桌面上没有该appicon.刚开始以为安装不成功.后来发现是.桌面上没有该app的icon.这个问题以前也没有遇到过 ...

  9. 下载Android源码(Google官方文档翻译)

    懒人一个,最讨厌英文文档,可惜中文教程又都残缺不全,只好自己动手翻译一个,第一次翻译,各种错误,翻译不当之处希望大家指出. 原文地址:http://source.android.com/source/ ...

最新文章

  1. thinkphp6 接收不到数据_单片机红外接收与红外发射
  2. FIR滤波器设计(包括Verilog HDL设计以及MATLAB设计)
  3. Catalyst 2950/2955交换机的RSPAN配置
  4. BERT-of-Theseus:基于模块替换的模型压缩方法
  5. 2021暑假实习-SSM超市积分管理系统-day06笔记
  6. springboot-vue简单小项目搭建
  7. typescript使用in关键字进行类型守卫
  8. 多层图,dj+dp Gym 102501A Environment-Friendly
  9. Hive 星型模型入门
  10. 指向Member Function的指针
  11. 数据库的基本概念(数据库的发展、主流数据库介绍)
  12. 并联串联混合的电压和电流_并联电阻的计算公式(附各种并联电阻网络图解)...
  13. oracle导出dmp文件报错904,EXP-00008: 遇到 ORACLE 错误 904 ORA-01003
  14. Python脚本系列:拳皇13一键出招以及连段实现!谁打得过我?
  15. 李嘉诚激励员工的一首诗
  16. wx.getUserProfile踩坑填坑大全,is not a function?fail can only be invoked by user TAP gesture?
  17. NOIP 2018模拟赛 by zwz T3 磨懒虫主义
  18. 【每日一练】68—CSS实现一组渐变按钮动画效果
  19. 小王想报英语计算机,7月31日数量关系排列组合与概率(6页)-原创力文档
  20. python中gensim库详解

热门文章

  1. saltstack执行state.sls耗时长的坑
  2. 在CentOS7上部署.net core 控制台应用程序部署为后台服务
  3. 比赛-模拟赛 (17 Aug, 2018) (待施工)
  4. Xmpp实现简单聊天系列 --- ②用户注册和登陆
  5. Netlib文件转化为mps文件
  6. js基础-字符串常用属性合集
  7. jQuery遇到问题的小记
  8. 【转】javascript中的LHS与RHS
  9. 【java】itoo项目实战之hibernate 懒载入优化性能
  10. Wrong FS: hdfs://xxx/xxx expected: file:///