我正在开发一个应用程序,我需要在后台发送和接收数据包。但我发现当屏幕关闭时,cpu和网络也被禁用。所以我在Android Developers上发现,如果屏幕熄灭,我应该使用唤醒锁定和WiFi锁定让CPU继续工作。此解决方案适用于LG Optimus One等其他设备,但不适用于Samsung Galaxy Tab。有了这个设备,当屏幕关闭时,我不能再收到数据包(UDP),并且当按下电源按钮重新启用屏幕时,我重新开始接收数据包。 在我的代码我呼吁:三星Galaxy Tab中的唤醒锁
powerManager = (PowerManager) getSystemService(Context.POWER_SERVICE);
wakeLock = powerManager.newWakeLock(PowerManager.SCREEN_DIM_W AKE_LOCK, "TAG");
然后
wakeLock.acquire();
我认为这是一个三星的错误,但我不知道这一点,如果有人可以给我一些暗示我会很感激。
P.S.我需要一些编程帮助...我已经知道,如果我修改一些手动设置以避免关闭屏幕,这将起作用。但我正在开发一个应用程序,我需要代码!
你有没有试过Galaxy Tab?因为我试过这个,但是当屏幕关闭时,我只能发送和不接收。PARTIAL_WAKE_LOCK应该保持CPU活着,但在这种情况下,似乎当屏幕关闭这不起作用。 – flyhalf8610 2011-05-20 09:37:45
是的,它适用于Galaxy Tab(我刚刚重新检查)。你为什么认为这是Galaxy Tab特有的? – inazaruk 2011-05-20 10:03:50
因为我正在测试其他设备(LG Optimus One),它确实有效!此外,我正在检查,但与PARTIAL_WAKE_LOCK udp接收不能通过无线网络时,屏幕关闭..我认为这是一个三星的错误。像省电功能。 – flyhalf8610 2011-05-20 10:13:12