注意:
根据《个人信息保护法》、《数据安全法》、《网络安全法》等法律法规和监管部门规章要求,App 开发运营者(以下简称为“开发者”)在提供网络产品服务时应尊重和保护最终用户的个人信息,不得违法违规收集使用个人信息,保证和承诺就个人信息处理行为获得最终用户的授权同意,遵循最小必要原则,且应当采取有效的技术措施和组织措施确保个人信息安全。为帮助开发者在使用移动推送 SDK 的过程中更好地落实用户个人信息保护相关要求,避免出现侵害最终用户个人信息权益的情形,特制定本合规使用说明,开发者使用 移动推送 SDK 时必须在《隐私政策》中告知终端用户 SDK 使用用途,并且在终端用户未同意《隐私政策》前不得初始化任何 SDK。请您务必按照以下步骤做好合规自查,避免被监管部门通报或下架您的应用。
1. 升级至最新版本移动推送 SDK
2. 隐私政策中添加移动推送相关说明
请您确保您开发或运营的应用有符合监管要求的《隐私政策》文本。同时请您务必明确告知终端用户您的应用使用了移动推送服务。建议您在《隐私政策》对应的章节、列表中添加关于移动推送的说明,推荐条款如下:
SDK名称:移动推送 SDK第三方名称:深圳市腾讯计算机系统有限公司SDK 用途:在移动终端设备进行消息推送收集个人信息类型:(1)、 设备信息(手机型号,系统类型、系统版本等)用于标签化推送以及识别是否是真机、网络信息(网络类型)支持根据不同网络类型进行不同类型推送、应用数据(AAID(应用匿名标识符)推送流程中产生的送达、点击、曝光等数据)用于推送业务数据统计。(2)、(可选信息,依赖开发者设置)账号绑定信息(根据您所选用的不同推送渠道,QQ号、微信Union ID、 手机号、邮箱等)用于根据账号信息进行推送数据处理方式:通过去标识化、加密传输及其他安全方式官网链接:https://cloud.tencent.com/product/tpns隐私政策链接:https://privacy.qq.com/document/preview/8565a4a2d26e480187ed86b0cc81d727
3.《隐私政策》弹出条件
您需要确保 App 有《隐私政策》,且在用户首次启动 App 时弹出《隐私政策》取得用户同意。
4. 隐私接口确认与移动推送 SDK 初始化及业务功能调用时机
要求内容:《SDK 合规使用说明》应详细说明 SDK 初始化及各项业务功能接口合规调用时机。App 应当在 App 登录注册页面及 App 首次运行时,通过弹窗、文本链接及附件等简洁明显且易于访问的方式,向最终用户告知涵盖个人信息处理主体、处理目的、处理方式、处理类型、保存期限等内容的个人信息处理规则,并且获得最终用户授权同意后才能处置最终用户数据。
接入说明:请务必确保终端用户有效同意您 App 中的隐私政策后,再进行移动推送 SDK 初始化。用户同意隐私政策之前,避免动态申请涉及用户个人信息的敏感设备权限;用户同意隐私政策前,您应避免私自采集和上报个人信息。当您的 App 未向用户提供服务时,例如 App 在后台运行时,请勿请求移动推送 SDK 的相关服务接口。
3.1 初始化相关说明
初始化时机配置
移动推送 SDK 在后续 App 启动时移动推送 Harmony SDK 提供以下接口初始化移动推送 SDK,在终端用户有效同意您 App 中的隐私政策调用如下接口进行初始化,详细参考初始化接口:初始化接口。
注意:
App 只有在完成移动推送的初始化才可以使用移动推送 SDK 提供的 Push 服务, 移动推送 SDK 初始化需要在自定义的 AbilityStage 的 onCreate 方法中初始化!
示例代码
//1. 自定义AbilityStateexport default class MyAbilityStage extends AbilityStage { onCreate(): void { try { let tpnsClient = TPush.createTPushClient(context, { accessId: 150000xxxx, //您应用对应移动推送控制台生成的accessId accessKey: "您的accessKey",//您应用对应移动推送控制台生成的accessKey host: "tpns.tencent.com", //接入点:默认广州集群 debugMode: true //上线后记得设置为false }); this.tpnsClient.setMessageReceiver(new MessageReiver()); } catch (err) { //TODO:: TPush.createTPushClient 传递的必选参数为空或者非法会抛出异常此处要注意处理 } } onAcceptWant(want: Want): string { // 仅specified模式下触发 return 'MyAbilityStage'; } onNewProcessRequest(want: Want): string{ return ""; } onMemoryLevel(level: AbilityConstant.MemoryLevel): void{ } }//2. 在module.json5中配置MyAbilityStage{"module": { "name": "entry", "type": "entry", "srcEntry": "./ets/abilitystage/MyAbilitystage.ets", //此处配置MyAbilitystage "description": "$string:module_desc", "mainElement": "EntryAbility",}}
3.2 业务接口调用说明
注册业务代码示例
/*** 在用户隐私政策协议同意后,再做调用移动推送TPNS SDK接口* 建议在*/function callTPNSPushSDKRegister() {/** 当用户同意隐私政策协议时,再调用移动推送 SDK业务功能;* 当用户未同意隐私政策协议时,需等用户同意后,再通过callTPNSPushSDKRegister(...)方法进行注册TPNS* 应用只有在完成移动推送TPNS的注册后才可以使用TPNS提供Push服务,在这之前请确保有初始化配置AccessId和AccessKey*/let agreed = true;if (agreed) {//建议在线程中执行调用this.tpnsClient.registerPush().then((data) => { console.error("TPush-Demo", "registerPush result:" + data); }).catch((err: BusinessError<string>) => { console.error("TPush-Demo", "registerPush fail err:" + JSON.stringify(err)); });}}
4. SDK可选信息配置开关
要求内容:《SDK 合规使用说明》应详细说明 SDK 各项可选个人信息使用目的、场景及对应关闭的配置方式、示例。
接入说明:移动推送 SDK 向您提供了可选个人信息及权限的控制开关,您可以根据 App 所需的 SDK 功能服务自行配置打开或关闭隐私信息请求开关,对于移动推送 SDK 可选收集的个人信息的控制,开发者可以参考如下配置指引进行配置操作。因相关信息的不收集将会对其对应的功能造成影响,请开发者结合业务实际需要进行合理配置。
4.1. 配置可选个人信息
基于账号推送功能,第三方开发者需要通过预埋账号类型绑定共享给移动推送 SDK,根据第三方开发者选择的推送通道的不同所共享给移动推送 SDK 的信息也会有所不同。如果第三方开发者未使用账号推送功能则不需要共享此类信息。
可选个人信息类型及字段 | 使用目的 | 使用场景 | |
设备信息(可选) | OAID(仅鸿蒙与 Android) | 用 OAID 作为移动推送的账号,账号推送时可以使用 OAID 进行账号推送。 | 根据 OAID 进行账号推送时使用 |
| 微信 UnionID | 使用微信 UnionID 作为移动推送的账号,账号推送时可以使用微信 UnionID 进行账号推送。 | 根据 UnionID 进行账号推送时使用 |
| QQ openID | 使用 QQ openID 作为移动推送的账号,账号推送时可以使用 QQ openID 进行账号推送。 | 根据 QQ openID 进行账号推送时使用 |
账号信息(可选) | 邮箱账号、新浪微博账号、支付宝账号、淘宝账号、豆瓣账号、FaceBook 账号、Twitter 账号、Google 账号、百度账号、京东账号、linkedin 账号 | 使用设置的账号类型和账号信息作为移动推送的账号,账号推送时可以使用该账号类型和账号信息进行账号推送。 | 根据设置账号类型进行账号推送 |
用户基本信息(可选) | 手机号 | 使用设置手机号作为推送的账号,账号推送时可以使用该手机号进行推送 | 根据设置手机号进行账号推送 |
4.2. SDK申请系统权限说明
要求内容:《SDK 合规使用说明》应详细说明SDK所需的系统权限与各业务功能间的关系,并说明权限申请时机。
接入说明:对于移动推送 SDK 申请的系统权限,您可以参考相关如下表格的内容,详细了解相关权限与各业务功能的关系及其申请时机,因相关权限的不申请将会对其对应的功能造成影响,您可以结合业务实际需要进行合理配置。配置文档链接:Harmony接入指南 - SDK集成。
操作系统 | 权限名称 | 使用目的 | 功能场景(申请时机) | 是否可选 |
Harmony | ohos.permission.INTERNET | 进行与推送服务进行网络访问,进行业务数据上报 | 使用推送服务 SDK 时 | 必选 |
Harmony | ohos.permission.GET_BUNDLE_INFO | 获取当前使用移动推送SDK的应用信息进行应用信息bundle,版本号等信息的校验 | 使用推送服务 SDK 时 | 必选 |
Harmony | ohos.permission.GET_WIFI_INFO | 获取网络类型,用于SDK网络访问 | 使用推送服务 SDK 时 | 必选 |
Harmony | ohos.permission.GET_NETWORK_INFO | 获取网络信息(网络是否连接, 网络变化) | 使用推送服务 SDK 时 | 必选 |
5. SDK扩展业务功能的配置说明
要求内容:《SDK 合规使用指南》应详细说明SDK各项扩展业务功能介绍及对应关闭的配置方式、示例。
接入说明:移动推送鸿蒙 SDK 无扩展业务功能。开发者需遵守相关法律法规的要求,在 App 内为最终用户提供退出个性化推送的功能,保证在最终用户点击退出功能后调用移动推送 SDK 的能力接口。
6. SDK 可按照不同频次、精度收集个人信息的配置说明
要求内容:如果 SDK 可按照不同频次、精度收集个人信息的,《SDK 合规使用说明》应说明不同频次、精度的使用目的、场景及对应选择的配置方式、示例。
接入说明:收集频次方面,移动推送 SDK 的数据采集仅在 App 调用/最终用户触发相关功能时触发,不涉及定时逻辑等频次控制选项。收集精度方面不涉及精度相关控制,相关业务接口务必确保终端用户有效同意《隐私政策》后调用,可参考 SDK 接口文档链接:Harmony SDK接口文档。
7. 最终用户同意方式的示例
要求内容:《SDK 合规使用说明》应详细说明 App 获取最终用户授权同意的建议方式,其中需要取得最终用户单独同意的,应显著提示并给出示例。
接入说明:App 首次运行时应当有隐私弹窗,隐私弹窗中应公示简版隐私政策内容并附完整版隐私政策链接,并明确提示最终用户阅读并选择是否同意隐私政策;隐私弹窗应提供同意按钮和拒绝同意的按钮,并由最终用户主动选择。
披露示例:
8. 撤回同意机制说明
请您告知终端用户其享有选择关闭相应权限或行使退出(opt-out)权利,一旦终端用户行使前述权利,其个人信息将不再会被处理。我们建议您在终端用户撤销同意处理其个人信息的授权时,参见腾讯推送服务 移动推送Harmony接入指南 - 接口文档“反注册接口说明”部分进行处理,以便用户更便捷行使退出的选择权。
9. 隐私保护机制
如果您对 SDK 权限有任何疑问、意见和建议,或者需要腾讯协助关闭某项权限采集能力,可通过以下联系方式与我们联系:
电子邮件:tpns_team@tencent.com
联系地址:深圳市南山区粤海街道麻岭社区科技中一路腾讯大厦
您还可以随时通过访问移动推送官网在线客服系统与我们联系,我们将及时为您提供咨询和服务,确保各项隐私机制的落实和执行。