一、功能概述
小米开发者站提供隐私协议管理功能,支持开发者在开发者平台完成隐私协议的配置与管理。
- 平台提供三种隐私协议模式,开发者可根据游戏实际情况选择。
- 同一游戏版本仅可选择其中一种模式。

| 模式 | 适用场景 | 用户侧表现 |
| 免弹窗模式 | 游戏未调用任何涉及隐私权限的接口 | 用户直接进入游戏,不展示任何隐私弹窗 |
| 平台托管模式 | 游戏需调用隐私权限接口,使用平台统一弹窗 | 进入游戏时展示平台标准化隐私协议弹窗 |
| 开发者自定义模式 | 开发者自行实现隐私合规弹窗 | 展示开发者自研弹窗 |
二、版本上传时选择隐私模式
进入对应小游戏的版本上传页面,找到"是否涉及隐私收集"配置项,根据不同选择模式进行相应操作。
每次上传或更新游戏版本时,均需确认隐私协议配置。发布新版本时默认继承上一版本的配置,如需变更请及时修改。
2.1 免弹窗模式
适用条件: 游戏内未使用任何涉及隐私权限的接口(接口范围参见第四章接口清单,请与开发人员确认)。
操作步骤:
1、在"是否涉及隐私收集"配置项中,选择"否"。

2、完整阅读页面展开的"承诺声明"内容。
3、勾选"我已阅读并确认上述声明"。

4、完善其他信息提交审核。
注意:提交前,请确认游戏内弹窗已去除。若游戏后续版本新增了隐私权限接口调用,需重新配置隐私协议。
2.2 平台托管模式
前置条件:
- 已在"协议管理服务"中完成隐私协议配置并生成协议(协议状态显示为"完成")。
- 已去除游戏内已有的自研隐私弹窗代码。
操作步骤:
1、"是否涉及隐私收集"配置项中,选择"是",并在"隐私协议实现方式"中选择"平台托管"。

2、在"请选择隐私协议版本"下拉框中,选择已生成的协议版本(列表默认按时间倒序排列)。

3、完善其他信息提交审核。
说明:若下拉列表为空,表明尚未生成任何协议。请先按照第三章完成协议创建,再返回此处重新选择
2.3 开发者自定义模式
操作步骤:
1、在"是否涉及隐私收集?"配置项中,选择"是",并在"隐私协议管理方式"中选择"使用自定义隐私协议(URL)"。

2、在游戏代码中自行实现隐私弹窗逻辑,并将自研隐私协议链接填入。
3、完善其他信息提交审核,平台将审核游戏内是否存在自研隐私弹窗,不提供其他托管服务。
三、协议管理服务
进入协议管理服务页面后,可查看/编辑所有已创建的用户协议与隐私协议记录。
用户协议与隐私协议两者功能不同,按需配置:
- 隐私协议:约定开发者收集哪些用户数据、如何使用,属于数据合规要求
- 用户协议:约定开发者与用户之间的权利义务
创建用户协议后,用户侧将在弹窗中同时展示"用户协议"和"隐私协议";未配置用户协议时仅展示隐私协议。
用户协议与隐私协议相互独立,各自拥有独立版本号,可分别更新。如需修改已生成的用户协议,须创建协议新版本并重新关联。
3.1 服务入口
可通过以下两种方式进入协议管理服务:
- 入口一:登录小米开发者站,依次选择"对应小游戏 > 运营 > 协议管理服务"。

- 入口二:在版本上传页面选择"平台托管"后,点击页面下方的"协议管理服务"直接跳转。

进入协议管理服务页面后,可查看所有已创建的协议记录。点击右上角"新建",或选择已有协议进行编辑。在弹出的窗口中选择协议类型:隐私协议或用户协议。
3.2 隐私协议填写说明
操作步骤:
1、进入协议管理服务列表页,查看已创建的协议记录。选择已有协议进行更新,或点击右上角"新建"创建协议。

2、在弹出的窗口中,从下拉列表中选择"隐私协议",填写好协议名称后点击"下一步"。

3、进入隐私协议编辑页面后,按以下步骤逐项填写内容。

步骤一:声明收集的用户信息类型
根据小游戏的实际接口调用情况,勾选对应的用户信息类型(支持多选)。
请与开发人员确认后填写,未使用的接口无需勾选。

勾选后,需在对应字段中填写使用目的,即处理该用户信息的合理使用场景描述。

步骤二:填写第三方 SDK 信息
如游戏接入了第三方插件或 SDK,逐一填写以下信息(每接入一个第三方 SDK 均需填写):
- SDK 名称
- SDK 提供方名称
- 收集的信息类型
- 收集目的

步骤三:填写信息存储说明及联系方式

4、确认以上内容无误后,点击"生成协议"完成隐私协议创建。后续可在发布新版本时选择关联。

3.3 用户协议填写说明
用户协议为非必填项。如需通过用户协议约定开发者与用户之间的权利义务,可选择创建。创建后,用户侧将在弹窗中同时展示"用户协议"和"隐私协议";未配置时仅展示隐私协议。
用户协议与隐私协议相互独立,各自拥有独立版本号,可分别更新。如需用户协议有修改,须重新关联。
操作步骤:
1、进入协议管理服务列表页,查看已创建的协议记录。选择已有协议进行更新,或点击右上角"新建"创建协议

2、在弹出的窗口中,从下拉列表中选择"用户协议"。

3、按照以下说明填写各项内容并提交
- 协议名称: 默认为《游戏名称》用户协议,可编辑修改
- 协议标题:用户可见
- 协议链接:填写自行维护的用户协议页面 URL
四、涉及隐私调用的接口清单
下表列出的接口,若在游戏中使用,必须在隐私协议中声明对应用途。未在协议中声明即调用时,平台将返回对应错误码。
| 接口类型 | 接口定义 |
| 昵称、头像 | qg.getUserInfo |
| 设备-地理位置 | qg.getLocation(object) |
| 媒体-摄像头 | qg.chooseImage:void |
| 媒体-图片/视频(选取) | qg.chooseImage:void |
| 媒体-保存相册 | qg.saveImageToPhotosAlbum(Object object):void |
| 媒体-麦克风 | RecorderManager.start(Object object):void |
| 设备-剪贴板 | qg.getClipboardData(object) |
| 用户信息-手机号 | qg.getUserPhone |
说明:未列入上述清单的权限属于需特殊申请或当前无法提供的权限。如需使用,请另行联系平台获取支持。
五、提交前自查
提交审核前,建议按以下方式验证隐私协议配置正确性,避免因声明与实际调用不符导致审核失败或上线后接口报错。
- 已与开发人员确认游戏内实际调用的隐私接口,对照第四章接口清单逐项核实
- 接入第三方 SDK 时,每个 SDK 是否单独填写名称、提供方、收集类型、收集目的
- 若选择免弹窗模式,已确认游戏引擎内置弹窗已完全去除
- 若选择平台托管模式,已确认游戏内自研隐私弹窗代码已删除,不会与平台弹窗重复弹出
注意:声明与实际调用不符属于违规行为。平台发现后有权返回错误码阻断接口调用,情节严重时将对游戏执行下架处理。
六、常见问题
Q:版本上传时,隐私协议下拉框为空,如何处理?
尚未在"协议管理服务"中创建并生成任何协议。请先按照第三章完成协议创建,再返回版本上传页面重新选择。
Q:同一份协议是否可被多个游戏版本引用?
支持。具体关联的版本列表,可在协议管理页面的"协议关联版本"字段中查看。
Q:选择免弹窗模式后,游戏调用了隐私接口,会产生什么影响?
平台将返回对应错误码。开发者须根据错误码进行兼容处理(如提供降级体验),或及时前往开发者站更新隐私协议模式。
Q:平台托管模式中用户协议是否必须配置?
非必须。如需与用户约定权利义务,可选择创建用户协议,用户侧将同时展示"用户协议"和"隐私协议";如未创建,平台托管模式则仅展示隐私协议。