Android:如何管理永久后台任务?

时间:2015-06-01 21:30:11

标签: java android service usb background-task

我正在开发一个在主机模式下使用USB的Android应用。 当应用正在运行且设备已连接时,我需要了解设备实时发送到智能手机的内容。

使用Android SDK以中断模式执行传输。

目前,我使用 Service (实际上运行一个新线程来执行while循环),但我确信有更好的方法来管理这种情况。此外,使用服务使得很难从另一个类中检索/发送数据。

我认为另一个解决方案是使用线程,而不使用 Service 。然后我会有一个类暴露静态方法(startReadingThreadstopReadingThreadsendData ...),一旦应用程序启动就可以启动线程,而不会停止/重新启动每个活动之间的服务

所以,我的问题是:如何管理这种后台任务?

如果需要,可以提供示例代码。谢谢。

1 个答案:

答案 0 :(得分:1)

您实际上应该使用IntentService。它与服务之间的主要区别在于它不在主线程上运行。您可以通过绑定服务或使用本地广播在服务和活动之间交换信息。

请参阅here以供参考。