我是Android开发新手,无法理解我应该如何使用service's
,更具体地说是哪种。我正在开发一个只对事情有用的简单系统。其中一个是不断向服务器询问简单的telnet
个问题。应在屏幕上提示这些问题的答案。
所以简化我的问题。我应该选择什么样的服务?绑定,intent service
等?
我认为它必须运行一个自己的线程,因为它假设要进行网络通信,所以我应该怎么做。
最后也是最重要的一点,我如何提供/提供服务收集的MainActivity
信息并将其发布在屏幕上?
答案 0 :(得分:1)
我应该优先选择什么样的服务?绑定,意图服务等?
只要绑定了另一个应用程序组件,绑定服务就会运行。换句话说,如果活动绑定到该服务,并且稍后该活动完成,则该服务也会被销毁 因此,首先要确定您想要的服务的行为。当绑定到它的活动被破坏时,你想要它被销毁吗?如果是,那么可能绑定服务是正确的,如果没有,那么使用已启动的服务,它可以无限期地在后台运行,即使启动它的组件被销毁。
我认为它必须运行自己的线程,因为它假设要做网络 comm,那我该怎么办呢。
是的,你是对的。您可以使用Service
类并在其中创建一个可以完成繁重工作的线程,或者,您可以使用提供自己的工作线程的IntentService
来简化操作。
最后也是最重要的是,我如何提供/提供MainActivity 服务收集的信息?
如果您决定使用绑定Service
,那么您将能够通过所谓的绑定对象与服务进行通信。另一方面,如果您使用IntentService
,则可以使用ResultReceiver或BroadcastReceiver将结果发回。
建议读物:
http://developer.android.com/guide/components/services.html
http://developer.android.com/guide/components/bound-services.html
答案 1 :(得分:0)
以下是Android中服务的快速摘要,希望这有助于决定采用何种方法。强烈建议阅读Android Services
Android服务