当前位置: 移动技术网 > IT编程>开发语言>JavaScript > React Native模块之Permissions权限申请的实例相机

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

2017年12月12日  | 移动技术网IT编程  | 我要评论
react native模块之permissions权限申请的实例详解 前言 对于移动开发,我们知道android 6.0之后对于权限管理做了很大的升级,其类似于ios

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为各权限名称,对应值为用户授权与否。

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

如您对本文有疑问或者有任何想说的,请 点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网