关于构造服务,活动,线程的建议

时间:2010-10-05 20:23:12

标签: android service android-activity

有人可以帮帮我吗?

我想编写一个程序,该程序使用服务定期更新活动的文本视图。

我通过让ActivityA带有2个按钮来启动/停止我的服务。在服务中我运行一个定时器,每秒触发一次。从这里我需要启动并更新ActivityB上的文本视图,它目前只是一个计数器值。

我确信有更好的方法可以做到这一点,例如只使用一个活动,可能使用一个线程,但主要的设计考虑是即使我的活动被破坏也要运行服务(计数器值会改为去触发一些警报或文件写入而不是文本视图更新。

抱歉漫无目的。我发现android开发者资源提供了太多解决方案!

由于

2 个答案:

答案 0 :(得分:1)

  

在服务中我运行一个每秒触发一次的计时器。

为什么呢?大多数Android设备都使用电池供电。电池永远不够大。您为用户提供了什么价值来证明您的CPU和RAM(以及电池寿命)的支出是合理的?

  

从这里我需要启动并更新ActivityB上的文本视图,它目前只是一个计数器值。

“这里”在哪里?

  

我确信有更好的方法可以做到这一点,例如只使用一项活动

我会这么认为。

  

可能使用线程

可能不是。

  

但主要的设计考虑因素是即使我的活动失败也要运行服务

这比您想象的要复杂得多。

  

(计数器值会触发一些警报或文件写入而不是文本视图更新)。

如果您的目标是在特定时间执行某项操作,请使用AlarmManager

我怀疑,无论你想要做什么,都有一种更好的方法,而不是你现在要走的路。不幸的是,由于我不知道你想要做什么,我提供更具体建议的能力有限。

答案 1 :(得分:0)

我认为你想做的事情最多只需要一个简单的AsyncTask。如果使用onProgressUpdate方法,则可以在每次在后台工作期间达到某个点时增加textview中的值。它还可以取消后台工作等。不需要完整的服务,线程工作。