2011-05-15 101 views
1

我正在通过runOnUiThread(Runnable)方法创建一个更新UI的应用程序。只要用户运行此应用程序,即使在onPause()时,此UI线程仍会继续运行,这一点非常重要。不过,我已经意识到,当屏幕被锁定时,Android会停止UI线程;我不责怪他们,这可能是为了节省电池寿命。但我想知道是否有一种方法可以覆盖这一点,并告诉活动或系统继续运行UI线程。屏幕关闭时保持UI线程运行

回答

5

我宁愿将您的代码作为服务运行,并通过bindService将其挂接到具有UI的活动。

您拥有的其他选项是创建一个WakeLock并始终保持电话。不过,这可能对电池来说非常困难。

检查绑定服务的开发者指南条目,看看它是否适合你的设计:http://developer.android.com/guide/topics/fundamentals/bound-services.html

有很多很好的教程在那里运行服务,具有不同程度的复杂性。看看他们中的一些在这里:

+0

您能否简要介绍给我,我应该用这个绑定服务的事情在做什么?我已阅读文档,但我不知道从哪里开始。感谢您的发布。 – Brian 2011-05-15 07:04:10

+0

@AeroDroid你基本上将run方法中的代码运行在不同的服务类上,而将ui从它后面的代码中分离出来。检查我上面添加的示例,它们比解释它的工作方式好得多。 – Aleadam 2011-05-15 17:26:17