配置华为厂商信息,app退出,测试消息推送,命令提示符执行 adb logcat | findstr "Assist_"
- 发布:2020-12-03 10:36
- 更新:2020-12-08 15:15
- 阅读:2298
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: windows10
HBuilderX类型: 正式
HBuilderX版本号: 2.9.11
手机系统: Android
手机系统版本号: Android 10
手机厂商: 华为
手机机型: p30
页面类型: vue
打包方式: 云端
项目创建方式: HBuilderX
操作步骤:
预期结果:
可以实现华为离线推送
可以实现华为离线推送
实际结果:
不能离线推送
不能离线推送
bug描述:
华为厂商离线推送推送不了,查日志信息是get hms token resultCode = 907135000,直接使用华为的sdk进行推送可以离线推送
请参考插件https://ext.dcloud.net.cn/plugin?id=1680 该插件包含前后端写法,前后端用的都是js可以参考。
更建议您使用unicloud,那样的话改个config配置就能直接使用了。含:离线厂家推送、消息中心UI、已读未读处理、本地&同步远程的角标处理、支持苹果、小米、华为和部分oppo手机的厂家离线推送角标设置。
5***@qq.com (作者)
NotificationTemplate template = new NotificationTemplate();
// 设置APPID与APPKEY
template.setAppId(APPID);
template.setAppkey(APPKEY);
// 设置展示样式
Style0 style = new Style0();
// 设置通知栏标题与内容
style.setTitle(title);
style.setText(message);
// 配置通知栏图标
style.setLogo("push.png"); // 配置通知栏图标,需要在客户端开发时嵌入,默认为push.png
// 配置通知栏网络图标
style.setLogoUrl("");
// 设置通知是否响铃,震动,或者可清除
style.setRing(true);
style.setVibrate(true);
style.setClearable(true);
style.setChannel("sdyy_notice");
style.setChannelName("神东应用通知");
style.setChannelLevel(4); // 设置通知渠道重要性
template.setStyle(style);
template.setTransmissionType(1); // 透传消息设置,收到消息是否立即启动应用:
template.setNotifyid(123); // 在消息推送的时候设置notifyid。如果需要覆盖此条消息,则下次使用相同的notifyid发一条新的消息。客户端sdk会根据notifyid进行覆盖。
TransmissionTemplate template = new TransmissionTemplate();
template.setAppId(APPID);
template.setAppkey(APPKEY);
template.setTransmissionContent("{\"dbid\":32}");
template.setTransmissionType(2);
Notify notify = new Notify();
notify.setTitle("设备日检待办");
notify.setContent("您有2020年12月8日检修任务未完成");
notify.setIntent("intent:#Intent;action=android.intent.action.oppopush;launchFlags=0x14000000;component=uni.UNIEAA3A1C/io.dcloud.PandoraEntry;S.UP-OL-SU=true;S.title=设备日检待办;S.content=您有2020年12月8日检修任务未完成;S.payload=test;end");
notify.setType(Type._intent);
template.set3rdNotifyInfo(notify);//设置第三方通知
以上两种方式推送的消息都被列为了营销消息,通过uni-push平台推送的消息也是一样的
5***@qq.com (作者)
这个问题好了,应该是存在一个生效时间的问题,后来自然就好了,现在遇到了另一个问题,推送到华为手机的通知被列为了营销消息,默认是静默通知的设置,不能响铃和震动提醒,用华为平台推送的信息就是正常的通知信息,个推通道下去的消息就华为识别为营销消息了
2020-12-08 14:24
DCloud_uniCloud_JSON
回复 5***@qq.com:补充下截图我看看
2020-12-08 14:25
5***@qq.com (作者)
回复 DCloud_uniCloud_JSON: 截图和代码都上去了
2020-12-08 15:11
5***@qq.com (作者)
回复 DCloud_uniCloud_JSON: 这种情况就是消息能到,但是必须下拉出消息列表里面才会出现推送的消息,没有提醒
2020-12-08 15:13
5***@qq.com (作者)
回复 DCloud_uniCloud_JSON: 有这样一段内容:华为手机系统从EMUI 10.0开始新增了三个通知渠道(服务提醒,普通通知与营销通知)来实现不同级别(重要与一般)的通知消息展示。我们也支持应用自定义通知渠道,如何创建自定义渠道安卓官方文档已有非常详细的描述,这里不再赘述。应用想在自定义渠道上展示消息,只需要通过服务端消息请求报文中“message.android.notification.channel_id”字段设置为要使用的渠道标识即可。消息最终能否展示在应用渠道上,受用户终端上该渠道是否创建以及渠道的开关策略控制。
请问uni-push有自定义推送渠道吗?如果有,ID和名称是什么?
2020-12-08 16:30
DCloud_uniCloud_JSON
回复 5***@qq.com: 华为官网更新?我加你qq跟踪一下本话题
2020-12-08 16:43