uni-app实践之微信小程序隐私协议开发指南

背景

2023 年 08 月 10 日,微信团队发布了关于微信小程序隐私保护指引设置的公告:自2023年9月15日起,对于涉及处理用户个人信息的小程序开发者,微信要求,仅当开发者主动向平台同步用户已阅读并同意了小程序的隐私保护指引等信息处理规则后,方可调用微信提供的隐私接口。这篇公告发布之后,引发了微信社区的广泛不满和抱怨。许多开发者抱怨称,相关文档难以理解,微信偷偷将相关实现回退导致开发进度受阻后无法进行调试,而微信相关的代码逻辑也比较混乱。

2023 年 08 月 22 日微信官方又偷偷更新了相关的文档,接口可以正常调试了,同时官方也给出了相关的Demo,所以我们又可以开始心不甘情不愿开开心心地调试了。

微信官方文档及公告地址

关于小程序隐私保护指引设置的公告

隐私相关接口

微信小程序隐私协议开发指南

更新用户隐私保护指引

小程序管理员或开发者可以根据具体小程序涉及到的隐私相关接口来更新微信小程序后台的用户隐私保护指引,更新并审核通过后就可以进行相关的开发调试工作。

需要注意的是,仅有在指引中声明所处理的用户信息,才可以调用平台提供的对应接口或组件。若未声明,对应接口或组件将直接禁用

开发指南解读

开发调试配置

参考 微信小程序隐私协议开发指南中的介绍

目前 getPrivacySettingonNeedPrivacyAuthorizationrequirePrivacyAuthorize 等接口目前可以正常接入调试。调试说明:

  • 在 2023 年 9 月 15 号之前,在 app.json 中配置 "__usePrivacyCheck__": true 后,会启用隐私相关功能,如果不配置或者配置为 false 则不会启用。

  • 在 2023 年 9 月 15 号之后,不论 app.json 中是否有配置 usePrivacyCheck,隐私相关功能都会启用。

所以在基于uni-app开发时,我们在 2023 年 9 月 15 号之前进行相关开发调试则需要在manifest.json文件mp-weixin中添加"__usePrivacyCheck__": true

微信官方 Demo

  • demo1: 演示使用 wx.getPrivacySetting<button open-type="agreePrivacyAuthorization"> 在首页处理隐私弹窗逻辑 https://developers.weixin.qq.com/s/gi71sGm67hK0

  • demo2: 演示使用 wx.onNeedPrivacyAuthorization<button open-type="agreePrivacyAuthorization"> 在多个页面处理隐私弹窗逻辑,同时演示了如何处理多个隐私接口同时调用。 https://developers.weixin.qq.com/s/4X7yyGmQ7EKp

  • demo3: 演示 wx.onNeedPrivacyAuthorizationwx.requirePrivacyAuthorize<button open-type="agreePrivacyAuthorization"><input type="nickname">组件如何结合使用 https://developers.weixin.qq.com/s/jX7xWGmA7UKa

  • demo4: 演示使用 wx.onNeedPrivacyAuthorization<button open-type="agreePrivacyAuthorization"> 在多个 tabBar 页面处理隐私弹窗逻辑 https://developers.weixin.qq.com/s/g6BWZGmt7XK9

微信官方给出了 4 个 Demo,可以覆盖大多数的开发场景,其内容主要就是getPrivacySettingonNeedPrivacyAuthorizationrequirePrivacyAuthorize这三个接口的组合使用。

Demo 解读
Demo1

Demo1 仅使用wx.getPrivacySetting接口查询隐私授权情况,在needAuthorizationtrue时主动打开授权弹框。

Demo2

Demo2 使用wx.onNeedPrivacyAuthorization接口监听隐私接口需要用户授权事件,当需要用户进行隐私授权时会触发该事件,与此同时此时打开授权弹框。

Demo3

Demo3 使用wx.onNeedPrivacyAuthorization接口监听隐私接口需要用户授权事件,使用wx.requirePrivacyAuthorize模拟隐私接口调用,所以 Demo3 不需要用户真的进行隐私授权操作,就可以主动打开授权弹框。

Demo4

Demo4 与 Demo2 的逻辑基本上一致,针对tabbar切换场景增加了打开授权弹框的同时关闭其他 tabbar 已打开授权弹框的逻辑。

Demo 总结

我们可以根据具体的场景来参考 demo 组合使用getPrivacySettingonNeedPrivacyAuthorizationrequirePrivacyAuthorize接口进行开发,比如某个页面需要上传图片,就需要使用wx.chooseImagewx.chooseMedia接口,这时候我们的场景和 Demo2 基本上是一致的,在用户点击选择图片的按钮时,就可以触发wx.onNeedPrivacyAuthorization并打开授权弹框。

实践

ws-wx-privacy 微信隐私保护弹出框,支持vue2和vue3

这里我们是以组件的形式提供了授权弹框,监听页面中用户调用隐私授权接口,开发者将组件引入页面后可以自行选择主动触发或被动触发。

 
<template>
  <view>
  <!-- #ifdef MP-WEIXIN -->
  <ws-wx-privacy
    id="privacy-popup"
    @disagree="handleDisagree"
    @agree="handleAgree"
    title="用户隐私保护提示"
    desc="感谢您使用本应用,您使用本应用的服务之前请仔细阅读并同意"
    protocol="《用户隐私保护指引》"
    subDesc="。当您点击同意并开始时用产品服务时,即表示你已理解并同意该条款内容,该条款将对您产生法律约束力。如您拒绝,将无法使用相应服务。"
  ></ws-wx-privacy>
  <!-- #endif -->
  </view>
</template>
<script>

export default {
  methods: {
    handleDisagree() {
      // 处理用户不同意隐私协议的逻辑
    },
    handleAgree() {
      // 处理用户同意隐私协议的逻辑
    }
  }
}
</script>

相关文章

支持多平台小程序的uni-app持续集成工具

基于vue3的uni-app路由库uni-mini-router助你实现跳转、传参、拦截等路由功能

前端代码提交规范

UNI-APP组件库推荐

Wot Design Uni | 一个参照Wot-design打造的uni-app组件库

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值