聊聊微信小程序的隐私协议开发
为什么需要隐私协议?
小程序隐私授权弹窗FAQ官方:
https://developers.weixin.qq.com/community/develop/doc/00000ebac5c3e0423840776a966c09
也就是说只要我们配置了隐私协议,那么涉及到拍照啊、上传、下载图片啊这些接口都不需要授权了,只要用户同意就能直接调用相关接口。
如何配置隐私协议?
需要到小程序MP后台配置,路径为:设置>基本设置>服务内容声明>用户隐私保护指引:
比如我需要获取微信用户的昵称和头像要怎么操作呢?
进入后我们看第一项开发者处理的信息,我们点击增加信息类型:
选择用户信息:
如何确定自己需要的权限要选择那些信息类型呢?
见:
https://developers.weixin.qq.com/miniprogram/dev/framework/user-privacy/miniprogram-intro.html
比如我需要使用wx.choosePoi、wx.chooseLocation接口,那么就需要选择位置信息类型、如果是wx.chooseAddress接口,那么就需要选择地址信息类型,以此类推。
信息类型选好后,用途也可以参考这里的写法:
https://juejin.cn/post/7280787122004377615
全部使用到的接口的信息类型都选择好欧,提交等待审核通过,下面介绍开发流程:
两种方式开发:
1、使用官方隐私弹窗(超级简单)(推荐)
仅需要在app.json中加一个参数即可,官方连弹窗都自带了,完全不用自己再做任何事。
官方弹窗样式:
就在app.json中加这一个参数即可:
2、自己开发隐私弹窗(有点麻烦)
大概流程是:
2.1、自己写一个弹窗,弹窗需要的文字大概为请阅读某某隐私协议
大概长这样,但这个是官方自带的
2.2、
还需要有个按钮点击后跳转到隐私协议,还需要监听用户是否点击了同意按钮
详细流程:
比如某个按钮或页面需要有相应的权限时需要用户同意隐私协议时,我们需要先调用wx.getPrivacySetting主动查询用户是否同意过:
这里的needAuthorization返回了true,说明需要先同意隐私协议才行,那么就得打开一个弹窗或者跳转一个页面展示隐私提示,类似下面这样:
当用户点击蓝色的隐私协议时,需要调用微信的wx.openPrivacyContract方法跳转到隐私协议的具体内容页查看隐私协议,当然用户也可以选择不跳转,直接点同意也可以,但是这个同意按钮需要时官方的button组件:
<button id="agree-btn" open-type="agreePrivacyAuthorization"
bindagreeprivacyauthorization="handleAgreePrivacyAuthorization">同意</button>
这个组件的样式还是自己重写,不然是这样的:
还需要定义一个
handleAgreePrivacyAuthorization方法,当handleAgreePrivacyAuthorization方法触发时表示用户点击了同意按钮,此时就可以调用隐私接口了,如获取地址等。
这篇文章就到这里啦!如果你对文章内容有疑问或想要深入讨论,欢迎在评论区留言,我会尽力回答。同时,如果你觉得这篇文章对你有帮助,不妨点个赞并分享给其他同学,让更多人受益。
想要了解更多相关知识,可以查看我以往的文章,其中有许多精彩内容。记得关注我,获取及时更新,我们可以一起学习、讨论技术,共同进步。
感谢你的阅读与支持,期待在未来的文章中与你再次相遇!
聊聊微信小程序的隐私协议开发的更多相关文章
- 微信小程序购物商城系统开发系列-目录结构
上一篇我们简单介绍了一下微信小程序的IDE(微信小程序购物商城系统开发系列-工具篇),相信大家都已经蠢蠢欲试建立一个自己的小程序,去完成一个独立的商城网站. 先别着急我们一步步来,先尝试下写一个自己的 ...
- 微信小程序购物商城系统开发系列-工具篇
微信小程序开放公测以来,一夜之间在各种技术社区中就火起来啦.对于它 估计大家都不陌生了,对于它未来的价值就不再赘述,简单一句话:可以把小程序简单理解为一个新的操作系统.新的生态,未来大部分应用场景都将 ...
- 微信小程序购物商城系统开发系列
微信小程序购物商城系统开发系列 微信小程序开放公测以来,一夜之间在各种技术社区中就火起来啦.对于它 估计大家都不陌生了,对于它未来的价值就不再赘述,简单一句话:可以把小程序简单理解为一个新的操作系统. ...
- 从微信小程序到鸿蒙js开发【11】——页面路由
目录: 1.router.push()&wx.navigateTo() 2.router.replace()&wx.redirectTo() 3.router.back()&w ...
- 从微信小程序到鸿蒙js开发【12】——storage缓存&自动登录
鸿蒙入门指南,小白速来!从萌新到高手,怎样快速掌握鸿蒙开发?[课程入口] 正文: 在应用开发时,我们常需要将一些数据缓存到本地,以提升用户体验.比如在一个电商的app中,如果希望用户登录成功后,下次打 ...
- 从微信小程序到鸿蒙js开发【13】——list加载更多&回到顶部
鸿蒙入门指南,小白速来!从萌新到高手,怎样快速掌握鸿蒙开发?[课程入口] 目录: 1.list加载更多 2.list回到顶部 3.<从微信小程序到鸿蒙js开发>系列文章合集 1.list加 ...
- 从微信小程序到鸿蒙js开发【15】——JS调用Java
鸿蒙入门指南,小白速来!0基础学习路线分享,高效学习方法,重点答疑解惑--->[课程入口] 目录:1.新建一个Service Ability2.完善代码逻辑3.JS端远程调用4.<从微信小 ...
- 微信小程序版博客——开发汇总总结(附源码)
花了点时间陆陆续续,拼拼凑凑将我的小程序版博客搭建完了,这里做个简单的分享和总结. 整体效果 对于博客来说功能页面不是很多,且有些限制于后端服务(基于ghost博客提供的服务),相关样式可以参考截图或 ...
- 开发微信小程序中SSL协议的申请、证书绑定、TLS 版本处理等
在上篇随笔<基于微信小程序的系统开发准备工作>介绍了开发微信小程序的一些前期的架构设计.技术路线 .工具准备等方面内容,本篇随笔继续这个步骤,逐步介绍我们实际开发过程中对SSL协议的申请及 ...
- 微信小程序的认识和开发适用性
来源:三节课课堂笔记 小程序认知 初识小程序. 目前微信小程序包括各类公众号接口的情况: 那么微信拥有的功能产品和对应的互联网产品有哪些: 小程序相当于AppStore应用分发市场: ...
随机推荐
- low-code 低代码平台 java 代码自动一键生成工具
low-code low-code 是一款为 java 打造的低代码平台. 开源地址:https://github.com/houbb/low-code 特性 支持基本的增删改查 支持枚举值处理 支持 ...
- spring boot整合mybatis-plus报错:There is no getter for property named ‘ew‘ in ‘xxx‘
问题说明 spring boot整合mybatis-plus报错:There is no getter for property named 'ew' in 'xxx' 问题解决 XXXmapper. ...
- go build gcc报错 /usr/bin/ld | cannot find -ldl cannot find -lpthread cannot find -lc
之前一直在kali或者其他ubuntu设备编译sliver, 临时在centos7上编译时报错了 # github.com/bishopfox/sliver/server /usr/local/go/ ...
- win32 - 基于hwnd获取进程名字(GetModuleFileNameEx)
#include <Windows.h> #include <psapi.h> int main() { DWORD process_ID = 0; WCHAR process ...
- less变量书写及样式混入
定义变量 定义混入样式 变量及混入样式使用 样式文件中 ~@代表src
- django中使用redis管道
管道(事务),要是都成功则成功,失败一个全部失败 原理:将数据操作放在内存中,只有成功后,才会一次性全部放入redis 记住,redis中的管道可以开启事务处理,但是并没有回滚这一说法!跟mysql中 ...
- 【Azure 应用服务】调用Azure REST API来获取 App Service的访问限制信息(Access Restrictions)以及修改
问题描述 昨天的博文中(https://www.cnblogs.com/lulight/p/17099179.html)介绍了使用Python SDK 来获取App Service的访问限制信息,那么 ...
- nftables语法及例子
先上我自己实际测试通过的例子,用例子便于在实践中学习: # 0 --- 说明 ---下面例子中的单引号目的是为了避免nftable参数中的星号.花括号.分号等符号被shell展开解释掉了,导致nft命 ...
- C程序分别实现下列字符阵列的输出
C程序分别实现下列字符阵列的输出:(https://zhuanlan.zhihu.com/p/443989560 可以参考这个博主写的) 1,左下三角形(代码) 1 #include <s ...
- 一文讲明白Java中线程与进程、并发与与并行、同步与异步
写在开头 ok,everybody,在过去的两周内,我们大体上讲完了Java的集合,在最后我们探讨了关于HashMap线程不安全的原因,又提出了ConcurrentHashMap这个线程安全的集合解决 ...