本帖最后由 技术咨询-F 于 2024-1-29 09:00 编辑
根据工信部要求,应用需要向用户展示采集用户数据的隐私政策说明,对于该政策,应用一般的做法是在首页加载之前弹出隐私政策提示框,用户同意隐私政策协议后再进入首页,在用户同意之前不进行用户数据采集操作。 为方便开发者快速实现这一逻辑,引擎新增了privacyPromptMode 配置项。
更新内容: config.xml 新增了 privacyPromptMode 配置项:
取值范围:
none // 不使用隐私政策弹框
custom // 自定义隐私政策弹框
默认值:none 描述:若配置为 custom,表示应用添加了隐私政策弹框,应用在第一次启动时引擎会查找 widget/pages/privacy/privacy.stml 文件是否存在,若存在则会先显示该页面,开发者可在该页面实现自定义的隐私弹框,此时一些操作如版本和云修复检测、模块初始化等会被延后;若 privacy.stml 文件不存在,则会正常加载首页,引擎会认为开发者在首页实现了隐私政策弹框,此时版本和云修复检测会被延后。等用户同意隐私政策后,前端需调用 api.agreedPrivacy 方法,通知引擎用户已同意隐私政策,引擎会记录状态并执行之前延后的操作。 配置示例: - <preference name="privacyPromptMode" value="custom"/>
复制代码实施指南:
一、配置支持隐私政策提示框首先需要在 config.xml 里面配置 privacyPromptMode 字段为 custom,配置示例: <preference name="privacyPromptMode" value="custom"/>
提示: config.xml 配置后,须先提交代码,再重新编译loader,或测试版、正式版。
二、实现隐私政策提示框1、在首页加载之前弹出 想要在首页加载之前显示隐私政策提示框,需创建一个 privacy.stml 文件放置在项目 pages/privacy 目录下,在该页面内自定义实现隐私政策提示框,引擎会在应用启动时去加载和显示该页面,用户同意隐私政策协议后方能进入首页,在用户同意协议之前,一些操作如版本和云修复检测、模块初始化等都会被延后。 在附件下载 “隐私弹框示例 stml 页面”,stml 页面语法可参考stml 页面介绍。 2、在首页加载之后弹出 当应用启动时若检测到 privacy.stml 文件不存在,则会正常加载首页,前端可在首页弹出隐私政策提示框,在用户同意隐私政策协议之前版本和云修复检测会被延后。
三、同意隐私政策协议在用户同意隐私协议之后,前端需调用 api.agreedPrivacy 方法,通知引擎用户已同意隐私政策,引擎会记录状态并执行之前延后的操作,如果首页还未加载则将会进入首页。
四、隐私协议弹窗页面中如果要打开新的页面(隐私详情页),也需要使用本地stml 页面。需要对下载的示例进行修改。(根据用户反馈的最新应用商店审核情况,这一点非常重要)
根据第四条改进版本:
效果图:
|