【问题标题】:Identify Flutter App has been open by clicking on the App Icon通过点击 App Icon 识别 Flutter App 已打开
【发布时间】:2019-05-20 19:21:54
【问题描述】:

flutter 中是否有任何方法可以通过单击应用图标通过推送通知或深度链接等其他选项来识别应用是否已打开。

如果有办法通过点击应用图标来识别应用是否已打开,我可以处理其他情况。

我尝试使用WidgetsBindingObserver,但它能给我的只是应用程序的状态我可能以某种方式遗漏了一些明显的部分!

注意——我没有使用 Firebase 消息传递。

【问题讨论】:

  • 您的应用也可以通过通知或其他方式打开吗?
  • 抱歉不清楚。例如 - 取 2 个案例。 1. 点击应用图标 2. 点击推送通知。如何区分这两种不同的操作?
  • 好的,你是如何使用原生通知或使用任何颤振包打开应用程序的?
  • 我已经编写了自己的插件来使用 Pubnub PN。目前在涉及 PN 时从 Native 打开应用程序。但不知何故,我想把所有的事情都带到这里。我的想法和 FCM 插件差不多,只是使用了 Pubnub 的 SDK。
  • 我知道我可以在 Native 端处理这个问题,但如果我能在 Flutter 端做到这一点,那对我来说将是一个好处。

标签: android ios flutter


【解决方案1】:

对于Flutter通过firebase推送通知,可以使用如下回调来检查应用是否通过推送通知打开

onMessage:如果应用程序当前正在运行(前台),它将返回一个远程消息流

onMessageOpenedApp:当应用程序处于后台模式并且用户使用推送通知打开它时,它将再次向您返回远程消息流 注意:如果应用程序被终止或没有运行,则使用以下方法将不起作用

FirebaseMessaging.instance.getInitialMessage():如果应用程序在终止状态时通过推送通知打开,它将起作用,返回远程消息而不是消息流

希望这会有所帮助

谢谢

【讨论】:

    猜你喜欢
    • 2020-04-06
    • 2020-03-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-03
    • 1970-01-01
    • 2011-09-17
    相关资源
    最近更新 更多