requestPermission
向系统请求某个或多个权限。为帮助您更好的使用该接口,论坛维护了一个示例。
对于iOS平台,第一次请求权限时会弹出权限选择框,如果用户没有进行选择就退出应用,那么下次再次请求权限时会继续弹出选择框;如果用户选择了不允许,那么再次请求权限时将不会再弹出选择框,而是直接跳转到系统设置中该应用的设置界面(跳转只支持iOS8及以上系统,并且不支持notification权限)。
对于Android平台,只要用户没有选择“不再提示”,那么再次请求权限时都将继续弹出权限选择框;如果用户选择了“不再提示”,那么再次请求权限时将不会再弹出选择框,而是直接跳转到系统设置的该应用权限设置界面。
requestPermission({params}, callback(ret,err))
params
list:
- 类型:字符串数组
- 默认值:无
- 描述:权限列表。
- 取值范围:
camera //相机/拍照/录像
contacts //联系人读取/写入
contacts-r //仅联系人读取
contacts-w //仅联系人写入
microphone //使用麦克风录制音频
photos //访问相册|本地存储空间。Android上等同storage权限
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 //仅写入|相册|多媒体|文件|本地存储空间
code:
- 类型:数字
- 默认值:无
- 描述:请求跟踪码,用于回调结果,只支持Android。
callback
ret:
- 类型:JSON对象
- 内部字段:
{
list:[{
name: //权限名,字符串类型
granted: //是否允许,布尔类型
}],
never: //用户是否选择了“不再提示“,只支持Android,布尔类型
code: //请求跟踪码,只支持Android,数字类型。
}
示例代码
api.requestPermission({
list:['camera','contacts'],
code:1
}, function(ret, err){
api.alert({
msg:JSON.stringify(ret)
});
});
可用性
iOS系统,Android系统
可提供的1.2.76及更高版本