必须在manifest.json的"mp-weixin"节点下添加"__usePrivacyCheck__": true;wx.getPrivacySetting需在App.vue的onLaunch中调用并判断存在性;授权按钮须用open-type="agreePrivacyAuthorization";代开发需通过接口配置隐私指引并等待人工审核。

manifest.json 里必须加 __usePrivacyCheck__
不加这个字段,wx.getPrivacySetting、onNeedPrivacyAuthorization 等接口在真机上会直接返回空或报错,开发调试阶段看似正常,提审时必然被拒。
必须在 manifest.json 的 "mp-weixin" 节点下显式声明:
"mp-weixin": {
"appid": "your-appid",
"__usePrivacyCheck__": true,
"setting": { "urlCheck": true }
}
注意:__usePrivacyCheck__ 是双下划线开头结尾,大小写敏感;2023年9月15日后该功能强制启用,但不配置仍会导致部分机型(尤其 iOS)无法触发授权回调。
wx.getPrivacySetting 调用时机很关键
不能放在页面 onLoad 或组件 mounted 里——此时小程序可能已开始调用 uni.getSystemInfo、uni.getNetworkType 等隐式读取设备信息的 API,触发隐私拦截前就违规了。
正确做法只有一处:在 App.vue 的 onLaunch 中第一时间调用:
- 如果
res.needAuthorization === true,立刻展示自定义弹窗(不能跳转页面) - 如果
res.needAuthorization === false,说明用户已同意过,或系统自动放行,可继续初始化逻辑 - 必须包裹
if (wx.getPrivacySetting)判断,低版本微信不支持该接口
漏掉判断会导致安卓低端机白屏,且不会报错,只静默失败。
name wechat-article-writer-pro description 微信公众号文章完整生成技能(专业版)。输入主题即自动完成:信息调研、文章撰写(含章节配图)、5个备选爆款标题、封面图生成、带格式排版的DOCX文档输出。触发词:写公众号文章、生成公众号内容、做微信推文、公众号文章完整版。 agent_created true 微信公众号文章完整生成技能(专业版) 概述 本技能提供微信公众号文章从主题到成品的完整生成流程,在基础版之上增加:章节配图、DOCX 格式输出(含彩色重点文字和表格
按钮必须用 open-type="agreePrivacyAuthorization"
自定义弹窗里的“同意”按钮不能用 @click 触发授权逻辑,必须使用微信原生授权按钮:
<button open-type="agreePrivacyAuthorization" @agreeprivacyauthorization="onAgree">同意并继续</button>
否则微信无法记录用户授权状态,后续调用 requirePrivacyAuthorize 仍会失败,且审核时会被判定为“绕过平台授权机制”。
几个硬性限制:
- 该按钮只能出现在弹窗内,不能放在 tabbar、下拉刷新、悬浮窗等非主视图区域
- 按钮文案必须含“同意”“授权”等明确动词,禁用“知道了”“继续使用”等模糊表述
- 点击后必须立即调用
resolve()(如果是onNeedPrivacyAuthorization场景),不能加延时或异步等待
代开发小程序必须走接口配置隐私指引
如果你是第三方平台/代开发方,微信公众平台后台【设置-功能设置】入口是灰色不可用的,所有隐私指引内容必须通过接口配置,否则提审时提示“未配置用户隐私保护指引”。
核心流程只有三步:
- 先调用
uploadPrivacyContract上传 HTML 文件,拿到ext_file_media_id - 再用该 ID 调用
setPrivacyContract,传入message_type(如user_location、user_phone)和对应文本 - 最后用
getPrivacyContract校验是否生效,返回为空说明配置未成功或审核中
特别注意:接口返回 success 不代表审核通过,需人工在第三方平台后台确认“隐私指引审核中”状态,平均审核时长 1–3 个工作日,不能跳过。
微信小程序隐私合规不是加个弹窗就完事,真正卡点在于「授权状态与接口调用顺序的强绑定」——哪怕只多调一次uni.getProvider,都可能让整个授权链路失效。最稳妥的做法,是在 onLaunch 后彻底冻结所有业务初始化,直到 agreeprivacyauthorization 回调执行完毕。


















