CN109739505B - 一种用户界面的处理方法和装置 - Google Patents
一种用户界面的处理方法和装置 Download PDFInfo
- Publication number
- CN109739505B CN109739505B CN201910016948.9A CN201910016948A CN109739505B CN 109739505 B CN109739505 B CN 109739505B CN 201910016948 A CN201910016948 A CN 201910016948A CN 109739505 B CN109739505 B CN 109739505B
- Authority
- CN
- China
- Prior art keywords
- thread
- coordinate information
- interface
- notification message
- user interface
- 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.)
- Active
Links
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/50—Controlling the output signals based on the game progress
- A63F13/53—Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
- A63F13/537—Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game using indicators, e.g. showing the condition of a game character on screen
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- 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/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/33—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections
- A63F13/335—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections using Internet
-
- 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/50—Controlling the output signals based on the game progress
- A63F13/53—Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
- A63F13/533—Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game for prompting the player, e.g. by displaying a game menu
-
- 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/70—Game security or game management aspects
- A63F13/77—Game security or game management aspects involving data related to game devices or game servers, e.g. configuration data, software version or amount of memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/545—Gui
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Optics & Photonics (AREA)
- Human Computer Interaction (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明实施例提供了一种用户界面的处理方法及装置,应用于用户终端,所述用户终端执行游戏客户端,所述游戏客户端包括第一线程和第二线程,所述第二线程为预封装于所述游戏客户端的浏览器内核,所述方法包括:所述第一线程获取待处理的用户界面渲染事件;所述第二线程获取与所述用户界面渲染事件对应的待渲染对象;所述第二线程对所述待渲染对象进行渲染,并通过第一接口将渲染结果发送至所述第一线程,所述第一接口为所述第二线程提供的用于存储所述渲染结果的接口;所述第一线程展示所述渲染结果,从而通过浏览器内核在后台静默渲染,能够以更高效的方式进行用户界面渲染,保证了原生WebView的体验的一致性。
Description
技术领域
本发明涉及游戏技术领域,特别是涉及一种用户界面的处理方法和一种用户界面的处理装置。
背景技术
目前在游戏交互界面中,经常需要显示游戏对象及游戏对象的各种信息。例如在大型多人在线角色扮演游戏(MMORPG,Massive Multiplayer Online Role-PlayingGame)、动作角色扮演类游戏(ARPG,Action Role Playing Game)等移动平台游戏应用中,经常涉及到全屏模式和弹窗模式等用于游戏交互的用户界面(UI,User Interface)。
在游戏的维护更新过程中,需要对用户界面进行改动和更新UI布局或交互流程等。当前,大量的UI都是基于原生UI,即利用本地的图片等相关资源。然而,容易产生大量的补丁来更新本地的资源,且频繁的改动也会造成资源的冗余,造成包体的逐渐增大。
目前,大部分游戏都使用内嵌浏览器的方式,在游戏中打开一个内嵌浏览器,然后显示相关活动界面,灵活地使用了Web技术,降低了开发成本,页面也更加容易维护。然而,采用内嵌浏览器的方式容易导致浏览器界面完全覆盖了客户端的整个界面,原生层的UI被遮挡,游戏中的相关提示无法让玩家看到,影响玩家的交互体验,即便是浏览器网页的页面保持与原生UI相同的风格,依然会有“跳戏”的感觉,无法给用户带来较佳的游戏体验。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种用户界面的处理方法和相应的一种用户界面的处理装置。
为了解决上述问题,本发明实施例公开了一种用户界面的处理方法,应用于用户终端,所述用户终端执行游戏客户端,所述游戏客户端包括第一线程和第二线程,所述第二线程为预封装于所述游戏客户端的浏览器内核,所述方法包括:
所述第一线程获取待处理的用户界面渲染事件;
所述第二线程获取与所述用户界面渲染事件对应的待渲染对象;
所述第二线程对所述待渲染对象进行渲染,并通过第一接口将渲染结果发送至所述第一线程,所述第一接口为所述第二线程提供的用于存储所述渲染结果的接口;
所述第一线程展示所述渲染结果。
优选的,所述游戏客户端还包括第三线程,所述方法还包括:
所述第一线程捕捉点击事件,并获取与所述点击事件对应的第一坐标信息,所述第一坐标信息为适配于所述用户界面的坐标信息;
所述第二线程对所述第一坐标信息进行处理,生成通知消息;
所述第三线程获取所述通知消息,并执行与所述通知消息对应的操作。
优选的,所述第二线程提供第二接口,还包括:
所述第一线程调用所述第二接口,将所述第一坐标信息发送至所述第二线程。
优选的,所述第二线程对所述第一坐标信息进行处理,生成通知消息,包括:
所述第二线程将所述第一坐标信息转换为第二坐标信息,所述第二坐标信息为适配于所述浏览器内核提供的页面的坐标信息;
所述第二线程采用所述第二坐标信息,生成针对所述第二坐标信息的通知消息。
优选的,所述所述第三线程获取所述通知消息,并执行与所述通知消息对应的操作,包括:
所述第三线程通过所述第二接口获取所述通知消息;
所述第三线程执行与所述通知消息对应的操作。
优选的,还包括:
所述第一线程将与所述用户界面渲染事件对应的待渲染对象通过所述第一接口发送至所述第二线程。
本发明还公开了一种用户界面的处理装置,应用于用户终端,所述用户终端执行游戏客户端,所述游戏客户端包括第一线程和第二线程,所述第二线程为预封装在所述游戏客户端中的浏览器内核,所述装置包括:
渲染事件获取模块,用于所述第一线程获取待处理的用户界面渲染事件;
渲染对象获取模块,用于所述第二线程获取与所述用户界面渲染事件对应的待渲染对象;
渲染对象处理模块,用于所述第二线程对所述待渲染对象进行渲染,并通过第一接口将渲染结果发送至所述第一线程,所述第一接口为所述第二线程提供的用于存储所述渲染结果的接口;
渲染结果展示模块,用于所述第一线程展示所述渲染结果。
优选的,所述游戏客户端还包括第三线程,所述装置还包括:
第一坐标信息获取模块,用于所述第一线程捕捉点击事件,并获取与所述点击事件对应的第一坐标信息,所述第一坐标信息为适配于所述用户界面的坐标信息;
通知消息生成模块,用于所述第二线程对所述第一坐标信息进行处理,生成通知消息;
通知消息处理模块,用于所述第三线程获取所述通知消息,并执行与所述通知消息对应的操作。
优选的,所述第二线程提供第二接口,所述装置还包括:
第一坐标信息发送模块,用于所述第一线程调用所述第二接口,将所述第一坐标信息发送至所述第二线程。
优选的,所述通知消息生成模块包括:
坐标信息转换子模块,用于所述第二线程将所述第一坐标信息转换为第二坐标信息,所述第二坐标信息为适配于所述浏览器内核提供的页面的坐标信息;
通知消息生成子模块,用于所述第二线程采用所述第二坐标信息,生成针对所述第二坐标信息的通知消息。
优选的,所述通知消息处理模块包括:
通知消息获取子模块,用于所述第三线程通过所述第二接口获取所述通知消息;
通知消息处理子模块,用于所述第三线程执行与所述通知消息对应的操作。
优选的,所述装置还包括:
渲染对象发送模块,用于所述第一线程将与所述用户界面渲染事件对应的待渲染对象通过所述代理对象发送至所述第二线程。
本发明还公开了一种装置,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述装置执行如上所述的一个或多个的用户界面的处理方法。
本发明还公开了一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如上所述的一个或多个的用户界面的处理方法。
本发明实施例包括以下优点:
本发明实施例中,应用于用户终端,所述用户终端执行游戏客户端,其中,游戏客户端包括第一线程和第二线程,第二线程为预封装在游戏客户端中的浏览器内核,通过第一线程获取待处理的用户界面渲染事件,接着浏览器内核获取与用户界面渲染事件对应的待渲染对象,浏览器内核对待渲染对象进行渲染,并通过第一接口将渲染结果发送至第一线程,然后第一线程展示所述渲染结果,从而通过浏览器内核在后台静默渲染,能够以更高效的方式进行用户界面渲染,保证了原生WebView的体验的一致性。
并且通过第一线程捕捉点击事件,并获取与点击事件对应的第一坐标信息,接着浏览器内核对第一坐标信息进行处理,生成通知消息,然后由第三线程获取所述通知消息,并执行与通知消息对应的操作,从而可以在保持原生用户界面的前提下,通过第一线程与浏览器内核的交互,以及浏览器内核与第三线程的交互,将用户对用户界面的点击事件转化为浏览器内核的页面点击事件,实现用户终端操作平台的webview接口统一,进一步提高了游戏客户端原生webview的体验。
附图说明
图1是本发明的一种用户界面的处理方法一实施例的步骤流程图;
图2是本发明的一种用户界面的处理方法一实施例用户界面的示意图;
图3是本发明的一种用户界面的处理方法另一实施例的步骤流程图;
图4是本发明的一种用户界面的处理装置实施例的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
参照图1,示出了本发明的一种用户界面的处理方法实施例的步骤流程图,所述方法应用于用户终端,用户终端执行游戏客户端,其中,游戏客户端中包括第一线程和第二线程,具体可以包括如下步骤:
步骤101,第一线程获取待处理的用户界面渲染事件;
在本发明实施例中,所述方法应用于用户终端,用户终端可以包括手机、平板电脑、便携式电脑、台式电脑、个人数字助理等等,这些终端可以支持Windows、Android(安卓)、IOS、WindowsPhone等操作系统,也可以支持嵌入式系统。在用户终端中可以运行游戏客户端,游戏客户端中执行多个线程,可以包括用户界面显示线程、用户界面渲染线程、游戏数据处理线程以及游戏聊天处理线程等等。其中,游戏客户端可以包括手机游戏客户端,也可以为网络游戏客户端,还可以为网页游戏在线页面。
在网络游戏中,用户可以通过账户在游戏客户端登录并进入游戏,在进入游戏后,游戏客户端中包括大量的用户界面,用户通过这些用户界面进行游戏交互。游戏客户端根据自身的风格,可以对用户界面进行渲染,或是布局,还可以在特定日子设置节日活动的用户界面。
在本发明实施例中,以安装有Android系统的智能终端为例,对本发明的原理进行示例性描述,然而此描述仅仅是示例性的,本发明的范围并不限于此,本发明的原理也可以适用于安装有其它操作系统(例如Linux、iOS、Window Phone、Symbian等)的智能终端。
在Android开发中,由于Android系统的碎片化比较严重,开发者多数时间放在用户界面的适配上,使用原生控件开发耗时耗力,而且在实现复杂界面时,原生控件的布局能力较弱,而通过JsBridge可以实现界面和系统的逻辑交互以及数据交换。
在本发明实施例中,在游戏客户端中预先封装了浏览器内核,作为游戏客户端中用于用户界面渲染的线程,浏览器内核对外提供渲染事件处理接口以及点击事件处理接口。游戏客户端中的第一线程为用户界面显示线程,负责对游戏客户端的用户界面获取用户界面的处理事件,以及用户界面的点击事件等,其中,第一线程可以通过浏览器内核提供的接口与浏览器内核进行数据的交互。
在本发明实施例中,当用户登录游戏客户端后,游戏客户端需要进行用户界面的处理,从而使用户可以进行相关的游戏交互。当监测到用户登录游戏客户端,第一线程可以获取待处理的用户界面渲染事件,其中用户界面渲染事件可以包括用户主界面渲染和用户子界面渲染。
在具体实现中,用户主界面中可以包括多个对应的按钮图标,每个主用户界面和每个按钮图标均对应一个URL(Uniform Resource Locator,统一资源定位符),通过该URL可以获取与按钮图标对应的贴图数据。其中,按钮图标可以包括活动图标和功能性图标,当用户点击活动图标时,用户界面可以展示相应的活动子界面,当用户点击功能性图标时,游戏客户端可以根据功能性图标对应的功能执行相应的操作。
当用户界面打开后,用户界面显示线程可以获取待渲染的用户界面以及待渲染的按钮图标,并获取与用户界面和按钮图标对应的渲染对象,其中渲染对象为贴图数据,每一个贴图数据均对应一个URL标识。
在本发明实施例的一种示例中,以渲染后的用户界面进行说明,如图2示出了本发明的一种用户界面的处理方法实施例用户界面的示意图,在活动大厅主界面中,包括“领取”、“月耀之礼”、“校服订购”、“万年竹的放学路”、“七日登录”以及“新联动活动”等多个按钮图标,其中“月耀之礼”、“校服订购”、“万年竹的放学路”、“七日登录”以及“新联动活动”等为活动图标,“领取”为功能性图标,当用户界面打开时,用户界面显示线程,获取待处理的用户界面渲染事件,并获取与渲染事件对应的贴图数据的URL标识,如获取待渲染的“月耀之礼”对应的活动子界面,以及获取贴图数据对应的URL。
步骤102,第二线程获取与用户界面渲染事件对应的待渲染对象;
在本发明实施例中,当第一线程获取待处理的用户界面渲染事件后,并获取渲染对象对应的URL标识后,可以通过第一接口将URL标识发送至第二线程,第二线程可以通过该URL标识获取与用户界面渲染事件对应的渲染对象。
在具体实现中,当用户打开用户界面,用户界面显示线程获得用户界面渲染事件对应的带渲染对象的URL标识后,将该URL标识通过浏览器内核提供的渲染事件处理接口发送至浏览器内核,请求对待渲染图像进行渲染。浏览器内核获取待渲染对象的URL标识后,可以根据该标识获得相应的贴图数据。
在本发明实施例的一种示例中,如图2示出了本发明的一种用户界面的处理方法实施例用户界面的示意图,在用户界面中,包括“月耀之礼”,“校服订购”等活动。
步骤103,第二线程对待渲染对象进行渲染,并通过第一接口将渲染结果发送至第一线程;
在本发明实施例中,第二线程获取待渲染对象的URL并根据该URL得到贴图数据后,可以对贴图数据进行渲染,并通过第一接口将渲染接口发送至第一线程。
在具体实现中,浏览器内核解析URL标识,并获得相应的贴图数据,接着对贴图数据进行渲染,渲染结束后将每帧的渲染结果以bitmap的格式存储于渲染事件处理接口,由用户界面显示线程通过渲染事件处理接口获取对应的渲染结果。
步骤104,第一线程展示渲染结果。
在本发明实施例中,第一线程可以从渲染事件处理接口中获取待处理的用户界面渲染事件对应的渲染结果,并进行展示。
在本发明实施例的一种示例中,如图2示出了本发明的一种用户界面的处理方法实施例用户界面的示意图,用户界面显示线程从浏览器内核提供的渲染事件处理接口获取渲染结果,并进行展示,当用户打开用户界面时,游戏客户端呈现给用户的即为如图2所示的用户界面,从而通过在游戏客户端中封装浏览器内核,实现更高效的方式进行用户界面渲染,保证了在Android平台上,原生WebView的体验的一致性,同时也保证了IOS平台和Android平台接口一致,易于进行游戏维护。
本发明实施例中,应用于用户终端,所述用户终端执行游戏客户端,其中,游戏客户端包括第一线程和第二线程,第二线程为预封装在游戏客户端中的浏览器内核,通过第一线程获取待处理的用户界面渲染事件,接着浏览器内核获取与用户界面渲染事件对应的待渲染对象,浏览器内核对待渲染对象进行渲染,并通过第一接口将渲染结果发送至第一线程,然后第一线程展示所述渲染结果,从而通过浏览器内核在后台静默渲染,能够以更高效的方式进行用户界面渲染,保证了原生WebView的体验的一致性。
参照图3,示出了本发明的一种用户界面的处理方法另一实施例的步骤流程图,所述方法应用于用户终端,用户终端执行游戏客户端,其中,游戏客户端中包括第一线程和第二线程、第三线程,具体可以包括如下步骤:
步骤301,第一线程获取待处理的用户界面渲染事件;
在具体实现中,当用户界面打开后,用户界面显示线程可以获取待渲染的用户界面以及待渲染的按钮图标,并获取与用户界面和按钮图标对应的渲染对象,其中渲染对象为贴图数据,每一个贴图数据均对应一个URL标识。
步骤302,第一线程将与用户界面渲染事件对应的待渲染对象通过第一接口发送至第二线程;
在具体实现中,用户界面显示线程可以将待渲染对象对应的URL标识通过浏览器内核提供的渲染事件处理接口发送至浏览器内核,以使浏览器内核进行处理。
步骤303,第二线程获取与用户界面渲染事件对应的待渲染对象;
在具体实现中,浏览器内核可以根据渲染事件处理接口中接收到的待渲染对象的URL标识,获取与用户界面渲染事件对应的贴图数据。
步骤304,第二线程对待渲染对象进行渲染,并通过第一接口将渲染结果发送至第一线程;
在具体实现中,浏览器内核解析URL标识,并获得相应的贴图数据,接着对贴图数据进行渲染,渲染结束后将每帧的渲染结果以bitmap的格式存储于渲染事件处理接口,由用户界面显示线程通过渲染事件处理接口获取对应的渲染结果。
步骤305,第一线程展示渲染结果;
在具体实现中,第一线程可以从渲染事件处理接口中获取待处理的用户界面渲染事件对应的渲染结果,并进行展示。
步骤306,第一线程捕捉点击事件,并获取与点击事件对应的第一坐标信息,第一坐标信息为适配于用户界面的坐标信息;
在本发明实施例中,用户界面中包括活动按钮和功能性按钮,其中,活动按钮对应显示活动子界面,功能性按钮可以包括分享按钮、领取按钮以及充值按钮等,用户点击分享按钮,可触发游戏内容的分享;点解领取按钮时,则可触发相应礼品的领取;点击充值按钮时,则可触发对用户账户进行充值。
在本发明实施例中,第一线程可以捕捉用户在用户界面中的点击事件,并获取与点击事件对应的第一坐标信息,接着将第一坐标信息通过第二线程提供的第二接口发送至第二线程。
在具体实现中,当用户在用户界面进行点击时,用户界面显示线程进行点击事件的捕捉,并对点击事件进行判断,当用户点击的为活动按钮时,用户界面显示线程确定该点击事件为渲染事件,执行步骤301~步骤304;当用户点击的为功能性按钮时,用户界面显示线程获取与该点击事件对应的功能性按钮的第一坐标信息,然后通过浏览器内核提供的点击事件处理接口将第一坐标信息发送至浏览器内核。其中,第一坐标信息为功能性按钮在用户界面中的坐标信息,每一个功能性按钮均对应用户界面中的一个坐标信息。
在本发明实施例的一种示例中,如图2示出了本发明的一种用户界面的处理方法实施例用户界面的示意图,当用户点击“月耀之礼”的按钮,用户界面显示线程判断该点击事件为渲染事件,对“月耀之礼”对应的活动子界面进行渲染,当用户点击“月耀之礼”活动子界面的“领取”按钮,用户界面显示线程可以获取与“领取”按钮对应的坐标信息。
需要说明的是,在本发明实施例中以获取用户界面的坐标信息为例进行示例性说明,可以理解的是,本领域技术人员可以根据实际需要进行设置,本发明对此不作限制。
步骤307,第二线程对第一坐标信息进行处理,生成通知消息;
在本发明实施例中,第一线程将第一坐标信息发送至第二接口,第二接口将该第一坐标信息存储于点击事件消息队列中,接着由第二线程可以从第二接口的点击事件消息队列中获取第一坐标信息,并对第一坐标信息进行处理,生成通知消息。
在本发明实施例的一种优选实施例中,步骤307可以包括如下子步骤:
子步骤S11,第二线程将第一坐标信息转换为第二坐标信息,第二坐标信息为适配于浏览器内核提供的页面的坐标信息;
在本发明实施例中,第二线程获取基于游戏客户端用户界面的第一坐标信息后,可以将第一坐标信息转换为基于浏览器页面的第二坐标信息。
在具体实现中,用户界面发生点击事件后,浏览器内核可以接收到第一坐标信息,接着浏览器内核调用网页内部的Javascript的逻辑层将第一坐标信息转换为第二坐标信息,将用户对用户界面的点击事件转换为浏览器内核提供的网页内部的点击,从而实现浏览器内核通过JsBridge与游戏客户端中的线程进行交互,使得游戏客户端与浏览器内核提供的网页内的Javascript可以相互调用。
子步骤S12,第二线程采用第二坐标信息,生成针对第二坐标信息的通知消息。
在本发明实施例中,第二线程将第一坐标信息转换为基于浏览器页面的第二坐标信息后,可以生成针对第二坐标信息的通知消息。
在具体实现中,浏览器内核调用网页内部的Javascript的逻辑层将第一坐标信息转换为第二坐标信息,并监听到该第二坐标信息已被点选,则生成通知消息,并通知游戏客户端执行相应的操作,则网页内部可以通过JSBridge进行通知,然后将通知消息发送至点击事件处理接口的通知消息队列中,等待第三线程的获取。
步骤308,第三线程获取通知消息,并执行与通知消息对应的操作。
在本发明实施例中,第三线程为游戏客户端中的游戏数据处理线程,负责对游戏客户端中的游戏数据进行处理,以及与服务器进行数据交互。第三线程可以从第二接口的通知消息队列中获取与点击事件对应的通知消息,并执行与通知消息对应的操作。
在本发明实施例的一种优选实施例中,步骤308可以包括如下子步骤:
子步骤S21,第三线程通过第二接口获取所述通知消息;
在具体实现中,游戏数据处理线程可以从点击事件处理接口的通知消息队列中获取与点击事件对应的通知消息,接着解析通知消息,并确定与通知消息对应的操作。
子步骤S22,第三线程执行与通知消息对应的操作。
在本发明实施例中,第三线程确定通知消息对应的操作后,可以根据按钮的类型执行对应的操作。其中,当按钮为分享按钮时,执行分享操作;当按钮为领取按钮时,为用户发放相应的奖励;当按钮为充值按钮时,执行相应的充值操作。
在具体实现中,游戏数据处理线程确定与通知消息对应的操作后,可以生成请求信息,并发送至服务器以获取相应的数据,还可以通过游戏客户端执行相应的操作。
在本发明实施例的一种示例中,游戏客户端获取通知消息后,可以对通知消息进行判断,如当该通知消息为通知游戏客户端中的领取按钮已被点选,游戏客户端可以对用户游戏信息进行判断,当用户达到条件时,为用户发放奖励,当用户未达到条件时,提示用户未达到,或直接跳转到对应的任务界面,通知用户完成任务。
本发明实施例中,应用于用户终端,所述用户终端执行游戏客户端,其中,游戏客户端包括第一线程和第二线程,第二线程为预封装在游戏客户端中的浏览器内核,通过第一线程获取待处理的用户界面渲染事件,接着浏览器内核获取与用户界面渲染事件对应的待渲染对象,浏览器内核对待渲染对象进行渲染,并通过第一接口将渲染结果发送至第一线程,然后第一线程展示所述渲染结果,从而通过浏览器内核在后台静默渲染,能够以更高效的方式进行用户界面渲染,保证了原生WebView的体验的一致性。
并且通过第一线程捕捉点击事件,并获取与点击事件对应的第一坐标信息,接着浏览器内核对第一坐标信息进行处理,生成通知消息,然后由第三线程获取所述通知消息,并执行与通知消息对应的操作,从而可以在保持原生用户界面的前提下,通过第一线程与浏览器内核的交互,以及浏览器内核与第三线程的交互,将用户对用户界面的点击事件转化为浏览器内核的页面点击事件,实现用户终端操作平台的webview接口统一,进一步提高了游戏客户端原生webview的体验。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图4,示出了本发明的一种用户界面的处理装置实施例的结构框图,应用于用户终端,所述用户终端执行游戏客户端,所述游戏客户端包括第一线程和第二线程,所述第二线程为预封装在所述游戏客户端中的浏览器内核,具体可以包括如下模块:
渲染事件获取模块401,用于所述第一线程获取待处理的用户界面渲染事件;
渲染对象获取模块402,用于所述第二线程获取与所述用户界面渲染事件对应的待渲染对象;
渲染对象处理模块403,用于所述第二线程对所述待渲染对象进行渲染,并通过第一接口将渲染结果发送至所述第一线程,所述第一接口为所述第二线程提供的用于存储所述渲染结果的接口;
渲染结果展示模块404,用于所述第一线程展示所述渲染结果。
在本发明实施例的一种优选实施例中,所述游戏客户端还包括第三线程,所述装置还可以包括:
第一坐标信息获取模块,用于所述第一线程捕捉点击事件,并获取与所述点击事件对应的第一坐标信息,所述第一坐标信息为适配于所述用户界面的坐标信息;
通知消息生成模块,用于所述第二线程对所述第一坐标信息进行处理,生成通知消息;
通知消息处理模块,用于所述第三线程获取所述通知消息,并执行与所述通知消息对应的操作。
在本发明实施例的一种优选实施例中,所述第二线程提供第二接口,所述装置还可以包括:
第一坐标信息发送模块,用于所述第一线程调用所述第二接口,将所述第一坐标信息发送至所述第二线程。
在本发明实施例的一种优选实施例中,所述通知消息生成模块可以包括:
坐标信息转换子模块,用于所述第二线程将所述第一坐标信息转换为第二坐标信息,所述第二坐标信息为适配于所述浏览器内核提供的页面的坐标信息;
通知消息生成子模块,用于所述第二线程采用所述第二坐标信息,生成针对所述第二坐标信息的通知消息。
在本发明实施例的一种优选实施例中,所述通知消息处理模块可以包括:
通知消息获取子模块,用于所述第三线程通过所述第二接口获取所述通知消息;
通知消息处理子模块,用于所述第三线程执行与所述通知消息对应的操作。
在本发明实施例的一种优选实施例中,所述装置还可以包括:
渲染对象发送模块,用于所述第一线程将与所述用户界面渲染事件对应的待渲染对象通过所述代理对象发送至所述第二线程。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本发明实施例还提供了一种装置,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述装置执行本发明实施例所述的用户界面的处理方法方法。
本发明实施例还提供了一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行本发明实施例所述的用户界面的处理方法方法。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种用户界面的处理方法方法和一种用户界面的处理方法装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (12)
1.一种用户界面的处理方法,其特征在于,应用于用户终端,所述用户终端执行游戏客户端,所述游戏客户端包括第一线程和第二线程,所述第二线程为预封装于所述游戏客户端的浏览器内核,所述方法包括:
所述第一线程获取待处理的用户界面渲染事件;
所述第二线程获取与所述用户界面渲染事件对应的待渲染对象;
所述第二线程对所述待渲染对象进行渲染,并通过第一接口将渲染结果发送至所述第一线程,所述第一接口为所述第二线程提供的用于存储所述渲染结果的接口;
所述第一线程展示所述渲染结果;
其中,所述游戏客户端还包括第三线程,所述方法还包括:
所述第一线程捕捉点击事件,并获取与所述点击事件对应的第一坐标信息,所述第一坐标信息为适配于所述用户界面的坐标信息;
所述第二线程对所述第一坐标信息进行处理,生成通知消息;
所述第三线程获取所述通知消息,并执行与所述通知消息对应的操作。
2.根据权利要求1所述的方法,其特征在于,所述第二线程提供第二接口,还包括:
所述第一线程调用所述第二接口,将所述第一坐标信息发送至所述第二线程。
3.根据权利要求1所述的方法,其特征在于,所述第二线程对所述第一坐标信息进行处理,生成通知消息,包括:
所述第二线程将所述第一坐标信息转换为第二坐标信息,所述第二坐标信息为适配于所述浏览器内核提供的页面的坐标信息;
所述第二线程采用所述第二坐标信息,生成针对所述第二坐标信息的通知消息。
4.根据权利要求2所述的方法,其特征在于,所述第三线程获取所述通知消息,并执行与所述通知消息对应的操作,包括:
所述第三线程通过所述第二接口获取所述通知消息;
所述第三线程执行与所述通知消息对应的操作。
5.根据权利要求1所述的方法,其特征在于,还包括:
所述第一线程将与所述用户界面渲染事件对应的待渲染对象通过所述第一接口发送至所述第二线程。
6.一种用户界面的处理装置,其特征在于,应用于用户终端,所述用户终端执行游戏客户端,所述游戏客户端包括第一线程和第二线程,所述第二线程为预封装在所述游戏客户端中的浏览器内核,所述装置包括:
渲染事件获取模块,用于所述第一线程获取待处理的用户界面渲染事件;
渲染对象获取模块,用于所述第二线程获取与所述用户界面渲染事件对应的待渲染对象;
渲染对象处理模块,用于所述第二线程对所述待渲染对象进行渲染,并通过第一接口将渲染结果发送至所述第一线程,所述第一接口为所述第二线程提供的用于存储所述渲染结果的接口;
渲染结果展示模块,用于所述第一线程展示所述渲染结果;
其中,所述游戏客户端还包括第三线程,所述装置还包括:
第一坐标信息获取模块,用于所述第一线程捕捉点击事件,并获取与所述点击事件对应的第一坐标信息,所述第一坐标信息为适配于所述用户界面的坐标信息;
通知消息生成模块,用于所述第二线程对所述第一坐标信息进行处理,生成通知消息;
通知消息处理模块,用于所述第三线程获取所述通知消息,并执行与所述通知消息对应的操作。
7.根据权利要求6所述的装置,其特征在于,所述第二线程提供第二接口,所述装置还包括:
第一坐标信息发送模块,用于所述第一线程调用所述第二接口,将所述第一坐标信息发送至所述第二线程。
8.根据权利要求6所述的装置,其特征在于,所述通知消息生成模块包括:
坐标信息转换子模块,用于所述第二线程将所述第一坐标信息转换为第二坐标信息,所述第二坐标信息为适配于所述浏览器内核提供的页面的坐标信息;
通知消息生成子模块,用于所述第二线程采用所述第二坐标信息,生成针对所述第二坐标信息的通知消息。
9.根据权利要求7所述的装置,其特征在于,所述通知消息处理模块包括:
通知消息获取子模块,用于所述第三线程通过所述第二接口获取所述通知消息;
通知消息处理子模块,用于所述第三线程执行与所述通知消息对应的操作。
10.根据权利要求6所述的装置,其特征在于,所述装置还包括:
渲染对象发送模块,用于所述第一线程将与所述用户界面渲染事件对应的待渲染对象通过所述第一接口发送至所述第二线程。
11.一种装置,其特征在于,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述装置执行如权利要求1-5所述的一个或多个的用户界面的处理方法。
12.一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如权利要求1-5所述的一个或多个的用户界面的处理方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910016948.9A CN109739505B (zh) | 2019-01-08 | 2019-01-08 | 一种用户界面的处理方法和装置 |
US17/277,287 US11890540B2 (en) | 2019-01-08 | 2019-06-05 | User interface processing method and device |
PCT/CN2019/090166 WO2020143159A1 (zh) | 2019-01-08 | 2019-06-05 | 一种用户界面的处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910016948.9A CN109739505B (zh) | 2019-01-08 | 2019-01-08 | 一种用户界面的处理方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109739505A CN109739505A (zh) | 2019-05-10 |
CN109739505B true CN109739505B (zh) | 2019-11-29 |
Family
ID=66363943
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910016948.9A Active CN109739505B (zh) | 2019-01-08 | 2019-01-08 | 一种用户界面的处理方法和装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11890540B2 (zh) |
CN (1) | CN109739505B (zh) |
WO (1) | WO2020143159A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109739505B (zh) | 2019-01-08 | 2019-11-29 | 网易(杭州)网络有限公司 | 一种用户界面的处理方法和装置 |
CN110347947B (zh) * | 2019-06-17 | 2023-06-06 | 创新先进技术有限公司 | 一种页面渲染方法及装置 |
CN110673918B (zh) * | 2019-09-27 | 2021-10-01 | 北京猎户星空科技有限公司 | 智能设备的控制方法、装置以及智能设备、存储介质 |
CN112835652A (zh) * | 2019-11-25 | 2021-05-25 | 杭州中天微系统有限公司 | 数据交互方法及装置 |
CN113694536A (zh) * | 2021-09-07 | 2021-11-26 | 北京蔚领时代科技有限公司 | 一种面向云游戏的场景管理方法、装置、设备及介质 |
CN113918249B (zh) * | 2021-09-14 | 2023-11-21 | 北京房江湖科技有限公司 | 一种背景模糊控件的实现方法及装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102915366A (zh) * | 2012-10-25 | 2013-02-06 | 北京奇虎科技有限公司 | 一种浏览器加载网页的方法和装置 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009075888A (ja) * | 2007-09-20 | 2009-04-09 | Canon Inc | 描画処理装置及びその方法、プログラム、記録媒体 |
KR20090065212A (ko) * | 2007-12-17 | 2009-06-22 | 한국전자통신연구원 | 로봇 채팅 시스템 및 방법 |
WO2011109778A1 (en) * | 2010-03-05 | 2011-09-09 | Brass Monkey, Inc. | System and method for connecting network sockets between applications |
US9352225B2 (en) * | 2011-08-18 | 2016-05-31 | Game Nation, Inc. | System and method for providing a multi-player game experience |
CA2792895C (en) * | 2011-10-18 | 2020-04-28 | Research In Motion Limited | Method of rendering a user interface |
US9196075B2 (en) * | 2011-11-14 | 2015-11-24 | Microsoft Technology Licensing, Llc | Animation of computer-generated display components of user interfaces and content items |
CN103942823B (zh) * | 2014-02-27 | 2018-07-24 | 广州爱九游信息技术有限公司 | 一种游戏引擎渲染方法及装置 |
CN104063460B (zh) * | 2014-06-25 | 2018-10-09 | 北京奇虎科技有限公司 | 一种在浏览器中加载网页的方法和装置 |
CN105741227A (zh) * | 2016-01-26 | 2016-07-06 | 网易(杭州)网络有限公司 | 渲染方法和装置 |
CN106354512A (zh) * | 2016-09-08 | 2017-01-25 | 广州华多网络科技有限公司 | 用户界面渲染方法及装置 |
CN108572818B (zh) * | 2017-03-08 | 2021-07-23 | 斑马智行网络(香港)有限公司 | 一种用户界面渲染方法及装置 |
CN107729094B (zh) * | 2017-08-29 | 2020-12-29 | 口碑(上海)信息技术有限公司 | 一种用户界面渲染的方法及装置 |
CN107656759B (zh) * | 2017-09-04 | 2021-03-26 | 口碑(上海)信息技术有限公司 | 一种用于用户界面的渲染方法和装置 |
CN107800769A (zh) | 2017-09-15 | 2018-03-13 | 北京麒麟合盛网络技术有限公司 | 一种网页打开方法和装置 |
US10758825B2 (en) * | 2017-10-31 | 2020-09-01 | King.Com Ltd. | Controlling a user interface of a computer device |
CN109011573B (zh) * | 2018-07-18 | 2022-05-31 | 网易(杭州)网络有限公司 | 一种游戏中的射击控制方法和装置 |
CN109739505B (zh) | 2019-01-08 | 2019-11-29 | 网易(杭州)网络有限公司 | 一种用户界面的处理方法和装置 |
CN111957043A (zh) * | 2020-09-07 | 2020-11-20 | 网易(杭州)网络有限公司 | 游戏中的信息控制方法、装置和电子设备 |
-
2019
- 2019-01-08 CN CN201910016948.9A patent/CN109739505B/zh active Active
- 2019-06-05 US US17/277,287 patent/US11890540B2/en active Active
- 2019-06-05 WO PCT/CN2019/090166 patent/WO2020143159A1/zh active Application Filing
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102915366A (zh) * | 2012-10-25 | 2013-02-06 | 北京奇虎科技有限公司 | 一种浏览器加载网页的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109739505A (zh) | 2019-05-10 |
WO2020143159A1 (zh) | 2020-07-16 |
US11890540B2 (en) | 2024-02-06 |
US20220032192A1 (en) | 2022-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109739505B (zh) | 一种用户界面的处理方法和装置 | |
CN103927253B (zh) | 多浏览器兼容性测试方法及系统 | |
US20140274408A1 (en) | Methods and systems for provisioning a game container within a cloud computing system | |
CN108337909A (zh) | 用于提供交互式流传输媒体的系统和方法 | |
CN108721898B (zh) | 帧率的确定方法和装置、存储介质、电子装置 | |
CN104995601B (zh) | 切换到本机网页应用程序及从本机网页应用程序切换离开 | |
CN108174302B (zh) | 一种直播应用中活动功能玩法的更新方法及装置 | |
CN107526579A (zh) | 一种应用程序页面开发管理方法及装置 | |
US10362089B1 (en) | Methods and systems for dynamically generating and reusing dynamic web content | |
CN107168616B (zh) | 游戏交互界面显示方法、装置、电子设备及存储介质 | |
CN103457783A (zh) | 用于测试移动网络应用的方法和系统 | |
CN108021583A (zh) | 页面加载方法、页面操作指令的处理方法及客户端 | |
CN107450830A (zh) | 一种单屏多窗口同时支持多点输入的方法和装置 | |
EP1717715B1 (en) | State machine-driven interactive system and associated methods | |
CN107517188A (zh) | 一种基于安卓系统的数据处理方法和装置 | |
CN105577828B (zh) | 一种远程重定向方法和装置 | |
CN106855772A (zh) | 一种信息展示方法及装置 | |
CN108319474A (zh) | 一种页面信息生成方法、装置和设备 | |
CN104102536B (zh) | 一种数据的展示方法和系统 | |
CN104750553B (zh) | 应用运行方法和装置 | |
CA3069374A1 (en) | View switching | |
CN108132788B (zh) | 一种实时多人互动系统的开发装置、方法及系统 | |
US20210271728A1 (en) | Replaying user activity by capturing content and rebuilding the webpage at each web event | |
Swiech et al. | Making javascript better by making it even slower | |
US10366140B2 (en) | Method for replaying user activity by rebuilding a webpage capturing content at each web event |
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 |