当前位置: 首页 > news >正文

周村网站建设广州沙河一起做网站

周村网站建设,广州沙河一起做网站,郑州建网站msgg,wordpress怎么排版运行时权限 从 Android 6.0(API 级别 23)开始,用户开始在应用运行时向其授予权限,而不是在应用安装时授予。 系统权限分为两类: 正常权限:只需在你应用的 Androidmanifest.xml 中列出,安装时…

在这里插入图片描述

运行时权限

从 Android 6.0(API 级别 23)开始,用户开始在应用运行时向其授予权限,而不是在应用安装时授予。

系统权限分为两类:

  • 正常权限:只需在你应用的 Androidmanifest.xml 中列出,安装时授权。
  • 危险权限:需要在你应用的 Androidmanifest.xml 中列出,并在运行时授权。

如需了解更多关于正常权限与危险权限可以参阅这里。

关于 Android 6.0 运行时权限的详细讲解可以看这篇文章和官方文档。

RxPermissions

RxPermissions 能配合 RxJava 与新的 Android M 权限模型一起使用,用于处理 Android 运行时权限。

GitHub 地址:https://github.com/tbruyelle/RxPermissions

一、集成说明

在 app 模块下的 build.gradle 添加下面配置:

compile 'com.tbruyelle.rxpermissions:rxpermissions:0.7.0@aar'
compile 'io.reactivex:rxjava:1.1.3'

二、使用说明

1. 在清单文件中,添加 Dangerous Permissions

    <uses-permission android:name="android.permission.RECORD_AUDIO" /><uses-permission android:name="android.permission.CAMERA" /><uses-permission android:name="android.permission.RECEIVE_MMS" /><uses-permission android:name="android.permission.READ_CALL_LOG" /><uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /><uses-permission android:name="android.permission.READ_CALENDAR" />

2. 申请单个权限

        //请求单个权限btn_request.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {//这个请求事件我写在点击事件里面,//点击button之后RxPermissions会为我们申请运行时权限RxPermissions.getInstance(MainActivity.this).request(Manifest.permission.READ_CALENDAR)//这里填写所需要的权限.subscribe(new Action1<Boolean>() {@Overridepublic void call(Boolean aBoolean) {if (aBoolean) {//true表示获取权限成功(注意这里在android6.0以下默认为true)Log.i("permissions", Manifest.permission.READ_CALENDAR + ":" + 获取成功);} else {Log.i("permissions", Manifest.permission.READ_CALENDAR + ":" + 获取失败);}}});}});

效果图
在这里插入图片描述

3. 申请多个权限

//同时请求多个权限
RxPermissions.getInstance(MainActivity.this).request(Manifest.permission.RECEIVE_MMS,Manifest.permission.READ_CALL_LOG)//多个权限用","隔开.subscribe(new Action1<Boolean>() {@Overridepublic void call(Boolean aBoolean) {if (aBoolean) {//当所有权限都允许之后,返回trueLog.i("permissions", "btn_more_sametime:" + aBoolean);} else {//只要有一个权限禁止,返回false,//下一次申请只申请没通过申请的权限Log.i("permissions", "btn_more_sametime:" + aBoolean);}}});

效果图
在这里插入图片描述
4. 同时请求多个权限

//分别申请多个权限
RxPermissions.getInstance(MainActivity.this)//分别申请多个权限时,使用requestEach.requestEach(Manifest.permission.ACCESS_FINE_LOCATION,Manifest.permission.RECORD_AUDIO,Manifest.permission.CAMERA).subscribe(new Action1<Permission>() {@Overridepublic void call(Permission permission) {if (permission.name.equals(Manifest.permission.ACCESS_FINE_LOCATION)) {//当ACCESS_FINE_LOCATION权限获取成功时,permission.granted=trueLog.i("permissions", Manifest.permission.ACCESS_FINE_LOCATION + ":" + permission.granted);}if (permission.name.equals(Manifest.permission.RECORD_AUDIO)) {//当RECORD_AUDIO 权限获取成功时,permission.granted=trueLog.i("permissions", Manifest.permission.RECORD_AUDIO + ":" + permission.granted);}if (permission.name.equals(Manifest.permission.CAMERA)) {//当CAMERA权限获取成功时,permission.granted=trueLog.i("permissions", Manifest.permission.CAMERA + ":" + permission.granted);}}});

效果图
在这里插入图片描述

http://www.dtcms.com/a/550360.html

相关文章:

  • Jenkins Pipeline 快速开始
  • 临淄关键词网站优化培训中心wordpress get_option array
  • 做那事的网站宁波论坛招聘最新消息
  • 凯里专注网站建设报价广州番禺最新发布
  • 车载软件需求开发与管理 --- 一些对软件需求的看法
  • 部分移动(Partial Move)的使用场景:Rust 所有权拆分的精细化实践
  • 建设门户网站所需wordpress个人博客源码
  • 百度 网站添加宝塔配置wordpress主题
  • 2025 年版 Highcharts vs LightningChart JS:科研大数据可视化库的深度对比
  • 上海网站空间租用app开发一般收费
  • 量化指标解码04:解锁MACD的威力|零轴、背离与多周期共振
  • zabbix 监控进程 日志 主从状态和主从延迟
  • xshell连接kali ssh服务拒绝了密码
  • 【MySQL】--- 视图
  • 【大模型:RAG】--CLIP模型实现多模态检索
  • 从零开始:Netlify 免费部署应用超详细指南
  • 空间点绕任意轴旋转的数学原理与实现
  • 公司网站维护如何做分录wordpress 显示阅读数
  • wordpress站内计费搜索wamp和wordpress
  • 唐山网站建设推广网站优缺点分析
  • 虚拟主机 发布网站北京软件培训机构前十名
  • 企业网站规划与建设论文北京房地产信息网
  • 网站建设需要提供哪些材料免费公司logo图标
  • 上海网站建设渠道wordpress 自定义逻辑
  • lua table.remove引发的偶现bug
  • 常熟做网站价格wordpress 改变字体
  • 做水果网站弄个什么名字钓鱼平台设计
  • C++ STL:string类(3)|operations|string类模拟实现|附源码
  • 微网站的建设模板有哪些如何制作网页表格
  • 海外短剧APP时区适配:全球内容更新时间智能调度与用户通知策略