【发布时间】:2012-05-24 20:23:05
【问题描述】:
在服务中,我准备了一些数据,然后将这些数据存储在静态成员变量中,通过广播向主 UI 活动发送没有数据的意图,以便活动知道数据已准备好并准备好访问。
这很好用,但是由于我需要每秒执行大约 10 次,所以我认为通过广播发送脉冲(根本不包含数据)有点矫枉过正,我已经测试过在那里浪费了很多时间.
有更好的解决方案吗?
【问题讨论】:
标签: android service android-activity broadcast
在服务中,我准备了一些数据,然后将这些数据存储在静态成员变量中,通过广播向主 UI 活动发送没有数据的意图,以便活动知道数据已准备好并准备好访问。
这很好用,但是由于我需要每秒执行大约 10 次,所以我认为通过广播发送脉冲(根本不包含数据)有点矫枉过正,我已经测试过在那里浪费了很多时间.
有更好的解决方案吗?
【问题讨论】:
标签: android service android-activity broadcast
您应该bind your Service to your Activity 并使用简单的回调或Message 和Handler 工具来发送您的数据。根据您所说的,一个简单的回调可能就可以满足您的需求。
【讨论】:
Activity 停止并失去焦点时,可以从Service 解除绑定。 Service 将继续运行。这就是在后台运行的媒体播放器的工作方式。
Service 时使用 return START_STICKY,以便在不处理命令时继续运行。