我正在开发一个管理调查的应用程序。它会在设备上存储尽可能多的数据,但在应用程序中存在一些点,如果用户没有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. 最好的用户界面设计,以处理没有互联网连接
- 5. 如何处理没有互联网和失去连接在Android?
- 6. 如何在处理REST API时临时处理客户端应用程序暂时没有互联网连接?
- 7. 如果在设备上没有互联网连接,ios应用程序出错
- 8. NSJSONSerialization终止应用程序,如果没有互联网连接
- 9. 如何处理没有互联网连接:Yelp API和AFNetworking
- 10. Android应用程序互联网连接
- 11. 如何检查在应用程序中的互联网连接
- 12. 当应用程序没有互联网连接时的警报
- 13. Facebook应用程序类型没有互联网连接消息
- 14. 应用程序崩溃时的AsyncTask没有互联网连接
- 15. 当没有互联网连接时应用程序崩溃
- 16. 当没有互联网连接时,应用程序崩溃
- 17. Android应用程序崩溃没有互联网连接?
- 18. 创建laravel应用程序没有互联网连接
- 19. 互联网连接在ios应用程序每秒钟检查
- 20. 没有互联网连接
- 21. 没有互联网连接
- 22. 如何处理Windows Phone 7应用程序的互联网连接在应用程序运行之间中断?
- 23. 如何防止应用程序在没有互联网连接时运行
- 24. 处理没有互联网连接语音中的错误
- 25. 在Android上处理与PhoneGap没有互联网连接
- 26. ANR在我的应用程序中,如果没有互联网连接
- 27. 如何在iOS中正确处理互联网连接的不可用性?
- 28. 如何处理我的应用程序没有互联网的问题?
- 29. 如何在后台应用程序可以检查互联网连接,IOS?
- 30. 如何在Android中处理互联网连接问题
重试是最简单的解决方案,似乎是最流行的,因此更直观。 – 2013-03-18 17:19:03
谢谢,rog。我曾想过一个重试按钮,但认为如果我是用户,我会因反复尝试而感到厌烦。我喜欢使用计时器的想法。我会放弃它。 – munder 2013-03-19 19:00:29
非常好,很高兴我的建议帮助。如果您收到的任何答案都能满足您的问题,请不要忘记选择该答案作为完成问题的正确答案。 :) – rog 2013-03-19 19:05:14