【问题标题】:Android send impulse from service to activityAndroid 将冲动从服务发送到活动
【发布时间】:2012-05-24 20:23:05
【问题描述】:

在服务中,我准备了一些数据,然后将这些数据存储在静态成员变量中,通过广播向主 UI 活动发送没有数据的意图,以便活动知道数据已准备好并准备好访问。

这很好用,但是由于我需要每秒执行大约 10 次,所以我认为通过广播发送脉冲(根本不包含数据)有点矫枉过正,我已经测试过在那里浪费了很多时间.

有更好的解决方案吗?

【问题讨论】:

    标签: android service android-activity broadcast


    【解决方案1】:

    您应该bind your Service to your Activity 并使用简单的回调或Message 和Handler 工具来发送您的数据。根据您所说的,一个简单的回调可能就可以满足您的需求。

    【讨论】:

    • 问题是服务也需要在活动关闭时运行,据我所知,当它绑定到活动时这是不可能的,或者是吗?
    • 我发现了一个关于同一主题的问题:stackoverflow.com/questions/2621395/… 不过我不太明白。有人能解释一下吗?
    • @DominicM 当您的Activity 停止并失去焦点时,可以从Service 解除绑定。 Service 将继续运行。这就是在后台运行的媒体播放器的工作方式。
    • 但是绑定服务的生命周期表明,当不再绑定客户端时,它会被销毁:developer.android.com/guide/topics/fundamentals/…如何防止这种情况?
    • @DominicM 确保在启动 Service 时使用 return START_STICKY,以便在不处理命令时继续运行。
    猜你喜欢
    • 2012-12-30
    • 1970-01-01
    • 1970-01-01
    • 2012-10-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-08
    相关资源
    最近更新 更多