如何最好地处理iOS应用程序中没有互联网连接

时间:2013-03-18 16:55:14

标签: ios mobile connection

我正在开发一个管理调查的应用程序。它在设备上存储尽可能多的数据,但是在应用程序中有一些点,如果用户没有Internet连接,那么用户就没有意义。因此,如果用户已成功登录一次,他们的详细信息将从本地SQLlite数据库中提取,则会跳过登录屏幕,他们会直接进入他们可以选择回答的调查菜单。如果他们已经完成了一项调查,他们可以选择编辑他们的答案。此时,调查问题应该已经存在于设备的本地数据库中,但我需要从服务器下载所有答案,以防他们使用其他设备对其进行修改。当然,如果他们想要开始新的调查,我需要检索问题。如果他们没有互联网连接,他们需要在那时停止。我显示一个对话框,通知他们没有Internet连接,应该稍后再试。这一切都很好。如果用户有Internet连接,我也会显示类似的对话框,但是主机是未达到的,但是在对话后我该怎么办?在Android中我可以在他们关闭对话框时退出应用程序,但Apple不赞成强制关闭应用程序,那么我该如何在iOS设备上执行操作?只是希望用户最终离开并做其他事情?

3 个答案:

答案 0 :(得分:4)

您可以在对话框中创建一个重试按钮,尝试重新建立连接。

或者您可以设置NSTimer以在设定的持续时间内检查连接。这似乎是最可行的,因为它将允许用户继续编辑他们的调查。

答案 1 :(得分:4)

我可能会提供UIAlertView或用户无法解除的某种模式,然后一旦Reachability或任何机制报告连接再次可用,就以编程方式解除警报/模态。

退出用户的应用程序非常突然,可能会让您的应用程序被AppStore拒绝。

编辑:

最终,听起来你要做的就是阻止他们继续进行调查,不一定阻止他们使用应用程序。听起来你只需要一个“分段”区域/视图,告诉他们发生了什么以及为什么他们现在不能进行任何调查。看看其他需要永远连接的应用程序,例如Pandora,Netflix,Hulu等......当您在AirPlane模式下打开应用程序或在使用时杀死WiFi时会发生什么?

答案 2 :(得分:-1)

出现这种情况我认为如果你在退出前放置一个对话框,Apple将不会拒绝你的应用程序。

类似于“服务器无法访问,如果没有这个应用程序,此应用程序无法运行。应用程序现在将关闭。谢谢你,祝你有愉快的一天!”

如果您的二进制文件被拒绝,您可以尝试解释这种情况。