【发布时间】:2023-03-30 17:33:01
【问题描述】:
我有一个应用程序,其中包含多个与服务绑定的活动。 该服务在异步任务中打开一个套接字连接并开始侦听 (while(true)) 来自套接字服务器的传入消息。
问题是:消息到达的几个activity如何发送回调?
提前致谢
【问题讨论】:
标签: android callback android-asynctask android-service
我有一个应用程序,其中包含多个与服务绑定的活动。 该服务在异步任务中打开一个套接字连接并开始侦听 (while(true)) 来自套接字服务器的传入消息。
问题是:消息到达的几个activity如何发送回调?
提前致谢
【问题讨论】:
标签: android callback android-asynctask android-service
您是否使用 onBind() 将活动绑定到服务?如果是这样,为什么? onBind() 通常不需要。
据我所知,您正在侦听来自服务器的传入消息。您是否使用 Google Cloud Messaging 进行过调查?
活动不必绑定到服务。它会一直运行,直到某些东西将其关闭。您可以在其上运行 AsyncTask,但您甚至可能想使用自己的后台 HandlerThread。
无论如何,要与 Activity 进行通信,请使用 LocalBroadcastReceiver 并从 Service 发送广播 Intent。
【讨论】: