fat*_*cat 15 android throttling cpu-speed android-wifi sleep-mode
我有一个应用程序,我通过WiFI发送网络数据.一切都很好,直到我关闭显示器或设备进入"睡眠"状态.我已经锁定了WiFi,但似乎是在睡眠时CPU速度下降导致流式传输不正常的情况(即数据包的流速不如我想的那样快设备没有睡觉).
我知道我可能/可能应该在协议级别解决这个问题,但这可能也不可能 ......
有没有办法 "在屏幕关闭时防止CPU进入'睡眠'"?如果是这样,怎么样?如果没有,关于如何保持WiFi流的速度的任何建议是否一致,无论设备是否处于睡眠模式?
Mic*_*sen 13
抓住一个PARTIAL_WAKE_LOCK从电源管理器.您还需要向清单添加WAKE_LOCK权限.
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "Tag");
wl.acquire();
//do what you need to do
wl.release();
Run Code Online (Sandbox Code Playgroud)
fat*_*cat 10
好吧,经过更多的研究和实验,似乎真正的问题是,至少在某些手机上,他们的WiFi会进入"部分睡眠"模式,即使您已经使用了WiFi锁定.看来这就是'WIFI_MODE_FULL_HIGH_PERF'标志是在发射WiFi锁时发明的...不幸的是,这个标志仅在某些设备/ Android版本上可用(我不知道哪个但是,它不可用对我来说).因此,它不是所有设备的修复程序.
唯一的"解决方案"(实际上是一个kludge)似乎是'检测屏幕何时关闭,然后设置警报,此后立即重新打开屏幕'.对此有所帮助的链接是:
和
http://android.modaco.com/topic/330272-screen-off-wifi-off/
我希望这可以帮助那些在手机进入睡眠状态/屏幕关闭时遇到WiFi中断的人(并且手机已拔下/断开连接[例如,当连接到adb时你不会看到这种效果; 只有当手机正在运行时)没有任何东西连接到它]).
| 归档时间: |
|
| 查看次数: |
12940 次 |
| 最近记录: |