CN112642157A - 代理开发控制方法及其相应的装置、设备、介质 - Google Patents
代理开发控制方法及其相应的装置、设备、介质 Download PDFInfo
- Publication number
- CN112642157A CN112642157A CN202011635558.9A CN202011635558A CN112642157A CN 112642157 A CN112642157 A CN 112642157A CN 202011635558 A CN202011635558 A CN 202011635558A CN 112642157 A CN112642157 A CN 112642157A
- Authority
- CN
- China
- Prior art keywords
- game
- page
- original
- code
- resource information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/33—Intelligent editors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Stored Programmes (AREA)
Abstract
本申请公开一种代理开发控制方法及其相应的装置、设备、介质,所述控制方法包括如下步骤:向远程开发服务请求游戏原页面的链接地址;获取该链接地址所指向的所述游戏原页面,抓取其中模板相对应的资源信息,生成包含该资源信息的游戏新页面;接收基于所述游戏新页面开发形成的代码资源,所述代码资源至少部分引用自本地代码资源信息库;将所述代码资源反向注入所述游戏原页面。本申请构建了一种游戏项目重构功能,同时为开发团队提供了平行开发的开发模式,有助于提升游戏项目的开发效率。
Description
技术领域
本申请涉及计算机软件开发领域,尤其涉及一种代理开发控制方法、装置及其相应的电子设备和非易失性存储介质。
背景技术
随着互联网的发展,互联网的用户数量也逐日攀升,各大互联网公司也开发各类型的游戏满足网民的娱乐需求。现如今互联网公司的游戏项目一般使用现有的游戏引擎进行开发,基于游戏引擎所提供的已编写好的可编辑电脑游戏系统或者一些交互式实时图像应用程序的核心组件开发游戏项目,借用游戏引擎所提供的游戏框架,只需要通过游戏引擎所提供的操作界面即可对游戏代码进行构建打包,以节省开发时间和开发费用,提升游戏项目的开发效率。
但现如今的游戏引擎所打包构建的游戏项目闭源的,导致开发者对项目构建无法定制化,如果编译的代码与游戏引擎存在兼容性问题,只能通过修改游戏项目文件中与不兼容的代码所对应的配置文件进行入侵性的修改,以修复兼容性问题,但入侵性地修改容易导致游戏项目存在无法稳定运行的风险。
其实,开发人员无法对基于游戏引擎所开发的游戏项目使用其他构建工具进行打包,意味着游戏项目无法使用新的技术方案,只能局限于游戏引擎所架设的框架之内进行开发。
再者,基于游戏引擎所开发的游戏项目的游戏组件无法在其他的游戏项目中复用,组件通常包括了prefab、sprite等游戏资源,这将使以开发人员无法借用已完成开发的游戏组件开发新的游戏项目以减少新项目的开发周期。
针对现有技术存在的影响软件测试的各种问题,有必要探索一些行之有效的解决方案。
发明内容
本申请的目的之一在于解决上述问题至少之一而提供一种代理开发控制方法及其相应的装置、电子设备、非易失性存储介质,以便控制各个设备之间的远程开发。
为满足本申请的各个目的,本申请采用如下技术方案:
适应本申请的目的之一而提供的一种代理开发控制方法,其包括如下步骤:
向远程开发服务请求游戏原页面的链接地址;
获取该链接地址所指向的所述游戏原页面,抓取其中模板相对应的资源信息,生成包含该资源信息的游戏新页面;
接收基于所述游戏新页面开发形成的代码资源,所述代码资源至少部分引用自本地代码资源信息库;
将所述代码资源反向注入所述游戏原页面。
进一步的实施例中,向远程开发服务进程请求游戏原页面的链接地址,包括:
向第一端口发送所述游戏原页面获取请求;
将所述游戏原页面获取请求重定向到所述远程开发服务所开放的第二端口;
从所述第二端口获取所述远程开发服务返回的游戏原页面的链接地址。
进一步的实施例中,获取该链接地址所指向的所述游戏原页面,抓取其中模板相对应的资源信息,生成包含该资源信息的游戏新页面的步骤,包括:
调用插件提供的接口抓取所述游戏原页面中的模板相对应的资源信息;
创建所述游戏新页面的空模板;
重新组织编排所述模板的资源信息,将其添加到所述的空模板,形成所述的游戏新页面。
进一步的实施例中,接收基于所述游戏新页面开发形成的代码资源的步骤,包括:
接收经开发完成的所述游戏新页面;
读取该游戏新页面中的原始代码;
依据原始代码从本地代码资源信息库中查找其关联代码;
将所述原始代码与关联代码确定为游戏新页面的所述代码资源。
进一步的实施例中,将所述代码资源反向注入所述游戏原页面的步骤,包括:
加载所述游戏原页面至缓存中;
以从所述游戏新页面的所述代码资源替换缓存中所述游戏原页面中的至少部分代码资源;
将缓存中的所述游戏原页面同步至所述链接地址完成代码资源注入。
较佳的实施例中,本方法包括后续步骤:
响应于第三方请求而为其提供抓取自所述游戏原页面的模板相对应的资源信息。
较佳的实施例中,本方法包括如下前置步骤:
执行端口重定向的自动化配置,畅通本地服务与所述远程开发服务之间的数据通信链路。
适应本申请的目的之一而提供的一种代理开发控制装置,其包括:
地址请求单元,用于向远程开发服务请求游戏原页面的链接地址;
页面生成单元,用于获取该链接地址所指向的所述游戏原页面,抓取其中模板相对应的资源信息,生成包含该资源信息的游戏新页面;
资源接收单元,接收基于所述游戏新页面开发形成的代码资源,所述代码资源至少部分引用自本地代码资源信息库;
资源注入单元,将所述代码资源反向注入所述游戏原页面。
适应本申请的目的之一而提供的一种电子设备,包括中央处理器和存储器,所述中央处理器用于调用运行存储于所述存储器中的计算机程序以执行本申请所述的代理开发控制方法的步骤。
适应本申请的另一目的而提供的一种非易失性存储介质,其以计算机可读指令的形式存储有依据所述的代理开发控制方法所实现的计算机程序,该计算机程序被计算机调用运行时,执行该方法所包括的步骤。
相对于现有技术,本申请的优势如下:
首先,本申请通过构建一种游戏项目重构功能,为基于游戏引擎所开发的项目提供一种新型的构建模型。通过远程开发服务获取原始项目的游戏原页面的链接地址,并通过该链接地址抓取游戏原页面的模板相对应的资源信息,生成包含该资源信息的游戏新页面进行开发工作,且可引用本地代码资源信息库中的以完成构建的新型技术栈的代码资源,开发所述游戏新页面的新功能,并通过反向注入的方式,将所述游戏新页面的新型技术栈的代码资源注入原始项目的游戏原页面中,为原始项目的所述游戏原页面添加新型技术栈所构建的游戏功能,丰富所述游戏原页面的游戏项目,通过这游戏项目重构的实现逻辑,解决因游戏引擎构建闭源而无法自定义项目的构建流程所导致地无法使用新的技术栈的问题。
其次,开发人员可通过本申请所述的游戏原页面的链接地址抓取其所属的资源信息,以复用原始项目中的游戏资源(游戏组件),提升新游戏项目的开发效率。
再者,本申请所构建的所述远程开发服务可同时为多台开发终端提供所述游戏原页面的链接地址,从而为开发团队提供平行开发的开发模式,极大地加快了游戏开发的效率。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为实施本申请的技术方案相关的一种典型的部署架构示意图;
图2为本申请的代理开发控制方法的典型实施例的流程示意图;
图3为图2中步骤S11的具体过程所形成的流程示意图;
图4为图2中步骤S12的具体过程所形成的流程示意图;
图5为图2中步骤S13的具体过程所形成的流程示意图;
图6为图2中步骤S14的具体过程所形成的流程示意图;
图7为本申请的代理开发控制方法的另一实施例中由其所添加的后置步骤构成的流程示意图;
图8为本申请的代理开发控制方法的另一实施例中由其所添加的前置步骤构成的流程示意图;
图9为本申请的代理开发控制装置的典型实施例的原理框图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本申请所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
本技术领域技术人员可以理解,这里所使用的“客户端”、“终端”、“终端设备”既包括无线信号接收器的设备,其仅具备无发射能力的无线信号接收器的设备,又包括接收和发射硬件的设备,其具有能够在双向通信链路上,进行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他诸如个人计算机、平板电脑之类的通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备;PCS(PersonalCommunications Service,个人通信系统),其可以组合语音、数据处理、传真和/或数据通信能力;PDA(Personal Digital Assistant,个人数字助理),其可以包括射频接收器、寻呼机、互联网/内联网访问、网络浏览器、记事本、日历和/或GPS(Global PositioningSystem,全球定位系统)接收器;常规膝上型和/或掌上型计算机或其他设备,其具有和/或包括射频接收器的常规膝上型和/或掌上型计算机或其他设备。这里所使用的“客户端”、“终端”、“终端设备”可以是便携式、可运输、安装在交通工具(航空、海运和/或陆地)中的,或者适合于和/或配置为在本地运行,和/或以分布形式,运行在地球和/或空间的任何其他位置运行。这里所使用的“客户端”、“终端”、“终端设备”还可以是通信终端、上网终端、音乐/视频播放终端,例如可以是PDA、MID(Mobile Internet Device,移动互联网设备)和/或具有音乐/视频播放功能的移动电话,也可以是智能电视、机顶盒等设备。
本申请所称的“服务器”、“客户端”、“服务节点”等名称所指向的硬件,本质上是具备个人计算机等效能力的电子设备,为具有中央处理器(包括运算器和控制器)、存储器、输入设备以及输出设备等冯诺依曼原理所揭示的必要构件的硬件装置,计算机程序存储于其存储器中,中央处理器将存储在外存中的程序调入内存中运行,执行程序中的指令,与输入输出设备交互,借此完成特定的功能。
需要指出的是,本申请所称的“服务器”这一概念,同理也可扩展到适用于服务器机群的情况。依据本领域技术人员所理解的网络部署原理,所述各服务器应是逻辑上的划分,在物理空间上,这些服务器既可以是互相独立但可通过接口调用的,也可以是集成到一台物理计算机或一套计算机机群的。本领域技术人员应当理解这一变通,而不应以此约束本申请的网络部署方式的实施方式。
请参阅图1,本申请相关技术方案实施时所需的硬件基础可按图中所示的架构进行部署,其各部分的作用及功能揭示如下:
本申请所称的远程服务器80可以作为一个前端的应用服务器,负责进一步连接起相关数据服务器,以此构成逻辑上相关联的服务机群,来为相关的终端设备例如图中所示的终端设备81、82提供服务。所述的终端设备81、82均可通过公知的网络接入方式与远程服务器80建立数据通信链路。
本申请的远程服务器80适于远程开发服务之类的互联网业务,通过运行服务而向相应的终端设备提供相应的互联网业务,由此,不同用户通过各自的终端设备使用远程服务器80的服务,便可实现用户之间的通信数据的交换。例如,一个用户可以通过该远程服务器80获取另一个用户的链接地址、资源信息、代码资源等。
本申请的终端设备配备有相关操作系统,例如Window、Mac、IOS、HMS(鸿蒙)、Android以及其他提供同等功能的操作系统,在此类操作系统的支持下,远程服务器80与终端设备之间可以通过彼此约定的通信链路进行数据通信,而为这些操作系统适应性开发的应用程序也得以在终端设备中正常运行,正是借助这些应用程序的运行,使得终端设备可以实现人机交互、远程交互以及通过远程服务器与其他终端实现各种间接交互。
本申请所称的应用程序,其通称意义是指运行于服务器或终端设备之类的电子设备的应用程序,这些应用程序采用编程的方式实现了本申请的相关技术方案,其程序代码可被以计算机可执行指令的形式保存于计算机能识别的非易失性存储介质中,并被中央处理器调入内存中运行,通过该应用程序在计算机的运行而构造出本申请的相关装置。
不同受测设备81、82可能运行于不同的操作系统,例如Window、Mac、IOS、Android等,因此其中所安装的目标程序可能也是以不同的操作系统原生语言开发的,但由于通常同一目标程序无论其运行环境如何,均会遵照一定的功能逻辑开发,只是其所使用的语言不同,因而,这种情况并不影响本申请的实施。同理,主控服务器88中与本申请相关的应用程序与受测设备81、82中与本申请相关的目标程序也可能是以不同原生语言开发的,也不影响本申请的实施。
本申请所称的代码资源,用于描述一个实施开发的源码数据,其通过计算机高级语言编写而成,一般是服务器80及终端设备81、82中与负责实施本申请的应用程序可以支持的语言,例如Python、Java等,其从逻辑上可以借助if、case之类的转向语句形成多个分支流程,从动作上则可通过执行语句来执行,例如通过执行语句来调用一个方法函数。
本领域技术人员对此应当知晓:本申请的各种方法,虽然基于相同的概念而进行描述而使其彼此间呈现共通性,但是,除非特别说明,否则这些方法都是可以独立执行的。同理,对于本申请所揭示的各个实施例而言,均基于同一发明构思而提出,因此,对于相同表述的概念,以及尽管概念表述不同但仅是为了方便而适当变换的概念,应被等同理解。
请参阅图2,本申请的一种代理开发控制方法,在其典型实施例中,其包括如下步骤:
步骤S11,向远程开发服务请求游戏原页面的链接地址:
当前开发终端向所述远程开发服务发送相应的游戏原页面获取请求,从远程开发服务中获取该请求所指向的游戏原页面的所述链接地址,以便通过该链接地址获取其所指向的游戏原页面的资源信息。
所述的远程开发服务可服务于各个开发终端,响应于各开发终端所发送的所述游戏原页面获取请求,为其提供该游戏原页面的链接地址,所述远程开发服务储存各个开发终端所开启的端口,通过各个端口为各个开发终端构建互通的数据通信链路。所述的远程开发服务可架设在服务器中,也可架设在开发终端中,本领域技术人员可根据实际的开发需求设计所述远程开发服务所架设的设备,恕不赘述。
所述的远程开发服务为各个开发终端提供远程开发的服务,即各个开发终端可通过所述远程开发服务获取其所需的开发终端所开发的所述游戏原页面,以实现各个游戏原页面的资源共享,平行开发所述游戏原游戏,提高开发效率。
所述的链接地址适用于开发终端获取其所需的所述游戏原页面的资源信息,各开发终端可能同时编辑多个页面,从而需要获取各个页面相应的链接地址,以便各个开发终端通过建立互通的数据通信链路,并通过所述链接地址获取所需的所述游戏原页面的所述资源信息进行开发。关于所述资源信息请参考后续步骤中的叙述。
所述的游戏原页面是由开发终端通过相应的游戏开发服务开发的游戏页面,相应的游戏开发服务会提供一些已编写好的可编辑电脑游戏系统或者一些交互式实时图像应用程序的核心组件供开发终端开发其所述游戏页面,开发终端通过在所述游戏开发服务构建的游戏页面中包含其所需的资源信息,以构建实现相应功能的游戏页面。
一种实施例中,请参阅图3,开发终端通过所述远程开发服务请求所述游戏原页面的链接地址的具体实施步骤如下:
步骤S111,向第一端口发送所述游戏原页面获取请求:
当前开发终端通过向第一端口发送所述游戏原页面获取请求至所述远程开发服务,以便所述远程开发服务中将该请求所属的所述第一端口重定向为该请求所指向的游戏原页面所属的第二端口。
一种实施例中,当前开发终端通过webpack所开启的9000端口(所述的第一端口)发送所述游戏原页面获取请求,以所述远程开发服务通过响应该请求,查询将该请求所指向的游戏原页面的第二端口。本领域技术人员可根据实际业务场景设计所述第一端口,恕不赘述。
步骤S112,将所述游戏原页面获取请求重定向到所述远程开发服务所开放的第二端口:
所述远程开发服务接收到所述第一端口发送的所述游戏原页面获取请求后,将根据该请求所指向的游戏原页面所属的开发终端查询该开发终端的第二端口,并将该游戏原页面获取请求通过第二端口发送至第二端口所属的开发终端中,以完成端口的重定向。
一种实施例中,所述远程开发服务通过devServer构建相应的端口重定向服务,将所述游戏原页面获取请求所发送的第一端口(9000)转换为该请求所指向的游戏原页面所属的第二端口(7456),并将该游戏原页面获取请求转发至第二端口,以便向第二端口所属的开发终端获取该请求所指向的所属游戏原页面的链接地址。本领域技术人员可根据实际业务场景设计所述端口重定向服务,恕不赘述。
步骤S113,从所述第二端口获取所述远程开发服务返回的游戏原页面的链接地址:
所述远程开发服务获取所述第二端口返回到所述游戏原页面获取请求所指向的所述游戏原页面的链接地址后,将该游戏原页面的链接地址通过第一端口转发至发送该游戏原页面获取请求的当前开发终端中。
步骤S12,获取该链接地址所指向的所述游戏原页面,抓取其中模板相对应的资源信息,生成包含该资源信息的游戏新页面:
当前开发终端获取到所述游戏原页面的链接地址后,将通过该链接地址在该链接地址所指向的游戏原页面中抓取该游戏原页面的模板所相应的所述资源信息,并根据该资源信息生成包含该资源信息的所述游戏新页面。
当前开发终端在获取到所述游戏原页面的资源信息后,将创建一个新的游戏新页面,并将所述资源信息填充到所述的游戏新页面中,由此构建一个与所述游戏原页面相同的游戏新页面。
所述的资源信息包含所述游戏原页面中的贴图资源数据及相应的代码资源,以便当前开发终端构建所述资源信息构建一个该资源信息所属的游戏原页面的模板相同的所述游戏新页面。
一种实施例中,请参阅图4,关于当前开发终端通过所述链接地址抓取所述游戏原页面的资源信息的具体实施步骤如下:
步骤S121,调用插件提供的接口抓取所述游戏原页面中的模板相对应的资源信息:
当前终端设备通过所述远程开发服务调用所述插件的接口,并根据所述链接地址抓取该连接地址所指向的所述游戏原页面中的模板相应的所述资源信息。
一种实施例中,所述插件为axios插件,所述远程开发服务通过调用axios,抓取所述链接地址所指向的所述游戏原页面的index.html(模板),并获取该模板相应的的所述资源信息。
步骤S122,创建所述游戏新页面的空模板:
当前开发终端通过所述游戏开发服务创建一个适用于填充所述资源信息的所述游戏新页面的空模板。
步骤S123,重新组织编排所述模板的资源信息,将其添加到所述的空模板,形成所述的游戏新页面:
当前开发终端将获取的所述资源信息进行重新组织编排,并将其添加到所述游戏新页面的所述空模板中,从而生成与所述游戏原页面相应的所述游戏新页面。
步骤S13,接收基于所述游戏新页面开发形成的代码资源,所述代码资源至少部分引用自本地代码资源信息库:
当前开发终端基于所述游戏新页面开发新的所述代码资源,以在所述游戏原页面的基础上开发新的功能,所述代码资源中部分资源代码可引用至所述本地代码资源信息库。
所述的本地代码资源信息库包含各类型适用于所述游戏新页面的代码资源的封装文件(SDK),开发终端通过所述本地代码资源信息库调用相应的代码资源的封装文件,为所述游戏新页面开发相应的功能。
一种实施例中,当前开发终端运行与开发所述游戏原页面的所述游戏开发服务所不同的开发服务,并引用所述本地代码资源信息库中所包含的代码资源在所述游戏新页面上开发相应的功能,以解决在所述游戏开发服务中开发的所述游戏原页面所无法提供的技术栈。
一种实施例中,请参阅图5,关于确认所述游戏新页面所引用所述本地代码资源信息库中的代码资源的具体实施步骤如下:
步骤S131,接收经开发完成的所述游戏新页面:
接收当前开发终端通过引用部分所述本地代码资源信息库中的代码资源所开发完成的所述游戏新页面。
步骤S132,读取该游戏新页面中的原始代码:
读取接收自当前开发终端所开发完成的所述游戏新页面中的所述原始代码。
步骤S133,依据原始代码从本地代码资源信息库中查找其关联代码:
当前开发终端根据从所述游戏新页面中获取的所述原始代码,从所述本地代码资源信息库中的查询与所述原始代码相关联的代码资源。
步骤S134,将所述原始代码与关联代码确定为游戏新页面的所述代码资源:
将从所述本地代码资源信息库中确定的关联代码资源与所述游戏新页面中的原始代码确定为该游戏新页面的所述代码资源。
步骤S14,将所述代码资源反向注入所述游戏原页面:
当前开发终端将所述游戏新页面的所述代码资源通过反向注入方式,修改所述游戏原页面的代码资源,以更新所述游戏原页面,并为该游戏原页面添加新的功能。
当前开发终端通过所述链接地址将所述游戏新页面的所述代码资源发送至所述游戏原页面中,以便所述游戏原页面中的部分代码资源替换成所述游戏新页面的所述代码资源,完成所述反向注入。
一种实施例中,请参阅图6,关于所述游戏新页面的所述代码资源反向注入所述游戏原页面的具体实施步骤如下:
步骤S141,加载所述游戏原页面至缓存中:
当前开发终端通过所述链接地址将该地址所指向的所述游戏原页面加载至所述缓存中。
一种实施例中,所述的缓存为所述远程开发服务的缓存空间,当前开发终端将所述游戏原页面发送至所述远程开发服务中,以便所述开发远程服务将该游戏原页面储存至所述缓存中。
步骤S142,以从所述游戏新页面的所述代码资源替换缓存中所述游戏原页面中的至少部分代码资源:
当前开发终端将接收到的所述游戏新页面的所述代码资源替换缓存中所述游戏原页面中的与该代码资源不同的部分代码资源。
一种实施例中,所述远程开发服务将接收到来自当前开发终端发送的所述游戏新页面的所述代码资源,并将该代码资源替换所述缓存中储存的所述游戏原页面的部分代码资源。
步骤S143,将缓存中的所述游戏原页面同步至所述链接地址完成代码资源注入:
所述远程开发服务将缓存中的所述游戏原页面同步至所述链接地址,以便所述链接地址所属的开发终端接收到所述游戏原页面,以完成所述代码资源注入。
以上的典型实施例及其变化实施例充分揭示了本申请的代理开发控制方法的实施方案,但是,仍可通过对一些技术手段的变换和扩增而演绎出该方法的多种变化实施例,如下概要说明其他实施例:
一种实施例中,请参阅图7,本申请的代理开发控制方法还包括如下后续步骤:
步骤S15,响应于第三方请求而为其提供抓取自所述游戏原页面的模板相对应的资源信息:
所述远程开发服务可响应于第三方开发终端的请求,并为该第三方请求所属的开发终端抓取自所述游戏原页面的模板相对应的资源信息,以实现所述远程开发服务的多端开发需求。
另一种实施例中,请参阅图8,本申请的代理开发控制方法还包括如下前置步骤:
步骤S10,执行端口重定向的自动化配置,畅通本地服务与所述远程开发服务之间的数据通信链路:
所述远程开发服务将为其所提供远程开发服务的开发终端执行端口重定向的自动化配置,以便各开发终端向所述远程开发服务请求所述游戏原页面的链接地址,保持各开发终端与所述远程开发服务之间的数据通信连接之间的通信畅通。
进一步,可以通过将上述各实施例所揭示的方法中的各个步骤进行功能化,构造出本申请的一种代理开发控制装置,按照这一思路,请参阅图9,其中的一个典型实施例中,该装置包括:
地址请求单元11,用于向远程开发服务请求游戏原页面的链接地址;
页面生成单元12,用于获取该链接地址所指向的所述游戏原页面,抓取其中模板相对应的资源信息,生成包含该资源信息的游戏新页面;
资源接收单元13,接收基于所述游戏新页面开发形成的代码资源,所述代码资源至少部分引用自本地代码资源信息库;
资源注入单元14,将所述代码资源反向注入所述游戏原页面。
进一步,为便于本申请的执行,本申请提供一种电子设备,包括中央处理器和存储器,所述中央处理器用于调用运行存储于所述存储器中的计算机程序以执行如前所述的各实施例中所述代理开发控制方法的步骤。
可以看出,存储器适宜采用非易失性存储介质,通过将前述的方法实现为计算机程序,安装到手机或计算机之类电子设备中,相关程序代码和数据便被存储到电子设备的非易失性存储介质中,进一步通过电子设备的中央处理器运行该程序,将其从非易性存储介质中调入内存中运行,便可实现本申请所期望的目的。因此,可以理解,本申请的一个实施例中,还可提供一种非易失性存储介质,其中存储有依据所述的代理开发控制方法各个实施例所实现的计算机程序,该计算机程序被计算机调用运行时,执行该方法所包括的步骤。
综上所述,本申请构建了一种游戏项目重构功能,便于开发人员使用新型的技术栈开发游戏项目,同时提供了开发人员平行开发项目的功能,有助于提升游戏项目的开发效率。
本技术领域技术人员可以理解,本申请包括涉及用于执行本申请中所述操作、方法中的一项或多项的设备。这些设备可以为所需的目的而专门设计和制造,或者也可以包括通用计算机中的已知设备。这些设备具有存储在其存储器之内的计算机程序,这些计算机程序选择性地激活或重构。这样的计算机程序可以被存储在设备(例如,计算机)可读介质中或者存储在适于存储电子指令并分别耦联到总线的任何类型的介质中,所述计算机可读介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、CD-ROM、和磁光盘)、ROM(Read-Only Memory,只读存储器)、RAM(Random Access Memory,随即存储器)、EPROM(ErasableProgrammable Read-Only Memory,可擦写可编程只读存储器)、EEPROM(ElectricallyErasable Programmable Read-Only Memory,电可擦可编程只读存储器)、闪存、磁性卡片或光线卡片。也就是,可读介质包括由设备(例如,计算机)以能够读的形式存储或传输信息的任何介质。
本技术领域技术人员可以理解,可以用计算机程序指令来实现这些结构图和/或框图和/或流图中的每个框以及这些结构图和/或框图和/或流图中的框的组合。本技术领域技术人员可以理解,可以将这些计算机程序指令提供给通用计算机、专业计算机或其他可编程数据处理方法的处理器来实现,从而通过计算机或其他可编程数据处理方法的处理器来执行本申请公开的结构图和/或框图和/或流图的框或多个框中指定的方案。
本技术领域技术人员可以理解,本申请中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本申请中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本申请中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。
以上所述仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (10)
1.一种代理开发控制方法,其特征在于,包括如下步骤:
向远程开发服务请求游戏原页面的链接地址;
获取该链接地址所指向的所述游戏原页面,抓取其中模板相对应的资源信息,生成包含该资源信息的游戏新页面;
接收基于所述游戏新页面开发形成的代码资源,所述代码资源至少部分引用自本地代码资源信息库;
将所述代码资源反向注入所述游戏原页面。
2.根据权利要求1所述的方法,其特征在于,向远程开发服务进程请求游戏原页面的链接地址,包括:
向第一端口发送所述游戏原页面获取请求;
将所述游戏原页面获取请求重定向到所述远程开发服务所开放的第二端口;
从所述第二端口获取所述远程开发服务返回的游戏原页面的链接地址。
3.根据权利要求1所述的方法,其特征在于,获取该链接地址所指向的所述游戏原页面,抓取其中模板相对应的资源信息,生成包含该资源信息的游戏新页面的步骤,包括:
调用插件提供的接口抓取所述游戏原页面中的模板相对应的资源信息;
创建所述游戏新页面的空模板;
重新组织编排所述模板的资源信息,将其添加到所述的空模板,形成所述的游戏新页面。
4.根据权利要求1所述的方法,其特征在于,接收基于所述游戏新页面开发形成的代码资源的步骤,包括:
接收经开发完成的所述游戏新页面;
读取该游戏新页面中的原始代码;
依据原始代码从本地代码资源信息库中查找其关联代码;
将所述原始代码与关联代码确定为游戏新页面的所述代码资源。
5.根据权利要求1所述的方法,其特征在于,将所述代码资源反向注入所述游戏原页面的步骤,包括:
加载所述游戏原页面至缓存中;
以从所述游戏新页面的所述代码资源替换缓存中所述游戏原页面中的至少部分代码资源;
将缓存中的所述游戏原页面同步至所述链接地址完成代码资源注入。
6.根据权利要求1至5中任意一项所述的方法,其特征在于,包括后续步骤:
响应于第三方请求而为其提供抓取自所述游戏原页面的模板相对应的资源信息。
7.根据权利要求1至5中任意一项所述的方法,其特征在于,包括如下前置步骤:
执行端口重定向的自动化配置,畅通本地服务与所述远程开发服务之间的数据通信链路。
8.一种代理开发控制装置,其特征在于,其包括:
地址请求单元,用于向远程开发服务请求游戏原页面的链接地址;
页面生成单元,用于获取该链接地址所指向的所述游戏原页面,抓取其中模板相对应的资源信息,生成包含该资源信息的游戏新页面;
资源接收单元,接收基于所述游戏新页面开发形成的代码资源,所述代码资源至少部分引用自本地代码资源信息库;
资源注入单元,将所述代码资源反向注入所述游戏原页面。
9.一种电子设备,包括中央处理器和存储器,其特征在于,所述中央处理器用于调用运行存储于所述存储器中的计算机程序以执行如权利要求1至7中任意一项所述的方法的步骤。
10.一种非易失性存储介质,其特征在于,其以计算机可读指令的形式存储有依据权利要求1至7中任意一项所述的方法所实现的计算机程序,该计算机程序被计算机调用运行时,执行相应的方法所包括的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011635558.9A CN112642157B (zh) | 2020-12-31 | 2020-12-31 | 代理开发控制方法及其相应的装置、设备、介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011635558.9A CN112642157B (zh) | 2020-12-31 | 2020-12-31 | 代理开发控制方法及其相应的装置、设备、介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112642157A true CN112642157A (zh) | 2021-04-13 |
CN112642157B CN112642157B (zh) | 2023-04-28 |
Family
ID=75367144
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011635558.9A Active CN112642157B (zh) | 2020-12-31 | 2020-12-31 | 代理开发控制方法及其相应的装置、设备、介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112642157B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6145003A (en) * | 1997-12-17 | 2000-11-07 | Microsoft Corporation | Method of web crawling utilizing address mapping |
CN101300584A (zh) * | 2005-08-06 | 2008-11-05 | 安全尺度有限公司 | 防止软件逆向工程、未经授权修改以及运行时数据截取的方法 |
CN103593396A (zh) * | 2013-10-08 | 2014-02-19 | 北京奇虎科技有限公司 | 基于浏览器的网络资源的提取方法及装置 |
CN104021321A (zh) * | 2014-06-17 | 2014-09-03 | 北京奇虎科技有限公司 | 软件安装包的加固保护方法和装置 |
CN106777077A (zh) * | 2016-12-13 | 2017-05-31 | 网易(杭州)网络有限公司 | 网页的生成方法及装置 |
US20180129718A1 (en) * | 2016-11-04 | 2018-05-10 | Microsoft Technology Licensing, Llc | Collecting and annotating transformation tools for use in generating transformation programs |
CN108197125A (zh) * | 2016-12-08 | 2018-06-22 | 腾讯科技(深圳)有限公司 | 网页抓取方法及装置 |
CN111259273A (zh) * | 2018-11-30 | 2020-06-09 | 顺丰科技有限公司 | 网页分类模型构建方法、分类方法及其装置 |
CN111352682A (zh) * | 2018-12-24 | 2020-06-30 | 北京嘀嘀无限科技发展有限公司 | 页面渲染方法、装置、服务器及可读存储介质 |
CN111475761A (zh) * | 2020-04-09 | 2020-07-31 | 广州华多网络科技有限公司 | 客户端、服务器及内容分享控制方法 |
-
2020
- 2020-12-31 CN CN202011635558.9A patent/CN112642157B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6145003A (en) * | 1997-12-17 | 2000-11-07 | Microsoft Corporation | Method of web crawling utilizing address mapping |
CN101300584A (zh) * | 2005-08-06 | 2008-11-05 | 安全尺度有限公司 | 防止软件逆向工程、未经授权修改以及运行时数据截取的方法 |
CN103593396A (zh) * | 2013-10-08 | 2014-02-19 | 北京奇虎科技有限公司 | 基于浏览器的网络资源的提取方法及装置 |
CN104021321A (zh) * | 2014-06-17 | 2014-09-03 | 北京奇虎科技有限公司 | 软件安装包的加固保护方法和装置 |
US20180129718A1 (en) * | 2016-11-04 | 2018-05-10 | Microsoft Technology Licensing, Llc | Collecting and annotating transformation tools for use in generating transformation programs |
CN108197125A (zh) * | 2016-12-08 | 2018-06-22 | 腾讯科技(深圳)有限公司 | 网页抓取方法及装置 |
CN106777077A (zh) * | 2016-12-13 | 2017-05-31 | 网易(杭州)网络有限公司 | 网页的生成方法及装置 |
CN111259273A (zh) * | 2018-11-30 | 2020-06-09 | 顺丰科技有限公司 | 网页分类模型构建方法、分类方法及其装置 |
CN111352682A (zh) * | 2018-12-24 | 2020-06-30 | 北京嘀嘀无限科技发展有限公司 | 页面渲染方法、装置、服务器及可读存储介质 |
CN111475761A (zh) * | 2020-04-09 | 2020-07-31 | 广州华多网络科技有限公司 | 客户端、服务器及内容分享控制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112642157B (zh) | 2023-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9038094B2 (en) | Automated service interface optimization | |
EP1445693A2 (en) | System and method for building and configuring cross-platform applications | |
US20060136880A1 (en) | System, apparatus and methods for automatic program translation | |
CN103092581A (zh) | 一种Web前端本地开发环境的搭建方法和装置 | |
US20090007081A1 (en) | System and Method of Generating Applications for Mobile Devices | |
US20050003810A1 (en) | Method and system for optimizing software program start-up time | |
US11321090B2 (en) | Serializing and/or deserializing programs with serializable state | |
CN112306884A (zh) | 程序测试控制、执行方法及其相应的装置、设备、介质 | |
CN112699034B (zh) | 虚拟登录用户构建方法、装置、设备及存储介质 | |
CN111683005B (zh) | 一种物联网智能网关设备及其构建方法 | |
CN115994085A (zh) | 代码覆盖率的测试处理方法、装置、设备及存储介质 | |
Barros et al. | Verification of distributed hierarchical components | |
CN103917951B (zh) | 应用调用的方法及操作系统、浏览器 | |
CN112642157B (zh) | 代理开发控制方法及其相应的装置、设备、介质 | |
CN109857656A (zh) | 基于测试的适配方法、装置、计算机设备及存储介质 | |
CN116107623A (zh) | 一种软件开发方法、装置及电子设备 | |
CN108595160B (zh) | Js调用原生对象的方法、存储介质 | |
CN115760391A (zh) | 区块链中智能合约更改方法、装置、电子设备及存储介质 | |
CN114911541A (zh) | 配置信息的处理方法、装置、电子设备及存储介质 | |
CN115202673A (zh) | 基于云服务器的应用构建方法、装置和计算机设备 | |
CN113032256A (zh) | 自动化测试方法、装置、计算机系统和可读存储介质 | |
CN108008983B (zh) | 基于单进程的多接口数据处理方法 | |
CN112612531A (zh) | 应用程序启动方法、装置、电子设备及存储介质 | |
CN117056028B (zh) | 机器人仿真平台搭建方法、装置、计算机设备和存储介质 | |
US7702770B1 (en) | Web services enterprise integration with service oriented architecture |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |