0

想象一下以下情况:
MainActivity 启动一个线程来接收蓝牙数据。如果用户按下后退按钮,则会发生以下序列onPause() -> onStop() -> onDestroy():onDestroy 中断活动创建的线程,程序完全结束。

但是,如果用户按下主页按钮,则顺序为 : onPause() -> onStop()。并且该活动不再可见。但线程仍在运行。

我想要做的是,当线程接收到一些 BT 数据时,MainActivity 再次变得可见(恢复)而无需用户干预。

有人知道该怎么做吗?

谢谢。

4

1 回答 1

0

您应该编写一个在后台运行的服务,并在某些事件(在您通过蓝牙接收的案例文件中)调用您要运行的应用程序。这将是解决此问题的一种方法。可能还有其他一些解决方案,但这个解决方案不会耗尽用户的电池。

于 2012-06-22T04:03:09.653 回答