Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/44.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在应用程序启动时处理iOS7中丢失的3G/wifi_Ios_Iphone_Networking_Ios7_Wifi - Fatal编程技术网

在应用程序启动时处理iOS7中丢失的3G/wifi

在应用程序启动时处理iOS7中丢失的3G/wifi,ios,iphone,networking,ios7,wifi,Ios,Iphone,Networking,Ios7,Wifi,我有一个应用程序,它需要在整个应用程序中访问后端服务器和第三方API(Google、CloudMake等)。没有替代方案,需要连接 我已经在使用可达性版本进行检查,请参阅。我在appDelegate中执行此操作,并希望在网络状态为不可访问时执行一些操作 从设计的角度来看,我需要在关闭应用程序之前通过让用户采取行动或提供信息来处理这个问题。我考虑了三种情况: A.用户收到UIAlert,可以通过[[UIApplication sharedApplication]openURL:[NSURL URL

我有一个应用程序,它需要在整个应用程序中访问后端服务器和第三方API(Google、CloudMake等)。没有替代方案,需要连接

我已经在使用可达性版本进行检查,请参阅。我在appDelegate中执行此操作,并希望在网络状态为
不可访问时执行一些操作

从设计的角度来看,我需要在关闭应用程序之前通过让用户采取行动或提供信息来处理这个问题。我考虑了三种情况:

A.用户收到UIAlert,可以通过
[[UIApplication sharedApplication]openURL:[NSURL URLWithString:@“prefs:root=WIFI”]]进入网络设置
但这既是一个未记录的功能,也不能超越5.1

B.通过UIAlert通知用户,以“退出”作为确认,然后以
exit(0)
退出应用程序。然而,这种行为也被禁止,并将导致苹果拒绝该应用程序

C.在AppName-Info.plist中设置
UIRequiresPersistentWiFi=YES
,但这有点过头了,因为应用程序不需要一致的wifi/3G,如果出现这种情况,这不会提示丢失网络


因此,我的问题是,建议用什么方法来处理
NotReachable
案例?

只需通过UIAlert通知用户问题。不允许对进行任何选择,只需显示“确定”按钮即可。当用户点击OK按钮时,更新UI,以便当用户再次触发该上下文中所需的操作时,您再次检查网络状态。如果可以访问网络,请允许用户继续,否则,只需再次显示警报。

从可用性角度看,这不是最好的解决方案,而是目前唯一可能的解决方案。我不喜欢这些连续的警报提示等待用户进入设置或关闭应用程序,尤其是在警报中提供进入网络设置的选项时。这似乎也是苹果内部的做法。就可用性而言,在没有显示“出路”的情况下提示用户是不好的——这类似于web表单预验证日。答复:)