首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android在深度睡眠模式下更新http调用失败

Android在深度睡眠模式下更新http调用失败
EN

Stack Overflow用户
提问于 2018-04-24 14:17:58
回答 2查看 900关注 0票数 3

我在Android7.0 tabA上有一个tabA平板电脑,我使用Retrofit 2每15分钟向我的服务器发送http调用,记录有关平板电脑的信息。我的平板电脑进入“深度睡眠”模式时,它的充电时间不超过5分钟,屏幕关闭。

在这种深度睡眠模式中,没有一个呼叫能够到达我的服务器,并且我会收到一个“连接超时错误”。

是否有人对“深度睡眠”模式有更好的理解,并在此解释实现我行为的最佳方法(每15分钟发送一次日志,h24/24)?

有人能解释一下它是一个升级的bug,还是一个Android功能,还是其他什么东西?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-05-04 11:31:48

要解决这个问题,必须使用evernote库:https://github.com/evernote/android-job

事实上,“打瞌睡模式”在深度睡眠中阻止了对网络的访问,并在周期性的时间醒来,让网络访问打开。

这个库帮助我捕捉那些神圣的周期性窗口,用网络发送我的服务器日志。

只需按照自述中的教程配置此特性即可。

票数 2
EN

Stack Overflow用户

发布于 2018-04-24 16:43:22

我觉得你应该看看这个

Doze模式从Android6.0 (API级别23)开始

如果用户在一段时间内将设备断开并保持不动,则该设备将进入Doze模式。在Doze模式下,系统试图通过限制应用程序访问网络和CPU密集型服务来节省电池。它还阻止应用程序访问网络,并延迟它们的工作、同步和标准警报。 系统定期退出Doze一段时间,让应用程序完成延迟的活动。在此维护窗口中,系统运行所有挂起的同步、作业和警报,并允许应用程序访问网络。

欲了解更多信息,请阅读以下内容:Doze和App备用的优化

所以当你需要执行你的任务时,你需要唤醒你的手机,比如发送通知或者其他的.

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50004010

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档