首页 文章

收到推送时打开应用程序

提问于
浏览
1

我正在使用Cordova / PhoneGap Ionic2编写Android iOS应用程序,我想在收到推送通知时打开应用程序 .

如果应用程序是后台,我怎么能在收到推送后打开它?我想在没有用户按下按钮的情况下发生这种情况 - 就像Skype在接到来电时所做的那样 .

这是推送通知的当前处理程序:

// Handle received Push
this.push.rx.notification().subscribe((msg) => {
    alert(msg.title + ': ' + msg.text);
});

这样可行,但在用户单击收到的通知之后才会执行警报操作 . 我想自动将用户带入应用程序,然后使用我自己的界面向用户显示收到的通知 .

我查看了How to bring a Cordova Android application to foreground or start and bring to foreground once connected (and turn screen on) programmatically on GCMhttps://github.com/MobileChromeApps/cordova-plugin-background-app - 但是在用户点击调用此插件的通知之前我仍然没有发生任何事件,因此无法使用它 .

1 回答

  • 0

    你需要去原生,即使有几个插件可以处理非常好的GCM / FCM流程,大部分(至少是我信任的那些)没有处理你想要的 .

    在Android中,您可以使用BroadcastReceiver并在此决定是否显示通知,然后决定是否启动App Intent .

    在iOS中,您可以使用 didReceiveRemoteNotification 方法并决定在那里做什么 .

    在这两种情况下,我相信在没有任何用户操作的情况下显示应用程序可能被视为糟糕的UX体验(即使可能) . 例如,对于iOS,他们从未在Guide中为处理应用程序状态转换提及此选项

相关问题