我需要对Intent服务进行一些改进,但是在搜索中我找到了resultReceiver,并且看起来不错且易于实现,但是我看到的示例通过了接收器抛出的意图,但是无法通过,因为我的Intente服务已激活由BroadcastReceiver。这样,当用户输入一些活动时,我就会获得intentService的进度。
这是我所看到的例子: https://www.journaldev.com/20743/android-intentservice-resultreceiver
show ProgressBar or Dialog from an IntentService for download progress
答案 0 :(得分:0)
如果您已经启动IntentService且未通过此调用传递ResultReceiver,则在IntentService将执行您的 onHandleIntent()时无法传递它。在这种情况下,您可以创建自己的服务,该服务将具有类似 onHandleIntent()的内容,该内容将在HandlerThread上执行(IntentService在后台具有相同的功能)。因此,通过简单的服务,您可以在 onStartCommand()中接收ResultReceiver,并通过在 onHandleIntent()
中检查ResultReceiver的实例来对UI进行一些回调。