前言

2023年8月4日,华为在“2023华为开发者大会”上发布了HarmonyOS NEXT。HarmonyOS NEXT是华为公司自研操作系统,鸿蒙系统将抛弃Linux内核及安卓开源AOSP源码,仅支持鸿蒙自研内核和鸿蒙平台的应用,不再兼容安卓应用。为全面支持国产自研鸿蒙平台,极光消息推送服务快速的也接入了鸿蒙生态,并在鸿蒙平台重新实现极光消息推送服务。


极光鸿蒙平台框架

极光消息推送服务,主要由极光SDK、极光消息后台服务、极光portal页面几个模块组成。

在接入鸿蒙平台的过程中,极光消息推送服务主要做了以下几块适配工作:


1.       基于鸿蒙next开发语言ArkTS开发全新的应用SDK

2.       基于消息推送服务端API新增鸿蒙平台增加全链路平台支持,包括API鸿蒙新平台参数支持,DB存储鸿蒙相关必要业务字段,鸿蒙用户目标筛选,鸿蒙平台消息统计等

3.       基于华为鸿蒙的推送消息厂商API,适配全新鸿蒙消息通道

4.       基于极光消息web portal页面控制台的鸿蒙新平台支持


其中,极光消息后台服务端支持鸿蒙平台是整体的关键点所在。在极光原有平台框架基础上,增加了鸿蒙完整的消息链路:

鸿蒙平台Web Portal的使用

web portal是极光消息服务的控制台,改造后,也对鸿蒙平台做了全面的支持。

以下是极光web portal页面控制,针对鸿蒙平台新增部分相关示例:


●     鸿蒙平台推送设置

●     鸿蒙平台消息推送管理

●     鸿蒙平台消息推送统计

鸿蒙平台SDK的接入

●     鸿蒙SDK概述

众所周知,鸿蒙平台的应用基于全新的ArkTS语言开发。因此,极光也基于该语言开发了鸿蒙平台SDK,当前极光鸿蒙SDK支持HarmonyOS API 11及以上版本。


●     鸿蒙SDK主要功能

类似极光Android、IOS等平台SDK,极光鸿蒙SDK同样主要提供了以下功能:

1.       保持与服务器的长连接,以便消息能够即时推送到达客户端

2.       接收通知,并向开发者 App 传送指定消息


●     鸿蒙SDK接入适配

鸿蒙SDK接入API主要涉及以下几类:

SDK API

说明

设置调试模式API

setDebug

●     可选接口

●     初始化前,AbilityStage(#onCreate) 里调用

配置极光Appkey

setAppKey

●     初始化前,AbilityStage(#onCreate) 里调用

开启推送业务功能API

init

●     启动时调用,AbilityStage(#onCreate) 里调用

获取 RegistrationID

getRegistrationId

●     反回注册的rid

设置回调接口

setCallBackMsg

●     监听回调事件和数据

●     初始化前,AbilityStage(#onCreate) 里调用

●     详细回调接口,可参考极光官网SDK API

通知跳转

setClickWant

●     请先setAppKey,否则调用无效

标签与别名API

addTags/deleteTags/setTags等

●     详细接口使用,可参考极光官网SDK API

鸿蒙SDK可在极光官网进行下载,并参考API使用说明,鸿蒙厂商参数配置等接入指南。

另,对于ArkTS和HarmonyOS的编程特性和使用,请参考华为官网。

鸿蒙平台服务端API的使用

对接鸿蒙平台消息推送业务,后台服务端基本继承极光原有rest api体系。极光遵循以客户开发者为本,对与新平台支持的目标是,以期在客户改动最少的情况下,最大程度兼容原有服务。


●     推送API

在推送API参数中,涉及鸿蒙相关的字段主要为platform推送平台和notification通知

platform:

notification:

通知字段主要描述推送实体内容对象,会作为“通知”推送到客户端。以下是鸿蒙平台API推送消息涉及的相关字段:

关键字

类型

选项

含义

说明

alert

string

必填

通知内容

●     这里指定后会覆盖上级统一指定的 alert 信息。

●     内容可以为空字符串,表示不展示到通知栏。

title

string

可选

通知标题

●     如果指定了,则通知里原来展示 App 名称的地方,将展示 title。否则使用WebPortal配置的默认title。

category

string

必填

通知栏消息分类条目

●     此字段由于厂商为必填字段,效果也完全依赖 rom 厂商对 category 的处理策略,请开发者务必填写。极光内部对此字段实际未进行必填校验,请开发者按照必填处理。

●     此字段值对应官方「本地通知」category取值,开发者通过极光服务发起推送时如果传递了此字段值,请务必按照官方要求传递,官方category分类取值规则也可参考

large_icon

string

可选

通知栏大图标

●     要求传递网络地址,使用HTTPS协议,取值样例:https://example.com/image.png

●     图标大小不超过 30 k,图片长*宽<12800像素

intent

JSON Object

可选

指定跳转页面

支持跳转到 deeplink 地址和应用首页两种类型:

1. 跳转应用首页:固定 action.system.home

2. 跳转到 deeplink 地址: scheme://test?key1=val1&key2=val2

badge_add_num

int

可选

设置角标数字累加值

●     此字段如果不填,表示不改变角标数字

●     取值范围为:1-99,若设置了取值范围内的数字,下一条通知栏消息配置的 badge_add_num 数据会和原角标数量进行相加,建议取值为 1
举例:badge_add_num 取值为 1,原角标数为 2,发送此角标消息后,应用角标数显示为 3

test_message

boolean

可选

测试消息标识

测试消息标识:

●     false:正常消息(默认值)

●     true:测试消息

receipt_id

string

可选

华为回执 ID

输入一个唯一的回执 ID 指定本次下行消息的回执地址及配置,该回执 ID 可以在极光鸿蒙回执参数配置中查看

extras

JSON Object

可选

扩展字段

●     这里自定义 JSON 格式的 Key / Value 信息,以供业务使用

●     统计API/标签别名API,基本兼容极光原有API,详细使用可参考极光官网。


总结

限于篇幅原因,本文简单介绍了极光消息推送服务接入鸿蒙平台的相关事项,当然也无法覆盖极光消息服务鸿蒙平台使用的方方面面。同时,也因HarmonyOS正式版本暂未发布。极光消息服务会对HarmonyOS的发布、更新、迭代保持密切关注,在正式版本及新特性公布的第一时间进行迭代,以期尽力服务好极光的每一个客户。

谢谢大家对极光消息服务的关注。

鸿蒙接入参考资料

极光鸿蒙SDK集成指南:https://docs.jiguang.cn/jpush/client/HarmonyOS/hmos_guide

极光鸿蒙服务端API使用:https://docs.jiguang.cn/jpush/server/push/server_overview

鸿蒙开发者官网指南:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V2/1_1_u5feb_u901f_u5165_u95e8-0000001478340845-V2

0Comments
0/140
发送

Sign up now to receive the newcomer gift

Sign up for free

您的浏览器版本过低

为了您在极光官网获得最佳的访问体验,建议您升级最新的浏览器。