#创作者激励#消息通知之系统层事件发布相关流程 原创 精华
软通动力HOS
发布于 2023-3-6 14:40
浏览
7收藏
【本文正在参加2023年第一期优质创作者激励计划】
前言
Openharmony 3.1Release中存在消息通知的处理,消息通知包括系统层事件发布、消息订阅、消息投递与处理,为了开发者能够熟悉消息的处理流程,本篇文章主要介绍系统层事件发布的相关流程。
整体流程
代码流程
发布消息
CommonEventManager函数处理,调用PublishCommonEvent
调用PublishCommonEventAsUser
调用CommonEvent的PublishCommonEventAsUser
CommonEventProxy调用PublishCommonEvent向服务端发送CES_PUBLISH_COMMON_EVENT消息
服务端接收CES_PUBLISH_COMMON_EVENT消息
调用服务端PublishCommonEvent函数
PublishCommonEventDetailed绑定PublishCommonEvent,然后进行事件投递
在事件投递中调用处理InnerCommonEventManager::PublishCommonEvent
默认IsOrdered是false,参数不配置调用ProcessUnorderedEvent
无序事件处理,投递事件在hander中调用NotifyUnorderedEvent
NotifyUnorderedEvent调用NotifyEvent
在EventReceiveProxy::NotifyEvent函数中发送消息CES_NOTIFY_COMMON_EVENT
服务端接收消息调用服务端NotifyEvent函数
服务端NotifyEvent函数,调用OnReceiveEvent
从上面我们就梳理整个系统层事件发布流程,希望对大家有所帮助。
©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
赞
9
收藏 7
回复
9
7
7
相关推荐
就干货满满!!
大佬图片的字有点看不清,能把高清图片放附件吗
流程图来了
感谢,必须点赞
流程描述的很清晰
学习下代码
有带注释讲解的版本吗