FirebaseMessagingService是否默认在后台运

FirebaseMessagingService是否默认在后台运

本文介绍了FirebaseMessagingService是否默认在后台运行?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

FirebaseMessagingService是否在后台运行,类似于IntentService的运行方式?

Does the FirebaseMessagingService run in the background similar to how an IntentService operates?

我看到FirebaseMessagingService扩展区Service不在后台运行,但是我想确定是否应该异步或同步地在FirebaseMessagingService内部进行任何工作.

I see that FirebaseMessagingService extents Service which does not run in the background, but I'd like to be sure whether or not I should be doing any work inside the FirebaseMessagingService asynchronously or synchronously.

谢谢

推荐答案

FirebaseMessagingService的方法onMessageReceived(RemoteMessage message)被称为在后台"(不在UI/Main线程上).如果尝试在onMessageReceived(RemoteMessage message)内部执行异步工作,则会收到一条错误消息:

FirebaseMessagingService's method onMessageReceived(RemoteMessage message) is called "in the background" (not on the UI/Main thread). If you try do asynchronous work inside onMessageReceived(RemoteMessage message) you will receive an error saying:

因此,在onMessageReceived(RemoteMessage message)中完成的所有工作都应同步完成,因为它在其自己的后台工作线程中.

So all work that is done within onMessageReceived(RemoteMessage message) should be done synchronously because it's in its own background worker thread.

这篇关于FirebaseMessagingService是否默认在后台运行?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-23 22:17