AFNetworking 合法吗?

AFNetworking is legal?

我收到了 Apple 审核团队的回复:

Dear Developer,

Your app, extension, and/or linked framework appears to contain code designed explicitly with the capability to change your app’s behavior or functionality after App Review approval, which is not in compliance with section 3.3.2 of the Apple Developer Program License Agreement and App Store Review Guideline 2.5.2. This code, combined with a remote resource, can facilitate significant changes to your app’s behavior compared to when it was initially reviewed for the App Store. While you may not be using this functionality currently, it has the potential to load private frameworks, private methods, and enable future feature changes.

This includes any code which passes arbitrary parameters to dynamic methods such as dlopen(), dlsym(), respondsToSelector:, performSelector:, method_exchangeImplementations(), and running remote scripts in order to change app behavior or call SPI, based on the contents of the downloaded script. Even if the remote resource is not intentionally malicious, it could easily be hijacked via a Man In The Middle (MiTM) attack, which can pose a serious security vulnerability to users of your app.

Please perform an in-depth review of your app and remove any code, frameworks, or SDKs that fall in line with the functionality described above before submitting the next update for your app for review.

Best regards,

App Store Review

我再次检查我的代码,我看到 AFNetworking 包含方法:performSelector:, method_exchangeImplementations(), respondsToSelector:

我打算告诉 Apple,AFNetworking 是开源且合法的,但我认为 Apple 不会信任我

所以我有两个问题:

  1. Apple 在知道包含 AFNetworking 后是否要求我从我的代码中删除 AFNetworking respondsToSelector:, performSelector: , method_exchangeImplementations()

  2. Apple 对 AFNetworking 的看法,AFNetworking 合法吗?有文件证明吗?

收到相同的消息并在不同的论坛阅读后,您可能正在使用第 3 方服务,该服务允许您在将应用程序上传到 AppStore 后更改代码。 最受欢迎的服务是 Rollout.io,我不得不从我自己的应用程序中删除它。

我强烈怀疑 AFNetworking 会给您带来任何问题(仍在寻找 Apple 本人的答案,并会在他们回答时更新)

更新: Apple 已经批准了我的应用程序,这意味着它确实是 Rollout.io。我相信任何第 3 方代码注入工具都是如此。 我还有 AFNetworking,所以没有问题。