使用离子关闭应用程序时收到通知

时间:2017-06-21 07:06:51

标签: android ionic2 cordova-plugin-fcm

我将ionic2FCM一起使用。

我在应用运行时收到通知。

我需要在应用运行时收到通知。

我该怎么做?

2 个答案:

答案 0 :(得分:0)

你可以使用 SELECT @StartDate = COALESCE(table3.StartDate, table2.StartDate, table1.StartDate) ,@EndDate = COALESCE(table4.EndDate, table3.EndDate, table2.EndDate) FROM table1 LEFT JOIN table2 LEFT JOIN table3 LEFT JOIN table4 来解决你的需求:这里有一些代码如何在ionic-2中初始化

通过终端

安装OneSignal Cordova插件
One-Signal

重要提示:请确保按照Ionic Native网站上的说明将提供程序导入app.module.ts,例如

ionic cordova plugin add onesignal-cordova-plugin
 npm install --save @ionic-native/onesignal

取自:Ionic-native

现在初始化import {OneSignal} from '@ionic-native/onesignal'; @NgModule({ ... providers: [ ... OneSignal ... ] }) export class AppModule { } 插件。

然后,将以下代码添加到OneSignal,以便它在启动时运行,例如在app.ts方法中运行:

initializeApp()

注意:替换为:

来自OneSignal

来自import {OneSignal} from '@ionic-native/onesignal'; import {Platform} from 'ionic-angular'; constructor(private _OneSignal: OneSignal, private _platform: Platform) { startApp(); } startApp() { this._platform.ready().then(() => { this._OneSignal.startInit(appId, googleProjectId); this._OneSignal.inFocusDisplaying(this._OneSignal.OSInFocusDisplayOption.Notification); this._OneSignal.setSubscription(true); this._OneSignal.handleNotificationReceived().subscribe(() => { // handle received here how you wish. }); this._OneSignal.handleNotificationOpened().subscribe(() => { // handle opened here how you wish. }); this._OneSignal.endInit(); }) }

的googleProjectId

答案 1 :(得分:0)

如果您在应用程序打开时已收到通知,我认为您已经有一台服务器将其发送到(与Firebase云功能一样)以及您已配置为在应用程序中接收的插件。

首先,问题出在IOS上,验证生成的项目(在ionic cordova build之后)是否在XCode中启用了REMOTE PUSH NOTIFICATIONS。在Android中,默认情况下启用。

可能出现问题的另一个问题是您在有效负载中发送的属性以及您用来接收它的插件。要在插件cordova-plugin-firebase中显示通知,它必须包含notification属性titlebody,如下所示:

{ "notification": { "title": 'a title', "body": 'some text' }, "data": { "anydata1": 'data1', "anydata2": 'data2', "etc": 'etc' } }

使用插件phonegap-plugin-push,规则类似。您必须拥有notification属性。这一切都取决于插件。