点击进入uniapp的微信小程序隐私协议的开发指南说明
自2023.10.17之前,在uni-app编译后的 app.json 文件中配置:usePrivacyCheck: true,启用隐私相关功能。现在更新至自动启动隐私协议,涉及的 getPrivacySetting
、onNeedPrivacyAuthorization
、requirePrivacyAuthorize
等接口都需要启用隐私协议才可正常的使用!
当使用用户微信头像及昵称,或者调用copy,getLocation时,会执行fail的方法;错误的警告是指没有权限使用;
wx.getLocation({
type: 'gcj02', // wgs84
isHighAccuracy: true,
success: function success(res) {
},
fail: function fail(err) {
}
})
// :fail api scope is not declared in the privacy agreement"
需要先在小程序的后台配置,设置》服务内容声明》用户隐私保护指引,进行更新协调并提交审核
点击进入小程序的管理后台登录
进行隐私协议的添加及填写,填写完毕后提交审核,等待审核完成;
而需要添加及配置的接口及组件使用,可点击进入到微信的文档中去一一对应添加:
点击进入到微信小程序的文档中
配置及隐私协议,在开发端需要书写隐私协议的调用,并在同意协议后才可正常的使用;
在uniapp的开发中,使用到定位的使用,需要在manifest.json
中配置其微信(mp-weixin
)的requiredPrivateInfos
点击进入manifest.json中的mp-weixin的配置说明
有关permission
与requiredPrivateInfos
的配置使用
/* 小程序特有相关 */
"mp-weixin" : {
"appid" : "",
"setting" : {
"urlCheck" : false,
"es6" : false,
"minified" : true,
"postcss" : false
},
"usingComponents" : true,
"__usePrivacyCheck__" : true,
// 微信小程序接口权限相关设置,比如申请位置权限必须填此处
"permission" : {
"scope.userFuzzyLocation" : {
"desc" : "你的位置信息将用于小程序位置接口的效果展示"
},
"scope.userLocation" : {
"desc" : "你的位置信息将用于小程序位置接口的效果展示" // 高速公路行驶持续后台定位
}
},
// getLocation getFuzzyLocation
"requiredPrivateInfos" : [ "getLocation" ],
"embeddedAppIdList" : []
},
permission
微信小程序端的配置声明,
requiredPrivateInfos
调用的地理位置相关隐私接口
- getFuzzyLocation: 获取模糊地理位置
- getLocation: 获取精确地理位置
- onLocationChange: 监听实时地理位置变化事件
- startLocationUpdate: 接收位置消息(前台)
- startLocationUpdateBackground: 接收位置消息(前后台)
- chooseLocation: 打开地图选择位置
- choosePoi: 打开POI列表选择位置
- chooseAddress: 获取用户地址信息
使用到以上的API,均要在requiredPrivateInfos
中配置使用,才可调用隐私协议
开发中都需要遵循文档的使用配置,以免API调用失败的场景