0
点赞
收藏
分享

微信扫一扫

重磅出击,微信小程序最新隐私协议弹窗解决方案

重磅出击,微信小程序最新隐私协议弹窗解决方案_微信小程序

微信官方公告

微信日常整活,光权限和用户信息这一块不知道调整了多少次了,小程序开发者苦腾讯久已!

上有政策,下有对策,这里讲解一下,新版本对线思路!

啥都不说,先上社区评论为敬!

重磅出击,微信小程序最新隐私协议弹窗解决方案_微信小程序_02

友好评论1

重磅出击,微信小程序最新隐私协议弹窗解决方案_微信小程序_03

友好评论2

这里展示的是原生小程序,因为Uniapp官网文档还没更新,其实方法都差不多,只是写法不同!

前置问题

这里要叙述几个前置问题

1:什么时候弹出用户隐私协议的弹窗?

2:每次进小程序都弹出来吗?

这两个想明白问题就足够了!

弹窗时机

官方明确说明了,在用户授权之后,方可调用微信提供的隐私接口

隐私接口如下

重磅出击,微信小程序最新隐私协议弹窗解决方案_微信小程序_04

隐私接口1

重磅出击,微信小程序最新隐私协议弹窗解决方案_微信小程序_05

隐私接口2

重磅出击,微信小程序最新隐私协议弹窗解决方案_微信小程序_06

隐私接口3

不难发现,里面还是有几个会提前用到,甚至会影响页面的,比如位置信息、手机号、剪贴板。

我肯定希望用户提早授权隐私协议,在调用接口的时候再弹接口的弹窗,不然用户会奔溃[doge]

那肯定不能在APP.js(uniapp是app.vue)里面操作,因为时间到了就自动跳到首页了,首页也不建议,原因上一段话

好戏来了,我们需要创建一个启动页!用了做判断,顺便可以做各种判断了,比如获取用户数据、小程序最新版本等,当然视情况而定!

每次进小程序都弹出来

这里我进行了本地缓存,若本地缓存中一授权直接进入,否则回去调用官方接口查询是否授权

因为用户可能会把小程序从小程序列表删除!

整活开始

新建启动页面

建立一个启动页面,如startUp目录

重磅出击,微信小程序最新隐私协议弹窗解决方案_微信小程序_07

目录示意图

弹框组件

这里用的官方的root-portal

重磅出击,微信小程序最新隐私协议弹窗解决方案_微信小程序_08

popup组件

写逻辑

官方其实给了四个新的API以及一个Button的新open-type

分析了一波,我这里只用button和其中两个API即可,主要是要调教用户,并且走APP隐私协议风格,不同意,不给用!

重磅出击,微信小程序最新隐私协议弹窗解决方案_微信小程序_09

启动页面wxml

页面很简单,一个弹窗和启动页的文字

重磅出击,微信小程序最新隐私协议弹窗解决方案_微信小程序_10

判断是否授权

判断授权也很简单

使用新API中的wx.getPrivacySetting看是否授权,没有就打开弹窗

重磅出击,微信小程序最新隐私协议弹窗解决方案_微信小程序_11

同意协议

若同意协议,则进入程序,不同意退出小程序

注意事项

基础库版本号

需要大于>=2.33.0版本的基础库才能使用,否则不需要改文的逻辑

要手动开启校验

在2023年9月15日之前,需要在app.json里面手动加上下面的代码

若未设置,用户隐私协议永远返回false,即不需要授权,无法进行后续判断

"__usePrivacyCheck__": true

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

重磅出击,微信小程序最新隐私协议弹窗解决方案_微信小程序_12

官方截图

重磅出击,微信小程序最新隐私协议弹窗解决方案_微信小程序_13

配置图

微信小程序后台配置协议

在微信小程序后台需要配置隐私协议,否则整个流程无法进行

路径为设置=>基本设置=>服务内容声明

重磅出击,微信小程序最新隐私协议弹窗解决方案_微信小程序_14

隐私协议配置图

代码片段

公众号发送【小程序隐私协议】获取

如果感觉有帮助,麻烦3连(关注、赞、在看),谢谢! 后面会更新更多。

重磅出击,微信小程序最新隐私协议弹窗解决方案_微信小程序_15

关注公众号了解更多

举报

相关推荐

0 条评论