【问题标题】:android service callback from asynctask to activities从异步任务到活动的android服务回调
【发布时间】:2023-03-30 17:33:01
【问题描述】:

我有一个应用程序,其中包含多个与服务绑定的活动。 该服务在异步任务中打开一个套接字连接并开始侦听 (while(true)) 来自套接字服务器的传入消息。

问题是:消息到达的几个activity如何发送回调?

提前致谢

【问题讨论】:

标签: android callback android-asynctask android-service


【解决方案1】:

您是否使用 onBind() 将活动绑定到服务?如果是这样,为什么? onBind() 通常不需要。

据我所知,您正在侦听来自服务器的传入消息。您是否使用 Google Cloud Messaging 进行过调查?

活动不必绑定到服务。它会一直运行,直到某些东西将其关闭。您可以在其上运行 AsyncTask,但您甚至可能想使用自己的后台 HandlerThread。

无论如何,要与 Activity 进行通信,请使用 LocalBroadcastReceiver 并从 Service 发送广播 Intent。

【讨论】:

  • 是的,我正在使用 onBind() 将活动绑定到服务,以便访问服务中定义的方法。使用广播意图它可以工作,但我怀疑它是性能的更好选择。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-08-14
  • 2017-01-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多