APICloud app 开发 获取 相机 、麦克风、存储 等权限执行操作 安装首次使用时 弹窗 一键开启 或者 直接跳到 设置页面

文章目录

  • 问题描述
  • 代码 封装
  • 举例

问题描述

没有开启权限时,无法进行拍照,存储…… 以至于在华为荣耀机型中 无法正常 打开照相机 等

代码 封装

//js封装
function checkPermision(name) {
	return new Promise((resolve, reject) => {
		var resultList = api.hasPermission({
			list: [name]
		})
		// 权限已开
		if (resultList[0].name === name && resultList[0].granted) {
			resolve()
		} else {
			// 权限未开,请求权限
			requestPermision(name).then(res => {
				resolve()
			}).catch(err => {
				reject({errMsg:'权限开启失败'})
			})
		}
	})
	
}

function requestPermision(name) {
	return new Promise((resolve, reject) => {
		api.requestPermission({
			list: [name],
			code: 1
		}, (ret, err) => {
			// 请求权限成功
			if (ret.list[0].name === name && ret.list[0].granted) {
				resolve()
			} else {
			// 请求权限失败
				reject()
			}
		})
	})
}
// 在使用的位置 进行调用
// photos 相册
// microphone  麦克风
// camera  相机
// notification 通知
// storage  存储
// ……
checkPermision("camera");

举例

APICloud app 开发 获取 相机 、麦克风、存储 等权限执行操作 安装首次使用时 弹窗 一键开启 或者 直接跳到 设置页面_第1张图片
APICloud app 开发 获取 相机 、麦克风、存储 等权限执行操作 安装首次使用时 弹窗 一键开启 或者 直接跳到 设置页面_第2张图片

你可能感兴趣的:(数码相机,APICloud)