[发明专利]路由表生成方法、页面跳转方法、装置、设备及介质在审
申请号: | 202310467182.2 | 申请日: | 2023-04-25 |
公开(公告)号: | CN116466955A | 公开(公告)日: | 2023-07-21 |
发明(设计)人: | 张川北;刘昌钰;齐翊;杨赛;周毅;任时迁 | 申请(专利权)人: | 政采云有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F16/955 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 张影 |
地址: | 310000 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 路由 生成 方法 页面 跳转 装置 设备 介质 | ||
本申请公开了一种路由表生成方法、页面跳转方法、装置、设备及介质,涉及计算机技术领域。该方法包括:获取利用Dart编程语言对源代码编译后生成的内核二进制文件并解析确定出初始抽象语法树;按照预设格式对从初始抽象语法树中确定出的目标抽象语法树节点进行改造以创建新抽象语法树节点;将新抽象语法树节点直接写入当前Flutter工程中具有页面跳转能力的依赖包中路由表对应的抽象语法树节点,得到更新抽象语法树并将其重新写入内核二进制文件;根据当前的内核二进制文件生成路由表以便在接收到页面跳转指令后基于路由表进行页面跳转。通过本申请的技术方案可以更快的生成路由表,并且基于此路由表在页面跳转时无需初始化以及调用注册入口。
技术领域
本发明涉及计算机技术领域,特别涉及一种路由表生成方法、页面跳转方法、装置、设备及介质。
背景技术
Flutter是一个由谷歌(Google)开发的开源移动应用软件开发工具包,用于为Android、iOS、Windows、mac操作系统、Linux Desktop、Google Fuchsia开发应用。路由(Route)在移动开发中就是通过互联的网络把信息从源地址传输到目的地址的活动,通常用于页面跳转。Flutter通常通过路由表进行路由管理。现有技术在生成路由表时通常采用在应用程序编译前执行一个脚本程序进行信息的采集,采集完成之后将信息写入路由表。然而,这样的方式存在以下缺点:
1.代码生成慢。路由表中存在用于自动生成路由表的标记,随着标记增多,整个脚本程序执行时间会变得非常多,这样的方式不仅没有提高开发效率,反而成为一种开发阻力。
2.产生无效的提交。随着每次信息采集后都会生成新的模版文件,而新的模版文件都会变成源文件以此生成路由表,对于代码量统计影响巨大,增加了非常多变更文件以及无效代码。
3.不可靠。在采集页面信息的参数的时候不支持默认值,这样会导致生成的代码在真实的页面跳转场景中将null作为参数进行传递,造成程序崩溃。
4.需要初始化和在运行时注册路由表。这样的方案在应用程序启动后,通过调用方法传递指令进行路由参数的传递,从而实现页面跳转。因此对页面关联的存储介质进行初始化以及存储介质的注册增加了一些无意义的流程。
综上,如何提供一种解决上述技术问题的方案是本领域技术人员目前需要解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种路由表生成方法、页面跳转方法、装置、设备及介质,能够提高路由表生成效率,同时对应用程序来说也无需初始化这份路由表、无需注册同时无需手动维护路由表了,相较于其他的开源方案更快速、更安全、更符合程序编译的流程。其具体方案如下:
第一方面,本申请公开了一种路由表生成方法,包括:
获取利用Dart编程语言对源代码编译后生成的内核二进制文件,并对所述内核二进制文件进行解析,以确定出初始抽象语法树;
从所述初始抽象语法树中确定出目标抽象语法树节点;
按照预设格式对所述目标抽象语法树节点进行改造,以创建新抽象语法树节点;
将所述新抽象语法树节点直接写入当前Flutter工程中具有页面跳转能力的依赖包中路由表对应的抽象语法树节点,得到更新抽象语法树,并将所述更新抽象语法树重新写入所述内核二进制文件;
根据当前的内核二进制文件生成路由表,以便在接收到页面跳转指令后,基于所述路由表进行页面跳转。
可选的,所述获取利用Dart编程语言对源代码编译后生成的内核二进制文件之前,还包括:
采集标识文件路径,并将所述表示文件路径导入预先创建的临时文件夹;其中,所述标识文件路径为被打上标识注解的页面的路径;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于政采云有限公司,未经政采云有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202310467182.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种多功能智能行车进出仓系统
- 下一篇:一种噪音检测方法及装置