2017-03-08 19 views
1

我从苹果审查小组回应:AFNetworking是合法的吗?

尊敬的开发,

你的应用,扩展,和/或链接的框架似乎包含有能力明确设计代码 改变你的应用程序的行为 或之后,应用程序审查批准,这是不符合 与苹果开发者计划许可协议 和应用程序商店审查指南2.5.2第3.3.2功能。此代码,用 远程资源相结合,可以进行比较,当它最初被审查为App Store,方便您应用的 行为显著的变化。 虽然你可能不被目前正在使用此功能,它具有 潜力加载私有框架,私有方法,并启用 将来的功能变化。

这包括通过任意的参数来动态 方法如dlopen()的,对dlsym(),respondsToSelector任何代码:performSelector:method_exchangeImplementations(),并运行以便远程 脚本根据下载的脚本的 内容更改应用行为或调用SPI。即使远程资源不 故意恶意的,它可以很容易地通过一个人在 中间人(MITM)攻击,这可能对您的应用程序的用户的一个严重的安全漏洞劫持 。

请在为您的应用提交下一次更新以供审核之前,对您的应用进行深入审查,并删除与上述功能 功能相符的任何代码, 框架或SDK。

最好的问候,

App Store的审查

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

我打算告诉苹果该AFNetworking是一个开源的和法律的,但我认为苹果不会相信我

所以我有2个问题:

  1. 难道苹果要我从我的代码删除AFNetworking后,他们知道AFNetworking包括respondsToSelector:performSelector:method_exchangeImplementations()

  2. 结合的方式,苹果看到AFNetworking,是AFNetworking合法吗?有任何文件可以证明吗?

+0

真的很有趣的情况。你能否提供关于如何将AFNetworking包含在你的应用程序中的细节? (迦太基,Cocoapods等和podfile的相应cart文件)。由于App Store上的许多顶级应用正在使用它,所以看起来也很奇怪,只需检查以下内容:https://mightysignal.com/top-ios-sdks?tag= 4你的应用程序中是否有其他框架或库? – Orlando

+0

我有同样的问题。我使用的是Rollout.io,它是一个库,它能够在将代码发送到AppStore后更改代码。你有这种事吗?我试图在这里找到共同的图书馆,导致苹果公司最近几天向开发者发送这个图书馆。 –

+0

我使用了JSPatch,Apple检查并拒绝了我的应用程序:(((( – VietHung

回答

0

得到相同的消息,并在不同的论坛看完后,有可能你使用的是第三方服务,让您的应用程序上传到AppStore的修改后的代码。 最受欢迎的服务是Rollout.io,我必须从我的应用程序中删除它。

我强烈怀疑AFNetworking会导致你的任何问题(仍然在寻找来自苹果自己的答案,而当他们回答会更新)

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

+0

)展示,Apple正在打击:https://rollout.io/blog/open-letter-to-apple-secure-javascript-injection-ios/ – VietHung

+0

事实上 - 从Rollout以及这封公开信得到了一封电子邮件。 –

+0

Apple的支持信息含糊AFNetworking(他们没有直接回答,只是告诉我上传一个版本)。我的版本目前正在审核中,我会更新它的状态如何? –