我正在开发一个管理调查的应用程序。它会在设备上存储尽可能多的数据,但在应用程序中存在一些点,如果用户没有Internet连接,用户无法继续进行操作。因此,如果用户已经成功登录过一次,他们的详细信息将从本地SQLlite数据库中提取,登录屏幕将被跳过,并直接进入他们可以选择回答的调查菜单。如果他们已经完成了一项调查,他们可以选择编辑他们的答案。那时,调查问题应该已经存在于设备的本地数据库中,但是我需要从服务器下载所有的答案,以防他们使用不同的设备对其进行修改。当然,如果他们想开始一项新的调查,我需要检索这些问题。如果他们没有互联网连接,他们需要在那一刻停下来。我会显示一个对话框,通知他们他们没有互联网连接,应该稍后再试。这一切工作正常。如果用户有互联网连接,但我的主机是未完成的,我也会显示一个类似的对话框,但在对话框后我该怎么做?在Android中,我可以在关闭对话框时退出应用程序,但Apple强烈要求关闭应用程序,所以我该如何处理iOS设备?只希望用户最终消失并做其他事情?如何最好地处理在iOS应用程序中没有互联网连接
回答
您可以在对话框中创建一个重试按钮,尝试重新建立连接。
或者您可以设置NSTimer在设定的时间内检查连接。这似乎是最可行的,因为它可以让用户继续编辑他们的调查。
给出这种情况,我认为如果您在退出之前放置对话框,Apple不会拒绝您的应用程序。
类似于“服务器无法访问,此应用程序无法运行,应用程序现在关闭,谢谢你,祝你有美好的一天!
如果您的二进制文件被拒绝,您可以尝试解释这种情况。
调用'exit'曾经是Apple推荐的东西,但是他们从此基本上禁止了它。更多信息在这里:https://developer.apple.com/library/ios/#qa/qa2008/qa1561.html – 2013-03-18 17:11:01
我可能会提供一个UIAlertView或用户无法解雇的某种模式,然后一旦Reachability或任何机制报告连接再次可用时,就以编程方式关闭警报/模式。
退出用户的应用程序非常突兀,很可能会让您的应用程序从AppStore中被拒绝。
编辑:
最终这听起来像所有你想做的事就是防止他们与调查出发,并不一定妨碍他们使用的应用程序。这听起来像你只需要一个“分期”区域/视图,告诉他们正在发生什么,以及为什么他们目前无法进行任何调查。看看其他需要永久连接的应用程序,例如Pandora,Netflix,Hulu等......当您在AirPlane模式下打开应用程序或在使用WiFi时终止WiFi时会发生什么情况?
啊哈,是的。聪明的想法。我会在iPhone上粘贴一些,看看他们是如何处理它的。我更习惯于Android。 – munder 2013-03-19 18:33:43
- 1. 如何在GWT应用程序中处理互联网连接
- 2. Debbuging没有互联网连接的iOS应用程序
- 3. 连接一个Android应用程序没有互联网连接
- 4. 如何在处理REST API时临时处理客户端应用程序暂时没有互联网连接?
- 5. 如何处理没有互联网连接:Yelp API和AFNetworking
- 6. 互联网连接在ios应用程序每秒钟检查
- 7. 如何检查在应用程序中的互联网连接
- 8. 当没有互联网连接时,应用程序崩溃
- 9. Android应用程序崩溃没有互联网连接?
- 10. 创建laravel应用程序没有互联网连接
- 11. 没有互联网连接
- 12. 在Android上处理与PhoneGap没有互联网连接
- 13. 如何防止应用程序在没有互联网连接时运行
- 14. 如何处理我的应用程序没有互联网的问题?
- 15. 处理没有互联网连接的Firebase身份验证(Android)
- 16. 最好的方法来检查整个应用程序的互联网连接
- 17. 如何处理使用CFNetwork的iOS上的互联网连接中断?
- 18. 程序内购买崩溃的应用程序没有互联网连接
- 19. iOS版 - 连接失败的提示信息时,在我的应用程序没有互联网连接
- 20. 互联网连接丢失时的按钮处理程序
- 21. ajax错误处理程序时,互联网连接丢失
- 22. ANDROID:IPTABLES如何阻止应用程序使互联网连接
- 23. 我如何运行管理单元!没有互联网连接?
- 24. Iphone Sdk在应用程序中间检查互联网连接?
- 25. 在Mac应用程序中连接到互联网
- 26. 上开始关闭自C#应用程序,如果没有互联网连接
- 27. 互联网连接管理?
- 28. Silverlight如何处理互联网连接的代理?
- 29. 带有Firebase的iOS应用程序不以低速互联网连接开始
- 30. 如何在我的Android应用程序中使用3G互联网连接?
重试是最简单的解决方案,似乎是最流行的,因此更直观。 – 2013-03-18 17:19:03
谢谢,rog。我曾想过一个重试按钮,但认为如果我是用户,我会因反复尝试而感到厌烦。我喜欢使用计时器的想法。我会放弃它。 – munder 2013-03-19 19:00:29
非常好,很高兴我的建议帮助。如果您收到的任何答案都能满足您的问题,请不要忘记选择该答案作为完成问题的正确答案。 :) – rog 2013-03-19 19:05:14