相信这几年负责过上架应用市场的 App 开发,或多或少都躺过上线审核的坑,经历过的各种问题也是千奇百怪,今天就给大家做个汇总,希望可以帮助大家少走弯路,争取做一个“优雅”的客户端开发。
首先,近年来为了 “净化” App 环境、保护用户隐私和优化用户体验,各部委大致出台过如下所示的相关法规:
内容 | 时间 |
---|---|
《教育移动互联网应用程序备案管理办法》 | 2019 年 11 月 13 日 |
《App违法违规收集使用个人信息行为认定方法》 | 2019 年 12 月 30 日 |
《常见类型移动互联网应用程序必要个人信息范围规定》 | 2021 年 03 月 22 日 |
《个人信息保护法》 | 2021 年 11 月 1 日 |
《移动互联网应用程序(App)个人信息保护治理白皮书》 | 2021 年 11 月 22 日 |
《互联网用户账号信息管理规定》 | 2022 年 1 月 1 日 |
《数据出境安全评估办法》 | 2022 年 9 月 1 日 |
《互联网弹窗信息推送服务管理规定》 | 2022 年 9 月 30 日 |
可能还有一些我不知道的遗漏,那不知道这些法规你是否都听说过,这里举一些常见例子:
- 《互联网用户账号信息管理规定》 的第十二条就是在 App 展示用户 IP 的要求相关条款。
- 《常见类型移动互联网应用程序必要个人信息范围规定》就规定了 App 类目所能获取的权限范围和个人信息索取范围,例如新闻资讯类、浏览器类、安全管理类、应用商店类等无须个人信息,即可使用基本功能服务。
针对上面这个无需权限和个人信息也要提供基本功能服务,如下动图所示,今日头条、知乎和懂车帝就是很好的参考例子,在不同意个人隐私协议的情况下,会有仅浏览的模式,在这个情况下依然可以阅读内容而不是退出 App 。
所以严格意义上讲,现在 App 按照类目的规定,如果你的 App 在某些类目就只能获取对应权限,多了就是违规,而且一些类目必须用户在没有提供权限和同意协议的情况下,也必须提供服务。
- 《互联网弹窗信息推送服务管理规定》里就有: 弹窗推送广告显著标明“广告”,一键关闭,提供取消渠道等。
如下图所示,从意见稿开始之后,基本大部分 App 的启动广告就限制了有效点击范围,产品经理也不能拍着脑袋让你加各种奇奇怪怪的跳转。
- 《个人信息保护法》 这个大家肯定就不会陌生了,我在之前《个人信息保护法》更新究竟是什么 也聊过,其中最主要就是提供个人信息的导出机制和广告推送相关内容。
首先用户必须同意了你才能收集,不同意是不能收集,所以 App 里各式各样的弹出框就来了,这也是目前最常见的“合规方式”。
而导出个人信息的功能普遍是通过邮箱发送实现,事实上目前还有不少 App 没提供类似支持,还有 App 必须提供用户注销功能,这也是现在 App 开发的必选项,另外 App 还需要提供个性化推荐的开关能力,不然也有审核风险,当时有时候只是需要你放个按键。
另外,在《个保法》的提案里也提及了不能以用户不提供个人信息为由不提供服务,当时实际执行往往还是要看应用类目。
而在用户个人信息认定里,设备id (Android ID) 绝对是重灾区 ,因为几乎是个 App 就会使用到设备 ID,特别是接入的各类第三方 SDK 服务里普遍都会获取。
而处理方法也是普通粗旷,用户不同意隐私协议,就不初始化各类 SDK ,当然,有时候你可能还是会遇到某些奇葩的审核,明明你已经做了处理,平台还认定你违规,这时候可能你就需要学会申诉,不要傻傻自己一直摸索哪里还不对。
总的来说上架问题一般是和个人信息隐私相关的问题最多,而常见的问题有:
- 未经用户允许手机个人信息
- 所需信息和服务无关,过度收集
- 未提供导出和删除个人信息的功能服务
- 存在个人信息泄漏风险
- 未明确公布个人信息收集的目的和使用范围
最后这一条也是经常出现问题的点,例如现在会要求你提供哪些 SDK 使用了哪些权限和信息,收集规则是什么用于做什么 ,这也就需要 App 里提供更详细和丰富的隐私政策内容,当然 SDK 提供方也要。
而一般情况下最常见也是最容易触发整改的,就是设备ID,MAC 地址等相关内容,或者说你的 App 其实根本不需要这些也能提供服务,就如前面 《常见类型移动互联网应用程序必要个人信息范围规定》里的要求一样。
这里还有个关键,那就是用户在同意隐私条款时,你不能默认勾选,也就是有需要用户同意☑️的 UI 时,默认时不能选中,需要用户手动勾选同意。
当然,随着审核颗粒度的细化,越来越多奇奇怪怪的问题出现了,例如 Apk 里的资源文件存在安全泄漏问题 ,而解决该问题的有效方法就是:混淆和加固。
加固和混淆也适用于以下相关问题的解决,当然,加固的话建议选用第三方付费服务,免费加固的坑实在太多了。
- 《数据出境安全评估办法》 里针对数据出境也做了要求,其中最直观的例子就是:高德 SDK 无法在以外地区范围服务。
当然,不只是相关法规,平台有时候也有自己的规定和理解,比如有几位群友,先后在小米因为 App 里提供 UI 和商店截图一致被打回,理由是应用截图与应用实际功能不符 ,相信遇到这类问题的兄弟是相当郁闷,因为不一致这个认定其实很主观。
另外小米等平台还有以没通过Monkey 自动化测试为理由拒绝上架 ,一般这种情况推荐自己上传 testit.miui.com ,通过小米自动化测试后在上传审核时把你通过截图作为附加,这样可以解决审核时的扯皮问题。
有时候一些平台也会有安全扫描,例如华为就会扫描同名的包名,然后附上 git 链接告诉你风险 。
另外,华为审核时可能会对你的产品逻辑提出他们的想法,比如空白页面,添加引导,没有客服返回渠道等等。
还有另外一个高风险点就是自启动,相信我,如果你要上架平台,2022 年了就不要再想做什么保活相关的逻辑了。
除此之外,如果平台说你存在问题,尽量想办法要到检测报告,因为有时候一些平台委托的第三方可能会不是很“靠谱“,然后需要你自己出钱区做”二次付费检测“。
除了上面的问题之后,如果你还遇到如下图类似问题,都可以通过一些官方平台的检测如 open.oppomobile.com/opdp/privac… 帮助查找问题,这样也许就可以帮老板省下一笔开销,当然有一些第三方开源平台如 Hegui3.0 和 PrivacySentry 等项目,也可以帮助你解决一些实际问题。
作者:恋猫de小郭
链接:https://juejin.cn/post/7142363251911688222