我有一个需要每 30 分钟从服务器提取数据的应用程序,经过大量搜索后我找到了这个解决方案:
1- 使用 AlarmManager 每 30 分钟通知应用程序,而不是让服务在后台运行。
2- 使用带有 PARTIAL_WAKE_LOCK 的唤醒锁

我唯一的问题是 Wifi 在 sleep 时间关闭。

当我的警报被触发时,我如何请求我需要互联网连接?

最佳答案

前段时间我遇到了完全相同的问题。不幸的是我没有成功。我尝试了以下方法:

    WifiManager wman = (WifiManager) ctx.getSystemService(Context.WIFI_SERVICE);

    try {
        wman.reconnect();
    } catch (Exception e) {
        e.printStackTrace();
        return false;

    }

也许你可以玩弄 WifiManager 并找到一种我没有找到的方法。哦,是的,不要忘记在 list 中设置 WIFI 权限。

干杯卢卡斯

关于Android:如何从 AlarmManager 唤醒 WIFI(或 3G)?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9140185/

10-10 18:04