[发明专利]一种在Flutter中消息传递的方法在审
| 申请号: | 202111311928.8 | 申请日: | 2021-11-08 | 
| 公开(公告)号: | CN114116257A | 公开(公告)日: | 2022-03-01 | 
| 发明(设计)人: | 单文政;马仕信;孙彪 | 申请(专利权)人: | 浪潮软件股份有限公司 | 
| 主分类号: | G06F9/54 | 分类号: | G06F9/54 | 
| 代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 陈婷婷 | 
| 地址: | 271000 山东省*** | 国省代码: | 山东;37 | 
| 权利要求书: | 查看更多 | 说明书: | 查看更多 | 
| 摘要: | |||
| 搜索关键词: | 一种 flutter 消息 传递 方法 | ||
本发明公开了一种在Flutter中消息传递的方法,属于计算机应用技术领域,该方法在运行时,动态的创建通知中心,用于接收所有接受者的订阅处理和所有通知者的传入信息与数据;在指定代码位置将接受者注册给通知中心;所述通知中心包含通知类别指定,通知接受者记录与存储,以及通知消息的接受与分发;通知中心按照特定的通知类型来进行消息的存储,特定的消息类型将所有消息进行分类存储,在发送方和接收方都可以按照此类别进行快速索引操作。本发明能够提升Flutter在页面间传递消息的速率,从而提升app的运行效能。面向专业技术人员使用,可以通过该技术在Flutter开发环境下,提升消息、数据的传递效率。
技术领域
本发明涉及计算机应用技术领域,具体地说是一种在Flutter中消息传递的方法。
背景技术
在使用Flutter进行跨平台开发时,我们在进行消息、数据跨页面传递时,总会用到Inherited Widget和Notification,而这两种技术是通过父子Widget的引用关系进行查找与数据传递的,前者是自上向下的消息传递(父Widget将消息、数据传递给子Widget或者是隔代传输);后者是自下向上的消息传递(子Widget将消息、数据传递给父Widget或者是隔代传输)。这两类消息传递方式都是通过父子Widget的相互引用关系来进行数据的传递,效率低、耦合高,同时API使用复杂,易用性差。
发明内容
本发明的技术任务是针对以上不足之处,提供一种在Flutter中消息传递的方法,能够提升Flutter在页面间传递消息的速率,从而提升app的运行效能。
本发明解决其技术问题所采用的技术方案是:
一种在Flutter中消息传递的方法,在运行时,动态的创建通知中心,用于接收所有接受者的订阅处理和所有通知者的传入信息与数据;在指定代码位置将接受者注册给通知中心;
所述通知中心包含通知类别指定,通知接受者记录与存储,以及通知消息的接受与分发;
通知中心按照特定的通知类型来进行消息的存储,特定的消息类型将所有消息进行分类存储,在发送方和接收方都可以按照此类别进行快速索引操作。
本方法提出了一个程序能力库,通过该能力库我们可以在提升Flutter在页面间传递消息的速率,从而提升app的运行效能。在运行时,通过构造消息转发中心,将指定类别的消息发送、传递给指定接受者。同时将指定类别的消息进行分类,使同类别的接受者可以接收到特定类别的数据,达到1:N的消息传递效果。
进一步的,在App开启时,所有业务代码初始化之前,创建所述的通知中心。
优选的,在需要接收数据的代码实例中,通过通知中心注册一个消息接受者,实例提供自己的hash值、通知类别与被执行函数的SEL;通知中心接收后,将实例的hash值与通知类别作为key存储到Hash Table中用来存储记录,value则是此类别的通知需要被执行的函数。
进一步的,所述SEL为选择子或某个需要执行的方法的引用。
优选的,在需要发送消息、传递数据的点,创建通知中心单例,同时调用其发送特定通知的方法。
进一步的,通过通知中心创建一条消息发送给所有订阅过此类通知的接受者;
通知中心接收到一条来自指定需要发送给订阅过此类通知的接受者的消息时,从Hash Table中取出此类消息的所有接收者,然后再通过接受者hash值和SEL进行校验,是否需要对其进行发送消息、数据(SEL描述的方法是否可以被执行)。
优选的,由于在指定代码段中注册了接受者信息(通常为当前实例本身),而注册接受者(通知中心)又是一个单例模式,所以此实例会被永久持有,所以在当前实例需要销毁时(StatefulWidget一般放到dispose方法体中)手动释放自身被通知中心持有的引用。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮软件股份有限公司,未经浪潮软件股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111311928.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种产科助产护理辅助设备
- 下一篇:一种检测且便于开启的消防栓





