Android:后台线程和屏幕唤醒,在模拟器中工作,而不是在设备中

Android:后台线程和屏幕唤醒,在模拟器中工作,而不是在设备中,android,android-emulator,background-process,Android,Android Emulator,Background Process,在应用程序中,我有一个下载数据的后台线程,有时没有非常高的记录。我们显示一个进度条来显示数据 假设我正在下载1000条记录,根据网络情况,大约需要1到5分钟。在下载过程中,屏幕会逐渐变为黑色,甚至不会通知是否发生任何错误。为了解决这个问题,我应用了这个代码 getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN | WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); emula

在应用程序中,我有一个下载数据的后台线程,有时没有非常高的记录。我们显示一个进度条来显示数据

假设我正在下载1000条记录,根据网络情况,大约需要1到5分钟。在下载过程中,屏幕会逐渐变为黑色,甚至不会通知是否发生任何错误。为了解决这个问题,我应用了这个代码

getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN | WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
emulator中发生了什么:我已将屏幕超时设置为30秒,然后开始下载数据。目前我的网络速度很慢,下载过程持续了30分钟,但屏幕没有消失。我仍然可以看到屏幕上的一切

设备中发生的情况:[在三星i5700中测试]:屏幕超时设置为30秒。这段代码没有在emulator中运行。30秒后,屏幕淡入黑色,设备被锁定


我是否做错了任何事情,使代码不能按预期在设备上运行?或者,如果可能的话,还有其他需要明确处理的事情吗?

您确定模拟器的屏幕不会因为您的代码而褪色吗? 几天前,我发现如果“设备插入AC”,模拟器将不会锁定屏幕


尝试通过adb禁用交流连接(通过telnet连接并输入“关闭交流电源”)。

这可能就是设备中的此代码不起作用的原因。。当设备未连接到ac时,您有什么解决方案使其工作吗?我也试过了。屏幕时间超过15秒。。。等了一分钟,什么也没发生……意味着在设备或模拟器未连接时,屏幕没有褪色?在模拟器中,选中“保持清醒”(设置->应用程序->开发)。