最近在配置用户隐私协议弹窗, 发现调用wx.getPrivacySetting的返回值res.needAuthorization一直是false 清了所有缓存用pc和手机都是 是不是说明我的小程序没有用到用户隐私协议???
但是我们公司确实用到了用户手机号授权登录 还有高德地图API逆地理位置解析
搞不懂这个怎么调用
async onLoad() {
//地图中心点
await this.mapCenter()
wx.getPrivacySetting({
success: res => {
console.log(res) // 返回结果为: res = { needAuthorization: true/false, privacyContractName: '《xxx隐私保护指引》' }
console.log(res,'wx.getPrivacySetting');
if (res.needAuthorization) {
// 需要弹出隐私协议
this.privacy_pop = true
} else {
// 用户已经同意过隐私协议,所以不需要再弹出隐私协议,也能调用已声明过的隐私接口
}
},
fail: () => {},
complete:() => {}
})
},
这里对应的是mp后台隐私合集,那里声明了权限,这里才能返回true
2030年了,还是返回false
有人使用的是mpvue框架吗,我在uniapp的项目能跑起来了,一样的代码在mpvue,needAuthorization一直是false
1、开发者工具基础版本库调整到3.0
2、要到小程序后台设置隐私指引,把你小程序用到的隐私接口列出来。等待审核通过
3、开发者工具上方工具栏,清缓存-清理全部。然后重新编译
如果还不行,你在开发者工具里,导入下官方的demo1代码片段。试试看,能不能弹框。或看下官方demo1代码片段里wx.getPrivacySetting返回是不是ture。官方demo地址:
https://developers.weixin.qq.com/miniprogram/dev/framework/user-privacy/PrivacyAuthorize.html
基础库用3.0.0试试 看看你之前是不是授权过了