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