参考对象:
API对象 - YonBuilder移动开发文档API对象https://developer.yonyou.com/docs/Client-API/API/#hasPermission
// 开启权限 BEGIN
// 参数
// list:
// 类型:字符串数组
// 默认值:无
// 描述:权限列表。
// 取值范围:
// camera //相机/拍照/录像
// contacts //联系人读取/写入
// contacts-r //仅联系人读取。iOS中等同于contacts。
// contacts-w //仅联系人写入。iOS中等同于contacts。
// microphone //使用麦克风录制音频
// photos //访问相册|本地存储空间。Android上等同于storage。
// photos-w //仅写入相册|本地存储空间。Android上等同于storage-w。
// location //定位
// locationAlways //后台定位,只支持iOS
// notification //状态栏通知
// calendar //日历读取/写入。只支持Android
// calendar-r //仅日历读取
// calendar-w //仅日历写入
// phone //直接拨打电话/获取手机号码|IMEI。只支持Android
// phone-call //仅直接拨打电话
// phone-r //仅获取手机号码|IMEI
// phone-r-log //读取通话记录
// phone-w-log //写入通话记录
// sensor //传感器.只支持Android
// sms //读取短信/后台发送短信。只支持Android
// sms-s //仅后台发送短信
// sms-r //仅读取短信
// storage //读取/写入|相册|多媒体|本地存储空间。只支持Android
// storage-r //仅读取|相册|多媒体|文件|本地存储空间
// storage-w //仅写入|相册|多媒体|文件|本地存储空间
export function checkPermision(name) {
return new Promise((resolve, reject) => {
var resultList = api.hasPermission({
list: [name]
})
console.log(JSON.stringify(resultList))
// 权限已开
if (resultList[0].name === name && resultList[0].granted) {
resolve()
} else {
// 权限未开,请求权限
requestPermision(name).then(res => {
resolve()
}).catch(err => {
reject({errMsg:'权限开启失败'})
})
}
})
}
export function requestPermision(name) {
return new Promise((resolve, reject) => {
api.requestPermission({
list: [name],
code: 1
}, (ret, err) => {
console.log(JSON.stringify(ret))
// 请求权限成功
if (ret.list[0].name === name && ret.list[0].granted) {
resolve()
} else {
// 请求权限失败
reject()
}
})
})
}
// 开启权限 END
首页调取
import {checkPermision} from '../../utils/index'
checkPermision('location')