4

我正在使用蓝牙聊天示例从外部传感器流式传输数据。这工作正常,我收到所有数据。接下来我需要做的是在设定的时间段(例如每 10 毫秒)对接收到的数据进行采样。

谁能建议使用什么以及如何与蓝牙线程交互?

4

2 回答 2

1

好吧,基本上你可以通过定期使用AlarmManager. 查看以下链接以获取示例:

Android:如何定期将位置发送到服务器

于 2013-06-25T08:41:24.740 回答
0

如果您的蓝牙线程可以以 10 毫秒的速率进行采样,那么您可以直接使用它。否则,您将需要以 10 毫秒的频率运行新线程。假设数据发送速率的准确性不够高,因此发送线程上的 Thread.sleep() 就足够了,并且需要一些线程间通信 - 有明确定义的模板来完成这项工作。只是其中之一:http: //javaprogramming.language-tutorial.com/2012/09/interthread-communication-java.html

所以一般来说,你有数据发送线程,睡眠设置为 10 毫秒,蓝牙线程通过上面的模板将它所拥有的任何东西发送到这个发送线程。发送的数据存储在类似队列的缓冲区中,发送线程在发送尝试之间使用 sleep() 将它们一一接收。

于 2013-06-25T09:13:37.797 回答