Android 如何监视通过GcmListenerService启动的异步线程

Android 如何监视通过GcmListenerService启动的异步线程,android,multithreading,asynchronous,callback,google-cloud-messaging,Android,Multithreading,Asynchronous,Callback,Google Cloud Messaging,我想知道是否有人能简要介绍一下如何让我的主要活动与通过GcmListenerService启动的异步线程通信。这就是我正在做的 GcmListenerService侦听GCM消息 当收到消息时,会发出一个异步REST请求,最终下载一个文件 缺少部分:下载文件时,主要活动需要知道,以便处理新文件 我应该 在我的主活动中创建对我的GcmListenerService的静态引用,并在那里启动它(在它通过AndroidManifest启动时) 在我的REST下载类中创建一个回调,并让GcmList

我想知道是否有人能简要介绍一下如何让我的主要活动与通过GcmListenerService启动的异步线程通信。这就是我正在做的

  • GcmListenerService侦听GCM消息
  • 当收到消息时,会发出一个异步REST请求,最终下载一个文件
  • 缺少部分:下载文件时,主要活动需要知道,以便处理新文件
我应该

  • 在我的主活动中创建对我的GcmListenerService的静态引用,并在那里启动它(在它通过AndroidManifest启动时)
  • 在我的REST下载类中创建一个回调,并让GcmListenerService实现它
  • 在我的GcmListenerService中创建回调并在我的主活动中实现它

这是不正确的。一定有更好的方法吗?

尝试使用EventBus,它可以简化您需要的通信。

3d版对我来说似乎不错。一些流行的LIB,如强制您为downloadFinished event.com实现回调,应该更清楚一点。我的看法是,为了达到预期的结果,我需要完成这三点。我需要下载请求结果级联下来。REST类->GcmListenerService->主要活动谢谢Alexey!现在我觉得我在作弊。这太简单了!自由党做了一件好事。