最近加入了一家做儿童线上教育的公司,入职第二天还在熟悉代码的我接到了第一个任务:解决App最近提交三次审核都被拒的问题。
拒绝理由如下:
We noticed that your Kids Category app includes analytics, advertising and collects, transmits, or has the ability to share personal information or device information with third parties.
Your app includes the following feature(s), contrary to guideline 1.3 of the App Store Review Guidelines:
Third-party analytics or third-party advertising with the ability to collect, transmit or share identifiable information, including, for example, IDFA.
我们先来看一下AppStore审核指南1.3的内容,如下
- 1.3 儿童类别
“儿童类别”可帮助用户轻松找到专为儿童设计的 app。如果您希望参与“儿童类别”,则应该致力于为年纪较小的用户量身打造卓越的使用体验。这些 app 不得提供 app 外链接、购买机会或其他会对儿童造成干扰的内容,除非其保留在受家长监控的指定区域中。请谨记,一旦顾客认为您的 app 能够满足“儿童类别”要求,您的 app 就需要一直满足后续更新中的相应准则;即使您决定取消选择此类别,也是如此。进一步了解家长监控。
您必须遵守世界各地与在线收集儿童数据相关的适用隐私法。请务必查阅本指南的“隐私”部分,以了解更多信息。此外,“儿童”类别的 app 不得向第三方发送个人身份识别信息或设备信息。“儿童”类别中的 app 不应包含第三方数据分析或第三方广告。这些做法可为儿童提供更安全的体验。在少数情况下,可能允许包含第三方数据分析,前提是相关服务不会收集或传输 IDFA 或关于儿童的任何身份识别信息 (如姓名、出生日期、电子邮件地址)、儿童所在位置或其设备。这包括任何设备、网络或其他可直接用来或结合其他信息来识别用户及其设备的信息。在少数情况下,也可能允许包含与页面内容相关的第三方广告,前提是该服务拥有适合“儿童”类别 app 的公开备案做法和政策,包括人工审核广告创意以确保适合相应年龄段。
由此推测被拒的原因是第三方SDK收集了IDFA,我查看了项目中接入的第三方SDK友盟和极光推送收集了IDFA。
询问了提交App审核的同事是如何做的,他做法是引入收集IDFA的SDK,在提交审核时勾选广告标示符。
cocoapods_intro.png
AppStore审核指南1.3明确声明不能分享IDFA给第三方SDK,这样做明显是不能通过审核的。
接下来我这样做:
- 极光推动官网中提供了包含IDFA和NO-IDFA两个版本,我在项目中集成NO-IDFA版。
- 友盟的官网中没有提供NO-IDFA版本的集成方式,可以通过拨打客服联系电话4009901848获取,或者直接在官网->账户->客服工单中申请,然后在工程中集成NO-IDFA版。
- 检查其他第三方框架是否收集IDFA,在工程目录执行grep -r AdSupport .(是否引入头文件)和grep -r grep -r advertisingIdentifier .(是否调用方法),其实就是搜索项目中是否包含这些字符。但是不能保证有些第三方框架包含这些字符而没有收集IDFA。也就是说执行上述命令没有搜索到结果能断定没收集IDFA,有搜索到结果可能没收集IDFA,还需要进一步确认。替换掉收集IDFA的第三方框架。
- 提交审核在选项此APP是否使用广告表示(IDFA)?勾选否
提交审核第二天早晨就通过了。
儿童类别的App还有一个被拒的原因是直接把购买和充值的入口暴露给儿童。解决的办法是在购买和充值的入口前添加确认为家长的页面,例如一个算术运算题的页面,只有回答对算术题才能进入购买和充值页面。
如果大家有什么关于通过App Store审核的经验可以留言分享给我,谢谢!
网友评论