我正在开发一个iPhone应用程序,可以调用Web服务.我在Apple商店发布了这个应用程序,但它被拒绝了(这是正确的),因为如果没有可用的Internet连接,则没有向用户显示错误消息.很明显,没有它,应用程序就无法运行.
所以我只是想知道如何最好地实现这一目标?我猜测需要在viewDidLoad
方法中添加一些警告框,说"你需要一个Internet连接才能使用这个应用程序".
任何想法,将不胜感激.
如果您的应用程序必须具有网络访问权限,最简单的方法是将以下设置作为布尔值添加到info.plist中.
SBUsesNetwork - 确保设备具有活动连接(编辑:不适用,这似乎是某人在某些时候发现的私有API.它不在Apple的开发人员文档中.)
UIRequiresPersistentWiFi - 确保设备通过WiFi连接
如果您的选择不正确,那么在启动您的应用程序时将向用户显示相应的消息.最重要的是,这个消息来自操作系统,因此是本地化的.
如果您的应用程序无法在运行时从网站下载数据(信号丢失,网站关闭),您应该仍然警告用户,而不是无限期地旋转.
Apple Developer Connection有一个示例应用程序(Reachability),它使用系统配置框架来确定网络状态.它会告诉您是否有WiFi,EDGE/3G或没有Internet连接.
您可以在应用程序中使用此代码的一部分来确定网络状态,然后在没有可用连接的情况下提供接口提示,例如UIAlertView.