如何管理Android应用中的停机时间

时间:2014-08-09 13:52:41

标签: android

我正在使用目标用户超过30K的应用,因此让我们保持应用始终正常工作并server向上是非常重要的,因为server会将结果发送到{{1 }}。但在最坏的情况下,如果服务器由于任何原因下来,那么它可以保持一切在可怜的情况。

我希望无论何时任何案例服务器都关闭,我都应该显示一个JSON,表明我们的Activity已关闭。

我应该在server个应用程序的几分钟内ping服务器,看看Android是否已启动?

我如何处理server应用中的停机时间功能?

提前致谢。

1 个答案:

答案 0 :(得分:0)

最好的方法是使用第二个后端,它具有稳定的连接并定期ping你的服务器。在发出实际的服务器请求之前,应用程序会查询后端以检查服务器状态。

一般方法(不是100%可靠!):

  • 在发出任何请求之前确保设备具有活动数据连接
  • 检查当前网络类型并调整连接和SO超时(例如,在EDGE上增加它们)
  • 如果设备具有活动数据连接,则超时值足够高,但您可以继续获得ConnectTimeoutException,您可以认为服务器已关闭

P.S。 ConnectTimeoutException适用于Apache HttpClient。否则,这很可能是java.net.ConnectException

当然,我建议您在测试环境中测试任何方法,以便模拟服务器关闭。

这就是我在网络应用中为我的后台线程做的事情:在使用Exception进行连接时捕获try-catch。在帮助器类中,我创建了一个静态" checkError"方法,如果发生Exception,则将其传递给此方法。然后我使用Exception作为条件检查instanceof类型并正确处理它。