117 lines
4.4 KiB
Markdown
117 lines
4.4 KiB
Markdown
# 小程序隐私政策合规修改总结
|
|
|
|
## 问题描述
|
|
小程序的隐私政策存在合规问题:
|
|
- 默认自动同意《用户服务协议》和《隐私政策》
|
|
- 用户无法独立阅读和选择是否同意
|
|
- 需要整改后重新提交
|
|
|
|
## 修改内容
|
|
|
|
### 1. 登录页面隐私政策弹窗修改
|
|
**文件:** `pages/login/index.wxml`
|
|
- 移除了原有的"我已了解"按钮
|
|
- 添加了复选框让用户主动勾选同意
|
|
- 添加了"暂不同意"和"同意并继续"两个按钮
|
|
- "同意并继续"按钮只有在勾选复选框后才能点击
|
|
|
|
### 2. 登录页面逻辑修改
|
|
**文件:** `pages/login/index.js`
|
|
- 添加了 `privacyAgreed` 数据属性跟踪用户同意状态
|
|
- 添加了 `checkPrivacyAgreement()` 方法在页面加载和显示时检查同意状态
|
|
- 添加了 `onPrivacyAgreementChange()` 方法处理复选框变化
|
|
- 添加了 `agreePrivacyPolicy()` 方法保存用户同意状态
|
|
- 修改了 `closePrivacyPopup()` 方法,用户选择暂不同意时给出提示
|
|
- 在 `weChatLogin()` 和 `weChatAuthorizeLogin()` 方法中添加了隐私政策检查
|
|
|
|
### 3. 隐私政策页面文本修改
|
|
**文件:** `pages/privacy-policy/index.wxml`
|
|
- 移除了"使用我们的服务即表示您同意本隐私政策的条款"的默认同意文本
|
|
- 改为"在使用我们的服务前,请您仔细阅读本隐私政策。您需要主动选择是否同意本隐私政策的条款"
|
|
|
|
### 4. 用户中心添加隐私政策链接
|
|
**文件:** `pages/usercenter/index.js`
|
|
- 在菜单中添加了"用户协议"和"隐私政策"链接
|
|
- 添加了相应的点击处理逻辑
|
|
|
|
### 5. 样式优化
|
|
**文件:** `pages/login/index.wxss`
|
|
- 添加了隐私政策同意区域的样式
|
|
- 优化了按钮布局和复选框样式
|
|
|
|
## 核心改进
|
|
|
|
### 用户同意机制
|
|
1. **主动同意**:用户必须主动勾选复选框才能同意
|
|
2. **明确选择**:提供"暂不同意"和"同意并继续"两个明确选项
|
|
3. **状态持久化**:用户同意状态保存在本地存储中
|
|
4. **全流程检查**:在登录的各个环节都会检查用户是否已同意
|
|
|
|
### 合规要点
|
|
1. **移除默认同意**:不再有任何形式的默认或自动同意
|
|
2. **用户主导**:用户可以自由选择是否同意,不同意也有明确的退出路径
|
|
3. **透明度**:用户可以随时在用户中心查看隐私政策和用户协议
|
|
4. **记录同意时间**:保存用户同意的时间戳用于审计
|
|
|
|
## 测试方法
|
|
|
|
### 1. 首次使用测试
|
|
1. 清除小程序数据(删除本地存储)
|
|
2. 打开小程序
|
|
3. 应该自动弹出隐私政策弹窗
|
|
4. 验证复选框默认未勾选
|
|
5. 验证"同意并继续"按钮默认禁用
|
|
6. 测试勾选复选框后按钮变为可用
|
|
|
|
### 2. 用户拒绝测试
|
|
1. 在隐私政策弹窗中点击"暂不同意"
|
|
2. 验证弹窗关闭并显示提示信息
|
|
3. 尝试进行登录操作
|
|
4. 验证会重新弹出隐私政策弹窗
|
|
|
|
### 3. 用户同意测试
|
|
1. 勾选隐私政策复选框
|
|
2. 点击"同意并继续"
|
|
3. 验证弹窗关闭且不再弹出
|
|
4. 验证可以正常进行登录操作
|
|
|
|
### 4. 状态持久化测试
|
|
1. 同意隐私政策后关闭小程序
|
|
2. 重新打开小程序
|
|
3. 验证不会再次弹出隐私政策弹窗
|
|
4. 验证可以直接进行登录操作
|
|
|
|
### 5. 用户中心链接测试
|
|
1. 进入用户中心页面
|
|
2. 验证能看到"用户协议"和"隐私政策"菜单项
|
|
3. 点击测试跳转到对应页面
|
|
|
|
## 技术实现细节
|
|
|
|
### 本地存储键值
|
|
- `privacy_agreed`: 布尔值,表示用户是否已同意隐私政策
|
|
- `privacy_agreed_time`: 时间戳,记录用户同意的时间
|
|
|
|
### 关键方法
|
|
- `checkPrivacyAgreement()`: 检查用户隐私政策同意状态
|
|
- `agreePrivacyPolicy()`: 处理用户同意隐私政策
|
|
- `onPrivacyAgreementChange()`: 处理复选框状态变化
|
|
|
|
## 合规检查清单
|
|
|
|
- [x] 移除所有默认同意逻辑
|
|
- [x] 添加用户主动选择机制
|
|
- [x] 提供明确的同意和拒绝选项
|
|
- [x] 实现状态持久化
|
|
- [x] 在关键操作前检查同意状态
|
|
- [x] 提供隐私政策查看入口
|
|
- [x] 优化用户体验和界面设计
|
|
|
|
## 注意事项
|
|
|
|
1. 用户首次使用时必须先同意隐私政策才能使用小程序功能
|
|
2. 用户可以在用户中心随时查看隐私政策和用户协议
|
|
3. 如果用户选择不同意,将无法使用小程序的登录功能
|
|
4. 用户同意状态会保存在本地,除非用户清除小程序数据
|
|
|
|
这些修改确保了小程序完全符合隐私政策合规要求,用户需要主动、明确地同意隐私政策才能使用服务。 |