java 极光推送对接流程
后台创建订单,前台手机app得到消息推送
后台服务器调用极光接口->极光服务器->用户app。
极光推送安装sdkapi
uniappJYJPush极光推送插件
自定义基座制作方法、常见问题等
极光官网注册并创建应用获得Appkey,这里太简单了不细说。提一点可能会有问题的就是填写的app包名在这里获取
uniapp插件下载地址
选择插件
hbuilder中-app 原生插件配置 ——选择云端插件——选择下载的极光插件
配置参数
App原生插件配置——云端插件——android_appkey
App原生插件配置——云端插件——android_channel
android_appkey
填写极光你创建的应用的Appkey
android_channel
渠道名称只是测试,填个android就行,自己有需求再自行替换。
复制一段话
解释一下:平时我们测试,链接手机直接运行,他会在手机上安装一个APP,这个时候可以直接打开调试,这个被称为标准基座;标准基座包含了uniapp基础的一些框架内部的东西,但是如果我们要调试第三方的插件SDK,就需要自定义基座;
简单来说,自定义基座就是标准基座 + 第三方的插件SDK组成,执照方法如下:(截图用的是Mac电脑演示,Windows也类似哈)
作者:JiYis
链接:https://www.jianshu.com/p/fb2ac886901b
来源:简书
选择制作自定义基座
确保下面点击了“打自定义调试基座”,然后打包即可
运行——运行到手机——运行基座选择——选择打的自定义基座。然后和普通调试一样,再运行到手机即可。
1 初始化极光推出和设置别名(alias)初始化为必须的步骤。只用初始化一次,建议在app.vue的onLaunch中执行
initJyJPush() {
jyJPush.android_init(res => {
//初始化成功成功之后再设置别名
//官网的话:init后直接set操作有极大可能导致失败,可能会在回调里拿到6022,6002等,测试的时候可以做个7、8秒的延时,正式业务里一般配合用户注册使用,延时基本上够用
//实际上:我设置成10s才管用
setTimeout(()=>{
console.log('setAlias');
this.setAlias()
},1000*10)//20秒后再设置别名
console.log('init push res', res);
uni.showToast({
icon: 'none',
title: JSON.stringify(res)
})
})
},
//设置别名
setAlias(){
jyJPush.setJYJPushAlias(
{userAlias: 'testAlias22'},
result => {
console.log('setJYJPushAlias',JSON.stringify(result));
uni.showToast({
icon: 'none',
title: JSON.stringify(result)
})
});
},
初始化成功
返回的是 {“errorCode”:“0”,“msg”:“调用完成”}
设置别名成功
返回的是{“seq”:0,“iResCode”:0,“errorCode”:0,“alias”:“testAlias22”}
错误返回
可能是6002,代表你重复调用,或者调用过快。虽然我按照官网说的六七秒延时,但是还是不行,直到设置成十秒才能成功。你可以设置时间长点
2 监听消息推送事件 监听推送点击事件
//监听消息推送事件
watchPush() {
jyJPush.addJYJPushReceiveNotificationListener(result => {
// 监听成功后,若收到推送,会在result返回对应的数据;数据格式保持极光返回的安卓/iOS数据一致
console.log(' watchPush result', result);
uni.showToast({
icon: 'none',
title: JSON.stringify(result)
})
});
},
//监听推送点击事件
watchPushClick() {
jyJPush.addJYJPushReceiveOpenNotificationListener(result => {
// 监听成功后,若点击推送消息,会触发result;数据格式保持极光返回的安卓/iOS数据一致
console.log(' ClickPush result', result);
uni.showToast({
icon: 'none',
title: JSON.stringify(result)
})
});
}
去官网 创建推送 ,平台
选择安卓,标题
内容随意,目标
选择设备别名,内容填写上面代码设置别名里面设置的内容,比如上面我设置的是testAlias22,
注意
广播
推送的每天只能十次别名
推送也只能十次,换个别名就好了
点击发送预览 能看到这里预估人数是1 如果不是1那就代表上面代码没成功
然后手机就能收到通知了
如果发送成功但是手机没显示,手机设置下通知权限即可
推送记录也你能看到