[发明专利]一种脚本动态调试方法、装置及终端有效
申请号: | 201610883480.X | 申请日: | 2016-10-09 |
公开(公告)号: | CN107918583B | 公开(公告)日: | 2021-01-19 |
发明(设计)人: | 陈晓波;解辉 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 郝传鑫;贾允 |
地址: | 518000 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 脚本 动态 调试 方法 装置 终端 | ||
本发明公开了一种脚本动态调试方法、系统及终端,通过进行脚本的同步以及监听应用程序的运行状态,从而实现脚本的动态加载和动态调试,在本发明所实现的动态调试中,在脚本被修改后,不需要重新生成工程就可以观察到脚本的修改效果。此外,本发明节省了生成工程所需的时间,使得对于脚本的调试更为方便省事,能够使得开发者在动态调试脚本的过程中,实时保存调试现场;并且在应用程序运行过程中发现问题时,可以及时修改脚本,并且在不破坏应用程序的实时环境的情况下加载修改后的脚本,从而更为有效地修复脚本存在的漏洞。
技术领域
本发明涉及脚本调试领域,尤其涉及一种脚本动态调试方法、装置及终端。
背景技术
随着脚本语言的快速发展,许多应用程序在运行过程中都涉及到脚本的编译和执行,现有技术中,在对依赖于应用程序的脚本进行调试时需要执行下述步骤:
首先,需要将修改后的脚本所在的文件夹拖入应用程序的资源文件夹中;
然后,在修改脚本之后还需要重新生成应用程序才能使得脚本的修改生效。
可见,现有技术中对于脚本的调试需要重新生成应用程序,因此,难以实现对脚本的动态调试,而重新生成应用程序耗时较长,并且花费的代价较高。
此外,在正式环境中一般都是从后台拉取最新的脚本,而调试环境中并不需要从后台调取脚本,从而导致了脚本的载入方式因运行环境的不同存在差异,造成了应用程序的调试版本与正式版本的切换操作较为繁琐。
发明内容
为了解决上述技术问题,本发明提出了一种脚本动态调试方法、系统及终端,通过进行脚本的同步以及监听应用程序的运行状态,从而实现脚本的动态加载和动态调试,在本发明所实现的动态调试中,在脚本被修改后,不需要重新生成应用程序就可以观察到脚本的修改效果。
本发明具体是以如下技术方案实现的:
一种脚本动态调试方法,所述方法包括:
将工程文件中的脚本所在目录同步至调用所述脚本的应用程序对应的应用程序包;
监听所述应用程序的运行状态;
若所述应用程序进入前台,则在进入前台后,将应用程序原有的由脚本生成的包清空,并根据所述脚本所在目录下的脚本文件重新生成新的包。
进一步地,通过使用链接器的方式将工程文件中的脚本所在目录同步至调用所述脚本的应用程序对应的应用程序包。
进一步地,所述将工程文件中的脚本所在目录同步至调用所述脚本的应用程序对应的应用程序包包括:
监听工程文件中所述脚本的代码是否发生变动:
若是,则将变动后的脚本传输至应用程序包。
进一步地,所述将变动后的脚本传输至应用程序包包括使用传输控制协议进行传输。
进一步地,还包括:
判断应用程序是否处于调试模式:若是,则在应用程序编译过程中将工程文件中的脚本所在目录同步至调用所述脚本的应用程序对应的应用程序包。
进一步地,在调试过程中,若对于工程文件中的脚本进行改动,则:
将调用所述脚本的应用程序调入后台;
将调入后台的所述应用程序再重新调回前台,则所述应用程序即可调用改动后的脚本。
进一步地,所述脚本为lua脚本。
进一步地,所述脚本和所述应用程序均运行于iOS操作系统。
一种脚本动态调试装置,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610883480.X/2.html,转载请声明来源钻瓜专利网。