为什么需要隐私协议?

小程序隐私授权弹窗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方法触发时表示用户点击了同意按钮,此时就可以调用隐私接口了,如获取地址等。

这篇文章就到这里啦!如果你对文章内容有疑问或想要深入讨论,欢迎在评论区留言,我会尽力回答。同时,如果你觉得这篇文章对你有帮助,不妨点个赞并分享给其他同学,让更多人受益。

想要了解更多相关知识,可以查看我以往的文章,其中有许多精彩内容。记得关注我,获取及时更新,我们可以一起学习、讨论技术,共同进步。

感谢你的阅读与支持,期待在未来的文章中与你再次相遇!

聊聊微信小程序的隐私协议开发的更多相关文章

  1. 微信小程序购物商城系统开发系列-目录结构

    上一篇我们简单介绍了一下微信小程序的IDE(微信小程序购物商城系统开发系列-工具篇),相信大家都已经蠢蠢欲试建立一个自己的小程序,去完成一个独立的商城网站. 先别着急我们一步步来,先尝试下写一个自己的 ...

  2. 微信小程序购物商城系统开发系列-工具篇

    微信小程序开放公测以来,一夜之间在各种技术社区中就火起来啦.对于它 估计大家都不陌生了,对于它未来的价值就不再赘述,简单一句话:可以把小程序简单理解为一个新的操作系统.新的生态,未来大部分应用场景都将 ...

  3. 微信小程序购物商城系统开发系列

    微信小程序购物商城系统开发系列 微信小程序开放公测以来,一夜之间在各种技术社区中就火起来啦.对于它 估计大家都不陌生了,对于它未来的价值就不再赘述,简单一句话:可以把小程序简单理解为一个新的操作系统. ...

  4. 从微信小程序到鸿蒙js开发【11】——页面路由

    目录: 1.router.push()&wx.navigateTo() 2.router.replace()&wx.redirectTo() 3.router.back()&w ...

  5. 从微信小程序到鸿蒙js开发【12】——storage缓存&自动登录

    鸿蒙入门指南,小白速来!从萌新到高手,怎样快速掌握鸿蒙开发?[课程入口] 正文: 在应用开发时,我们常需要将一些数据缓存到本地,以提升用户体验.比如在一个电商的app中,如果希望用户登录成功后,下次打 ...

  6. 从微信小程序到鸿蒙js开发【13】——list加载更多&回到顶部

    鸿蒙入门指南,小白速来!从萌新到高手,怎样快速掌握鸿蒙开发?[课程入口] 目录: 1.list加载更多 2.list回到顶部 3.<从微信小程序到鸿蒙js开发>系列文章合集 1.list加 ...

  7. 从微信小程序到鸿蒙js开发【15】——JS调用Java

    鸿蒙入门指南,小白速来!0基础学习路线分享,高效学习方法,重点答疑解惑--->[课程入口] 目录:1.新建一个Service Ability2.完善代码逻辑3.JS端远程调用4.<从微信小 ...

  8. 微信小程序版博客——开发汇总总结(附源码)

    花了点时间陆陆续续,拼拼凑凑将我的小程序版博客搭建完了,这里做个简单的分享和总结. 整体效果 对于博客来说功能页面不是很多,且有些限制于后端服务(基于ghost博客提供的服务),相关样式可以参考截图或 ...

  9. 开发微信小程序中SSL协议的申请、证书绑定、TLS 版本处理等

    在上篇随笔<基于微信小程序的系统开发准备工作>介绍了开发微信小程序的一些前期的架构设计.技术路线 .工具准备等方面内容,本篇随笔继续这个步骤,逐步介绍我们实际开发过程中对SSL协议的申请及 ...

  10. 微信小程序的认识和开发适用性

    来源:三节课课堂笔记 小程序认知 初识小程序.   目前微信小程序包括各类公众号接口的情况:   那么微信拥有的功能产品和对应的互联网产品有哪些:   小程序相当于AppStore应用分发市场:   ...

随机推荐

  1. Python 写入文件、读取文件内容——open函数/readLines/Write/find函数用法

    1.读取.txt整个文件 ww.txt文件在程序文件所在的目录,在文件存储在其他地方,ww.txt需要添加文件路径,如:E:\book1\ww.txt:读取后希望返回的是列表类型,将read改为rea ...

  2. 基于 log4j2 插件实现统一日志脱敏,性能远超正则替换

    前言 金融用户敏感数据如何优雅地实现脱敏? 日志脱敏之后,无法根据信息快速定位怎么办? 经过了这两篇文章之后,我们对日志脱敏应该有了一定的理解. 但是实际项目中,我们遇到的情况往往更加复杂: 1)项目 ...

  3. bootstrap响应式网页布局

    bootstrap可以说是没有布局和审美概念的后端狗的福利.使用它的栅格系统可以轻松的对网页进行布局,而且可以做到响应式的布局.看起来很酷,接下来我就会总结自己在开发博客系统中用到的知识点及实战案例给 ...

  4. crontab采坑总结

    目录 crontab环境变量 脚本缺少执行权限 crontab是Linux平台实现定时任务的服务工具,通常情况下该服务会预装在发行版中,直接使用即可. 关于crontab的详细用法参考:https:/ ...

  5. Android加载PDF方案(pdf.js,支持缩放)

    都知道,Android本身的webview是不支持pdf加载的(比不上iOS的webview,谁让人家NB呢),因此通过连接Google的一个服务器转换成功后返回给WebView显示.但是,但是,但是 ...

  6. django中_meta组件

    # _meta组件是一个django中任何一个model类的类实例用来自省的api,简单点说,比如有一个Accounts的模型,则 Accounts._meta # 常用接口 model.Userin ...

  7. select_for_update悲观锁

    例子,银行存款和撤销方法 1.用户A提取帐户 - 余额为100 $. 2.用户B提取帐户 - 余额为100 $. 3.用户B退出30 $ - 余额更新为100 $ - 30 $ = 70 $. 4.用 ...

  8. 详解SSL证书系列(2)SSL证书对网站的好处

    在如今谷歌.百度等互联网巨头强制性要求网站 HTTPS 化的情况下, 网站部署 SSL 证书已然成为互联网的发展趋势,我们也知道了 SSL证书可以防止网络安全威胁.那么除此外为网站部署 SSL 证书还 ...

  9. 【LeetCode哈希表#1】有效的字母异位词+赎金信(数组)

    有效的字母异位词 力扣题目链接(opens new window) 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词. 示例 1: 输入: s = "anagr ...

  10. Html飞机大战(十六): 完成"清除"敌机奖励类

    好家伙,   我们先来尝试完成一个最简单的功能 正面buff: 1.消灭全图敌机   我们要先找一个好看一点的素材     把背景弄成透明的(搞了好久),感谢度娘的技术支持Photoshop中如何把图 ...