原生应用程序的编译处理方法、装置及终端制造方法及图纸

技术编号:19820830 阅读:31 留言:0更新日期:2018-12-19 14:22
本公开是关于一种原生应用程序的编译处理方法、装置及终端,所述方法包括:获取原生应用程序的源代码,所述源代码使用前端语言编写;根据预设的语法转换库,对所述源代码进行转换,得到中间代码,所述中间代码使用控制页面业务逻辑的语言编写;根据所述中间代码,生成所述原生应用程序的可执行代码。该方法通过将使用前端语言编写的源代码转换成使用控制页面业务逻辑的语言编写的中间代码,从而使得使用前端语言编写的源代码可以基于运行原生应用的操作系统来直接运行,从而实现使用Web应用的开发方式开发原生应用,提升了前端代码的可移植性。同时,开发人员可以按照前端的开发习惯来开发原生应用,也极大提升了原生应用的开发效率。

【技术实现步骤摘要】
原生应用程序的编译处理方法、装置及终端
本公开涉及计算机领域,特别涉及一种原生应用程序的编译处理方法、装置及终端。
技术介绍
随着移动通信技术的快速发展,出现了越来越多的在移动终端上运行的应用程序(Application,APP)。其中,在移动终端上运行的应用程序主要可以分为基于浏览器的应用,即Web应用,以及原生应用。其中,Web应用需要浏览器的支持再进行页面展示以及用户交互,原生应用可以直接利用操作系统提供商所提供的语言和工具等直接操控硬件设备。相关技术中,Web应用可以使用HTML5技术进行开发,原生应用根据运行的操作系统,使用操作系统提供商所提供的语言和工具进行开发。
技术实现思路
本公开实施例提供了一种原生应用程序的编译处理方法、装置及终端,所述技术方案如下。根据本公开实施例的第一方面,提供一种原生应用程序的编译处理方法,包括:获取原生应用程序的源代码,所述源代码使用前端语言编写;根据预设的语法转换库,对所述源代码进行转换,得到中间代码,所述中间代码使用控制页面业务逻辑的语言编写,所述中间代码用于终端根据所述中间代码,生成所述原生应用程序的可执行代码。本公开实施例提供的技术方案可以包括以下有益效果:通过将使用前端语言编写的源代码转换成使用控制页面业务逻辑的语言编写的中间代码,从而使得使用前端语言编写的源代码可以基于运行原生应用的操作系统来直接运行,从而实现使用Web应用的开发方式开发原生应用,提升了前端代码的可移植性。同时,开发人员可以按照前端的开发习惯来开发原生应用,也极大提升了原生应用的开发效率。并且,使用该方法所得到的原生应用可以实现Web应用的各种体验,因此也可以极大提升用户的使用体验。进一步的,所述原生应用程序为快应用;所述前端语言包括超文本标记语言HTML5、Java脚本语言JS以及级联样式表CSS;所述中间代码为JS格式的代码。进一步的,所述根据预设的语法转换库,对所述源代码进行转换,得到中间代码,包括:根据预设的语法转换库,将所述源代码中的HTML5代码以及CSS代码转换成JS代码;将转换得到的JS代码以及所述源代码中的JS代码组合形成所述中间代码。本公开实施例提供的技术方案可以包括以下有益效果:通过将源代码中的HTML5代码以及CSS代码转换为JS代码,不仅能够实现将无法基于操作系统直接运行的代码转换成可以基于操作系统直接运行的代码,并且由于选择JS作为中间代码,因此,可以减少需要转换的代码量,提升代码转换的效率。进一步的,所述根据预设的语法转换库,将所述源代码中的HTML5以及CSS转换成JS,包括:根据所述预设的语法转换库中的图片转换规则,将所述源代码中HTML5格式的图片代码以及CSS格式的图片转换成JS格式的图片代码;和/或,根据所述预设的语法转换库中的文字转换规则,将所述源代码中HTML5格式的文字代码以及CSS格式的文字转换成JS格式的文字代码;和/或,根据所述预设的语法转换库中的列表转换规则,将所述源代码中HTML5格式的列表代码以及CSS格式的列表转换成JS格式的列表代码。进一步的,所述根据所述中间代码,生成所述原生应用程序的可执行代码,包括:使用预设的引擎加载所述中间代码,生成树形组件代码;根据所述树形组件代码,生成所述原生应用程序的可执行代码。进一步的,还包括:接收用户的操作指示;根据所述用户的操作指示,更新所述树形组件代码。进一步的,还包括:接收服务器发送的更新指示;根据所述服务器发送的更新指示,更新所述树形组件代码。进一步的,所述更新所述树形组件代码,包括:确定所述树形组件代码中的待更新的元素;对所述待更新的元素执行更新操作,所述更新操作包括增加操作、删除操作或修改操作。根据本公开实施例的第二方面,提供一种原生应用程序的编译处理装置,包括:获取模块,被配置为获取原生应用程序的源代码,所述源代码使用前端语言编写;转换模块,被配置为根据预设的语法转换库,对所述源代码进行转换,得到中间代码,所述中间代码使用控制页面业务逻辑的语言编写,所述中间代码用于终端根据所述中间代码,生成所述原生应用程序的可执行代码。进一步的,所述原生应用程序为快应用;所述前端语言包括超文本标记语言HTML5、Java脚本语言JS以及级联样式表CSS;所述中间代码为JS格式的代码。进一步的,所述转换模块包括:转换子模块,被配置为根据预设的语法转换库,将所述源代码中的HTML5代码以及CSS代码转换成JS代码;组合子模块,被配置为将转换得到的JS代码以及所述源代码中的JS代码组合形成所述中间代码。进一步的,所述转换子模块被配置为:根据所述预设的语法转换库中的图片转换规则,将所述源代码中HTML5格式的图片代码以及CSS格式的图片转换成JS格式的图片代码;和/或,根据所述预设的语法转换库中的文字转换规则,将所述源代码中HTML5格式的文字代码以及CSS格式的文字转换成JS格式的文字代码;和/或,根据所述预设的语法转换库中的列表转换规则,将所述源代码中HTML5格式的列表代码以及CSS格式的列表转换成JS格式的列表代码。进一步的,所述根据所述中间代码,生成所述原生应用程序的可执行代码包括:使用预设的引擎加载所述中间代码,生成树形组件代码;根据所述树形组件代码,生成所述原生应用程序的可执行代码。进一步的,还包括:第一接收模块,被配置为接收用户的操作指示;第一更新模块,被配置为根据所述用户的操作指示,更新所述树形组件代码。进一步的,还包括:第二接收模块,被配置为接收服务器发送的更新指示;第二更新模块,被配置为根据所述服务器发送的更新指示,更新所述树形组件代码。进一步的,所述更新所述树形组件代码,包括:确定所述树形组件代码中的待更新的元素;对所述待更新的元素执行更新操作,所述更新操作包括增加操作、删除操作或修改操作。根据本公开实施例的第三方面,提供一种终端,所述终端包括:处理器;用于存储所述处理器的可执行指令的存储器;其中,所述处理器被配置为执行上述第一方面所述的方法步骤。根据本公开实施例的第四方面,提供一种终端,所述终端包括:存储器、处理器以及计算机程序,所述处理器运行所述计算机程序执行上述第一方面所述的方法步骤。根据本公开实施例的第五方面,提供一种计算机可读存储介质,所述介质上存储有计算机程序,所述程序被处理器执行时实现上述第一方面所述的方法步骤。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。图1是根据一示例性实施例示出的一种原生应用程序的编译处理方法的流程图;图2是根据一示例性实施例示出的一种原生应用程序的编译处理方法的流程图;图3是根据一示例性实施例示出的一种原生应用程序的编译处理方法的流程图;图4是根据一示例性实施例示出的一种原生应用程序的编译处理方法的流程图;图5是根据一示例性实施例示出的一种原生应用程序的编译处理方法的流程图;图6是根据一示例性实施例示出的一种原生应用程序的编译处理方法的流程图;图7是根据一示例性实施例示出的一种原生应用程序的编译处理装置的模块结构图;图8是根据一示例性实施例示出的一种原生应用程序的编译处本文档来自技高网...

【技术保护点】
1.一种原生应用程序的编译处理方法,其特征在于,包括:获取原生应用程序的源代码,所述源代码使用前端语言编写;根据预设的语法转换库,对所述源代码进行转换,得到中间代码,所述中间代码使用控制页面业务逻辑的语言编写,所述中间代码用于终端根据所述中间代码,生成所述原生应用程序的可执行代码。

【技术特征摘要】
1.一种原生应用程序的编译处理方法,其特征在于,包括:获取原生应用程序的源代码,所述源代码使用前端语言编写;根据预设的语法转换库,对所述源代码进行转换,得到中间代码,所述中间代码使用控制页面业务逻辑的语言编写,所述中间代码用于终端根据所述中间代码,生成所述原生应用程序的可执行代码。2.根据权利要求1所述的方法,其特征在于,所述原生应用程序为快应用;所述前端语言包括超文本标记语言HTML5、Java脚本语言JS以及级联样式表CSS;所述中间代码为JS格式的代码。3.根据权利要求2所述的方法,其特征在于,所述根据预设的语法转换库,对所述源代码进行转换,得到中间代码,包括:根据预设的语法转换库,将所述源代码中的HTML5代码以及CSS代码转换成JS代码;将转换得到的JS代码以及所述源代码中的JS代码组合形成所述中间代码。4.根据权利要求3所述的方法,其特征在于,所述根据预设的语法转换库,将所述源代码中的HTML5以及CSS转换成JS,包括:根据所述预设的语法转换库中的图片转换规则,将所述源代码中HTML5格式的图片代码以及CSS格式的图片转换成JS格式的图片代码;和/或,根据所述预设的语法转换库中的文字转换规则,将所述源代码中HTML5格式的文字代码以及CSS格式的文字转换成JS格式的文字代码;和/或,根据所述预设的语法转换库中的列表转换规则,将所述源代码中HTML5格式的列表代码以及CSS格式的列表转换成JS格式的列表代码。5.根据权利1-4任一项所述的方法,其特征在于,所述根据所述中间代码,生成所述原生应用程序的可执行代码,包括:使用预设的引擎加载所述中间代码,生成树形组件代码;根据所述树形组件代码,生成所述原生应用程序的可执行代码。6.根据权利要求5所述的方法,其特征在于,还包括:接收用户的操作指示;根据所述用户的操作指示,更新所述树形组件代码。7.根据权利要求5所述的方法,其特征在于,还包括:接收服务器发送的更新指示;根据所述服务器发送的更新指示,更新所述树形组件代码。8.根据权利要求6或7所述的方法,其特征在于,所述更新所述树形组件代码,包括:确定所述树形组件代码中的待更新的元素;对所述待更新的元素执行更新操作,所述更新操作包括增加操作、删除操作或修改操作。9.一种原生应用程序的编译处理装置,其特征在于,包括:获取模块,被配置为获取原生应用程序的源代码,所述源代码使用前端语言编写;转换模块,被配置为根据预设的语法转换库,对所述源代码进行转换,得到中间代码,所述中间代码使用控制页面业务逻辑的语言编写,所述中间代...

【专利技术属性】
技术研发人员:余鹏
申请(专利权)人:北京小米移动软件有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1