关于小程序收集用户手机号行为的规范
手机号在日常生活中被广泛使用,是重要的用户个人信息,小程序开发者应在用户明确同意的前提下,依法合规地处理用户的手机号信息。
而部分开发者在处理用户手机号过程中,存在不规范收集行为,影响了用户的正常使用体验,此类情况涉及收集用户隐私违规。
《微信小程序平台运营规范》15. 用户隐私和数据规范对此规范如下:
除非相关法律要求,或经用户同意,否则不得要求用户输入个人信息(手机号、出生日期等)才可使用其功能,或收集用户密码或者用户个人信息(包括但不限于,手机号、身份证号、生日、住址等)。
在小程序运行中,用户未触发需使用权限或用户个人信息的相关功能或服务时,不得提前向用户弹窗申请权限或收集用户个人信息。

1、一进入小程序即收集用户手机号

违规案例
一进入小程序就跳转到手机号登录页面

用户一进入小程序后页面内容不显示,需用户提供手机号后才能正常访问。

2、小程序内浏览时要收集用户手机号

违规案例
用户浏览小程序商品页面,提示需绑定手机号码才能查看商品详情内容。

小程序内点击浏览各个版块,用户需提供手机号后才能浏览版块详情。

小程序点击浏览商品信息,需输入手机号获取验证码,登录后才能浏览。
3、小程序内部分操作强制或诱导收集用户手机号
3.1 小程序到店点餐/取餐业务场景下强制收集用户手机号

违规案例
餐饮类小程序,需绑定手机号入会才能获得下单自提/堂食等服务。

3.2 小程序停车缴费场景下强制收集用户手机号

违规案例
小程序在停车缴费相关服务过程中需提供手机号才可进行查看缴费。

3.3 小程序页面分享场景下强制收集用户手机号

违规案例
用户浏览商品页面时,点击分享按钮需要提供手机号码,才能继续操作。

3.4 小程序通过利益诱导的方式收集用户手机号

违规案例
小程序通过获得积分奖励的方式,提示用户授权手机号。


为了保护用户的个人信息,并确保小程序良好的使用体验,平台整理了调整指引供开发者参考:
1、用户一进入小程序,应当可以体验浏览小程序业务内容,不应该在未展示任何信息的情况下,通过弹窗或跳转的页面来收集用户手机号;
2、用户进入小程序以后,应该可以正常浏览小程序页面或版块,不应要求用户提供手机号才能浏览,应保证用户正常的浏览体验;
3、在部分业务使用场景,手机号不是提供服务所必需时,应当让用户正常操作,不强制收集用户手机号,如到店点餐/取餐、停车缴费、页面分享等;
4、在小程序业务使用场景中,手机号为提供服务所必需的,应明确向用户说明收集的必要原因,并提供用户隐私协议由用户主动同意;
5、 小程序业务场景中,手机号为提供服务所必需的,而用户可能会拒绝提供,应当为用户提供显著拒绝操作方式,且在用户拒绝后,不得频繁向用户询问、要求提供手机号。

1、小程序到店点餐场景不能强制收集用户手机号,餐饮外卖场景是否也不能让用户提供手机号?
不是的,餐饮外卖需要联系点外卖的用户,属于合理收集使用场景。
①在需要用户手机号才能正常提供服务的必要情况下,仍然可以正常指引用户授权或填写手机号;
②而不需要手机号也能正常提供服务的非必要情况下,不得强制用户授权或填写手机号。比如到店点餐类场景,用户需要到店,无需手机号进行联系,应当可以正常点单。
2、小程序未使用手机号快速验证组件,采取用户手动输入的方式进行收集,是否可以?
无论是使用手机号快速验证组件、还是让用户手动输入,涉及在非必要场景下去收集的,都涉及违规收集用户个人信息、并且同样影响正常的用户体验,都应当进行调整。
3、小程序属于企业等内部职工使用,页面信息不便对外展示,应当如何调整?
①在可能的情况下,建议开发者放开可浏览的版块或页面信息,给予用户一定的使用预期;
②如果确因企业内部等原因无法提供对外可公开浏览的内容,应该在页面清晰标注该小程序使用场景及使用人群;
③如果不是小程序的使用人群,在用户验证手机号时需要对用户有明确的拒绝提示,且用户应该可以退出当前流程;
④在提审代码发布更新时,应提供使用说明材料,包括但不限于小程序服务内容录屏、页面截图、体验账号等,以便核实验证。
合理收集与使用用户手机号码,是保护用户隐私和用户体验的重点之一,也是所有开发者需要履行的责任。
平台日常核查持续进行中,如发现小程序通过限制用户操作的方式,在不必要的场景下收集用户手机号,平台将提醒开发者自查调整,如到期未调整,将根据违规程度限制相关能力。
希望开发者们参考以上内容及时调整,共同维护良好的用户使用体验。
相关文章:
关于小程序收集用户手机号行为的规范
手机号在日常生活中被广泛使用,是重要的用户个人信息,小程序开发者应在用户明确同意的前提下,依法合规地处理用户的手机号信息。 而部分开发者在处理用户手机号过程中,存在不规范收集行为,影响了用户的正常使用体验&a…...
js判断手指的上滑,下滑,左滑,右滑,事件监听 和 判断鼠标滚轮向上滚动滑轮向下滚动
js判断手指的上滑,下滑,左滑,右滑,事件监听 和 判断鼠标滚轮向上滚动滑轮向下滚动 pc端 判断鼠标滚轮向上滚动滑轮向下滚动 const scrollFunc (e) > { e e || window.event; let wheelDelta e.wheelDelta ? e.wheelDelta…...
ES 一些简单 的查询注意事项
term query 不分词字段 带分数 where namexxx filter 分词字段 不分词字段 不带分数 Terms query 所有类型 带分数 where name in(xxx) Range query where name between xxx and xxx Exists Regexp Match query 分词字段/基础字段 Multi-match query 多个分词字段/基础字段 Boo…...
LeetCode //C - 57. Insert Interval
57. Insert Interval You are given an array of non-overlapping intervals intervals where intervals[i] [ s t a r t i , e n d i start_i, end_i starti,endi] represent the start and the end of the i t h i^{th} ith interval and intervals is sorted in asce…...
android手势事件
与手势事件有关的方法 dispatchTouchEvent():该方法将触摸事件分发给相应的视图或视图组。onInterceptTouchEvent():该方法用于判断是否需要拦截触摸事件,如果需要拦截,则返回 true,否则返回 false。onTouchEvent()&a…...
[网络安全学习篇01]:windowsxp、windows2003、windows7、windows2008系统部署(千峰网络安全视频笔记)
VM 虚拟机:VMware Workstation 15.5 PRO(建议升至最高版本) 部署windows-xp系统 一、配置虚拟机硬件并安装系统 1、在VMware文件目录下创建一个空文件夹将其命名位:winxp-1 2、打开VMware软件,点击创建新的虚拟机。…...
CANoe自动化工程的搭建
基于XMLCAPL建立自动化工程 1、导入ini文件2、新建 Test Environment3、报告类型4、代码编写 1、导入ini文件 工程的配置的文件,配置DUT相关信息,具体视工程而编写内容。 2、新建 Test Environment 1、新建XML测试用例环境 2、导入XML测试用例文件 …...
第6章:支持向量机
间隔与支持向量 w为法向量,决定的是超平面的方向。b是偏移项,决定了超平面与原点之间的距离。 为什么最大化间隔,得到的就是最优平面呢? 当超平面没有正确划分正负样本时,几何间隔为负数。几何间隔,各个…...
ROS机器人启动move base时代价地图概率性无法加载的原因及解决方法
最近,使用ROS机器人,在启动move_base 节点时,概率性会出现全局和局部代价地图不加载的问题,此时,发布目标点也无法启动路径规划。而且该问题有时候出现概率很低,比如启动10次,会有1次发送该情况…...
快速上手PyCharm指南
PyCharm简介 PyCharm是一种Python IDE(Integrated Development Environment,集成开发环境),带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试、语法高亮、项目管理、代码跳转、智能提示、自动…...
数字图像处理 - 图像处理结合机器学习的应用示例
在本文中,特别关注树叶分类机器学习技术的实现。我们的目标是演示如何利用机器学习算法来分析一系列叶子照片,从而实现准确分类并提供对植物领域有价值的算法。 图像处理中机器学习的本质 机器学习使计算机能够学习模式并根据视觉数据进行预测,彻底改变了图像处理领域。在叶…...
Linux命令200例:zip和unzip用于压缩和解压文件(常用)
🏆作者简介,黑夜开发者,全栈领域新星创作者✌。CSDN专家博主,阿里云社区专家博主,2023年6月csdn上海赛道top4。 🏆数年电商行业从业经验,历任核心研发工程师,项目技术负责人。 &…...
通过 HttpClient 发送请求
文章目录 1. 引入 maven 依赖2. 发送 GET 方式的请求3. 发送 POST 方式的请求 1. 引入 maven 依赖 <dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpclient</artifactId> </dependency>2. 发送 GET 方式的请求…...
管理类联考——逻辑——真题篇——按知识分类——汇总篇——一、形式逻辑——假言——第二节 必要条件假言+第三节 特殊假言
文章目录 第二节 必要条件假言命题-才真题(2018-26)-假言-必要假言-才-(1)建模-“才”-后推前。-(2)A→B的公式化转换-A→B的等价命题:①逆否命题:非B→非A。真题(2020-26)-假言-必要假言-才-(1)建模-“才”-后推前。-(2)A→B的公式化转换-A→B的等价命题:①逆…...
算法笔记:A*算法
A*算法是一种很常用的路径查找和图形遍历算法。它有较好的性能和准确度 1 中心思路 A*算法通过下面这个函数来计算每个节点n的优先级 f(n)g(n)h(n) f(n)是节点n的综合优先级。当选择下一个要遍历的节点时,总会选取综合优先级最高(f(n)值最小࿰…...
postgresql 分类排名
postgresql 分类排名 排名窗口函数示例CUME_DIST 和 NTILE 排名窗口函数 排名窗口函数用于对数据进行分组排名。常见的排名窗口函数包括: • ROW_NUMBER,为分区中的每行数据分配一个序列号,序列号从 1 开始分配。 • RANK,计算每…...
TCP服务器实现—多进程版,多线程版,线程池版
目录 前言 1.存在的问题 2.多进程版 3.多线程版 4.线程池版 总结 前言 在上一篇文章中使用TCP协议实现了一个简单的服务器,可以用来服务端和客户端通信,但是之前的服务器存在一个问题,就是当有多个客户端连接服务器的时候,服…...
Nginx 配置文件的完整指南 (二)
文章目录 四、反向代理配置4.1 proxy_pass效果1—路径重写效果2—转发到其他服务器 4.2 proxy_pass使用规则4.3 proxy_set_header4.3.1 修改请求协议 五、负载均衡配置5.1 upstream5.2 server5.3 负载均衡策略5.3.1 轮询5.3.2 加权轮询5.3.3 最少连接5.3.3 ip_hash:…...
AI夏令营第三期 - 基于论文摘要的文本分类与关键词抽取挑战赛笔记
赛题:基于论文摘要的文本分类与关键词抽取 背景:高效的从海量医学文献中提取疾病诊断和治疗关键信息 任务:通过论文摘要判断论文是否为医学文献 样例 数据集:csv文件,字段:标题、作者、摘要、关键词 评价指…...
使用qsqlmysql操作mysql提示Driver not loaded
环境: win10 IDE: qt creator 编译器: mingw32 这里简单的记录下。我遇到的情况是在IDE使用debug和release程序都是运行正常,但是当我编译成发布版本之后。老是提示Driver not load。 这就很奇诡了。 回顾了下编译的时候是需要在使用qt先编译下libqsqlmysql.dll的…...
AI-调查研究-01-正念冥想有用吗?对健康的影响及科学指南
点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...
解锁数据库简洁之道:FastAPI与SQLModel实战指南
在构建现代Web应用程序时,与数据库的交互无疑是核心环节。虽然传统的数据库操作方式(如直接编写SQL语句与psycopg2交互)赋予了我们精细的控制权,但在面对日益复杂的业务逻辑和快速迭代的需求时,这种方式的开发效率和可…...
华为OD机试-食堂供餐-二分法
import java.util.Arrays; import java.util.Scanner;public class DemoTest3 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseint a in.nextIn…...
python爬虫:Newspaper3k 的详细使用(好用的新闻网站文章抓取和解析的Python库)
更多内容请见: 爬虫和逆向教程-专栏介绍和目录 文章目录 一、Newspaper3k 概述1.1 Newspaper3k 介绍1.2 主要功能1.3 典型应用场景1.4 安装二、基本用法2.2 提取单篇文章的内容2.2 处理多篇文档三、高级选项3.1 自定义配置3.2 分析文章情感四、实战案例4.1 构建新闻摘要聚合器…...
pikachu靶场通关笔记22-1 SQL注入05-1-insert注入(报错法)
目录 一、SQL注入 二、insert注入 三、报错型注入 四、updatexml函数 五、源码审计 六、insert渗透实战 1、渗透准备 2、获取数据库名database 3、获取表名table 4、获取列名column 5、获取字段 本系列为通过《pikachu靶场通关笔记》的SQL注入关卡(共10关࿰…...
初探Service服务发现机制
1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能:服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源…...
RabbitMQ入门4.1.0版本(基于java、SpringBoot操作)
RabbitMQ 一、RabbitMQ概述 RabbitMQ RabbitMQ最初由LShift和CohesiveFT于2007年开发,后来由Pivotal Software Inc.(现为VMware子公司)接管。RabbitMQ 是一个开源的消息代理和队列服务器,用 Erlang 语言编写。广泛应用于各种分布…...
Vite中定义@软链接
在webpack中可以直接通过符号表示src路径,但是vite中默认不可以。 如何实现: vite中提供了resolve.alias:通过别名在指向一个具体的路径 在vite.config.js中 import { join } from pathexport default defineConfig({plugins: [vue()],//…...
Qt 事件处理中 return 的深入解析
Qt 事件处理中 return 的深入解析 在 Qt 事件处理中,return 语句的使用是另一个关键概念,它与 event->accept()/event->ignore() 密切相关但作用不同。让我们详细分析一下它们之间的关系和工作原理。 核心区别:不同层级的事件处理 方…...
WPF八大法则:告别模态窗口卡顿
⚙️ 核心问题:阻塞式模态窗口的缺陷 原始代码中ShowDialog()会阻塞UI线程,导致后续逻辑无法执行: var result modalWindow.ShowDialog(); // 线程阻塞 ProcessResult(result); // 必须等待窗口关闭根本问题:…...
