App.vue 中
//#ifdef APP-PLUS
var jpushModule = uni.requireNativePlugin("JG-JPush");
//#endif
export default {
onLaunch: function() {
// 极光推送
//#ifdef APP-PLUS
jpushModule.setLoggerEnable(true);
jpushModule.initJPushService()
jpushModule.addConnectEventListener(result => {
let connectEnable = result.connectEnable
console.log("jpush连接", connectEnable)
})
jpushModule.addNotificationListener(result => {
let notificationEventType = result.notificationEventType
let messageID = result.messageID
let title = result.title
let content = result.content
let extras = result.extras
console.log("通知", result)
if (notificationEventType == "notificationOpened") {
// 点击窗口通知栏推送的消息 跳转指定页面
// this.$toPage('/pages/index/message')
setTimeout(function(){
uni.navigateTo({
url:'/pages/index/message'
})
},1000)
}
// 10秒执行一次获取register_id 否则有可能初始化还没完成就获取 导致获取不到
setTimeout(() => {
jpushModule.getRegistrationID(result => {
console.log("注册ID", result.registerID)
if (result.registerID) {
uni.setStorageSync("register_id", result.registerID)
}
})
}, 10000);
jpushModule.addCustomMessageListener(result => {
let messageID = result.messageID
let content = result.content
let extras = result.extras
console.log("自定义消息", result)
})
}
}