如何将数据从一个活动创建的后台线程发送到另一个已知活动的活动?

时间:2011-06-02 23:03:52

标签: android static background thread-safety real-time

首先,我应该通过提供一些背景知道:我正在使用Eclipse开发一个绘制蓝牙数据的Android应用程序。它主要由蓝牙活动,蓝牙活动创建的后台线程和绘图活动组成。

我的问题的主要焦点:一旦知道绘图活动处于活动状态,我可以使用什么方法将蓝牙数据从后台线程发送到绘图活动,以便我可以绘制它?

这是我正在攻击的开源代码。使用Logcat我知道蓝牙活动即使在蓝牙活动消失后也会创建一个后台线程来持续生成蓝牙数据。我找到了将BluetoothData记录到Logcat的后台方法。现在我想利用这种方法将蓝牙数据发送到活动的绘图活动,以便我可以绘制它。

我可以告诉你看起来有用的东西。感兴趣吗?在Plotting Activity中定义一个静态方法plotData(BluetoothData),并从后台线程调用if。实时剪辑就好了。情节很好。但我被告知我不应该使用静态方法,就好像有一些问题。那么我还应该使用什么?

有什么建议吗?

1 个答案:

答案 0 :(得分:2)

您不应该使用background thread。相反,您应该使用收集数据的Service。在这种情况下,您创建的每个活动都可以绑定到该服务,并在收到新数据时通知您。使用处理程序,服务可以轻松地将数据发送到绑定的活动。

一个小问题:你能否解释为什么静态方法应该存在问题,更确切地说:哪种问题?

相关问题