适配小程序隐私保护指引设置

news2024/11/19 2:16:53

由于小程序发布了一个公告,那么接下来就是怎么改简单的问题了。毕竟不太想大的改动历史上的代码。尽量简单的适配隐私策略就可以了。

整体思路也是参考现在App普遍的启动就让用户同意隐私策略,不同意不让用,同意了之后才能够继续使用。

公告内容
参考文档

整体思路

整体思路如下:

  1. 在app.js中检查是否已经读过;
  2. 如果没读过,直接跳转到隐私策略页面(隐私策略页面自定义导航且没有返回按钮,为了防止Android的侧边滑动退出,在onUnLoad里边判断一下,如果没同意在跳转到隐私策略一面);
  3. 如果点击确定则退页继续正常流程;
  4. 如果点击拒绝,弹出一个不确定无法继续使用的提示。

如此来做的话仅需要增加一个 privacy 的页面,然后在app.js里边跳进这个页面来适配隐私策略。

效果如下:

在这里插入图片描述

详细实现

app.js内容

在app.js里边增加一个检测隐私的函数:

checkPrivacy() {
  if (!wx.canIUse('getPrivacySetting')) {
    return
  }
  wx.getPrivacySetting({
    success: res => {
        console.log("是否需要授权:", res.needAuthorization, "隐私协议的名称为:", res.privacyContractName)
        if (res.needAuthorization) {
          wx.navigateTo({
            url: `/pages/privacy`,
          })
          // wx.reLaunch({
          //   url: '/pages/privacy',
          // })
        } 
    },
    fail: () => { },
    complete: () => { },
  })
}

在App的onLaunch中调用一下

setTimeout(() => {
  this.checkPrivacy()
}, 500);

privacy 页面内容

privacy.js 内容

// pages/privacy.js
Page({
  isAgree: false,
  resolvePrivacyAuthorization: null,
  onLoad(options) {
    console.log('onload ', options)
    wx.onNeedPrivacyAuthorization(resolve => {
      console.log('onNeedPrivacyAuthorization ', resolve)
      this.resolvePrivacyAuthorization = resolve
    })
    wx.requirePrivacyAuthorize()
  },
  onUnload() {
    if (!this.isAgree) {
      console.log('not agree')
      wx.navigateTo({
        url: `/pages/privacy`,
      })
    }
  },
  handleDisagree: function(event) {
    console.log('handleDisagree')

    this.resolvePrivacyAuthorization({ event: 'disagree' })

    wx.exitMiniProgram()
  },
  handleAgree: function(event) {
    console.log('handleAgree')
    this.resolvePrivacyAuthorization({ buttonId: 'agree-btn', event: 'agree' })
    this.isAgree = true
    wx.navigateBack()
  },
  openPrivacyContract() {
    wx.openPrivacyContract({
      success: res => {
        console.log('openPrivacyContract success')
      },
      fail: res => {
        console.error('openPrivacyContract fail', res)
      }
    })
  }
})

privacy.json 内容

{
  "navigationStyle": "custom",
  "usingComponents": {}
}

privacy.wxml 内容

<!--pages/privacy.wxml-->
<view class="container">
  <view>用户隐私保护提示</view>
  <view>感谢您使用本游戏,您使用本游戏前应当阅井同意</view>
  <button class="goToPrivacy" bind:tap="openPrivacyContract">《用户隐私保护指引》</button>
  <view>当您点击同意并开始时用产品服务时,即表示你已理解并同息该条款内容,该条款将对您产生法律约束力。如您拒绝,将无法进入游戏。</view>

  <button id="disagree-btn"
    style="margin-top: 30rpx;"
    type="default"
    class="weui-btn"
    bindtap="handleDisagree"
  >不同意并退出</button>
  <button id="agree-btn"
    type="default"
    open-type="agreePrivacyAuthorization"
    class="weui-btn"
    bindagreeprivacyauthorization="handleAgree"
  >同意并继续</button>
</view>

privacy.wxss 内容

/* pages/privacy.wxss */

.container {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  padding: 220rpx 40rpx;
}

.goToPrivacy {
  width: 670rpx !important;
  margin: 20rpx 0;
  font-size: 28rpx;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/928101.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

英伟达挖走小鹏汽车高管吴新宙!何小鹏亲自送行 | 百能云芯

8月25日消息&#xff0c;英伟达公司挖来小鹏汽车自动驾驶副总裁吴新宙&#xff0c;任命他为自动驾驶产品主管&#xff0c;该职位将于8月25日正式生效。 据悉&#xff0c;小鹏汽车董事长何小鹏在个人微博上晒出了一张与吴新宙以及英伟达CEO黄仁勋的合影&#xff0c;并透露即将展…

访学、博后参考|加拿大十大名校简介

上期我们介绍了加拿大各省所在大学的分布情况&#xff0c;本期知识人网小编整理出加拿大十大名校简介&#xff0c;供申请者参考。 1、多伦多大学&#xff08;University of Toronto&#xff09;&#xff08;University of Toronto&#xff09;&#xff08;University of Toront…

最新绕过目标域名CDN进行信息收集技术

绕过目标域名CDN进行信息收集 1&#xff0e;CDN简介及工作流程 CDN&#xff08;Content Delivery Network&#xff0c;内容分发网络&#xff09;的目的是通过在现有的网络架构中增加一层新的Cache&#xff08;缓存&#xff09;层&#xff0c;将网站的内容发布到最接近用户的网…

一次harbor升级导致镜像项目访问无权限问题

一、问题背景 将环境中现运行的harbor版本升级到2.6.2版本&#xff0c;相关同事升级完&#xff0c;发现有部分镜像项目点进去报无权限问题&#xff0c;镜像项目无法使用&#xff0c;但是也有部分项目是可以正常提供使用的。 二、问题处理过程 1、根据报错反馈没权限&#xff…

Thinkphp内核微信拼团购物商城小程序源码

Thinkphp内核开发的微信拼团购物商城小程序源码&#xff0c;支持微信支付&#xff0c;站长亲测完美。 下载地址&#xff1a;https://bbs.csdn.net/topics/616764816

电脑文件删除了可以找回吗?分享一种简单恢复删除电脑文件办法!

电脑文件删除了可以找回吗&#xff1f;可以。在原理上讲电脑删除的文件是有希望恢复的&#xff0c;因为操作系统在删除文件的时候并会不会立刻将文件彻底删除。当文件被删除的时候&#xff0c;其文件记录被删除&#xff0c;并且被文件占用的磁盘空间被标记为空闲。 这样对于用户…

【HCIP】16.MPLS LDP

LDP是MPLS的一种控制协议&#xff0c;相当于传统网络中的信令协议&#xff0c;负责FEC的分类、标签的分配以及LSP的建立和维护等操作。LDP规定了标签分发过程中的各种消息以及相关处理过程。 LDP的工作过程主要分为两部分&#xff1a; LSR之间建立LDP会话。LSR之间基于LDP会话…

半导体低压热氧工艺中的真空度精密控制解决方案

摘要&#xff1a;在目前的各种半导体材料热氧化工艺中&#xff0c;往往需要对正负压力进行准确控制并对温度变化做出快速的响应&#xff0c;为此本文提出了热氧化工艺的正负压力控制解决方案。解决方案的核心是基于动态平衡法分别对进气和排气流量进行快速调节&#xff0c;具体…

Java——一个Java实体类,表示一个试题的模型

这段代码是一个Java实体类&#xff0c;表示一个试题的模型。 该实体类具有以下属性&#xff1a; id&#xff1a;题号&#xff0c;表示试题的编号。title&#xff1a;题目&#xff0c;表示试题的题目内容。optionA&#xff1a;选项A&#xff0c;表示试题的选项A。optionB&#…

【智算中心】GPU是如何改变世界的

现在有市场消息表示&#xff0c;NVIDIA正计划减少A800 GPU的产量&#xff0c;以促进其更高端的H800 GPU 的销售。很显然NVIDIA是希望从H800 GPU上获得更多销售量&#xff0c;从中国市场获得更多利益。而且最近一段时间有传闻美国要彻底封杀AI芯片的出口&#xff0c;让国内甚至连…

错误:依赖检测失败: mysql-community-libs(x86-64) >= 5.7.9 被 (已安裝) mysql-community-li

错误&#xff1a; 错误原因&#xff1a;没有删除之前安装的依赖问题 解决办法&#xff1a; yum remove mysql-libs 再用下面指令检查一遍&#xff1a; rpm -qa | grep mysql 如果有还未清理的&#xff0c;用下面指令&#xff1a; rpm -e xxx

Huawei AP 3030DN Fit转换Fat

一、FTP软件下载与安装 二、下载bin文件&#xff0c;AP系统用 三、终端连接AP 四、传送文件 五、升级AP system-view ap-mode-switch prepareap-mode-switch check system-view ap-mode-switch prepare ap-mode-switch check ap-mode-switch ftp 3030dn.bin 172.21.1.250 t…

windows环境 pip安装mysqlclient失败问题记录及解决方案

1.问题记录 > pip install -i https://pypi.douban.com/simple mysqlclient Looking in indexes: https://pypi.douban.com/simple Collecting mysqlclientUsing cached https://pypi.doubanio.com/packages/50/5f/eac919b88b9df39bbe4a855f136d58f80d191cfea34a3dcf96bf5d…

半导体企业如何进行跨网数据传输,又能保护核心数据安全?

为了保护设计文档、代码文件等内部核心数据&#xff0c;集成电路半导体企业一般会将内部隔离成多个网络&#xff0c;比如研发网、办公网、生产网、测试网等。常规采取的网络隔离手段如下&#xff1a; 1、云桌面隔离&#xff1a;一方面实现数据不落地&#xff0c;终端数据安全有…

学习JAVA打卡第四十二天

正则表达式及字符串的替换与分解 ⑴正则表达式 正则表达式是string对象的字符序列&#xff0c;该字符序列中含有具有特殊意义的字符&#xff0c;这些特殊字符称作正则表达式的元字符。 注&#xff1a;由于“ ”代表任何一个字符&#xff0c;所以在正则表达式中如果想使用普…

【PLSQL】PLSQL学习笔记

文章目录 一&#xff1a;记录类型1.语法2.代码实例 二&#xff1a;字符转换三&#xff1a;%TYPE和%ROWTYPE1.%TYPE2.%ROWTYPE 四&#xff1a;循环1.LOOP2.WHILE&#xff08;推荐&#xff09;3.数字式循环 五&#xff1a;游标1.游标定义及读取2.游标属性3.NO_DATA_FOUND和%NOTFO…

抖音web主页视频爬虫

需要抖音主页视频爬虫源码的发私信&#xff0c;小偿即可获得长期有效的采集程序。 比构造 s_v_web_id 验证滑块的方法更快&#xff0c;更稳定。

SELinux 入门 pt.2

哈喽大家好&#xff0c;我是咸鱼 在《SELinux 入门 pt.1》中&#xff0c;咸鱼向各位小伙伴介绍了 SELinux 所使用的 MAC 模型、以及几个重要的概念&#xff08;主体、目标、策略、安全上下文&#xff09; 我们还讲到&#xff1a; 对于受 SELinux 管制的进程&#xff0c;会先…

React 全栈体系(三)

第二章 React面向组件编程 四、组件三大核心属性3: refs与事件处理 1. 效果 需求: 自定义组件, 功能说明如下: 点击按钮, 提示第一个输入框中的值当第2个输入框失去焦点时, 提示这个输入框中的值 2. 理解 组件内的标签可以定义ref属性来标识自己 3. 编码 3.1 字符串形式…

【javaweb】学习日记Day7 - Mysql 数据库 DQL 多表设计

之前学习过的SQL语句笔记总结戳这里→【数据库原理与应用 - 第六章】T-SQL 在SQL Server的使用_Roye_ack的博客-CSDN博客 目录 一、DQL 数据查询 1、基本查询 2、条件查询 3、分组查询 &#xff08;1&#xff09;聚合函数 ① count函数 ② max min avg sum函数 &…