React Native模块之Permissions权限申请的实例相机


Posted in Javascript onSeptember 28, 2017

React Native模块之Permissions权限申请的实例详解

前言

对于移动开发,我们知道Android 6.0之后对于权限管理做了很大的升级,其类似于IOS的管理管理方式需要用手动授权是否允许使用当前权限, 在RN开发中同样存在这样一个模块。

处理方法

在RN中提供了一个PermissionsAndroid的模块, 可以访问Android M(也就是6.0)开始提供的权限模型。有一些权限写在AndroidManifest.xml就可以在安装时自动获得。但有一些“危险”的权限则需要弹出提示框供用户选择。本API即用于后一种情形。

在低于Android 6.0的设备上,权限只要写在AndroidManifest.xml里就会自动获得,此情形下check和request 方法将始终返回true。

async function requestCameraPermission() {
 try {
  const granted = await PermissionsAndroid.request(
   PermissionsAndroid.PERMISSIONS.CAMERA,
   {
    'title': 'Cool Photo App Camera Permission',
    'message': 'Cool Photo App needs access to your camera ' +
          'so you can take awesome pictures.'
   }
  )
  if (granted === PermissionsAndroid.RESULTS.GRANTED) {
   console.log("You can use the camera")
  } else {
   console.log("Camera permission denied")
  }
 } catch (err) {
  console.warn(err)
 }
}

常用

check(permission)

返回一个promise,最终值为用户是否授权过的布尔值。

request(permission, rationale?)

弹出提示框向用户请求某项权限。返回一个promise,最终值为用户是否同意了权限申请的布尔值。

requestMultiple(permissions)

在一个弹出框中向用户请求多个权限。返回值为一个object,key为各权限名称,对应值为用户授权与否。

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
jQuery实现用户注册的表单验证示例
Aug 28 Javascript
AngularJS的一些基本样式初窥
Jul 27 Javascript
coffeescript使用的方式汇总
Aug 05 Javascript
JavaScript中Date对象的常用方法示例
Oct 24 Javascript
jquery无限级联下拉菜单简单实例演示
Nov 23 Javascript
javascript中加var和不加var的区别 你真的懂吗
Jan 06 Javascript
jQuery向父辈遍历的简单方法
Sep 18 Javascript
JS简单添加元素新节点的方法示例
Feb 10 Javascript
Vue项目从webpack3.x升级webpack4不完全指南
Apr 28 Javascript
在SSM框架下用laypage和ajax实现分页和数据交互的方法
Sep 27 Javascript
解决vue请求接口第一次成功,第二次失败问题
Sep 08 Javascript
vue使用过滤器格式化日期
Jan 20 Vue.js
Node.js学习之查询字符串解析querystring详解
Sep 28 #Javascript
angular4自定义组件详解
Sep 28 #Javascript
详解Vue路由History mode模式中页面无法渲染的原因及解决
Sep 28 #Javascript
Node.js利用断言模块assert进行单元测试的方法
Sep 28 #Javascript
详解基于vue-router的动态权限控制实现方案
Sep 28 #Javascript
node.js学习之断言assert的使用示例
Sep 28 #Javascript
vue-router+vuex addRoutes实现路由动态加载及菜单动态加载
Sep 28 #Javascript
You might like
php下使用SimpleXML 处理XML 文件
2010/02/27 PHP
php+mysql删除指定编号员工信息的方法
2015/01/14 PHP
php简单smarty入门程序实例
2015/06/11 PHP
一些常用的Javascript函数
2006/12/22 Javascript
判断iframe是否加载完成的完美方法
2010/01/07 Javascript
jQuery Tab插件 用于在Tab中显示iframe,附源码和详细说明
2011/06/27 Javascript
jQuery1.6 使用方法二
2011/11/23 Javascript
javascript针对DOM的应用实例(一)
2012/04/15 Javascript
nodejs通过phantomjs实现下载网页
2015/05/04 NodeJs
JavaScript继承学习笔记【新手必看】
2016/05/10 Javascript
全面解析DOM操作和jQuery实现选项移动操作代码分享
2016/06/07 Javascript
浅谈Cookie的生命周期问题
2016/08/02 Javascript
浅谈JS运算符&&和|| 及其优先级
2016/08/10 Javascript
浅谈JS继承_借用构造函数 & 组合式继承
2016/08/16 Javascript
javascript html5轻松实现拖动功能
2017/03/01 Javascript
简单了解JavaScript异步
2019/05/23 Javascript
微信小程序实现禁止分享代码实例
2019/10/19 Javascript
js加减乘除精确运算方法实例代码
2021/01/17 Javascript
python实现在字符串中查找子字符串的方法
2015/07/11 Python
浅谈scrapy 的基本命令介绍
2017/06/13 Python
python 实现在Excel末尾增加新行
2018/05/02 Python
Python3.x爬虫下载网页图片的实例讲解
2018/05/22 Python
使用python对文件中的单词进行提取的方法示例
2018/12/21 Python
Python实现查找二叉搜索树第k大的节点功能示例
2019/01/24 Python
Python多进程方式抓取基金网站内容的方法分析
2019/06/03 Python
基于python3监控服务器状态进行邮件报警
2019/10/19 Python
简单了解Django ORM常用字段类型及参数配置
2020/01/07 Python
NumPy排序的实现
2020/01/21 Python
基于nexus3配置Python仓库过程详解
2020/06/15 Python
实例讲解CSS3中的border-radius属性
2015/08/18 HTML / CSS
运动会通讯稿400字
2014/01/28 职场文书
绿色环保标语
2014/06/12 职场文书
生物学专业求职信
2014/07/23 职场文书
幼儿园大班见习报告
2014/10/31 职场文书
同学会邀请函模板
2015/01/30 职场文书
纪检干部学习心得体会
2016/01/23 职场文书