【问题标题】:How can use resultReceiver without startService?如何在没有 startService 的情况下使用 resultReceiver?
【发布时间】:2019-10-04 18:24:08
【问题描述】:
【问题讨论】:
标签:
android
android-service
intentservice
android-service-binding
【解决方案1】:
如果您已经启动了 IntentService 并且没有通过此调用传递 ResultReceiver,则无法传递它,而 IntentService 将执行您的 onHandleIntent()。在这种情况下,您可以创建自己的服务,该服务将具有类似 onHandleIntent() 的内容,将在 HandlerThread 上执行(IntentService 在引擎盖下做同样的事情)。因此,通过一个简单的服务,您可以在 onStartCommand() 中接收您的 ResultReceiver,并通过在 onHandleIntent() 中检查 ResultReceiver 的实例来对您的 UI 进行回调