返回知识库

微信小程序 · 账号与数据

隐私保护指引Privacy Guidelines

小程序用到位置、相册、头像昵称、剪贴板、手机号这类个人信息前,必须先在后台隐私保护指引里声明;没声明接口直接失败,声明后用户还要同意,拒绝时页面要能降级。

「上传头像」报 errno 112:补声明、等生效,再处理用户拒绝

一边是手机上的小程序页,一边是小程序管理后台的「用户隐私保护指引」。先在手机上点出报错,再去后台补声明,最后看用户同意和拒绝时页面各自怎样。

任务:「花店会员」小程序本地都好好的,一上体验版点「上传头像」就报错。把三个功能都调通,并且用户拒绝时页面不卡死。

花店会员 · 个人资料体验版 · 手机微信
  • 用到:选中的照片(相册)
  • 用到:位置信息
  • 用到:手机号
已走通 0/3 · 隐私协议:未弹出
小程序管理后台 → 设置 → 服务内容声明用户隐私保护指引
未提交

第 1 步:在手机上点「上传头像」,看看还没声明时会发生什么。

知识点:面板上刚走过的顺序

只做命名,不再重复操作。

  • 声明先于调用:位置、相册 / 拍照、头像昵称、剪贴板、手机号这类个人信息,要先在后台隐私指引里声明,否则接口直接失败。
  • 看报错码找原因:errno 112 = 没声明这类信息;errno 104 = 用户没同意隐私协议。前者改后台,后者改页面。
  • 生效有延迟:补完声明约 5 分钟后才生效,刚提交就测仍会报 112,别急着让 AI 改代码。
  • 用户会看到你写的用途:首次用到时弹出隐私协议,用途写得清楚,用户才愿意点同意;以后新增收集类型,用户要重新同意一次。
  • 拒绝要能降级:用户拒绝后页面要换个可用的走法(默认头像、手动选城市),不能卡死或反复报错。
  • 按实际用途声明:页面没用到的类型别勾,用到的每一类都写清用在哪个功能。

什么时候要想到隐私指引

信号通常出现在「本地能用、上体验版就坏」的那一刻。

  • 报错里出现 privacy agreement、errno 112:先去后台核对声明,不是代码写错了。
  • 新功能要用位置、相册、拍照、剪贴板、手机号:开发前就把对应类型和用途加进隐私指引。
  • 不涉及个人信息的功能(展示商品、静态页面)不需要为它声明。

怎么跟 AI 说、怎么验收

让 AI 把「用到了哪些个人信息」列出来,你去后台对着补。

  • 让 AI 列清单:「列出这个小程序调用了哪些涉及个人信息的接口,各自用在哪个功能」。
  • 要求降级:「用户拒绝隐私协议(errno 104)时,每个功能给一个不卡死的替代方案」。
  • 验收:后台声明提交约 5 分钟后,用体验版在手机上把每个功能点一遍,分别试同意和拒绝。

正反例:修「上传头像报错」

同一个报错,只差在修哪里。

正例看到 errno 112 → 后台隐私指引补「选中的照片」,用途写「用于设置会员头像」,5 分钟后真机复测

接口恢复,首次使用时用户看到清楚的用途;拒绝时页面换成默认头像。

反例让 AI「修一下上传头像的报错」,AI 反复改代码、加 try/catch 把错误吞掉

后台没声明,接口永远调不通;错误被吞掉后按钮点了没反应,用户以为小程序坏了。

快速自测

你刚在后台补声明了「位置信息」并提交,马上用体验版点「附近门店」,还是报 errno 112。最合理的下一步是?

继续查证

术语的技术定义和行为以这些一手或权威资料为准。

下一步学

和本知识点经常一起出现的概念。