问题模块 框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
API和组件 微信小程序 Bug wx.openSetting 客户端 6.7.3 2.4.0
- 当前 Bug 的表现(可附上截图)
相同的代码在体验版中测试点击定位事件后可以跳转到打开权限设置页面,但是发布后到版本点击无任何响应,求解
- 预期表现
- 复现路径
- 提供一个最简复现 Demo
定义一个locationUtil.js,添加以下方法,并在页面添加点击事件 (这里我用的是view的catchtap事件),调用该定位方法
const getLocation = (suceess,fail) => {
if (wx.getLocation) {
wx.getLocation({
type: 'gcj02',
success: function (res) {
suceess(res);
},
fail: function (res) {
wx.getSetting({
success(res) {
console.log(res);
if (!res.authSetting['scope.userLocation']) {
wx.openSetting({
})
} else {
//打开选择地址
wx.getLocation({
type: 'gcj02',
success: function (res) {
suceess(res);
}
})
}
},
fail(res) {
fail(res);
}
})
}
})
}else {
fail("不支持定位");
}
}
module.exports = {
getLocation: getLocation
}
微信小程序开发问题解答
微信小程序开发者回答:
需要用户点击触发
微信小程序开发者回答:
确定是在点击事件里面 进行的定位调用 ,目前情况是在体验版是没有问题的,可以打开设置页面,但是发布后的版本没有打开设置页面
微信小程序开发者回答:
你这写法是在回调中唤起的
微信小程序开发者回答:
你的意思是控件绑定的事件里面的不能用回调直接调用wx.opensettings() , 可是我就算判断是否有这个权限也需要调用下wx.getSetting()这个方法,依然也是要在回调中进行
微信小程序开发者回答:
可在回调中弹出一个自定义的模态框,引导用户点击唤起
微信小程序开发者回答:
OK 那我明白了 不支持在回调中打开授权管理页面对吧 谢谢
本文网址:http://www.91bianli.com/weixinxiaochengxu/33705.html