当前位置: 首页 > 面试题库 >

即使应用未运行,也要处理onMessageReceived()和onTokenRefresh()

夏谦
2023-03-14
问题内容

我有一个具有2个服务的应用程序:

MessagingService extends FirebaseMessagingService

InstanceIDService extends FirebaseInstanceIdService

AndroidManifest.xml文件中有声明。问题是,当我的应用程序进程被迫自行关闭时,服务也会被杀死。

我希望他们不要被杀死。我听说过该类的START_STICKY标志Service,但是无法覆盖onStartCommand()这些服务中的方法以返回此标志…


问题答案:

为了回答评论,我没有找到解决问题的任何“方法”,因为这不是 问题 。如果用户想要关闭我的应用程序,则他有权。

由于我的onMessageReceived()方法属于MessagingService我的应用程序,因此如果用户强行关闭该应用程序,则该应用
程序和该服务均不会重启

正如曾伟诗在评论中所说,“设置强制关闭”会停止我的应用程序(包括服务)的所有操作,因此Google
Play服务会收到通知,但我的应用程序不在这里。然后onMessageReceived()不执行该方法。但是,服务不会通过“滑动关闭”关闭。

最终,我不想找到任何解决方法,因为这会与用户的选择相矛盾。



 类似资料:
  • 问题内容: 对Swift来说还是很新的。我来自Android背景,那里有BroadcastReceiver,即使该应用未运行,它也可以将位置信息传递给服务。 所以我在iOS / Swift中寻找类似的东西,看来以前不可能,但现在可能会。我正在为iOS 10开发,但是如果它向后兼容,那就太好了。 我发现 我可以执行此操作以开始提供位置更新,尽管这会引起一些问题。一旦我打电话给我并且我的应用程序没有运

  • 我试图理解声明合并的行为。我创建了一个声明文件,它重新声明了模块的一个函数接口。npm模块“模式验证器”带有自己的类型。 我仅将此模块用作示例来演示行为。这个问题与schemavalidator模块无关。 我注意到,即使我没有导入声明文件,typescript仍然使用它。 我试图做的是,仅当我使用import语句导入自定义声明文件时才使用它。 这是我的2个文件 首先是我的自定义声明文件。在这里,我

  • 问题内容: 我有一个表单,它通过:remote => true通过AJAX提交表单。查看服务器日志和FireBug,我得到响应200 OK,它以以下形式返回JSON: 然后我有以下两个处理程序: 即使我退回200OK,也会触发错误处理程序。我唯一使成功处理程序起作用的方法是,我发送了标头中带有200的空响应。 我不知道为什么这不起作用:-S 编辑1 ------------完成这些更改后: 我仍然

  • Firebase服务器发送通知,我收到了,但我的MyFirebaseMessagingService的onMessageReceived没有被调用。 这是MyFirebaseMessagingService: 我正在使用这个版本的firebase: 实现“com.google.firebase:firebase消息传递:12.0.1” 我在我的AndroidManifest中声明了我的Fireba

  • 建筑格拉德尔 注释 加工机 \资源\META-INF\javax.annotation.processing.处理器 注释消费者 建筑格拉德尔 这应该是一个非常简单的注释处理器,只是打印调试语句。对我来说,这一切似乎都是正确的,但是在我构建/运行项目2时没有运行。我也尝试过覆盖和。那没有做任何事情。也尝试过没有,那也没有改变任何事情。 编辑:为什么我可以获得

  • 我一直在使用Phonegap开发一个Android应用程序,现在我想让它在应用程序关闭时仍然可以在应用程序中执行java/js代码。所以我知道我需要创建一个服务。如果我在phonegap上创建服务插件,我还能执行javascript代码还是只执行java? 有人做过这样的事情吗?我发现了这个讨论,但似乎没有用:http://groups.google.com/group/phonegap/brow