App Store的 - 方法交叉混合合法性 [英] App Store - Method Swizzling Legality

查看:181
本文介绍了App Store的 - 方法交叉混合合法性的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

是否有羯羊或没有办法混写任何当前的信息是合法的/不合法的应用程序商店?

Is there any current information on wether or not method swizzling is legal/illegal on the App Store?

唯一的数据点我能找到的是 Three20框架改组的一段时间回来,这开始本通知:

The only data point I can find is the Three20 framework shakeup a while back, which started with this notice:

您的应用程序,XXX,目前发布到App Store的使用
  method_exchangeImplementations交换苹果的实施
  用自己的实现提供的API。由于即将到来的
  的变化,这种行为在您的应用程序可能会导致崩溃或原因
  在iPhone OS 4.0的用户数据丢失。

Your application, xxx, currently posted to the App Store is using method_exchangeImplementations to exchange the implementation of Apple provided APIs with your own implementations. Because of upcoming changes, this behavior in your application may cause a crash or cause user data loss on iPhone OS 4.0.

XXX使用method_exchangeImplementations交换的实现
  与你的方法ttdealloc的dealloc的。它还交流
  实施方法popViewControllerAnimated:与你
  方法popViewControllerAnimated2 :.

xxx uses method_exchangeImplementations to exchange the implementation of dealloc with your method ttdealloc. It also exchanges the implementation of the method popViewControllerAnimated: with your method popViewControllerAnimated2:.

请立即解决这一问题,并上传你的新二进制
  iTunes Connect中。我们可能会删除你的应用程序,如果我们认为
  这样做是谨慎还是必要的。

Please resolve this issue immediately and upload your new binary to iTunes Connect. We may remove your application if we believe that doing so is prudent or necessary.

结果

当我搜索周围,每一个最近的谈话,我可以找到交叉混合和App Store似乎引用同一Three20事件。该通知似乎是pretty具体,我想知道,如果这个问题是与Three20做了更改,或者如果method_exchangeImplementations被普遍禁止的具体变化的问题​​。

When I'm searching around, every recent conversation I can find about swizzling and the app store seems to reference the same Three20 incident. The notice seems to be pretty specific, and I'm wondering if the issue was specific changes issues with the changes Three20 had made or if method_exchangeImplementations is universally banned.

有没有关于这种做法是否允许任何其他数据点?有没有在店里与应用开发者的任何正在使用混合?

Are there any other data points about whether or not the practice is allowed? Are there any devs with Apps in the store that are using swizzling?

谢谢!

推荐答案

AFNetworking,广泛用于网络请求(IMO)一个lib,用来交叉混合到至少1.3.4版本以支持更多的接受状态 - codeS和内容类型类的方法。

AFNetworking, a lib widely (IMO) used for network-requests, used swizzling up to at least version 1.3.4 to support additional acceptable status-codes and content-types in class-methods.

所以看起来合法的做到这一点。

So it seems legit to do it.

请注意:他们用class_replaceMethod而不是method_exchangeImplementations

Note: They used class_replaceMethod and not method_exchangeImplementations.

这篇关于App Store的 - 方法交叉混合合法性的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆