一文看懂微信小程序新版隐私协议(附带弹窗组件)

这篇具有很好参考价值的文章主要介绍了一文看懂微信小程序新版隐私协议(附带弹窗组件)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、前言

微信小程序近期又迎来了一次改革–9月15日之后如果小程序涉及调用微信的隐私接口获取用户的信息的,需要用户手动同意协议后才可正常调用接口,否则会返回报错信息。
隐私接口目前常用的有:手机号快捷获取、读取照片、获取用户的头像昵称(包括快捷填写能力)等。

本文将实现一个通用的弹窗组件,方便开发者再新项目或者原有项目中适应本次改动。
更多详细介绍,可以看一下官方文档,直达链接官方文档-小程序隐私协议开发指南

二、开发前的准备工作(重要)

基础库调整

隐私协议的相关接口最低支持库为2.32.3。因此如果要进行本功能的开发调试工作,需要先把基础库版本调整为2.32.3以上,我这里调整为3.0.1。
选择完成后记得点击推送。
一文看懂微信小程序新版隐私协议(附带弹窗组件),微信小程序,微信小程序,小程序

修改app.json配置文件

根据文档的说明,9月15号前需要启用隐私相关功能,需要在app.json中配置__usePrivacyCheck__: true

如果你看到这篇文章的时候已经是9月15号或之后了,就不需要管这个了,因为不管配不配置,都会启用。
一文看懂微信小程序新版隐私协议(附带弹窗组件),微信小程序,微信小程序,小程序

注意:配置后建议清除IDE的缓存,避免配置不生效的情况。直接全部清除然后重新编译就行。两个全部清除选择其中一个就行。

一文看懂微信小程序新版隐私协议(附带弹窗组件),微信小程序,微信小程序,小程序

配置后IDE控制台会输出字段无效的警告,不用管它,字段配置能正常生效就行。
一文看懂微信小程序新版隐私协议(附带弹窗组件),微信小程序,微信小程序,小程序

修改隐私协议

如果小程序目前未采集任何用户隐私,就不需要管这个改动了。
如果隐私协议中未添加隐私接口但实际上有调用的,则需要在微信公众平台中先配置隐私协议,在协议中把你需要调用的隐私接口配置上去就行。(例如采集手机号、选择位置信息等)

一文看懂微信小程序新版隐私协议(附带弹窗组件),微信小程序,微信小程序,小程序
一文看懂微信小程序新版隐私协议(附带弹窗组件),微信小程序,微信小程序,小程序

三、 组件效果展示

一文看懂微信小程序新版隐私协议(附带弹窗组件),微信小程序,微信小程序,小程序

tabbar页面可根据组件字段配置进行,隐藏tabbar。
一文看懂微信小程序新版隐私协议(附带弹窗组件),微信小程序,微信小程序,小程序

四、组件的引入与使用

组件下载地址

组件下载地址:隐私弹窗组件下载链接(请使用电脑浏览器点击下载)

组件引入

解压一下下载的组件压缩包,然后放到目录:miniprogram/components下,如果没有components文件夹,新建一个就行。
一文看懂微信小程序新版隐私协议(附带弹窗组件),微信小程序,微信小程序,小程序

引入的话,可以在需要使用弹窗的页面.json文件引入,如果多个页面需要用到的话,可以在app.json文件中全局引入。
页面引入:
一文看懂微信小程序新版隐私协议(附带弹窗组件),微信小程序,微信小程序,小程序

全局引入:
一文看懂微信小程序新版隐私协议(附带弹窗组件),微信小程序,微信小程序,小程序

组件说明

组件目前一共有三个参数以及一个回调事件。

参数名 参数说明
showPop(Boolean) 控制弹窗显示或者隐藏
exitApp(Boolean) 拒绝是否退出小程序
inTabPage(Boolean) 是否在tabbar页面 用于隐藏tabbar
handle(event) 弹窗按钮点击后的回调事件 返回授权结果 {errMsg: “”, result: false/true}

组件授权结果会同时在全局参数app.json中存储,开发者可以自己决定需不需要。
不需要的话,直接注释组件的代码。
一文看懂微信小程序新版隐私协议(附带弹窗组件),微信小程序,微信小程序,小程序

组件的使用

注意,为了降低组件的耦合性,组件内部并不进行是否需要隐私接口授权的判断。因此弹窗显示的时机需要开发者自己进行处理。

使用案例代码(在页面onload时展示)

页面json

局部引入组件

{
    "usingComponents": {
        "privacyPopup": "../../components/privacyPopup/privacyPopup"
    },
    "navigationBarTitleText": "弹窗使用案例",
    "navigationBarBackgroundColor": "#fff"
}
wxml
<privacyPopup showPop="{{showPop}}" exitApp bind:handle="popBtnTap"></privacyPopup>
页面JS
Page({
  /**
   * 页面的初始数据
   */
  data: {
    showPop: false,
  },

  /**
   * 生命周期函数--监听页面加载
   */
  async onLoad() {
    const privacySettingRes = await this.getPrivacySetting();
    console.log("privacySettingRes :>> ", privacySettingRes);
    this.setData({
      showPop: privacySettingRes.needAuthorization,
    });
  },

  /**
   * 按钮点击回调
   */
  popBtnTap(res) {
    console.log("授权结果返回数据 :>> ", res);
    console.log("授权结果 :>> ", res.detail);
    if (res.detail.result) {
      wx.showToast({
        title: "同意授权",
        icon: "success",
      });
    } else {
      wx.showToast({
        title: "拒绝授权",
        icon: "error",
      });
    }
  },

  /**
   * 获取隐私协议授权信息
   * @returns {object} {needAuthorization: true/false, privacyContractName: '《xxx隐私保护指引》'}
   */
  getPrivacySetting() {
    const res = {
      needAuthorization: false,
      privacyContractName: "基础库过低,不需要授权",
    };
    if (!wx.getPrivacySetting) return res;
    return new Promise((resolve, reject) => {
      wx.getPrivacySetting({
        success(res) {
          resolve(res);
        },
        fail(err) {
          reject(err);
        },
      });
    });
  },
});

实现效果

一文看懂微信小程序新版隐私协议(附带弹窗组件),微信小程序,微信小程序,小程序

用户拒接授权

一文看懂微信小程序新版隐私协议(附带弹窗组件),微信小程序,微信小程序,小程序

用户同意授权

一文看懂微信小程序新版隐私协议(附带弹窗组件),微信小程序,微信小程序,小程序

关于调试

授权后需要重新触发授权请求,在IDE中可以清除授权缓存来实现。如果是真机的话,可以长按删除小程序来实现。
一文看懂微信小程序新版隐私协议(附带弹窗组件),微信小程序,微信小程序,小程序

五、结语

最后来一下常规结语:
实际开发中的其他逻辑就不写了。需要同学们自己去考虑异常情况处理等问题啦。

有任何疑问可以在评论区留下。我每天都会进行回复,私聊不回。(为了刷积分)

以上均是本人开发过程中的一些经验总结与领悟,如果有什么不正确的地方,希望大佬们评论区斧正。

💥最后!!!不管这篇文章对你有没有用,既然都看到最后了。
👍赞一个!!!
🤩当然,顺带收藏就最好了。
😎欢迎转载,原创不易,转载请注明出处✍️。

😊如果你对小程序开发有兴趣或者正在学习小程序开发,可以关注我。每一篇都是原创,每一篇都是干货噢~。
————————————————
版权声明:本文为CSDN博主「super–Yang」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_44702572/article/details/132772791文章来源地址https://www.toymoban.com/news/detail-709399.html

到了这里,关于一文看懂微信小程序新版隐私协议(附带弹窗组件)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微信小程序-关于新版隐私协议接口wx.onNeedPrivacyAuthorization getPrivacySetting requirePrivacyAuthorize的适配解读以及实现代码

    代码插件已集成,即插即用, 五分钟集成进项目, 免费下载 ,欢迎大家交流  微信小程序用户隐私保护协议弹窗插件下载 官方公告地址:关于小程序隐私保护指引设置的公告 | 微信开放社区 1、首先看一下这个网址,里边包含涉及到的隐私的接口,这些接口都要适配一下,否则将会

    2024年02月10日
    浏览(47)
  • uniapp 开发微信小程序之新版隐私协议

    自从微信小程序官方更新隐私协议,用户必须同意之后,才能获取个人信息,这就导致在获取用户信息之前,需要有个隐私协议弹窗 大致如下图: 微信小程序官方提供的API和 uniapp 开发的稍微有点区别,这里只记录 uniapp 开发的,如果需要微信原生的,请自行官网查看。 首先

    2024年02月09日
    浏览(47)
  • 微信小程序隐私协议接入

     2023.09.14更新: 隐私相关功能启用时间延期至 2023年10月17日。在 2023年10月17日之前,在 app.json 中配置 __usePrivacyCheck__: true 后,会启用隐私相关功能,如果不配置或者配置为 false 则不会启用。在 2023年10月17日之后,不论 app.json 中是否有配置 __usePrivacyCheck__ ,隐私相关功能都会

    2024年02月08日
    浏览(44)
  • 【Taro】微信小程序隐私协议改造

     微信要求小程序开发者在2023.9.15日前将小程序中调用获取用户隐私api的接口时,都必须要先让用户授权,如果用户拒绝授权,那么小程序的对应接口或组件将直接禁用。 那么首先,请将微信小程序开发者工具-详情-本地设置-基础调试库 切换至2.33.0以上。低于该调试库会报错

    2024年02月09日
    浏览(54)
  • 微信小程序接入用户隐私协议提示教程

    接入前须知 官方对接入隐私提示进行了操作步骤 1、 pc小程序 管理端 设置 用户保护指引设置 2、 对开启的保护指引 进行 填写 3、 查看官方示例 进行接入 官方用户授权事件说明 展示示例 第一步:熟悉这几个api 功能点 wx.getPrivacySetting 查询微信有待同意的隐私政策信息 (需

    2024年02月04日
    浏览(67)
  • 【Taro】微信小程序关于隐私协议改造

    之前微信刚公布要求整改小程序获取用户隐私接口的改造公告那会,Taro还没有支持这方面的更新,于是当时就暂时搁置了一下,后面发现有人回复了我的提问,并且给出了解决方案。按照大佬给出的解决方案试了下,果然可行,所以在此记录分享一下! 首先,当时的帖子在

    2024年02月07日
    浏览(54)
  • 微信小程序提交审核用户隐私协议怎么写?

    今天给大家出个隐私协议的模板供大家参考,内容如下: 为了分辨用户,开发者将在获取你的明示同意后,收集你的微信昵称、头像 为了显示距离,开发者将在获取你的明示同意后,收集你的位置信息。 开发者收集你的地址,用于获取位置信息。 开发者收集你的发票信息,

    2024年02月06日
    浏览(65)
  • 微信小程序添加用户授权《隐私保护协议》

    官方文档:wx.onNeedPrivacyAuthorization(function listener) | 微信开放文档 微信小程序平台上需要进行隐私配置,审核成功后 大概半小时左右 才会生效。 小程序公众平台 --- 设置 --- 服务内容声明 --- 用户隐私保护指引(提交审核时,也会检测是否采集用户隐私,有用到隐私接口的话需

    2024年02月08日
    浏览(57)
  • uniapp 微信小程序之隐私协议开发

    官网通知:https://developers.weixin.qq.com/miniprogram/dev/framework/user-privacy/PrivacyAuthorize.html 1、配置 __usePrivacyCheck__: true ;位置 manifest.json : 2、用户隐私保护指引中添加对应的权限,提交审核,位置:微信公众平台-设置-服务内容声明-用户隐私保护指引-更新 3、自定义弹框

    2024年02月05日
    浏览(48)
  • 微信小程序隐私协议相关接口实际使用方式

    页面加载时自动弹窗,同意后可以使用对应功能,不同意退出页面或者隐藏相关功能。 这种情况下,需要在onLoad里使用wx.getPrivacySetting获取隐私授权情况,没授权时弹出隐私弹窗。完整代码如下 在使用到隐私接口时弹出隐私弹窗,同时隐私接口的流程会被挂起,用户同意后会

    2024年02月09日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包