一、 注册极光账号
此处不多说了,需要什么按照极光官网注册就好了。
二、 安装和配置uniapp极光官方插件
去插件市场: DCloud插件市场找到JPush官方sdk和JCore官方sdk导入项目
在导入插件之前一定要先在极光官网注册应用,在导入插件时需要
三、 打开项目中manifest.json导入插件到项目
在上图相应位置填入在极光中注册的appid
如下图勾选push模块(⚠️注意不要勾选里边的选项)
四、uniapp中开发代码
app.vue中示例代码(官方示例及api)
// #ifdef APP-PLUS
// 极光消息推送
const jpushModule = uni.requireNativePlugin('JG-JPush');
jpushModule.initJPushService();
jpushModule.setLoggerEnable(false);
// 监听是否连接成功
jpushModule.addConnectEventListener(result => {
let connectEnable = result.connectEnable;
// 触发在login.vue 中对连接状态的监听
uni.$emit('connectStatusChange', 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') {
// 点击推送消息的逻辑
console.log("通知已被打开")
// 立即清除本地角标
plus.runtime.setBadgeNumber(0);
jpushModule.setBadge(0);
}
});
// 立即清除本地角标
plus.runtime.setBadgeNumber(0);
jpushModule.setBadge(0);
// #endif
在login.vue(或需要位置设置别名或者标签)
// #ifdef APP-PLUS
// 自定义别名
jpushModule.setAlias({
'alias': 'myAlias',
'sequence': 1
})
// #endif
这里只是简单接入, 更复杂的处理或者想了解更多的api可以看一下官网文档
五、真机调试(需要制作自定义调试基座)
安卓设置
苹果设置
六、推送测试(利用极光官网后台直接推送)
测试机能收到推送就接入成功了~