当应用程序未打开时,可以在 Firebase 消息服务中完成哪些任务?

Posted

技术标签:

【中文标题】当应用程序未打开时,可以在 Firebase 消息服务中完成哪些任务?【英文标题】:What tasks can be done inside a firebase message service when app is not open? 【发布时间】:2018-12-27 12:34:03 【问题描述】:

我正在尝试读取 Firebase 消息服务的 OnMessageRecevied 方法中的共享首选项文件。

不幸的是,我无法找到执行此操作的方法,因为当应用程序服务在后台运行时,我没有上下文对象。 :(

对此有什么解决方法吗?

所以我想在后台执行某些任务时,我们可以做的事情有一些限制......

所以我想知道在收到 firebase 消息后我们可以执行的任务或操作(东西)的范围。

【问题讨论】:

FirebaseMessagingService 派生自Service,Service 派生自Context。您可以从onMessageReceived() 拨打getSharedPreferences() 哦,我明白了,我后来才意识到。谢谢你 。如果你写一个答案,我会标记那个答案。 【参考方案1】:

FirebaseMessagingService派生自Service,Service派生自Context。您可以在onMessageReceived()中拨打getSharedPreferences()

【讨论】:

【参考方案2】:

您可以在 FirebaseMesaagingService

中使用以下代码
SharedPreferences sp = this.getSharedPreferences("SP", Context.MODE_PRIVATE);
                    SharedPreferences.Editor editor = sp.edit();
                    editor.putBoolean("download", true);
                    editor.apply();

【讨论】:

以上是关于当应用程序未打开时,可以在 Firebase 消息服务中完成哪些任务?的主要内容,如果未能解决你的问题,请参考以下文章

是否可以在 PWA 未打开时使用服务人员跟踪地理位置

应用程序被杀死/关闭/未打开时的 IOS 推送通知操作

一旦来自附近位置的新数据进入relatime数据库,如何发送通知(当应用程序未打开时)?

Flutter Firebase 消息传递 - 应用打开时未显示推送通知

MS Access 未打开时 DMax 功能不起作用

Chrome 通知 - 即使在网站未打开时也能神奇推送