CN108134683B - 一种终端及总线架构的实现方法 - Google Patents

一种终端及总线架构的实现方法 Download PDF

Info

Publication number
CN108134683B
CN108134683B CN201611095870.7A CN201611095870A CN108134683B CN 108134683 B CN108134683 B CN 108134683B CN 201611095870 A CN201611095870 A CN 201611095870A CN 108134683 B CN108134683 B CN 108134683B
Authority
CN
China
Prior art keywords
component
module
bus
control
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.)
Active
Application number
CN201611095870.7A
Other languages
English (en)
Other versions
CN108134683A (zh
Inventor
王志
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201611095870.7A priority Critical patent/CN108134683B/zh
Publication of CN108134683A publication Critical patent/CN108134683A/zh
Application granted granted Critical
Publication of CN108134683B publication Critical patent/CN108134683B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Stored Programmes (AREA)

Abstract

本发明实施例公开了一种终端及总线架构的实现方法,该终端包括:组件总线,加载在该组件总线上的组件模块和组件控制模块,与该组件总线通信的界面逻辑接口;其中,该界面逻辑接口,用于基于用户对第一应用的第一操作,生成组件控制指令并通过组件总线传输至组件模块;组件总线,用于实现界面逻辑接口、组件模块和组件控制模块的通信;组件模块,用于通过组件总线接收组件控制指令,并根据组件控制指令实现通信业务;组件控制模块,用于通过监测组件总线,获取组件模块中的第一组件的运行信息,根据运行信息对第一组件进行组件运行管理,以保证第一应用的正常运行,第一组件为组件模块中第一应用对应的正在运行的组件。

Description

一种终端及总线架构的实现方法
技术领域
本发明涉及计算机应用领域中的硬件模块实现的技术,尤其涉及一种终端及总线架构的实现方法。
背景技术
随着电子技术的迅速发展,智能终端中的各种应用的功能的也越来越丰富。智能终端在实现应用的功能时,可以通过插件模块实现各个界面的加载或者对各应用的缺陷进行修复等。因此,智能终端的插件体系也越来越重要了。
目前针对智能终端上的不同的应用,各应用有其对应的插件。对于一个应用(例如,第一应用)对应的插件模块的管理为:智能终端通过界面逻辑层和Hummer实现的。具体为:第一应用在Hummer的底层实现了一个CoreCenter,每个第一应用的插件模块都对应一个PluginCore,CoreCenter通过PluginCore来实现对每个第一应用的插件模块的控制。在第一应用的界面逻辑层的PluginCenter来控制CoreCenter,从而实现了对第一应用的各插件模块的管理等,其中,具体的通过服务器通用配置(CSC,Common Server Config)控制各插件的启用或禁止。
然而,上述插件的管理过程中,每个应用对应的各插件模块组成了一个封闭的体系,插件都是在智能终端获取第一应用的安装包的时候就作为一个独立的插件模块打包到第一应用的安装程序中的,智能终端的服务器通用配置是固定好的,这样的话,现有的应用对应的插件的运营和实现受限制。
发明内容
为解决上述技术问题,本发明实施例期望提供一种终端及总线架构的实现方法,能够在保证应用的正常运营的稳定性和性能的前提下,通过总线架构实现了组件模块的动态配置。
本发明的技术方案是这样实现的:
本发明实施例提供的一种终端,包括:
组件总线,加载在所述组件总线上的组件模块和组件控制模块,与所述组件总线通信的界面逻辑接口;其中,
所述界面逻辑接口,用于基于用户对第一应用的第一操作,生成组件控制指令并通过所述组件总线传输至所述组件模块;
所述组件总线,用于实现所述界面逻辑接口、所述组件模块和所述组件控制模块的通信;
所述组件模块,用于通过所述组件总线接收所述组件控制指令,并根据所述组件控制指令实现通信业务;
所述组件控制模块,用于通过监测所述组件总线,获取所述组件模块中的第一组件的运行信息,根据所述运行信息对所述第一组件进行组件运行管理,以保证所述第一应用的正常运行,所述第一组件为所述组件模块中所述第一应用对应的正在运行的组件。
本发明实施例提供了一种总线架构的实现方法,包括:
当启动第一应用时,获取本地存储的当前第二组件,所述当前第二组件为所述第一应用对应的第一组件和组件控制模块对应的控制组件,所述第一组件包括由登录前组件和登录后组件构成的组件模块中的组件;
加载所述控制组件,并根据所述控制组件将所述登录前组件加载在组件总线上;
通过所述界面逻辑接口接收用户对所述第一应用的第二操作,根据所述第二操作进行所述第一应用的登录;
在所述第一应用登录成功后,根据所述控制组件将所述登录后组件加载在所述组件总线上,并拉取最新的第二组件,通过所述组件总线实现界面逻辑接口、所述组件模块和所述组件控制模块的通信;
根据所述最新的第二组件,更新所述本地存储的所述当前第二组件,以实现所述总线架构的搭建。
本发明实施例提供了一种终端及总线架构的实现方法,该终端包括:组件总线,加载在该组件总线上的组件模块和组件控制模块,与该组件总线通信的界面逻辑接口;其中,该界面逻辑接口,用于基于用户对第一应用的第一操作,生成组件控制指令并通过组件总线传输至组件模块;组件总线,用于实现界面逻辑接口、组件模块和组件控制模块的通信;组件模块,用于通过组件总线接收组件控制指令,并根据组件控制指令实现通信业务;组件控制模块,用于通过监测组件总线,获取组件模块中的第一组件的运行信息,根据运行信息对第一组件进行组件运行管理,以保证第一应用的正常运行,第一组件为组件模块中第一应用对应的正在运行的组件。采用上述终端实现技术,由于该终端上的组件体系采用组件总线(总线架构)作为统一接口,在保证应用的正常运营的稳定性和性能的前提下,该终端通过组件总线可以实现通过组件控制模块动态配置组件模块的过程。
附图说明
图1为本发明实施例提供的一种总线结构的实现方法中对应的系统架构示意图;
图2为本发明实施例提供的一种终端的结构示意图一;
图3为本发明实施例提供的一种终端的结构示意图二;
图4为本发明实施例提供的一种终端的结构示意图三;
图5为本发明实施例提供的一种示例性的终端结构示意图;
图6为本发明实施例提供的一种总线架构的实现方法的流程图一;
图7为本发明实施例提供的一种登录界面的示意图;
图8为本发明实施例提供的一种总线架构的实现方法的流程图二;
图9为本发明实施例提供的一种总线架构的实现方法的流程图三。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
插件:是一种遵循一定规范的应用程序接口编写出来的程序。其只能运行在程序规定的系统平台下(可能同时支持多个平台),而不能脱离指定的平台单独运行。
组件总线:一种模仿计算机硬件模块间的通信方式,设计的一种软件内各模块的通信方式。
Hummer:应用的底层框架,包括GF和Common。
CSC(Common Server Config):服务通用配置。这是用来做客户端运营的重要手段和工具。
如图1所示,图1为本发明实施例中进行总线结构的实现方法中信息交互的各种硬件实体的示意图,图1中包括:一个或多个服务器2、终端1,及网络3,网络3中包括路由器,网关等等网络实体,图1中并未体现。终端1通过有线网络或者无线网络与服务器2进行网络数据的信息交互(组件的发布相关的信息等),以便从终端1通过预设的服务配置通道向至服务器2拉取相关配置信息。其中,终端的类型如图1所示,包括手机(终端1-3)、平板电脑或PDA(终端1-5)、台式机(终端1-2)、PC机(终端1-4)、一体机(终端1-1)等类型。其中,终端1中安装有各种用户所需的应用功能模块,比如具备娱乐功能的应用(如视频应用,音频播放应用,游戏应用,阅读软件),又如具备服务功能的应用(如地图导航应用、团购应用、拍摄应用等),再者比如设置应用等系统功能,这些应用统称为第一应用。
实施例一
如图2所示,本发明实施例提供了一种终端1,该终端1可以包括:
组件总线10,加载在所述组件总线10上的组件模块11和组件控制模块12,与所述组件总线10通信的界面逻辑接口13。其中,
所述界面逻辑接口13,用于基于用户对第一应用的第一操作,生成组件控制指令并通过所述组件总线10传输至所述组件模块11。
所述组件总线10,用于实现所述界面逻辑接口13、所述组件模块11和所述组件控制模块12的通信。
所述组件模块11,用于通过所述组件总线10接收所述组件控制指令,并根据所述组件控制指令实现通信业务。
所述组件控制模块12,用于通过监测所述组件总线10,获取所述组件模块11中的第一组件的运行信息,根据所述运行信息对所述第一组件进行组件运行管理,以保证所述第一应用的正常运行,所述第一组件为所述组件模块11中所述第一应用对应的正在运行的组件。
需要说明的是,本发明实施例提供的终端中可以设置有多个应用(第一应用)的插件(组件),本发明实施例中的组件可以有多种,例如,第一应用内插件或其他功能的外插件等。在本发明实施例中的第一应用为可实现一定功能的安装在终端上的客户端,本发明实施例不限制其应用的类型和内容。
可选的,本发明实施例中的终端可以为安装有第一应用的智能电子设备,例如,智能手机,平板等。本发明实施例不作限制。
在本发明实施例提出了终端中的插件体系,即总线架构的插件体系。在终端中,通过组件总线作为通信接口实现各种通信业务。终端中的所有应用对应的插件或组件都可以加载在该总线架构上,从而实现组件通信业务。
在本发明实施例中,终端的总线架构的插件体系中,组件都可以挂载在组件总线上,实现组件的功能,同时,在本发明实施例中组件总线上设置有组件模块,该组件控制模块可以通过组件总线进行组件的动态配置,例如,组件的更新,组件的运行管理等管理。这里组件控制模块也是作为组件加载在组件总线上的。
这里,终端中的组件都可以通过加载在组件总线就实现组件的功能了,并且可以通过组件控制模块进行主动的管理和配置,这样,终端就可以通过服务配置通道从终端对应的服务器处获取一些组件,组件控制模块通过组件总线下发给组件模块,进行组件的更新或配置。也就是说,该终端上的组件体系采用组件总线(总线架构)作为统一接口,在保证第一应用的正常运营的稳定性和性能的前提下,该终端通过组件总线可以实现通过组件控制模块动态配置组件模块的过程。
需要说明的是,由于本发明实施例中的终端的插件体系是基于总线架构实现的,因此,当发现第一应用的线上运营问题需要解决时,可以通过组件控制模块进行配置动态组件的方式把补丁组件下发并加载在该第一应用对应的组件总线上。再者,对于使用软件的方式模拟用户的键盘鼠标操来实现恶意自动化的行为时,可以通过在组件总线上加载攻击组件来对恶意行为进行打击,从而保证了第一应用的安全。
最后,通过本发明实施例提供的终端的插件体系,可以只为特定权限的终端或用户加载特定的组件在其组件总线上,实现第一应用的某些特定权限的功能,这样就不用专门发布特定权限的第一应用给特定的终端或用户了,更快捷和有效。
可选的,所述第一组件的运行信息包括所述第一组件的版本信息、所述第一组件的运行状态信息、所述第一组件的配置信息和所述第一组件的验证信息中的至少一个。
需要说明的是,在本发明实施例中,组件控制模块可以对组件进行动态配置和管理,该组件控制模块可以通过组件总线获取第一组件的运行信息,依据该第一组件的运行信息对第一组件进行管理。
在本发明实施例中,由于第一组件的运行信息可以有多种,因此,终端通过组件控制模块进行的组件的管理是可以分很多种进行的。下面具体描述了第一组件的运行信息不同时,终端通过组件控制模块分别进行的管理的内容。简单来说,本发明实施例中的终端的插件体系通过组件控制模块可以实现组件的稳定性保障、组件的更新、组件的加载策略控制以及组件的合法性校验等问题。
可选的,当所述第一组件的运行信息至少包括所述第一组件的版本信息时,所述组件控制模块12,具体用于通过监测所述组件总线10,获取所述组件模块11中的所述第一组件的版本信息,根据所述第一组件的版本信息的变化对所述第一组件进行组件更新。
在本发明实施例中,第一组件的版本信息可能会在使用一段时间后发布新的版本的第一组件出来,因此,组件控制模块可以检测组件总线,获取到配置的第一组件的最新版本信息,例如,版本号,这样组件控制模块就可以根据本地存储的第一组件的版本信息和第一组件的最新版本信息,判断出该第一组件是否有新版本发布,是否需要进行第一组件的更新,进而完成组件配置。
进一步地,在本发明实施例中,关于第一组件的更新除了版本信息之外,还可以通过或者第一组件的权限信息(例如黑名单、白名单)的设置的变化、加载方式的变化及生效时限变化等等信息的变化来进行判断,只要第一组件的配置与本地存储的不一样时,均可进行第一组件的更新。
可选的,当所述第一组件的运行信息至少包括所述第一组件的配置信息时,所述组件控制模块12,具体用于通过监测所述组件总线10,获取所述组件模块11中的所述第一组件的配置信息,根据所述第一组件的配置信息确定所述第一组件的加载策略,实现对所述第一组件的加载控制。
在本发明实施例中,第一组件的配置信息可以为第一组件的类型信息,也就是说表征第一组件是第一应用的登录前组件还是登录后组件的信息。
需要说明的是,在第一应用中,通常需要进行用户身份认证,或者实现用户模式、访客模式的选择等功能,在本发明实施例中将未登录时加载的组件称为登录前组件(例如,登录界面的组件),而将登录后加载的界面或页面称为登录后组件。
可以理解的是,由于登录前组件和登录后组件的功能或加载的界面的不同,组件控制模块控制第一组件的加载策略可以是不同的。
可选的,本发明实施例中的加载策略可以包括:第一加载策略和第二加载策略,即第一应用启动时生效(第一加载策略)和第一应用登录后生效(第二加载策略)。在本发明实施例中,当第一组件为登录前组件时,终端的组件控制模块通过组件总线获知第一组件为登录前组件,因此,组件控制模块对第一组件采取第一加载策略加载该第一组件至组件总线上;当第一组件为登录后组件时,终端的组件控制模块通过组件总线获知第一组件为登录后组件,因此,组件控制模块对第一组件采取第二加载策略加载该第一组件至组件总线上。
可选的,当所述第一组件的运行信息至少包括所述第一组件的运行状态信息时,所述组件控制模块12,具体用于通过监测所述组件总线10,获取所述组件模块11中的所述第一组件的运行状态信息,根据所述第一组件的运行状态信息确定所述第一组件的稳定性。
需要说明的是,本发明实施例中的第一组件的运行状态信息可以为第一组件在运行过程中的运行状况的记录信息,例如,第一组件运行崩溃的记录信息等。
在本发明实施例中,组件控制模块可以通过组件总线获取第一组件发生崩溃的记录信息,因此,该组件控制模块可以在没有获取到该第一组件的更新版本的时候,禁止该第一组件的加载运行,以保证第一组件的稳定性,即避免第一组件对整个插件体系运行的影响,保证终端内的组件的正常运行。
可选的,当所述第一组件的运行信息至少包括所述第一组件的验证信息时,所述组件控制模块12,具体用于通过监测所述组件总线10,获取所述组件模块11中的所述第一组件的验证信息,根据所述第一组件的验证信息对所述第一组件进行合法性验证,以确保所述第一组件的安全运行。
需要说明的是,终端的组件控制模块通过组件总线获取有第一组件要进行加载时,或有第一组件的更新版本需要加载时,首先需要对将要加载的第一组件进行合法性校验,也就是说,先要看看将要加载的第一组件是不是具有攻击性的恶意组件,从而保证整个终端的安全和稳定。
在本发明实施例中,组件控制模块实现组件的校验可以采用的方式为:通过组件中的文件签名进行校验,或者通过PE文件导入表进行HASH校验,具体的校验方式本发明实施例不作限制。
可选的,如图3所示,所述组件模块11包括:第一组件模块111和第二组件模块112;所述第一组件模块111为实现所述第一应用的进程内业务的组件模块,所述第二组件模块112为实现所述第一应用的进程外业务的组件模块。
所述组件总线10,具体用于通过传输所述组件控制指令至所述组件模块11,根据所述组件控制指令实现所述第一组件模块111和所述第二组件模块112的通信业务,以及实现所述组件控制模块12对所述第一组件模块111和所述第二组件模块112的组件运行管理,所述组件控制指令为进程内业务控制指令或进程外业务控制指令。
所述第一组件模块111,用于通过所述组件总线10接收所述进程内业务控制指令,根据所述进程内业务控制指令实现所述第一组件对应的所述第一应用的进程内业务。
所述第二组件模块112,用于通过所述组件总线10接收所述进程外业务控制指令,根据所述进程外业务控制指令实现所述第一组件的进程外业务。
在本发明实施例中,组件模块为加载在组件总线上的组件的功能模块,本发明实施例中的终端中可以实现第一应用的进程内业务,也可以实现第一应用的进程外业务,因此,组件模块中可以包括用于表征进程内插件或组件的第一组件模块,以及用于表征进程外插件或组件的第二组件模块。
具体的,第一组件模块和第二组件模块的通信业务的实现都是通过组件总线传输的组件控制指令控制的,终端通过组件总线传输组件控制指令至组件模块,并根据所述组件控制指令实现第一组件模块和第二组件模块的通信业务的。在本发明实施例中,组件控制模块通过组件总线获取组件模块中的第一组件的运行信息,从而实现组件控制模块对第一组件模块和第二组件模块的组件运行管理。
可选的,组件控制指令为进程内业务控制指令或进程外业务控制指令。当组件控制指令为进程内业务控制指令时,根据进程内业务控制指令实现第一组件对应的第一应用的进程内业务;当组件控制指令为进程外业务控制指令时,根据进程外业务控制指令实现第一组件对应的第一应用的进程外业务。
可选的,如图4所示,所述第二组件模块112包括:组件代理模块1121和进程外组件模块1122。
所述组件代理模块1121,具体用于所述组件总线10接收所述进程外业务控制指令,根据所述组件控制指令,对所述第一组件进行组件代理处理,将所述第一组件封装为进程外组件。
所述进程外组件模块1122,将所述进程外组件添加至进程外的第一进程中,并启动所述第一进程,从而实现所述第一组件的进程外业务。
需要说明的是,在本发明实施例中,进程外业务和进程内业务的实现的进程是不同的,要向将进程内组件实现进程外业务时,需要先给该进程内组件进行代理封装后,加入到进程外业务的进程中才可以进行进程外业务。于是,如图5所示,当第一组件为进程内组件A,组件控制指令指示实现第一组件的进程外业务时,终端通过组件代理模块将第一组件封装为进程外组件A,再将封装后的第一组件加入到进程外业务的进程中(通过IPC通道实现),就可以在组件控制指令的作用下,实现第一组件的进程外业务了。其中,本发明实施例中采用HRTXExternalPlug in进程作为进程外业务的进程的。
可以理解的是,在本发明实施例中,基于终端的总线架构的插件体系可以实现进程内组件和进程外组件的通信,并不影响第一应用运行的稳定性,因此,本发明实施例中的终端基于总线架构的插件体系扩大了组件模块通信的适用范围。
可选的,所述组件总线10,还用于通过所述界面逻辑接口13,获取所述组件模块11和所述组件控制模块12的下发和加载。
在本发明实施例中,组件控制模块可以通过监测组件总线,获取组件模块中的组件中的新的组件的加载或下发的信息,以实现组建的更新和新组件的加载,本发明实施例中的组件可以包括组件模块和组件控制模块,因此,组件控制模块可以实现自身的更新(重新加载)或其他组件的下发和加载的功能。
总的来说,终端可以通过服务配置通道从终端对应的服务器处获取一些组件,组件控制模块通过组件总线下发给组件模块,进行组件的更新或配置。也就是说,该终端上的组件体系采用组件总线(总线架构)作为统一接口,在保证第一应用的正常运营的稳定性和性能的前提下,该终端通过组件总线可以实现通过组件控制模块动态配置组件模块的过程。
实施例二
本发明实施例提供了一种总线架构的实现方法,如图6所示,该方法可以包括:
S101、当启动第一应用时,获取本地存储的当前第二组件,该当前第二组件为第一应用对应的第一组件和组件控制模块对应的控制组件,该第一组件包括由登录前组件和登录后组件构成的组件模块中的组件。
本发明实施例提供的一种总线架构的实现方法,主要描述的终端中的插件体系的总线架构的实现过程。
需要说明的是,本发明实施例提供的终端中可以设置有多个应用(第一应用)的插件(组件),本发明实施例中的组件可以有多种,例如,第一应用内插件或其他功能的外插件等。在本发明实施例中的第一应用为可实现一定功能的安装在终端上的客户端,本发明实施例不限制其应用的类型和内容。
可选的,本发明实施例中的终端可以为安装有第一应用的智能电子设备,例如,智能手机,平板等。本发明实施例不作限制。
在本发明实施例基于终端中的总线架构的插件体系。在终端中,通过组件总线作为通信接口实现各种通信业务。终端中的所有应用对应的插件或组件都可以加载在该总线架构上,从而实现组件通信业务。
在本发明实施例中,终端的总线架构的插件体系中,组件都可以挂载在组件总线上,实现组件的功能,同时,在本发明实施例中组件总线上设置有组件模块,该组件控制模块可以通过组件总线进行组件的动态配置,例如,组件的更新,组件的运行管理等管理。这里组件控制模块也是作为组件加载在组件总线上的。
这里,组件总线上的组件的加载或是挂载的启动流程是在第一应用启动的时候开始的。当终端中的第一应用被启动时,终端获取本地存储的当前第二组件,该当前第二组件为第一应用对应的第一组件和组件控制模块对应的控制组件,该第一组件包括由登录前组件和登录后组件构成的组件模块中的组件。也就是说,终端先在本地内存中获取想要加载的组件控制模块的组件和第一应用对应的第一组件等组件。
S102、加载控制组件,并根据控制组件将登录前组件加载在组件总线上。
在终端中的第一应用被启动之后,由于用户还没有在终端上进行用户登录等登录行为,因此,该终端还处于未登录的状态,这时,终端已经获取了本地存储的组件以及控制组件了,该终端就加载控制组件在组件总线上。由于控制组件中可以配置组件模块中的第一组件的加载策略,因此,该终端根据控制组件将登录前组件加载在组件总线上。
具体的,终端可以通过控制组件获取登录前组件对应的第一加载策略,并根据第一加载策略,将登录前组件加载在组件总线上。其中,第一加载策略可以为第一应用生效,这样在第一应用启动时,该登录前组件就开始生效即运行了。
S103、通过所述界面逻辑接口接收用户对第一应用的第二操作,根据该第二操作进行第一应用的登录。
终端在加载控制组件,并根据控制组件将登录前组件加载在组件总线上之后,在终端的显示界面就可以显示第一应用的登录界面等信息,用户基于该登录界面实现了登录的过程,即终端通过所述界面逻辑接口接收用户对第一应用的第二操作(用户名和密码的输入操作),并根据用户名和密码实现了第一应用的登录。
如图7所示,手机上显示第一应用的登录界面,用户在登录界面上输入用户名和密码,点击“登录”按键后,完成第一应用的登录过程。
S104、在第一应用登录成功后,根据控制组件将登录后组件加载在组件总线上,并拉取最新的第二组件,通过所述组件总线实现界面逻辑接口、所述组件模块和所述组件控制模块的通信。
终端在第一应用被登录之后,该终端根据将控制组件将登录后组件加载在组件总线上。这时,由于第一应用已经登录了,这时,终端可以通过服务配置通道拉取最新的第二组件了,从而实现了通过所述组件总线实现界面逻辑接口、所述组件模块和所述组件控制模块的通信。也就是说,终端可以获取新版本的第二组件了。
具体的,终端加载登录后组件的过程为:终端通过控制组件获取登录后组件对应的第二加载策略,并根据第二加载策略,将登录后组件加载在组件总线上。其中,第二加载策略为第一应用登录后生效,这样在第一应用被登录后,该登录前组件就开始生效即运行了。
需要说明的是,在本发明实施例中终端可以在登录后通过服务配置通道从服务器获取终端中的最新的组件的配置信息,即拉取最新的第二组件。详细地拉取过程将在后续实施例中进行详细的说明。
在本发明实施例中,服务配置通道是预设好的,例如,CSC(Common ServerConfig)。
S105、根据最新的第二组件,更新本地存储的当前第二组件,以实现总线架构的搭建。
终端在拉取到了最新的第二组件之后,该终端就可以根据最新的第二组件更新本地存储的当前第二组件了,从而完成了总前架构的搭建。
需要说明的是,在终端更新了本地存储的当前第二组件之后,可以立进行当前第二组件的下载更新,也可以将本地存储的最新的第二组件用于下次第一应用启动时总线架构的搭建过程,具体的实现方式本发明实施例不作限制。
可以理解的是,本发明实施例采用总线架构实现插件体系,终端上的组件体系采用组件总线(总线架构)作为统一接口,在保证第一应用的正常运营的稳定性和性能的前提下,该终端通过组件总线可以实现通过组件控制模块动态配置组件模块的过程。
实施例三
基于实施二描述的一种总线架构的实现方法,终端拉取最新的第二组件可以为该终端通过预设的服务配置通道拉取最新的控制组件和最新的第一组件的过程,因此,本发明实施例提供的一种总线架构的实现方法,如图8所示,终端通过预设的服务配置通道拉取最新的控制组件,可以包括:S201-S203。如下:
S201、通过预设的服务配置通道拉取控制组件最新配置的灰度信息和控制组件更新包的地址信息。
S202、根据控制组件最新配置的灰度信息和本地存储的控制组件的第一灰度信息,判断控制组件是否有更新。
S203、当控制组件有更新时,根据控制组件的更新包的地址信息下载最新的控制组件。
在本发明实施例中,终端可以判断是否有控制组件的更新,具体的可以通过CSC拉取第一应用对应的控制组件的最新配置的灰度信息和控制组件更新包的地址信息,进行控制组件是否要更新的判断,也就是,终端根据控制组件最新配置的灰度信息和本地存储的控制组件的第一灰度信息,判断控制组件是否有更新;若控制组件最新配置的灰度信息和本地存储的控制组件的第一灰度信息一致,则控制组件不更新;若控制组件最新配置的灰度信息和本地存储的控制组件的第一灰度信息不一致,则控制组件要进行更新,终端拉取的控制组件更新包的地址信息为最新的控制组件的下载地址,于是,该终端根据控制组件的更新包的地址信息下载最新的控制组件。
同时,如图9所示,终端通过预设的服务配置通道拉取最新的控制组件,可以包括:S301-S303。如下:
S301、通过预设的服务配置通道拉取第一组件的最新版本信息和第一组件更新包的地址信息。
S302、比较最新版本信息与本地存储的第一组件的第一版本信息。
S303、当最新版本信息高于第一版本信息时,判断第一组件有更新。
S304、当第一组件有更新时,根据第一组件的更新包的地址信息下载最新的第一组件。
在本发明实施例中,终端还可以判断是否有第一组件的更新,具体的可以通过CSC拉取第一应用对应的第一组件的最新版本信息和和第一组件更新包的地址信息,进行第一组件是否要更新的判断,具体的,终端比较最新版本信息与本地存储的第一组件的第一版本信息;若第一组件第一版本信息与最新版本信息一致,则第一组件不更新;若第一组件第一版本信息低于最新版本信息,则第一组件要进行更新,终端拉取的第一组件的更新包的地址信息为最新的第一组件的下载地址,于是,该终端根据该第一组件的更新包的地址信息下载最新的控制组件。
进一步地,在本发明实施例中,关于第一组件的更新除了版本信息之外,还可以通过或者第一组件的权限信息(例如黑名单、白名单)的设置的变化、加载方式的变化及生效时限变化等等信息的变化来进行判断,只要第一组件的配置与本地存储的不一样时,均可进行第一组件的下载更新。
总的来说,终端可以通过服务配置通道从终端对应的服务器处获取一些组件的最新配置信息,进行组件的更新或配置。也就是说,该终端上的组件体系采用组件总线(总线架构)作为统一接口,在保证第一应用的正常运营的稳定性和性能的前提下,该终端通过组件总线可以实现通过组件控制模块动态配置组件模块的过程。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。

Claims (15)

1.一种终端,其特征在于,包括:
组件总线,加载在所述组件总线上的组件模块和组件控制模块,与所述组件总线通信的界面逻辑接口;其中,
所述界面逻辑接口,用于基于用户对第一应用的第一操作,生成组件控制指令并通过所述组件总线传输至所述组件模块;
所述组件总线,用于实现所述界面逻辑接口、所述组件模块和所述组件控制模块的通信;
所述组件模块,用于通过所述组件总线接收所述组件控制指令,并根据所述组件控制指令实现通信业务;
所述组件控制模块,用于通过监测所述组件总线,获取所述组件模块中的第一组件的运行信息,根据所述运行信息对所述第一组件进行组件运行管理,以保证所述第一应用的正常运行,所述第一组件为所述组件模块中所述第一应用对应的正在运行的组件。
2.根据权利要求1所述的终端,其特征在于,
所述第一组件的运行信息包括所述第一组件的版本信息、所述第一组件的运行状态信息、所述第一组件的配置信息和所述第一组件的验证信息中的至少一个。
3.根据权利要求2所述的终端,其特征在于,当所述第一组件的运行信息至少包括所述第一组件的版本信息时,
所述组件控制模块,具体用于通过监测所述组件总线,获取所述组件模块中的所述第一组件的版本信息,根据所述第一组件的版本信息的变化对所述第一组件进行组件更新。
4.根据权利要求2所述的终端,其特征在于,当所述第一组件的运行信息至少包括所述第一组件的配置信息时,
所述组件控制模块,具体用于通过监测所述组件总线,获取所述组件模块中的所述第一组件的配置信息,根据所述第一组件的配置信息确定所述第一组件的加载策略,实现对所述第一组件的加载控制。
5.根据权利要求2所述的终端,其特征在于,当所述第一组件的运行信息至少包括所述第一组件的运行状态信息时,
所述组件控制模块,具体用于通过监测所述组件总线,获取所述组件模块中的所述第一组件的运行状态信息,根据所述第一组件的运行状态信息确定所述第一组件的稳定性。
6.根据权利要求2所述的终端,其特征在于,当所述第一组件的运行信息至少包括所述第一组件的验证信息时,
所述组件控制模块,具体用于通过监测所述组件总线,获取所述组件模块中的所述第一组件的验证信息,根据所述第一组件的验证信息对所述第一组件进行合法性验证,以确保所述第一组件的安全运行。
7.根据权利要求1至6任一项所述的终端,其特征在于,所述组件模块包括:第一组件模块和第二组件模块;所述第一组件模块为实现所述第一应用的进程内业务的组件模块,所述第二组件模块为实现所述第一应用的进程外业务的组件模块;
所述组件总线,具体用于通过传输所述组件控制指令至所述组件模块,根据所述组件控制指令实现所述第一组件模块和所述第二组件模块的通信业务,以及实现所述组件控制模块对所述第一组件模块和所述第二组件模块的组件运行管理,所述组件控制指令为进程内业务控制指令或进程外业务控制指令;
所述第一组件模块,用于通过所述组件总线接收所述进程内业务控制指令,根据所述进程内业务控制指令实现所述第一组件对应的所述第一应用的进程内业务;
所述第二组件模块,用于通过所述组件总线接收所述进程外业务控制指令,根据所述进程外业务控制指令实现所述第一组件的进程外业务。
8.根据权利要求7所述的终端,其特征在于,所述第二组件模块包括:组件代理模块和进程外组件模块;
所述组件代理模块,具体用于所述组件总线接收所述进程外业务控制指令,根据所述组件控制指令,对所述第一组件进行组件代理处理,将所述第一组件封装为进程外组件;
所述进程外组件模块,将所述进程外组件添加至进程外的第一进程中,并启动所述第一进程,从而实现所述第一组件的进程外业务。
9.根据权利要求1所述的终端,其特征在于,
所述组件总线,还用于通过所述界面逻辑接口,获取所述组件模块和所述组件控制模块的下发和加载。
10.一种总线架构的实现方法,其特征在于,包括:
当启动第一应用时,获取本地存储的当前第二组件,所述当前第二组件为所述第一应用对应的第一组件和组件控制模块对应的控制组件,所述第一组件包括由登录前组件和登录后组件构成的组件模块中的组件;
加载所述控制组件,并根据所述控制组件将所述登录前组件加载在组件总线上;
通过界面逻辑接口接收用户对所述第一应用的第二操作,根据所述第二操作进行所述第一应用的登录;
在所述第一应用登录成功后,根据所述控制组件将所述登录后组件加载在所述组件总线上,并拉取最新的第二组件,通过所述组件总线实现界面逻辑接口、所述组件模块和所述组件控制模块的通信;
根据所述最新的第二组件,更新所述本地存储的所述当前第二组件,以实现所述总线架构的搭建。
11.根据权利要求10所述的方法,其特征在于,所述根据所述控制组件将所述登录前组件加载在组件总线上,包括:
通过所述控制组件获取所述登录前组件对应的第一加载策略;
根据所述第一加载策略,将所述登录前组件加载在所述组件总线上。
12.根据权利要求10所述的方法,其特征在于,所述根据所述控制组件将所述登录后组件加载在所述组件总线上,包括:
通过所述控制组件获取所述登录后组件对应的第二加载策略;
根据所述第二加载策略,将所述登录后组件加载在所述组件总线上。
13.根据权利要求10所述的方法,其特征在于,所述拉取最新的第二组件,包括:
通过预设的服务配置通道拉取最新的控制组件和最新的第一组件。
14.根据权利要求13所述的方法,其特征在于,所述通过预设的服务配置通道拉取最新的控制组件,包括:
通过预设的服务配置通道拉取控制组件最新配置的灰度信息和控制组件更新包的地址信息;
根据所述控制组件最新配置的灰度信息和所述本地存储的所述控制组件的第一灰度信息,判断所述控制组件是否有更新;
当所述控制组件有更新时,根据所述控制组件的更新包的地址信息下载所述最新的控制组件。
15.根据权利要求13所述的方法,其特征在于,所述通过预设的服务配置通道拉取最新的第一组件,包括:
通过预设的服务配置通道拉取所述第一组件的最新版本信息和第一组件更新包的地址信息;
比较所述最新版本信息与所述本地存储的所述第一组件的第一版本信息;
当所述最新版本信息高于所述第一版本信息时,判断所述第一组件有更新;
当所述第一组件有更新时,根据所述第一组件的更新包的地址信息下载所述最新的第一组件。
CN201611095870.7A 2016-12-01 2016-12-01 一种终端及总线架构的实现方法 Active CN108134683B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611095870.7A CN108134683B (zh) 2016-12-01 2016-12-01 一种终端及总线架构的实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611095870.7A CN108134683B (zh) 2016-12-01 2016-12-01 一种终端及总线架构的实现方法

Publications (2)

Publication Number Publication Date
CN108134683A CN108134683A (zh) 2018-06-08
CN108134683B true CN108134683B (zh) 2021-06-11

Family

ID=62388366

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611095870.7A Active CN108134683B (zh) 2016-12-01 2016-12-01 一种终端及总线架构的实现方法

Country Status (1)

Country Link
CN (1) CN108134683B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110120943B (zh) * 2019-04-18 2021-06-08 中国科学院国家空间科学中心 组态化ccsds aos协议数据处理系统及方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010282284A (ja) * 2009-06-02 2010-12-16 Renesas Electronics Corp マイクロコンピュータ
CN102262557A (zh) * 2010-05-25 2011-11-30 运软网络科技(上海)有限公司 通过总线架构构建虚拟机监控器的方法及性能服务框架
CN102738894A (zh) * 2012-06-06 2012-10-17 中国电力科学研究院 一种基于总线接口的模块化智能配电终端

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101937366A (zh) * 2009-07-02 2011-01-05 华为技术有限公司 一种具有运行软件功能的装置和系统及运行方法
CN102781119B (zh) * 2012-06-13 2016-04-13 哈尔滨工业大学深圳研究生院 无线泛在网络应用终端系统及软件组件应用进程管理方法
US9553766B2 (en) * 2014-12-15 2017-01-24 Sap Se Determined configuration update for edge components

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010282284A (ja) * 2009-06-02 2010-12-16 Renesas Electronics Corp マイクロコンピュータ
CN102262557A (zh) * 2010-05-25 2011-11-30 运软网络科技(上海)有限公司 通过总线架构构建虚拟机监控器的方法及性能服务框架
CN102738894A (zh) * 2012-06-06 2012-10-17 中国电力科学研究院 一种基于总线接口的模块化智能配电终端

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于软件总线技术的软件工程方法;袁占亭等;《计算机工程与应用》;20030521(第15期);全文 *

Also Published As

Publication number Publication date
CN108134683A (zh) 2018-06-08

Similar Documents

Publication Publication Date Title
US20210144213A1 (en) Application Customization
EP2909715B1 (en) Application wrapping for application management framework
US10367814B2 (en) Enabling user entropy encryption in non-compliant mobile applications
CN109815683B (zh) 权限验证方法及相关装置
US9971585B2 (en) Wrapping unmanaged applications on a mobile device
US20170300696A1 (en) Software verification method and apparatus
CN109725952B (zh) 一种应用程序插件化的方法、系统以及相关装置
CN107517124A (zh) 基于tcp协议远程配置版本管理软件svn权限的方法及装置
US20160283198A1 (en) Wrapping an application with field-programmable business logic
CN107862091B (zh) 实现网页访问的控制方法及装置
CN106169042A (zh) 管理权限的方法及装置
US20220038444A1 (en) Cloud device, application processing method, electronic device and storage medium
CN115344871A (zh) 基于arm架构的机密计算环境构建方法和系统
CN108134683B (zh) 一种终端及总线架构的实现方法
US11681513B2 (en) Controlled scope of authentication key for software update
CN111544894A (zh) 小游戏客户端的服务器登录方法和装置
CN114095498B (zh) 集群环境的部署方法、系统、计算机设备及存储介质
CN104158812A (zh) 一种终端应用的安全控制方法及系统
CN112738167A (zh) 基于api网关的文件服务开放方法、装置、设备和介质
CN111143832A (zh) 适用于多场景的移动端sdk及其混合授权方法
CN113703878B (zh) 组件的启动方法和装置、存储介质及电子设备
CN115333937B (zh) 数据下载方法、装置及电子设备
CN111181907B (zh) 一种宿主端插件的登录方法、装置和设备及存储介质
CN110531961B (zh) 智能服务破壳系统及其方法
CN118433709A (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