有谁知道Apple的iOS'Reachability'示例代码的2.2版(最新版)是否可以在iOS 3.0上运行? 我想支持iOS 3.0,Reachability.h和.m是我在我的应用程序中使用的第一个非框架代码。在我自己的代码中,我通常会阅读我使用的所有方法的文档,并使用respondsToSelector:来实现不能在3.0上运行的方法。 当人们使用第三方代码时,他们如何确认它支持哪个iOS而无需针对文档单独检查每个方法?
或者,是否有人知道我如何能够获得旧版本的示例代码? (可达性2.1版本可能有所帮助。)
答案 0 :(得分:1)
我不是要扼杀@Matt和@Martin的答案,但我觉得这个问题值得后人回答。如果他们回来并发表评论作为答案,请随时接受。
无论如何,我自己的答案是,我高度建议不要直接在生产应用程序中使用Apple示例项目,尤其是Reachability。他们的许多例子写得很糟糕,正如你所注意到的那样,已经过时了。我已经针对他们提出了很多错误而没有太多结果。
那就是说,另一点是你应该真的三思而后行依赖Reachability控制逻辑。如果您只想在连接发生变化时通知用户,那么好吧。但是,不要依赖Reachability所说的决定是否尝试与网络通信。您的网络状态通常是错误的。只需打开一个连接,如果它成功了,否则你会得到一个错误响应,让你知道没有连接。
编辑 - 关于如何告诉第三方应用支持的IOS的另一个问题。答案是,除非他们记录下来,否则你可能无法做到。最佳指标通常是查看构建目标的“基本SDK”和“iOS部署目标”设置。 Base SDK将是他们构建的最新iOS版本,Deployment Target将是他们支持的最早的iOS版本。
干杯