CN111984305A - 一种应用配置方法及装置、计算机设备 - Google Patents
一种应用配置方法及装置、计算机设备 Download PDFInfo
- Publication number
- CN111984305A CN111984305A CN202010847351.1A CN202010847351A CN111984305A CN 111984305 A CN111984305 A CN 111984305A CN 202010847351 A CN202010847351 A CN 202010847351A CN 111984305 A CN111984305 A CN 111984305A
- Authority
- CN
- China
- Prior art keywords
- data
- application
- definition
- format
- configuration
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- 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/55—Controlling game characters or game objects based on the game progress
-
- 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
- A63F13/69—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 by enabling or updating specific game elements, e.g. unlocking hidden features, items, levels or versions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- 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)
- Multimedia (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Stored Programmes (AREA)
Abstract
本申请实施例公开了一种应用配置方法及装置、计算机设备,该方法中的应用开发终端不是直接对应用服务器或者应用客户端进行维护配置,而是通过提供一个独立的中间装置,该装置自动根据应用服务器和应用客户端将应用开发者提供的对象数据转换为包括应用服务器对应格式的对象数据和应用客户端对应格式的对象数据的全量数据,然后将该全量数据中的对应部分发送给应用服务器或者应用客户端,不再需要应用开发者重复配置不同格式的相同数据,降低了应用开发者的开发难度,提高了应用开发效率,同时第一数据格式的对象配置窗口可以是普通用户能够编辑的格式窗口,这样普通用户也可以参与应用开发测试,加快了开发效率。
Description
技术领域
本申请涉及应用维护领域,具体涉及一种应用配置方法及装置、计算机设备。
背景技术
随着云技术的发展,基于云技术的各种应用,例如游戏应用、即时通讯应用的产业规模的不断扩大,游戏玩家或者软件使用者等用户的人数、在线时长、应用程序和数据复杂度也变得越来越高。
为了保证应用的高可用性和用户粘度,应用开发者需要在应用预研、开发、测试和线上运营期间,需要对应用内对象(例如游戏应用内的虚拟角色、即时通讯应用内的虚拟物品等)的对象数据进行增加、删除和修改等各种维护配置。
在实际应用中,应用服务器和应用客户端往往使用不同的开发环境搭建,例如服务器内的对象数据是bin格式,客户端内的对象数据则是Json格式,由于应用服务器和应用客户端内的对象数据等需要保持一致,那么应用开发者需要针对应用服务器和应用客户端分别配置不同格式的对象数据,应用开发效率低。
申请内容
本申请实施例提供一种应用配置方法及装置、计算机设备,以至少解决现有应用开发者需要针对应用服务器和应用客户端分别配置不同格式的相同数据的技术问题。
为解决上述技术问题,本申请实施例提供以下技术方案:
本申请实施例提供一种应用配置方法,其应用于应用开发终端,所述应用配置方法包括:
接收配置维护请求,所述配置维护请求用于对应用内对象的对象数据进行配置;
根据数据配置参数,展示第一数据格式的对象配置窗口;
基于所述对象配置窗口,获取第一数据格式的对象数据;
根据所述第一数据格式的对象数据,生成所述对象数据的全量数据,所述全量数据包括应用服务器对应的第二数据格式的对象数据、以及应用客户端对应的第三数据格式的对象数据;
将所述第二数据格式的对象数据发送至应用服务器,以使得所述应用服务器基于所述第二数据格式的对象数据进行对象参数更新;
将所述第三数据格式的对象数据发送至应用客户端,以使得所述应用客户端基于所述第三数据格式的对象数据进行对象参数更新。
本申请实施例提供一种应用配置装置,其应用于应用开发终端,所述应用配置装置包括:
接收模块,用于接收配置维护请求,所述配置维护请求用于对应用内对象的对象数据进行配置;
展示模块,用于根据数据配置参数,展示第一数据格式的对象配置窗口;
获取模块,用于基于所述对象配置窗口,获取第一数据格式的对象数据;
转换模块,用于根据所述第一数据格式的对象数据,生成所述对象数据的全量数据,所述全量数据包括应用服务器对应的第二数据格式的对象数据、以及应用客户端对应的第三数据格式的对象数据;
服务器通信模块,用于将所述第二数据格式的对象数据发送至应用服务器,以使得所述应用服务器基于所述第二数据格式的对象数据进行对象参数更新;
客户端通信模块,用于将所述第三数据格式的对象数据发送至应用客户端,以使得所述应用客户端基于所述第三数据格式的对象数据进行对象参数更新。
本申请实施例提供一种计算机设备,其包括处理器和存储器,存储器存储有多条指令,指令适于处理器进行加载,以执行上述方法中的步骤。
本申请实施例提供一种计算机可读存储介质,计算机可读存储介质存储有多条指令,指令适于处理器进行加载,以执行上述方法中的步骤。
本申请实施例提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中;计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述方法中的步骤。
本申请实施例提供了一种应用配置方法及装置、计算机设备,在该方法中,应用开发终端在接收配置维护请求后,根据数据配置参数,展示第一数据格式的对象配置窗口,基于所述对象配置窗口,获取第一数据格式的对象数据,根据所述第一数据格式的对象数据,生成所述对象数据的全量数据,所述全量数据包括应用服务器对应的第二数据格式的对象数据、以及应用客户端对应的第三数据格式的对象数据,之后将所述第二数据格式的对象数据发送至应用服务器,以使得所述应用服务器基于所述第二数据格式的对象数据进行对象参数更新,将所述第三数据格式的对象数据发送至应用客户端,以使得所述应用客户端基于所述第三数据格式的对象数据进行对象参数更新;由于本申请中的应用开发终端不是直接对应用服务器或者应用客户端进行维护配置,而是通过提供一个独立的中间装置,该装置自动根据应用服务器和应用客户端将应用开发者提供的对象数据转换为包括应用服务器对应格式的对象数据和应用客户端对应格式的对象数据的全量数据,然后将该全量数据中的对应部分发送给应用服务器或者应用客户端,不再需要应用开发者重复配置不同格式的相同数据,降低了应用开发者的开发难度,提高了应用开发效率,同时第一数据格式的对象配置窗口可以是普通用户能够编辑的格式窗口,例如表格xlsx格式的窗口,这样普通用户也可以参与应用开发测试,加快了开发效率,解决了现有应用开发者需要针对应用服务器和应用客户端分别配置不同格式的相同数据的技术问题。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的应用***的组网示意图。
图2是本申请实施例提供的应用配置方法的第一种流程示意图。
图3是本申请实施例提供的应用配置方法的第二种流程示意图。
图4是本申请实施例提供的应用配置方法的第三种流程示意图。
图5是本申请实施例提供的应用配置装置的结构示意图。
图6是本申请实施例提供的计算机设备的结构示意图。
图7a至图7c是本申请实施例提供的界面示意图。
图8a至图8e是本申请实施例提供的转档工具以及转档过程示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本申请实施例中,应用内的对象可以是应用中所有可以编辑参数的虚拟对象,例如虚拟游戏角色、游戏场景中的虚拟物体等等,对象的对象数据可以是该对象相关的一些展示数据、交互数据等,例如以红色显示的显示数据,是否可以被摧毁、角色血量、攻击力等各种交互数据。数据定义数据可以是指定义对象包括哪些对象数据种类的定义数据,例如可以是定义角色包括防御值、血量、角色标识等对象数据类型的互动数据定义数据等。规则定义数据可以是指定义应用规则的一些数据,例如定义攻击力和防御之间的抵消比例的伤害规则定义数据。自定义数据可以是指一些与对象无关联关系的定义数据,例如可以定义所有虚拟角色的血上限不能超过1000等、在角色死亡之后所有景物灰色显示等一些对应用内某一类型的所有对象都生效的定义数据。
在本申请实施例中,应用开发终端与应用服务器/应用客户端的工作环境不同,例如应用开发终端一般可以是windows***,而应用服务器的工作环境则可以是红旗linux***,应用客户端的工作环境则可以是安卓***或者鸿蒙***等,不同工作环境会导致对象数据、定义数据或者自定义数据的存储和运行格式的不同,下文将以具体的场景进行详细介绍。
请参阅图1,图1为本申请实施例所提供的应用***的场景示意图,该***可以包括用户侧设备以及服务侧设备,用户侧设备与服务侧设备通过各种网关组成的互联网等方式连接,不再赘述,其中,用户侧设备包括多个终端11,服务侧设备包括多个服务器12;其中:
终端11包括但不局限于手机、平板等便携终端,以及电脑、查询机、广告机等固定终端,是用户可以使用并操作的服务端口,在本申请中,终端为用户提供游戏、聊天等各种功能客户端(即上文中的应用客户端)的工作场景;为便于下文说明,将终端11定义为应用开发终端11a和用户终端11b,应用开发终端11a(即本申请中的应用开发终端)用于应用开发者等用户进行对象的对象数据的配置、数据定义和规则定义等数据的配置,而用户终端11b则安装有各种应用客户端,用于用户实现各应用客户端对应的业务等等;
服务器12为用户提供各种业务服务或者服务支持,包括业务服务器12a、接口服务器12b等,其中,业务服务器12a用于提供游戏、即时通讯服务等各种服务,接口服务器12b用于提供数据转发服务,为其他业务进行数据支持等。
在本申请中,在需要对应用内的对应的对象数据进行新增、删除、修改等配置维护时,例如当应用开发者根据用户反映认为某游戏内的某英雄角色的攻击力过高时,可以通过对该英雄的对象数据中的攻击力值进行配置维护,此时应用开发者使用应用开发终端11a进行第一数据格式的对象数据的配置,应用开发终端11a根据所述第一数据格式的对象数据,生成所述对象数据的全量数据,所述全量数据包括应用服务器对应的第二数据格式的对象数据、以及应用客户端对应的第三数据格式的对象数据,之后通过接口服务器将所述第二数据格式的对象数据发送至应用服务器,以使得所述应用服务器基于所述第二数据格式的对象数据进行对象参数更新,通过接口服务器将所述第三数据格式的对象数据发送至应用客户端,以使得所述应用客户端基于所述第三数据格式的对象数据进行对象参数更新。
在本申请中,在需要对应用内的一些规则进行新增、删除、修改等配置维护时,例如当应用开发者根据用户反映认为某游戏的攻击力和防御力抵消不合理时,比如当前游戏的攻击力和防御力抵消比例为1:1,用户普遍反映攻击力大幅增大导致角色掉血厉害时,可以将游戏的攻击力和防御力抵消比例调整为1.5:1,此时可以通过对该游戏中的伤害规则进行配置维护,此时应用开发者使用应用开发终端11a进行第四数据格式的规则定义数据的配置,应用开发终端11a将所述第四数据格式的定义数据,转换为跨平台数据格式下的通用定义数据;通过接口服务器将所述通用定义数据发送至应用服务器,以使得所述应用服务器基于所述通用定义数据生成对应***下的定义数据并根据所述定义数据和自定义数据中的至少一种生成用于检测对象数据有效性的交叉检测数据;通过接口服务器将所述通用定义数据发送至应用客户端,以使得所述应用客户端基于所述通用定义数据生成对应***下的定义数据。
在本申请中,在需要对应用内对象的对象数据的类型等进行新增、删除、修改等配置维护时,例如当应用开发者根据用户反映认为需要为不同英雄设置不同的速度时,此时可以通过对该游戏中对象的对象数据的数据类型进行配置维护,此时应用开发者使用应用开发终端11a进行第四数据格式的数据定义数据的配置,应用开发终端11a将所述第四数据格式的定义数据,转换为跨平台数据格式下的通用定义数据;通过接口服务器将所述通用定义数据发送至应用服务器,以使得所述应用服务器基于所述通用定义数据生成对应***下的定义数据并根据所述定义数据和自定义数据中的至少一种生成用于检测对象数据有效性的交叉检测数据;通过接口服务器将所述通用定义数据发送至应用客户端,以使得所述应用客户端基于所述通用定义数据生成对应***下的定义数据。
需要说明的是,图1所示的***场景示意图仅仅是一个示例,本申请实施例描述的服务器以及场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着***的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
图2是本申请实施例提供的应用配置方法的第一种流程示意图,请参阅图2,该应用配置方法包括以下步骤:
201:接收配置维护请求。
在一种实施例中,所述配置维护请求用于对应用内对象的对象数据进行配置;例如,应用开发终端向应用开发者展示如图7a所示的用户界面,该用户界面包括对象数据配置控件S1和数据定义/规则定义配置控件S2,开发者点击对象数据配置控件S1时,应用开发终端判断接收到配置维护请求,此时应用开发者需要对应用内对象的对象数据进行配置。
202:根据数据配置参数,展示第一数据格式的对象配置窗口。
在一种实施例中,数据配置参数可以由数据定义数据直接配置,例如在某一时刻,游戏的数据定义数据的内容是定义英雄的对象数据包括英雄标识、血量、攻击力、防御力,那么此时展示如图7b所示的对象配置窗口,该配置窗口内的配置项基于表格xlsx格式实现,即第一数据格式为xlsx格式。
203:基于所述对象配置窗口,获取第一数据格式的对象数据。
在一种实施例中,开发者在图7b所示的窗口内完成数据配置,此时应用开发终端基于所述对象配置窗口,获取第一数据格式的英雄1的对象数据:英雄1、血量60、攻击力80、防御力12。
204:根据所述第一数据格式的对象数据,生成所述对象数据的全量数据。
在一种实施例中,所述全量数据包括应用服务器对应的第二数据格式的对象数据、以及应用客户端对应的第三数据格式的对象数据,例如应用服务器对应的protobuf序列化数据的对象数据(后缀为.bin),应用客户端对应的json数据格式的对象数据(后缀为.json)。
在一种实施例中,本步骤包括:将所述第一数据格式的对象数据转换为所述应用开发终端对应操作***下的结构化数据;根据所述应用服务器对应操作***下的配置数据格式,将所述结构化数据转换为所述第二数据格式的对象数据;根据所述应用客户端对应操作***下的配置数据格式,将所述结构化数据转换为所述第三数据格式的对象数据。例如,应用开发终端本地的数据为二进制数据,此时本步骤包括:将xlsx格式的对象数据(英雄1、血量60、攻击力80、防御力12)转换为本地二进制数据,之后在容器中为本地二进制数据分配句柄,作为托管对象,将本地二进制数据封送到托管对象内,在托管对象内对本地二进制数据进行类型转换,转换为结构体类型数据之后释放句柄,得到应用开发终端对应操作***下的结构化数据,然后根据应用服务器和应用客户端对数据的需要对结构化数据进行编译,得到应用服务器对应的第二数据格式的对象数据、以及应用客户端对应的第三数据格式的对象数据,下文将结合附图进行详细说明。
在一种实施例中,存在多个应用开发终端的情况,对应了就会存在多个应用开发者使用不同的终端对数据定义和规则定义进行配置维护的情况,为了使得当前终端的对象数据符合所有开发者的定义,本申请实施例还引入了交叉检测的机制,此时本步骤在所述将所述第一数据格式的对象数据转换为所述应用开发终端对应操作***下的结构化数据的步骤之后,还包括:获取交叉检测数据,所述交叉检测数据包括所述应用服务器根据规则定义数据、数据定义数据以及自定义数据生成的可运行数据;运行所述交叉检测数据,对所述应用开发终端对应操作***下的结构化数据进行检测;若检测通过,则执行所述第二数据格式的对象数据以及所述第三数据格式的对象数据对应的转换步骤;若检测未通过,则提醒开发者数据定义或者规则定义存在更新,需要重新进行对象数据的配置。
205:将所述第二数据格式的对象数据发送至应用服务器,以使得所述应用服务器基于所述第二数据格式的对象数据进行对象参数更新。
本步骤涉及对象数据的发送,可以由应用服务器主动请求,也可以由开发终端周期性或者实时推送,在一种实施例中,本步骤包括:在推送条件满足时,例如推送条件为实时推送,那么在生成新的对象数据后即满足推送条件,根据预先存储的所述应用服务器的通信地址,将所述第二数据格式的对象数据发送至所述应用服务器;或者,在接收到所述应用服务器发送的服务器对象数据变更获取请求后,基于所述服务器对象数据变更获取请求对应的请求响应,将所述第二数据格式的对象数据发送至所述应用服务器。
206:将所述第三数据格式的对象数据发送至应用客户端,以使得所述应用客户端基于所述第三数据格式的对象数据进行对象参数更新。
本步骤涉及对象数据的发送,可以由应用客户端主动请求,也可以由开发终端周期性或者实时推送,在一种实施例中,本步骤包括:在推送条件满足时,根据预先存储的所述应用客户端的通信地址,将所述第三数据格式的对象数据发送至所述应用客户端;或者,在接收到所述应用客户端发送的客户端对象数据变更获取请求后,基于所述客户端对象数据变更获取请求对应的请求响应,将所述第三数据格式的对象数据发送至所述应用客户端。
以上步骤完成了对象数据的配置维护,该对象数据的配置维护在实际的应用开发维护中所占据的比例较大,但是也存在一些对数据定义/规则定义进行配置维护的场景,现针对这些场景进行说明。
在一种实施例中,图2所示的实施例还包括以下步骤:
接收定义维护请求。
在一种实施例中,所述定义维护请求用于对应用内对象的数据配置参数的数据定义或者规则定义中的至少一种进行配置。例如,应用开发终端向应用开发者展示如图7a所示的用户界面,该用户界面包括对象数据配置控件S1和数据定义/规则定义配置控件S2,开发者点击数据定义/规则定义配置控件S2时,应用开发终端判断接收到定义维护请求,此时应用开发者需要对应用的数据定义/规则定义进行配置维护。
展示第四数据格式的定义配置窗口。
在一种实施例中,应用开发终端展示如图7c所示的定义配置窗口,该配置窗口内的配置项基于可扩展标记语言xml格式实现,即第四数据格式为xml格式。应用开发者可以基于xml格式进行数据定义或者规则定义的配置维护。
基于所述定义配置窗口,获取第四数据格式的定义数据。
在一种实施例中,所述定义数据包括数据定义数据或规定定义数据中的至少一种;应用开发终端基于图7c所示的定义配置窗口可以获取xml格式的数据定义数据或规定定义数据。
将所述第四数据格式的定义数据,转换为跨平台数据格式下的通用定义数据。
在一种实施例中,应用开发终端自动将xml格式的数据定义数据或规定定义数据,转换为protobuf格式(Google开发的跨语言,跨平台的序列化格式数据表达形式及其扩展机制)的数据定义与规则定义数据(后缀为.proto的文件),形成对应的宏、数据类型和结构体对象。
将所述通用定义数据发送至应用服务器,以使得所述应用服务器基于所述通用定义数据生成对应***下的定义数据并根据所述定义数据和自定义数据中的至少一种生成用于检测对象数据有效性的交叉检测数据。
本步骤涉及定义数据的发送,可以由应用服务器主动请求,也可以由开发终端周期性或者实时推送,在一种实施例中,本步骤包括:在推送条件满足时,根据预先存储的所述应用服务器的通信地址,将所述通用定义数据发送至所述应用服务器;或者,在接收到所述应用服务器发送的服务器定义数据变更获取请求后,基于所述服务器定义数据变更获取请求对应的请求响应,将所述通用定义数据发送至所述应用服务器。在此基础上,应用服务器利用协议转换工具将接收到的新的protobuf格式的数据定义数据/规则定义数据转换为本地可读的协议代码,例如Golang(服务器实际实现所用的并行式编程语言)格式的文件,之后服务器将新增的数据文件添加到服务器的数据管理模块中,自动化生成对应的数据管理代码,如果有特殊需要人为干预的数据定义或者规则定义,则人为在自动生成代码的基础上,继承并扩展对应接口内容进行编辑得到最新的交叉检测规则,完成数据定义和规则定义在应用服务器的数据维护。
将所述通用定义数据发送至应用客户端,以使得所述应用客户端基于所述通用定义数据生成对应***下的定义数据。
本步骤涉及定义数据的发送,可以由应用客户端主动请求,也可以由开发终端周期性或者实时推送,在一种实施例中,本步骤包括:在推送条件满足时,根据预先存储的所述应用客户端的通信地址,将所述通用定义数据发送至所述应用客户端;或者,在接收到所述应用客户端发送的客户端定义数据变更获取请求后,基于所述客户端定义数据变更获取请求对应的请求响应,将所述通用定义数据发送至所述应用客户端。在此基础上,应用客户端利用协议转换工具将其转换为本地可读的协议代码,例如JavaScript(客户端开发所用的编程语言)格式的文件,完成数据定义和规则定义在应用客户端的数据维护。
本实施例提供了一种应用配置方法,由于本申请中的应用开发终端不是直接对应用服务器或者应用客户端进行维护配置,而是通过提供一个独立的中间装置,该装置自动根据应用服务器和应用客户端将应用开发者提供的对象数据转换为包括应用服务器对应格式的对象数据和应用客户端对应格式的对象数据的全量数据,然后将该全量数据中的对应部分发送给应用服务器或者应用客户端,不再需要应用开发者重复配置不同格式的相同数据,降低了应用开发者的开发难度,提高了应用开发效率。
为了便于下文说明,现结合附图以及具体应用场景对本申请做进一步的诠释说明。
如图8a所示,在一种具体应用场景中,本申请提供的转档工具(即上文中的应用配置装置)实现对象数据内容转换工作流、交叉检查工作流、数据定义/规则定义数据转换工作流等,具体的,转档工具对游戏设计者(即上文中的应用开发者)暴露数据定义/规则定义修改和对象数据修改的编辑接口,即“文档编辑入口部分”(通过图7a至图7c所示的窗口实现)。游戏设计者需要编辑两部分的内容,一是数据定义和规则定义,这部分是用xml各种定义的格式化数据,例如定义“英雄属性”这一数据,包含“英雄ID”,“攻击力”、“血量”、“防御”等,另一部分是xlsx数据,例如,具体填入英雄1,英雄2的相关属性值。
转档工具对应的程序运行后,数据定义/规则定义数据转换工作流首先自动将包括数据定义数据/规则定义数据的xml文件,转换为protobuf格式的数据定义/规则定义数据文件(.proto文件),形成对应的宏、数据类型和结构体对象。如果数据定义/规则定义数据文件有变化,则游戏服务器、游戏客户端均会拉取对应的数据定义/规则定义数据文件(.proto文件),利用各自环境中的协议转换工具转换为本地可读的协议代码(例如,服务器转换为Golang软件对应的.go文件,客户端转换为JavaScript软件对应的.js文件)。同时,如图8a所示,如果有新增的数据定义/规则定义数据文件(.proto文件),服务器启动代码生成自动化工作流将新增的数据档添加到服务器的数据管理模块中,自动化生成对应的数据管理代码,如果有特殊需要人为干预的逻辑,则人为在自动生成代码的基础上,继承并扩展对应接口内容得到服务器数据档管理类文件(.go)。对于新的数据配置档,或者有新的检查规则的情况下,例如英雄血量不得超过1000,则在服务器端,由人工加入交叉检查对应的代码模块,交叉检查模块可以跨不同的数据配置档进行检查,通过交叉编译(目前服务器运行在Linux***下,转档工具一般运行在Windows环境下,所以需要交叉编译),生成交叉检查规则。
转档工具拉取交叉检查规则,进入交叉检查工作流,如果只有对象数据变化,而没有交叉检查规则的变化(例如其他开发终端或者用户没有生成新的数据定义/规则定义或者自定义规则)时,则可以不用去服务器拉取。转档工具将xlsx数据经过交叉检查工作流,转换为结构化数据,生成全量数据(包括protobuf序列化数据或Json数据),提供给服务器和客户端运行时使用,这里的数据是全量数据,在数据定义与规则定义数据中,定义了服务器和客户端所需数据的范围,都是全面全量数据的子集。
具体的,数据定义/规则定义数据是用xml结构化语言进行表述的。
其中,规则定义在convlist.xml文件中,转档工具获取到的规则定义数据可以如图8b所示,其中ConvList节点是根节点,在每一个规则定义对应的数据档中,CommNode节点代表一组数据档,每个ResNode节点代表一个数据档,Meta节点是关联的数据定义,EntryMapFile节点是关联的数据定义文件,ExcelFile表示该数据档数据内容对应的Xlsx文件,IncludeSheet是该Xlsx文件中的页签,BinFile是转换后的结构化数据文件。
其中,数据定义在cs_res.xml文件中,转档工具获取到的数据定义数据可以如图8c所示,其中metalib为根节点,macrosgroup节点为枚举定义,macro节点为宏定义,struct节点为一个结构化数据,其中的entry节点表示结构化数据中的一个字段。每个macro节点或者entry节点下,name节点代表结构化数据中的字段名,desc是注释描述信息,value是数值,type是数据类型,cname代表关联的xslx文件里的列名。数据定义支持复杂结构,例如数组、对象嵌套等。
之后,转档工具会将数据定义数据与规则定义数据,转换为protobuf格式的协议文件等,转换后的协议文件内容可以如图8d所示。如果数据定义与规则定义数据的xml文件有错误,这一步转换会直接失败。本实施例使用protobuf是为了能利用其跨语言跨平台的特性,让服务器和客户端都使用同一套数据协议。转换成功后,服务器和客户端会拉取生成的protobuf文件(.proto文件),转换为对应编程语言的文件,例如服务器采用Golang语言,会将protobuf文件转换为.go文件,客户端采用JavaScript语言,会将protobuf文件转为.js文件。
服务器拉取数据定义与规则文件后,如果有新添加的数据定义或者规则定义,或原有数据定义或者规则定义有修改,则会根据数据定义或者规则定义和代码模板,进行数据管理代码的自动生成,其中,代码模板可以如图8e所示;该代码会自动生成数据管理所需的类,数据结构和方法,例如初始化的init方法,交叉检查的CrossFileCheck方法,以及数据配置档注册的LoadConfigs方法等,如果有自定义的内容,则需要服务器编程人员继承自动生成的基类,重写相关方法,自动代码生成极大降低了服务器开发编写重复代码的工作成本,让开发人员可以只关注需要特殊处理的功能内容。
服务器在自动生成数据处理代码后,可以在CrossFileCheck中添加交叉检查规则,当交叉检查时,可以跨不同的数据档进行协同检查。交叉检查的代码,既在游戏服务器初始化时生效,也在转档工具运行时生效。如果游戏服务器初始化时,交叉检查不通过,则会报错。转档工具运行时交叉检查不通过,也会报错并终止转档流程。
服务器通过交叉编译生成独立的交叉检查工具,转档工具拉取之后,在对象数据转档时使用。
具体的,针对对象数据的处理包括:转档工具根据数据定义和规则定义将可编辑文本形式的xlsx文件转换为结构化数据,例如protobuf的bin文件或者Json文件。服务器和客户端读取结构化数据,即可在运行时使用这些数据。如果在运行过程中,需要修改数据,则重新通过转档工具生成结构化数据,服务器、客户端程序通过中断信号等方式,通知正在运行的进程,重新加载新的数据,以此达到不停机热更新的目的。
在一种实施例中,转档工具可以支持更多的数据交互格式,以及支持更多中的客户端或服务器编程语言,例如python,C++等;转档工具可以独立运行,除了数据编辑,以及服务器自定义数据操作之外,整个数据档(包括对象数据、数据定义/规则定义数据)转档工作流可以完全自动化运行,例如基于流水线或者自动化管线来运行工作流;转档工具可以具备更为细化的功能,例如自动化纠错、版本控制相关功能等功能。
在上述实施例中,游戏设计者可以添加数据定义和规则定义数据,添加或修改数据配置档,然后自动启动转档程序,将xml格式的数据定义和规则定义将转换为程序可读的数据定义与规则定义协议文件。如果数据定义和规则定义发生变化,游戏服务器和客户端需要更新数据定义与规则协议,服务器端会自动生成新的数据处理模块代码,如果有需要人为干预的规则,还需要人工干预,服务器端编译后生成交叉检查工具,转档程序拉取交叉检查工具,进行交叉检查。转档工具根据数据定义和规则定义,以及交叉检查工具,生成程序可读的结构化数据;游戏服务器和客户端,根据规则从转换后的全量数据集中,获取自己需要读取的数据,在程序运行过程中使用,在服务器、客户端程序运行过程中,如果发生数据变化,则根据前面的步骤重新生成数据,程序重载新数据,替换旧数据,完成热更新。
基于上述描述可知,本申请实施例的有益效果包括:客户端和服务器共用同一套独立的工具,保证数据一致性,以及数据修改成本最小化。数据编辑采用文本格式,具有较好的可读性和可维护性。程序运行使用转换后的格式化数据,降低性能开销;数据档可以自定义转化规则,例如数据格式、客户端/服务器专用或共用、数据关联关系等,不同的数据档可以复用相同的数据格式定义,精简规则复杂性;服务器自动生成数据管理代码,只需要添加极少的自定义功能,即可满足使用,服务器根据实际用况,自定义编写、生成交叉检查规则,可以反向提供给数据配置档工具使用,以此保证数据配置的合法性和正确性;操作便利,自动化集成程度高,可以形成自动化流水线作业,对游戏设计者屏蔽底层细节,达到一键更改数据的效果。
在上述描述的基础上,现结合应用开发的不同阶段对应的场景对本申请实施例进行详细描述。
场景1
在本实施例中,以游戏等应用处于内测阶段为例,应用开发者团队需要集体对游戏数据进行配置维护,不同开发者往往会进行相同类型对象的数据定义/规则定义、对象数据、自定义数据等配置。应用开发终端内已经存储有应用服务器和应用客户端的通信地址。
在本实施例以应用服务器为游戏服务器、应用客户端为游戏客户端、存在多个应用开发终端为例进行说明。
如图3是本申请实施例提供的应用配置方法的第二种流程示意图,请参阅图3,该应用配置方法包括以下步骤:
步骤301至步骤305:应用开发终端1根据用户设置生成定义数据对应的通用定义数据,并分别发送至游戏服务器和游戏客户端。
具体的,应用开发终端1向游戏开发者1展示如图7a所示的用户界面,该用户界面包括对象数据配置控件S1和数据定义/规则定义配置控件S2,开发者点击数据定义/规则定义配置控件S2时,应用开发终端判断接收到定义维护请求,此时应用开发者需要对应用的数据定义/规则定义进行配置维护。之后,应用开发终端1展示如图7c所示的定义配置窗口,该配置窗口内的配置项基于可扩展标记语言xml格式实现,应用开发者可以基于xml格式进行数据定义或者规则定义的配置维护,应用开发终端基于图7c所示的定义配置窗口可以获取xml格式的数据定义数据或规定定义数据。应用开发终端1自动将xml格式的数据定义数据或规定定义数据,转换为protobuf格式的数据定义与规则定义数据,形成对应的宏、数据类型和结构体对象。由于应用开发终端1存储有游戏服务器和游戏客户端的通信地址,应用开发终端1将protobuf格式的数据定义与规则定义数据分别发送至游戏服务器和游戏客户端。
步骤306至步骤309:游戏服务器根据新的定义数据生成本地代码,并生成交叉检查规则,之后同步到所有的应用开发终端。
具体的,服务器在获取到新的protobuf定义数据之后,利用本地环境中的协议转换工具将protobuf定义数据转换为Golang软件对应的.go文件,同时启动代码生成自动化工作流将新增的数据档添加到服务器的数据管理模块中,自动化生成对应的数据管理代码,如果有特殊需要人为干预的逻辑,则获取人为在自动生成代码的基础上所更新的内容得到服务器数据档管理类文件(.go)。对于新的数据配置档,或者有新的检查规则的情况下,例如英雄血量不得超过1000,则在服务器端获取开发者加入的自定义数据,得到交叉检查对应的代码模块,交叉检查模块可以跨不同的数据配置档进行检查,通过交叉编译生成交叉检查规则,并同步发送到所有的应用开发终端。
步骤310:游戏客户端在获取到新的protobuf定义数据之后,利用本地环境中的协议转换工具将protobuf定义数据转换为JavaScript软件对应的.js文件,完成数据定义和规则定义的更新。
步骤311至步骤316:应用开发终端2根据用户设置生成对象数据对应的全量数据,并分别发送至游戏服务器和游戏客户端。
具体的,应用开发终端2向应用开发者展示如图7a所示的用户界面,开发者点击对象数据配置控件S1时,应用开发终端判断接收到配置维护请求,此时应用开发者需要对应用内对象的对象数据进行配置。之后应用开发终端2展示如图7b所示的对象配置窗口,该配置窗口内的配置项基于表格xlsx格式实现,此时应用开发终端基于所述对象配置窗口,获取xlsx的英雄1的对象数据:英雄1、血量60、攻击力80、防御力12;之后应用开发终端2将xlsx格式的对象数据(英雄1、血量60、攻击力80、防御力12)转换为本地二进制数据并得到对应的结构化数据,然后根据交叉检查规则对结构化数据进行交叉检查,若检查通过则生成全量数据(包括protobuf序列化数据的.bin对象数据和json数据格式的.json对象数据),若检查未通过,则直接返回配置失败响应。之后,应用开发终端2根据游戏服务器的通信地址,将.bin对象数据发送至游戏服务器,游戏服务器在接收到.bin对象数据后即可在运行时使用这些数据,应用开发终端2根据游戏客户端的通信地址,将.json对象数据发送至游戏客户端,游戏客户端在接收到.json对象数据后即可在运行时使用这些数据,完成对象数据的热更新。
场景2
在本实施例中,以游戏等应用处于公测阶段为例,仅需要一个应用开发者对游戏数据进行配置维护即可,并且往往是针对游戏内对象的对象数据进行配置维护。由于公测范围大,应用开发终端内仅存储有应用服务器的地址和应用商店服务器的通信地址。
在本实施例以应用服务器为游戏服务器、应用客户端为游戏客户端、存在应用商店服务器为例进行说明。
如图4是本申请实施例提供的应用配置方法的第三种流程示意图,请参阅图4,该应用配置方法包括以下步骤:
步骤401至步骤407:应用开发终端根据用户设置生成对象数据对应的全量数据,并分别发送至游戏服务器和应用商店服务器。
具体的,应用开发终端向应用开发者展示如图7a所示的用户界面,开发者点击对象数据配置控件S1时,应用开发终端判断接收到配置维护请求,此时应用开发者需要对应用内对象的对象数据进行配置。之后应用开发终端展示如图7b所示的对象配置窗口,该配置窗口内的配置项基于表格xlsx格式实现,此时应用开发终端基于所述对象配置窗口,获取xlsx的英雄1的对象数据:英雄1、血量60、攻击力80、防御力12;之后应用开发终端将xlsx格式的对象数据(英雄1、血量60、攻击力80、防御力12)转换为本地二进制数据并得到对应的结构化数据,然后根据交叉检查规则对结构化数据进行交叉检查,若检查通过则生成全量数据(包括protobuf序列化数据的.bin对象数据和json数据格式的.json对象数据),若检查未通过,则直接返回配置失败响应。之后,应用开发终端根据游戏服务器的通信地址,将.bin对象数据发送至游戏服务器,游戏服务器在接收到.bin对象数据后即可在运行时使用这些数据,应用开发终端根据游戏客户端的通信地址,将.json对象数据发送至应用商店服务器,应用商店服务器在接收到.json对象数据后即可在游戏应用更新包内进行添加,完成游戏数据的更新。
步骤408至步骤409:游戏客户端从应用商店服务器获取更新后的游戏安装包,并进行游戏更新。
具体的,游戏客户端在启动时,或者在运行时,从应用商店服务器获取更新后的游戏安装包,得到.json对象数据后即可在运行时使用这些数据,完成对象数据的热更新。
为了实现上述的方法,本申请还提供了对应的应用配置装置,现结合附图对本申请提供的应用配置装置进行说明。
相应的,图5是本申请实施例提供的应用配置装置的结构示意图,请参阅图5,该应用配置装置包括以下模块:
接收模块501,用于接收配置维护请求,所述配置维护请求用于对应用内对象的对象数据进行配置;
展示模块502,用于根据数据配置参数,展示第一数据格式的对象配置窗口;
获取模块503,用于基于所述对象配置窗口,获取第一数据格式的对象数据;
转换模块504,用于根据所述第一数据格式的对象数据,生成所述对象数据的全量数据,所述全量数据包括应用服务器对应的第二数据格式的对象数据、以及应用客户端对应的第三数据格式的对象数据;
服务器通信模块505,用于将所述第二数据格式的对象数据发送至应用服务器,以使得所述应用服务器基于所述第二数据格式的对象数据进行对象参数更新;
客户端通信模块506,用于将所述第三数据格式的对象数据发送至应用客户端,以使得所述应用客户端基于所述第三数据格式的对象数据进行对象参数更新。
在一种实施例,转换模块504具体用于:将所述第一数据格式的对象数据转换为所述应用开发终端对应操作***下的结构化数据;根据所述应用服务器对应操作***下的配置数据格式,将所述结构化数据转换为所述第二数据格式的对象数据;根据所述应用客户端对应操作***下的配置数据格式,将所述结构化数据转换为所述第三数据格式的对象数据。
在一种实施例,转换模块504在所述将所述第一数据格式的对象数据转换为所述应用开发终端对应操作***下的结构化数据的步骤之后,还用于:获取交叉检测数据,所述交叉检测数据包括所述应用服务器根据规则定义数据、数据定义数据以及自定义数据生成的可运行数据;运行所述交叉检测数据,对所述应用开发终端对应操作***下的结构化数据进行检测;若检测通过,则执行所述第二数据格式的对象数据以及所述第三数据格式的对象数据对应的转换步骤。
在一种实施例,服务器通信模块505具体用于实现以下方式中的至少一种:在推送条件满足时,根据预先存储的所述应用服务器的通信地址,将所述第二数据格式的对象数据发送至所述应用服务器;或者,在接收到所述应用服务器发送的服务器对象数据变更获取请求后,基于所述服务器对象数据变更获取请求对应的请求响应,将所述第二数据格式的对象数据发送至所述应用服务器。
在一种实施例,客户端通信模块506具体用于实现以下方式中的至少一种:在推送条件满足时,根据预先存储的所述应用客户端的通信地址,将所述第三数据格式的对象数据发送至所述应用客户端;或者,在接收到所述应用客户端发送的客户端对象数据变更获取请求后,基于所述客户端对象数据变更获取请求对应的请求响应,将所述第三数据格式的对象数据发送至所述应用客户端。
在一种实施例,所述接收模块501还用于接收定义维护请求,所述定义维护请求用于对应用内对象的数据配置参数的数据定义或者规则定义中的至少一种进行配置;所述展示模块502还用于展示第四数据格式的定义配置窗口;所述获取模块503还用于基于所述定义配置窗口,获取第四数据格式的定义数据,所述定义数据包括数据定义数据或规定定义数据中的至少一种;所述转换模块504还用于将所述第四数据格式的定义数据,转换为跨平台数据格式下的通用定义数据;所述服务器通信模块505还用于将所述通用定义数据发送至应用服务器,以使得所述应用服务器基于所述通用定义数据生成对应***下的定义数据并根据所述定义数据和自定义数据中的至少一种生成用于检测对象数据有效性的交叉检测数据;所述客户端通信模块506还用于将所述通用定义数据发送至应用客户端,以使得所述应用客户端基于所述通用定义数据生成对应***下的定义数据。
在一种实施例,服务器通信模块505具体用于实现以下方式中的至少一种:在推送条件满足时,根据预先存储的所述应用服务器的通信地址,将所述通用定义数据发送至所述应用服务器;或者,在接收到所述应用服务器发送的服务器定义数据变更获取请求后,基于所述服务器定义数据变更获取请求对应的请求响应,将所述通用定义数据发送至所述应用服务器。
在一种实施例,客户端通信模块506具体用于实现以下方式中的至少一种:在推送条件满足时,根据预先存储的所述应用客户端的通信地址,将所述通用定义数据发送至所述应用客户端;或者,在接收到所述应用客户端发送的客户端定义数据变更获取请求后,基于所述客户端定义数据变更获取请求对应的请求响应,将所述通用定义数据发送至所述应用客户端。
相应的,本申请实施例还提供一种计算机设备,该计算机设备包括服务器或者终端(安装有客户端)等,以实现上述任一实施例中的应用配置装置。
如图6所示,该计算机设备可以包括射频(RF,Radio Frequency)电路601、包括有一个或一个以上计算机可读存储介质的存储器602、输入单元603、显示单元604、传感器605、音频电路606、无线保真(WiFi,Wireless Fidelity)模块607、包括有一个或者一个以上处理核心的处理器608、以及电源609等部件。本领域技术人员可以理解,图6中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
RF电路601可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器608处理;另外,将涉及上行的数据发送给基站。存储器602可用于存储软件程序以及模块,处理器608通过运行存储在存储器602的软件程序以及模块,从而执行各种功能应用以及数据处理。输入单元603可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
显示单元604可用于显示由用户输入的信息或提供给用户的信息以及计算机设备的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。
计算机设备还可包括至少一种传感器605,比如光传感器、运动传感器以及其他传感器。音频电路606包括扬声器,传声器可提供用户与计算机设备之间的音频接口。
WiFi属于短距离无线传输技术,计算机设备通过WiFi模块607可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图6示出了WiFi模块607,但是可以理解的是,其并不属于计算机设备的必须构成,完全可以根据需要在不改变申请的本质的范围内而省略。
处理器608是计算机设备的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器602内的软件程序和/或模块,以及调用存储在存储器602内的数据,执行计算机设备的各种功能和处理数据,从而对手机进行整体监控。
计算机设备还包括给各个部件供电的电源609(比如电池),优选的,电源可以通过电源管理***与处理器608逻辑相连,从而通过电源管理***实现管理充电、放电、以及功耗管理等功能。
尽管未示出,计算机设备还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,计算机设备中的处理器608会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器602中,并由处理器608来运行存储在存储器602中的应用程序,从而实现以下功能:
接收配置维护请求,所述配置维护请求用于对应用内对象的对象数据进行配置;
根据数据配置参数,展示第一数据格式的对象配置窗口;
基于所述对象配置窗口,获取第一数据格式的对象数据;
根据所述第一数据格式的对象数据,生成所述对象数据的全量数据,所述全量数据包括应用服务器对应的第二数据格式的对象数据、以及应用客户端对应的第三数据格式的对象数据;
将所述第二数据格式的对象数据发送至应用服务器,以使得所述应用服务器基于所述第二数据格式的对象数据进行对象参数更新;
将所述第三数据格式的对象数据发送至应用客户端,以使得所述应用客户端基于所述第三数据格式的对象数据进行对象参数更新。
或者实现以下功能:
接收定义维护请求,所述定义维护请求用于对应用内对象的数据配置参数的数据定义或者规则定义中的至少一种进行配置;
展示第四数据格式的定义配置窗口;
基于所述定义配置窗口,获取第四数据格式的定义数据,所述定义数据包括数据定义数据或规定定义数据中的至少一种;
将所述第四数据格式的定义数据,转换为跨平台数据格式下的通用定义数据;
将所述通用定义数据发送至应用服务器,以使得所述应用服务器基于所述通用定义数据生成对应***下的定义数据并根据所述定义数据和自定义数据中的至少一种生成用于检测对象数据有效性的交叉检测数据;
将所述通用定义数据发送至应用客户端,以使得所述应用客户端基于所述通用定义数据生成对应***下的定义数据。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见上文的详细描述,此处不再赘述。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例提供一种计算机可读存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以实现以下功能:
接收配置维护请求,所述配置维护请求用于对应用内对象的对象数据进行配置;
根据数据配置参数,展示第一数据格式的对象配置窗口;
基于所述对象配置窗口,获取第一数据格式的对象数据;
根据所述第一数据格式的对象数据,生成所述对象数据的全量数据,所述全量数据包括应用服务器对应的第二数据格式的对象数据、以及应用客户端对应的第三数据格式的对象数据;
将所述第二数据格式的对象数据发送至应用服务器,以使得所述应用服务器基于所述第二数据格式的对象数据进行对象参数更新;
将所述第三数据格式的对象数据发送至应用客户端,以使得所述应用客户端基于所述第三数据格式的对象数据进行对象参数更新。
或者实现以下功能:
接收定义维护请求,所述定义维护请求用于对应用内对象的数据配置参数的数据定义或者规则定义中的至少一种进行配置;
展示第四数据格式的定义配置窗口;
基于所述定义配置窗口,获取第四数据格式的定义数据,所述定义数据包括数据定义数据或规定定义数据中的至少一种;
将所述第四数据格式的定义数据,转换为跨平台数据格式下的通用定义数据;
将所述通用定义数据发送至应用服务器,以使得所述应用服务器基于所述通用定义数据生成对应***下的定义数据并根据所述定义数据和自定义数据中的至少一种生成用于检测对象数据有效性的交叉检测数据;
将所述通用定义数据发送至应用客户端,以使得所述应用客户端基于所述通用定义数据生成对应***下的定义数据。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该存储介质中所存储的指令,可以执行本申请实施例所提供的任一种方法中的步骤,因此,可以实现本申请实施例所提供的任一种方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
为此,本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实现方式中提供的方法。例如,实现以下功能:
接收配置维护请求,所述配置维护请求用于对应用内对象的对象数据进行配置;
根据数据配置参数,展示第一数据格式的对象配置窗口;
基于所述对象配置窗口,获取第一数据格式的对象数据;
根据所述第一数据格式的对象数据,生成所述对象数据的全量数据,所述全量数据包括应用服务器对应的第二数据格式的对象数据、以及应用客户端对应的第三数据格式的对象数据;
将所述第二数据格式的对象数据发送至应用服务器,以使得所述应用服务器基于所述第二数据格式的对象数据进行对象参数更新;
将所述第三数据格式的对象数据发送至应用客户端,以使得所述应用客户端基于所述第三数据格式的对象数据进行对象参数更新。
或者实现以下功能:
接收定义维护请求,所述定义维护请求用于对应用内对象的数据配置参数的数据定义或者规则定义中的至少一种进行配置;
展示第四数据格式的定义配置窗口;
基于所述定义配置窗口,获取第四数据格式的定义数据,所述定义数据包括数据定义数据或规定定义数据中的至少一种;
将所述第四数据格式的定义数据,转换为跨平台数据格式下的通用定义数据;
将所述通用定义数据发送至应用服务器,以使得所述应用服务器基于所述通用定义数据生成对应***下的定义数据并根据所述定义数据和自定义数据中的至少一种生成用于检测对象数据有效性的交叉检测数据;
将所述通用定义数据发送至应用客户端,以使得所述应用客户端基于所述通用定义数据生成对应***下的定义数据。
以上对本申请实施例所提供的一种应用配置方法及装置、计算机设备进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种应用配置方法,其特征在于,应用于应用开发终端,所述应用配置方法包括:
接收配置维护请求,所述配置维护请求用于对应用内对象的对象数据进行配置;
根据数据配置参数,展示第一数据格式的对象配置窗口;
基于所述对象配置窗口,获取第一数据格式的对象数据;
根据所述第一数据格式的对象数据,生成所述对象数据的全量数据,所述全量数据包括应用服务器对应的第二数据格式的对象数据、以及应用客户端对应的第三数据格式的对象数据;
将所述第二数据格式的对象数据发送至应用服务器,以使得所述应用服务器基于所述第二数据格式的对象数据进行对象参数更新;
将所述第三数据格式的对象数据发送至应用客户端,以使得所述应用客户端基于所述第三数据格式的对象数据进行对象参数更新。
2.根据权利要求1所述的应用配置方法,其特征在于,所述根据所述第一数据格式的对象数据,生成所述对象数据的全量数据的步骤,包括:
将所述第一数据格式的对象数据转换为所述应用开发终端对应操作***下的结构化数据;
根据所述应用服务器对应操作***下的配置数据格式,将所述结构化数据转换为所述第二数据格式的对象数据;
根据所述应用客户端对应操作***下的配置数据格式,将所述结构化数据转换为所述第三数据格式的对象数据。
3.根据权利要求2所述的应用配置方法,其特征在于,在所述将所述第一数据格式的对象数据转换为所述应用开发终端对应操作***下的结构化数据的步骤之后,还包括:
获取交叉检测数据,所述交叉检测数据包括所述应用服务器根据规则定义数据、数据定义数据以及自定义数据生成的可运行数据;
运行所述交叉检测数据,对所述应用开发终端对应操作***下的结构化数据进行检测;
若检测通过,则执行所述第二数据格式的对象数据以及所述第三数据格式的对象数据对应的转换步骤。
4.根据权利要求1所述的应用配置方法,其特征在于,所述将所述第二数据格式的对象数据发送至应用服务器的步骤,包括以下方式中的至少一种:
在推送条件满足时,根据预先存储的所述应用服务器的通信地址,将所述第二数据格式的对象数据发送至所述应用服务器;
或者,在接收到所述应用服务器发送的服务器对象数据变更获取请求后,基于所述服务器对象数据变更获取请求对应的请求响应,将所述第二数据格式的对象数据发送至所述应用服务器。
5.根据权利要求1所述的应用配置方法,其特征在于,所述将所述第三数据格式的对象数据发送至应用客户端的步骤,包括以下方式中的至少一种:
在推送条件满足时,根据预先存储的所述应用客户端的通信地址,将所述第三数据格式的对象数据发送至所述应用客户端;
或者,在接收到所述应用客户端发送的客户端对象数据变更获取请求后,基于所述客户端对象数据变更获取请求对应的请求响应,将所述第三数据格式的对象数据发送至所述应用客户端。
6.根据权利要求1至5任一项所述的应用配置方法,其特征在于,还包括:
接收定义维护请求,所述定义维护请求用于对应用内对象的数据配置参数的数据定义或者规则定义中的至少一种进行配置;
展示第四数据格式的定义配置窗口;
基于所述定义配置窗口,获取第四数据格式的定义数据,所述定义数据包括数据定义数据或规定定义数据中的至少一种;
将所述第四数据格式的定义数据,转换为跨平台数据格式下的通用定义数据;
将所述通用定义数据发送至应用服务器,以使得所述应用服务器基于所述通用定义数据生成对应***下的定义数据并根据所述定义数据和自定义数据中的至少一种生成用于检测对象数据有效性的交叉检测数据;
将所述通用定义数据发送至应用客户端,以使得所述应用客户端基于所述通用定义数据生成对应***下的定义数据。
7.根据权利要求6所述的应用配置方法,其特征在于,所述将所述通用定义数据发送至应用服务器的步骤,包括以下方式中的至少一种:
在推送条件满足时,根据预先存储的所述应用服务器的通信地址,将所述通用定义数据发送至所述应用服务器;
或者,在接收到所述应用服务器发送的服务器定义数据变更获取请求后,基于所述服务器定义数据变更获取请求对应的请求响应,将所述通用定义数据发送至所述应用服务器。
8.根据权利要求6所述的应用配置方法,其特征在于,所述将所述通用定义数据发送至应用客户端的步骤,包括以下方式中的至少一种:
在推送条件满足时,根据预先存储的所述应用客户端的通信地址,将所述通用定义数据发送至所述应用客户端;
或者,在接收到所述应用客户端发送的客户端定义数据变更获取请求后,基于所述客户端定义数据变更获取请求对应的请求响应,将所述通用定义数据发送至所述应用客户端。
9.一种应用配置装置,其特征在于,应用于应用开发终端,所述应用配置装置包括:
接收模块,用于接收配置维护请求,所述配置维护请求用于对应用内对象的对象数据进行配置;
展示模块,用于根据数据配置参数,展示第一数据格式的对象配置窗口;
获取模块,用于基于所述对象配置窗口,获取第一数据格式的对象数据;
转换模块,用于根据所述第一数据格式的对象数据,生成所述对象数据的全量数据,所述全量数据包括应用服务器对应的第二数据格式的对象数据、以及应用客户端对应的第三数据格式的对象数据;
服务器通信模块,用于将所述第二数据格式的对象数据发送至应用服务器,以使得所述应用服务器基于所述第二数据格式的对象数据进行对象参数更新;
客户端通信模块,用于将所述第三数据格式的对象数据发送至应用客户端,以使得所述应用客户端基于所述第三数据格式的对象数据进行对象参数更新。
10.一种计算机设备,其特征在于,包括处理器和存储器,存储器存储有多条指令,指令适于处理器进行加载,以执行如权利要求1至8任一项所述的方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010847351.1A CN111984305B (zh) | 2020-08-21 | 2020-08-21 | 一种应用配置方法及装置、计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010847351.1A CN111984305B (zh) | 2020-08-21 | 2020-08-21 | 一种应用配置方法及装置、计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111984305A true CN111984305A (zh) | 2020-11-24 |
CN111984305B CN111984305B (zh) | 2023-08-08 |
Family
ID=73442744
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010847351.1A Active CN111984305B (zh) | 2020-08-21 | 2020-08-21 | 一种应用配置方法及装置、计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111984305B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113691812A (zh) * | 2021-10-25 | 2021-11-23 | 广州朗国电子科技股份有限公司 | 基于鸿蒙***的分布式视频处理方法、终端和可读介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003091827A2 (en) * | 2002-04-26 | 2003-11-06 | Fluency Voice Technology Limited | A system and method for creating voice applications |
CN103593173A (zh) * | 2012-10-29 | 2014-02-19 | 百度在线网络技术(北京)有限公司 | 一种应用程序的一体化开发***、方法及装置 |
CN105531672A (zh) * | 2013-07-12 | 2016-04-27 | 起元科技有限公司 | 解析器生成 |
CN105872083A (zh) * | 2016-05-19 | 2016-08-17 | 湖州微未信息科技有限公司 | 一种支持不同类型客户端访问服务器的方法、服务器及*** |
CN105915389A (zh) * | 2016-06-02 | 2016-08-31 | 苏州乐麟无线信息科技有限公司 | 一种数据配置及加载的方法及装置 |
US20170075662A1 (en) * | 2011-09-07 | 2017-03-16 | Imagine Communications Corp. | Systems and methods for computing applications |
CN108292231A (zh) * | 2015-11-09 | 2018-07-17 | 微软技术许可有限责任公司 | 从数据生成应用 |
CN108647283A (zh) * | 2018-05-04 | 2018-10-12 | 武汉灵动在线科技有限公司 | 一种游戏数据配置敏捷生成与解析方法 |
CN110297631A (zh) * | 2019-05-22 | 2019-10-01 | 深圳壹账通智能科技有限公司 | 客户端开发方法、装置、计算机设备及存储介质 |
-
2020
- 2020-08-21 CN CN202010847351.1A patent/CN111984305B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003091827A2 (en) * | 2002-04-26 | 2003-11-06 | Fluency Voice Technology Limited | A system and method for creating voice applications |
US20170075662A1 (en) * | 2011-09-07 | 2017-03-16 | Imagine Communications Corp. | Systems and methods for computing applications |
CN103593173A (zh) * | 2012-10-29 | 2014-02-19 | 百度在线网络技术(北京)有限公司 | 一种应用程序的一体化开发***、方法及装置 |
CN105531672A (zh) * | 2013-07-12 | 2016-04-27 | 起元科技有限公司 | 解析器生成 |
CN108292231A (zh) * | 2015-11-09 | 2018-07-17 | 微软技术许可有限责任公司 | 从数据生成应用 |
CN105872083A (zh) * | 2016-05-19 | 2016-08-17 | 湖州微未信息科技有限公司 | 一种支持不同类型客户端访问服务器的方法、服务器及*** |
CN105915389A (zh) * | 2016-06-02 | 2016-08-31 | 苏州乐麟无线信息科技有限公司 | 一种数据配置及加载的方法及装置 |
CN108647283A (zh) * | 2018-05-04 | 2018-10-12 | 武汉灵动在线科技有限公司 | 一种游戏数据配置敏捷生成与解析方法 |
CN110297631A (zh) * | 2019-05-22 | 2019-10-01 | 深圳壹账通智能科技有限公司 | 客户端开发方法、装置、计算机设备及存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113691812A (zh) * | 2021-10-25 | 2021-11-23 | 广州朗国电子科技股份有限公司 | 基于鸿蒙***的分布式视频处理方法、终端和可读介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111984305B (zh) | 2023-08-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109976667B (zh) | 一种镜像管理方法、装置及*** | |
JP4909591B2 (ja) | コンポーネントベースの無線アプリケーションを作成して同アプリケーションと通信するためのシステム及び方法 | |
CN110324169B (zh) | 一种接口管理的方法和装置 | |
CN111026014B (zh) | 一种现场设备自动化控制***和方法 | |
CN107666406B (zh) | 智能卡片显示方法及装置 | |
CN112257135A (zh) | 一种基于多线程的模型加载方法、装置、存储介质及终端 | |
CN111880929B (zh) | 一种实例管理方法及装置、计算机设备 | |
CN112347545A (zh) | 一种建筑模型处理方法、装置、计算机设备及存储介质 | |
CN113742014A (zh) | 界面渲染方法、装置、电子设备及存储介质 | |
CN111984305A (zh) | 一种应用配置方法及装置、计算机设备 | |
CN112163174B (zh) | 消息的显示方法、装置、存储介质及计算机设备 | |
CN112044061B (zh) | 游戏画面处理方法、装置、电子设备以及存储介质 | |
CN115774573A (zh) | 应用集成方法、装置、电子设备和存储介质 | |
CN114429145A (zh) | 词条翻译方法、装置、电子设备和计算机可读存储介质 | |
CN114676371A (zh) | 页面的元素信息替换方法、装置、计算机设备及存储介质 | |
CN115857878A (zh) | 一种开发框架生成方法及应用方法 | |
CN113268360A (zh) | 请求处理方法、装置、服务器及存储介质 | |
CN112631638A (zh) | 终端应用更新方法、装置、存储介质及电子设备 | |
CN114610343A (zh) | 一种应用功能实现方法、装置、计算机设备及存储介质 | |
CN111651146A (zh) | 一种函数生成方法、装置、设备和介质 | |
CN116931914A (zh) | 页面渲染方法、装置、电子设备和计算机可读存储介质 | |
CN115129323B (zh) | 数据资源包的处理方法、装置、设备和存储介质 | |
CN118101338B (zh) | 一种网络攻防平台节点动态指令执行方法与*** | |
CN114095758B (zh) | 云图像截取方法、相关装置 | |
CN117743440A (zh) | 数据库服务端对异构客户端的兼容方法、介质与计算机设备 |
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 |