gpt4 book ai didi

android - 使轮询 Web 服务的 Android 服务处理不良连接的技巧

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:54:55 25 4
gpt4 key购买 nike

我正在开发一个 Android 应用程序,它需要按时间间隔轮询特定网页。我已经做到了它确实按特定时间间隔轮询页面,并且该时间间隔在 SharedPreference 中指定,用户可以在应用程序的设置页面中更改它。但是,当网络连接不稳定时,就会出现复杂情况。

例如,如果手机正在休眠以节省电量,我如何确保服务“唤醒”网络适配器并在轮询页面之前为其提供充足的连接时间?此轮询操作可能每 24 小时发生一次,因此我不想因为网络中断(但在几秒、几分钟甚至几小时后打开)而错过一个操作。

或者有时候 Web 服务没有响应,或者 DNS 没有响应,或者你有什么,并且出于任何原因它没有得到响应,即使电话在技术上已连接。我制定了什么样的规则来稍后重试,这样我就不会在用户特别关闭互联网时重复重试,但我会尽快重试,如果只是一个小问题,数据可以是第一次尝试后很快就收到了?

有没有这种情况的例子?最好地处理这个问题的逻辑是什么?

最佳答案

监听 CONNECTIVITY_ACTION

这看起来不错 sample code .这是一个 fragment :

        IntentFilter filter = new IntentFilter();
filter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);
context.registerReceiver(mReceiver, filter);

查看关于 How can we get notified if the phone has got internet access? 的其他问题

关于android - 使轮询 Web 服务的 Android 服务处理不良连接的技巧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3268163/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com