1.cordova的极光推送插件有三种下载方式
(1)通过 Cordova Plugins 安装,要求 Cordova CLI 5.0+:
cordova plugin add jpush-phonegap-plugin --variable APP_KEY=your_jpush_appkey
(2)直接通过url安装
cordova plugin add https://github.com/jpush/jpush-phonegap-plugin.git --variable APP_KEY=your_jpush_appkey
(3)下载到本地安装
cordova plugin add Your_Plugin_Path --variable APP_KEY=your_jpush_appkey
2.添加ionic,JPush组件
npm install --save @jiguang-ionic/jpush@1.0.2
3.在app.module.ts中加入
import { JPush } from '@jiguang-ionic/jpush';
...providers:[
...
JPush,
...
]
由于项目中使用的是服务器直接请求推送api发送自定义消息,所以我需要在客户端监听是否有推送通知,如果有,就给本机发送一个本地通知。就在检测是否有通知到达这里,一直不能有效的检测到是否有新通知到达,特此备忘。
JPush的监听事件:
我查询到的资料大都是这样的:
极光推送事件:
接收消息触发 jpush.receiveNotification
打开消息触发jpush.openNotification
接收本地消息 jpush.receiveLocalNotification
当时也不太明白什么事自定义消息,以为这些事件都是通用的,然后就开始写代码测试,毫无疑问,一点反应都没有!!!还以为是自己监听的姿势不对,所以站着不行,我坐着听?躺着听?闭上眼睛听?然后我就疯了
知道最后,在一篇文章里我看到了这段代码
//收到自定义消息时触发这个事件
document.addEventListener("jpush.receiveMessage", event => {
let message = this.nativeService.isIos() ? event['content'] : event['message'];
console.log("jpush.receiveMessage" + message);
}, false);
终于能监听到通知了,舒服!文末福利
哈哈,生活永远都是这么的多姿多彩