当前位置: 首页 > 知识库问答 >
问题:

FCM launcher活动并非始终打开

崔绍辉
2023-03-14

我在Android上使用Firebase云消息,遇到了以下问题。当处理应用程序在后台时收到的通知时发生。文件说明如下:

我正在测试的通知是一个显示消息通知(不是数据通知),它也有一个有效负载。

{
    "to": "d-3qyvyqefU:APA91bG_nHNYeYuKwB3oIvRKStVgSyelTIhX6rtu6LGPAjgo-LGDVk9iFO5LWZ-XFMeeRVkZm0suMyJAnWORWbZlMaVcHmhFTZOKPI_A-D2wYXM0SIIT8pZZ2g4W55S1bz9YD5y625fv",
    "priority": "high",
    "content_available": true,
    "registration_id": "d-3qyvyqefU:APA91bG_nHNYeYuKwB3oIvRKStVgSyelTIhX6rtu6LGPAjgo-LGDVk9iFO5LWZ-XFMeeRVkZm0suMyJAnWORWbZlMaVcHmhFTZOKPI_A-D2wYXM0SIIT8pZZ2g4W55S1bz9YD5y625fv",
    "collapse_key": "Collapse Key",
    "data": {
        "type": "default",
        "person": "2123435",
        "token": "asdmmio23j4123azde3"
    },
    "notification": {
        "type": "default",
        "title": "Howdie!",
        "body": "Say hi to your new friend!"
    }
}

共有1个答案

颛孙正谊
2023-03-14

对于所有仍然面临这个问题的人来说,FirebaseMessagingService类中有一个方法公开了一个意图对象。您可以重写它并执行如下操作:

@Override
protected int zzaa(Intent intent) {
   intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
   return super.zzaa(intent);
}

上面的代码应该可以解决这个问题,但是Firebase的人员很可能会在将来更改访问修饰符--如果他们还没有的话。我已经在他们的端打开了一张票,并得到了证实,他们可以复制这种行为,并将在某一时刻修复错误。

 类似资料:
  • 问题内容: 我有一个JavaFX应用程序,并且有一个并发任务。在任务运行时,我想将来自updateMessage()的消息附加到TextArea 因为绑定不会将新文本追加到TextArea,所以我使用了ChangeListener 这是可行的,但并非每一项更改都有效。我用System.out.println()检查了一下,并将任务从1计数到300 任务中的这个println()给我我想要的1,2,

  • 我有亲子活动。父活动将自定义状态存储在onSaveInstanceState中(super.onSaveInstanceState是在所有需要的项目打包到bundle中之后调用的),然后在onCread中读取状态,但是出于某种原因,SavedInstanceState总是为空。 以下是父活动的日志事件序列:onPause- 我对这个问题有点不清楚——请告诉我我可能错过了什么。 谢谢

  • 问题内容: 如标题所示,方案是:首次使用该应用程序时,显示屏幕A。完成屏幕A后,该按钮将引导您进入屏幕B。从现在开始,直到永远,屏幕B始终是主屏幕“启动应用程序时,屏幕上显示“屏幕(活动?)”。我正在尝试这2天,但我收不到。有人请解释一些细节,甚至最好给我扔一个code.rar,这样我就可以研究它。我为此感到疯狂!!! 问题答案: 只需在AndroidManifest.xml中将您的Activit

  • 我正在构建一个反向代理服务器,它将授权http请求并将其传递给一些内部API。 我根据DB中的条目授权传入请求。 这个项目中的性能是优先的——反向代理服务器不应该增加太多响应时间。 简而言之: 我正在使用来查询数据库。我在Spring配置中的init期间打开Hibernate会话: 然后我将会话注入DAO层,并在read方法中使用它: 正如您所看到的,我并不是在每次DAO调用中都关闭/打开会话。我

  • 编辑...然而,我可以愉快地使用Monkey启动。下面的命令工作正常。好像我在adb shell am call中命名活动课的方式有问题,但我找不到。 谁能告诉我这个活动怎么叫?

  • 我是android studio的新手,目前正在创建一个应用程序,它将从SQLite的现有数据库中检索数据。基于我发现的是创建一个布局文件(而不是通过创建新的空活动)来设计如何显示数据。但在布局中,我想要按钮打开新的活动,但不知何故它没有,我没有找到任何解决方案,到目前为止。而影像也没有出现。这是代码: DataPoi.java ListPoiAdapter.java 游乐场.java