光速打脸,Guideline 5.1.2又中招

1,614 阅读4分钟

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动

本文同时参与 「掘力星计划」 ,赢取创作大礼包,挑战创作激励金

前几天,公司叫集成百度移动统计,当时还专门写了一篇文章是说集成遇到的问题,好了,这周提审,就发现中了5.1.2的问题了,神坑。之前也遇到过5.1.2,当时是由于没有弄请求用户允许跟踪它们而被拒,这次苹果审核官直接说明这样是不能解决问题的,好

附上上一次链接:juejin.cn/post/700466…

好,那我们来看下,这次又遇到什么问题

1.报错内容

Guideline 5.1.2 - Legal - Privacy - Data Use and Sharing 

 We found in our review that your app includes fingerprinting functionality that is designed to identify the user or device. 

 Specifically, your app aggregates user and device data to track the user, either directly or indirectly using probabilistic methods. This functionality is found in services or code included in your app, such as CAID, Bugly, Zhugeio, and OpenUDID. 

 Apps that fingerprint users or devices are not appropriate for the App Store. Per section 3.3.9 of the Apple Developer Program License Agreement, neither you nor your app may derive data from a device in order to uniquely identify it. 

 Next Steps 

 Follow these steps to resolve this issue: 

 1. Identify the fingerprinting functionality in your app. Some or all of this functionality may be provided by third-party SDKs. If you have questions about these SDKs, contact the SDK provider. 

 2. Remove any functionality from your app that uses algorithmically converted device and usage data to identify the user or device. You should remove any related code or implemented SDKs that support fingerprinting. Since fingerprinting is never allowed on the App Store, requesting the user's permission to track them will not resolve this issue. 

 Attempting to hide or obfuscate code designed to fingerprint the user's device, or otherwise evade the review process, may result in the termination of your Apple Developer Program account. Review the Terms & Conditions of the Apple Developer Program to learn more about our policies regarding termination. 

 Resources 

 - If your app utilizes fingerprinting for anti-fraud or security purposes, consider using DeviceCheck to reduce fraudulent use of your services. 

- Learn more about our requirements for apps that track users with deterministic identifiers, such as IDFA, IDFV, or the user's email address.

2.google翻译

准则 5.1.2 - 法律 - 隐私 - 数据使用和共享 

 我们在审核中发现您的应用包含指纹识别功能,旨在识别用户或设备。 

 具体来说,您的应用程序会使用概率方法直接或间接地汇总用户和设备数据以跟踪用户。此功能可在您的应用程序中包含的服务或代码中找到,例如 CAID、Bugly、Zugeio 和 OpenUDID。 

 对用户或设备进行指纹识别的应用不适合 App Store。根据 Apple 开发者计划许可协议的第 3.3.9 节,您和您的应用程序均不得从设备获取数据以对其进行唯一识别。 

 下一步 

 请按照以下步骤解决此问题: 1. 识别应用中的指纹识别功能。此功能的部分或全部可能由第三方 SDK 提供。如果您对这些 SDK 有任何疑问,请联系 SDK 提供商。 

 2. 从您的应用中删除任何使用经过算法转换的设备和使用数据来识别用户或设备的功能。您应该删除任何支持指纹识别的相关代码或实现的 SDK。由于 App Store 不允许使用指纹,因此请求用户允许跟踪他们并不能解决此问题。 

 试图隐藏或混淆旨在对用户设备进行指纹识别的代码,或以其他方式逃避审核流程,可能会导致您的 Apple Developer Program 帐户被终止。查看 Apple Developer Program 的条款和条件,了解有关终止政策的更多信息。 

 资源 

 - 如果您的应用将指纹识别用于反欺诈或安全目的,请考虑使用 DeviceCheck 来减少对您服务的欺诈使用。 - 详细了解我们对使用确定性标识符(例如 IDFA、IDFV 或用户的电子邮件地址)跟踪用户的应用程序的要求。

3.解决问题

通过上面的被拒信息,可以发现使用经过算法转换的设备和使用数据来识别用户或设备的功能都是不被允许的。这里列出了CAID,Bugly,Zugeio, OpenUDID。

我直接对项目使用终端命令:

grep -r openudid .

果然发现是是导入的第三方库BaiduMobStatCodeless中,而CAID也是百度移动统计的BDPCAID.framework。这不是神坑吗,怕了,只能先删掉了(有什么好解决办法请留言哈)。

Bugly,我这个版本是比较旧的2.5.0,于是感觉去官网瞅瞅

又发现,今年最新的2.5.9有写着删除潜在涉及隐私的字段,这不明白这叫我更新。果然更新为最新版本。

那就只剩下Zugeio了,还是去官网看下吧,本来也想看下Zugeio的版本历史记录,但找不到,于是我赶紧联系客服,客服说叫我更新最新SDK,最新的SDK已经去掉IDFA,用的IDFV来收集数据,于是我又更新Zugeio的SDK。

昨天提审,今天也终于审核通过了。