CN108052361B - 基于Android的页面启动方法、存储介质、电子设备及*** - Google Patents
基于Android的页面启动方法、存储介质、电子设备及*** Download PDFInfo
- Publication number
- CN108052361B CN108052361B CN201711058320.2A CN201711058320A CN108052361B CN 108052361 B CN108052361 B CN 108052361B CN 201711058320 A CN201711058320 A CN 201711058320A CN 108052361 B CN108052361 B CN 108052361B
- Authority
- CN
- China
- Prior art keywords
- page
- information
- application module
- starting
- component
- 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
-
- 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/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
-
- 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/546—Message passing systems or structures, e.g. queues
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种基于Android的页面启动方法、存储介质、电子设备及***,涉及Android客户端的组件化领域。该方法的步骤为:在组件与应用模块之间设置消息事件总线;组件需要启动应用模块内部的页面时,组件获取页面启动信息,将页面启动信息封装为页面启动数据后,将页面启动数据通过消息事件总线传输至应用模块;应用模块解析页面启动数据,得到页面启动信息,通过start函数启动与页面启动信息对应的页面。本发明能够在不改变页面业务逻辑的基础上,通过Android客户端的组件,来启动应用模块内的页面。本发明能够以应用模块启动页面的手段,来实现组件启动页面的目的,进而保证了页面的稳定性能以及后续的用户体验。
Description
技术领域
本发明涉及Android客户端的组件化领域,具体涉及一种基于Android的页面启动方法、存储介质、电子设备及***。
背景技术
在Android客户端的组件化过程中,组件需要启动应用模块内部的页面,由于应用模块与组件之间的关系是:应用模块依赖于组件(即应用模块能够直接引用组件),组件不会依赖应用模块(即组件不能直接引用应用模块),因此将通过组件启动应用模块中的页面之前,需要将页面的启动方式由之前的通过应用模块直接启动(因为在应用模块内部,所以可以直接启动),变更为通过组件启动,具体为将页面传递参数的方式由应用模块改为组件。
但是,将页面传递参数的方式由应用模块改为组件,这必然会改变页面的业务逻辑,页面的业务逻辑被修改后会降低页面的稳定性能,进而导致页面在运行时可能存在诸多问题,存在问题的页面直接上线可能会带来不可预知的后果。
发明内容
针对现有技术中存在的缺陷,本发明解决的技术问题为:在不改变页面业务逻辑的基础上,通过Android客户端的组件,来启动应用模块内的页面。本发明能够以应用模块启动页面的手段,来实现组件启动页面的目的,进而保证了页面的稳定性能以及后续的用户体验。
为达到以上目的,本发明提供的基于Android的页面启动方法,包括以下步骤:
S1:在组件与应用模块之间设置消息事件总线;
S2:组件需要启动应用模块内部的页面时,组件获取页面启动信息,将页面启动信息封装为页面启动数据后,将页面启动数据通过消息事件总线传输至应用模块,转到S3;
S3:应用模块解析页面启动数据,得到页面启动信息,通过start函数启动与页面启动信息对应的页面。
在上述技术方案的基础上,S2中所述页面启动信息包括页面信息和启动参数信息。
在上述技术方案的基础上,S3中所述通过start函数启动与页面启动信息对应的页面的流程包括:通过start函数确定与页面信息对应的页面后,根据启动参数信息启动确定的页面。
在上述技术方案的基础上,S2中所述页面启动数据的格式为JSON格式。
本发明提供的存储介质,该存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述基于Android的页面启动方法。
本发明提供的电子设备,包括存储器和处理器,存储器上储存有在处理器上运行的计算机程序,处理器执行计算机程序时实现上述基于Android的页面启动方法。
本发明提供的基于Android的页面启动***,包括设置于Android客户端上的消息事件总线设置模块、设置于组件上的页面启动信息传输模块、以及设置于应用模块上的消息接收模块;
消息事件总线设置模块用于:在组件与应用模块之间设置消息事件总线;
页面启动信息传输模块用于:需要启动应用模块内部的页面时,获取页面启动信息,将页面启动信息封装为页面启动数据后,将页面启动数据通过消息事件总线传输至消息接收模块;
消息接收模块用于:解析页面启动数据得到页面启动信息后,通过start函数启动与页面启动信息对应的页面。
在上述技术方案的基础上,所述页面启动信息传输模块中的页面启动信息包括页面信息和启动参数信息。
在上述技术方案的基础上,所述消息接收模块通过start函数启动与页面启动信息对应的页面的流程包括:通过start函数确定与页面信息对应的页面后,根据启动参数信息启动确定的页面。
在上述技术方案的基础上,所述页面启动信息传输模块中的页面启动数据的格式为JSON格式。
与现有技术相比,本发明的优点在于:
(1)参见S1至S3可知,本发明在组件启动应用模块中的页面时,通过应用模块来解析组件下发的页面启动消息、并根据页面启动消息来启动页面。与现有技术中组件需要改变页面的业务逻辑来启动页面相比,因为本发明使得组件与页面之间没有之间联系,而是通过应用模块来“桥接”,所以不需要改变页面的业务逻辑;因此,本发明能够以应用模块启动页面的手段,来实现组件启动页面的目的,进而保证了页面的稳定性能以及后续的用户体验。
(2)本发明能够通过start函数,根据不同的页面信息和启动参数信息,来启动对应应用模块的页面,适用范围广泛,实用性较强,非常适于推广。
附图说明
图1为本发明实施例中基于Android的页面启动方法的流程图;
图2为本发明实施例中电子设备的连接框图。
具体实施方式
以下结合附图及实施例对本发明作进一步详细说明。
参见图1所示,本发明实施例中的基于Android的页面启动方法,包括以下步骤:
S1:在组件与应用模块之间设置消息事件总线,消息事件总线用于实现组件与应用模块之间的通信,转到S2。
S2:组件需要启动应用模块内部的页面时,组件获取页面启动信息,页面启动信息包括页面信息和启动参数信息,将页面启动信息封装为JSON格式(JavaScript ObjectNotation,轻量级的数据交换格式)的页面启动数据后,将页面启动数据通过消息事件总线传输至应用模块,转到S3。
S3:应用模块解析页面启动数据,得到页面启动信息,通过start函数(启动函数)启动与页面启动信息对应的页面,具体流程为:通过start函数确定与页面信息对应的页面后,根据启动参数信息启动确定的页面,实际实现方式为:start函数为“start(target,param)”,其中target为页面信息,param为启动参数信息。由此可知,本发明实施例能够通过start函数,根据不同的页面信息和启动参数信息,来启动对应应用模块的页面,适用范围广泛,实用性较强,非常适于推广。
参见S1至S3可知,本发明实施例在组件启动应用模块中的页面时,通过应用模块来解析组件下发的页面启动消息、并根据页面启动消息来启动页面。与现有技术中组件需要改变页面的业务逻辑来启动页面相比,因为本发明实施例使得组件与页面之间没有之间联系,而是通过应用模块来“桥接”,所以不需要改变页面的业务逻辑;因此,本发明实施例能够以应用模块启动页面的手段,来实现组件启动页面的目的,进而保证了页面的稳定性能以及后续的用户体验。
本发明实施例还提供一种存储介质,存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述基于Android的页面启动方法。需要说明的是,所述存储介质包括U盘、移动硬盘、ROM(Read-Only Memory,只读存储器)、RAM(Random Access Memory,随机存取存储器)、磁碟或者光盘等各种可以存储程序代码的介质。
参见图2所示,本发明实施例还提供一种电子设备,包括存储器和处理器,存储器上储存有在处理器上运行的计算机程序,处理器执行计算机程序时实现上述基于Android的页面启动方法。
本发明实施例中的基于Android的页面启动***,包括设置于Android客户端上的消息事件总线设置模块、设置于组件上的页面启动信息传输模块、以及设置于应用模块上的消息接收模块。
消息事件总线设置模块用于:在组件与应用模块之间设置消息事件总线;
页面启动信息传输模块用于:需要启动应用模块内部的页面时,获取页面启动信息,页面启动信息包括页面信息和启动参数信息;将页面启动信息封装为JSON格式的页面启动数据后,将页面启动数据通过消息事件总线传输至消息接收模块。
消息接收模块用于:解析页面启动数据得到页面启动信息后,通过start函数启动与页面启动信息对应的页面:通过start函数确定与页面信息对应的页面后,根据启动参数信息启动确定的页面。
需要说明的是:本发明实施例提供的***在进行模块间通信时,仅以上述各功能模块的划分进行举例说明,实际应用模块中,可以根据需要而将上述功能分配由不同的功能模块完成,即将***的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
进一步,本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。
Claims (6)
1.一种基于Android的页面启动方法,其特征在于,该方法包括以下步骤:
S1:在组件与应用模块之间设置消息事件总线;
S2:组件需要启动应用模块内部的页面时,组件获取页面启动信息,页面启动信息包括页面信息和启动参数信息;将页面启动信息封装为页面启动数据后,将页面启动数据通过消息事件总线传输至应用模块,转到S3;
S3:应用模块解析页面启动数据,得到页面启动信息,通过start函数确定与页面信息对应的页面后,根据启动参数信息启动确定的页面。
2.如权利要求1所述的基于Android的页面启动方法,其特征在于:S2中所述页面启动数据的格式为JSON格式。
3.一种存储介质,该存储介质上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现权利要求1或2所述的方法。
4.一种电子设备,包括存储器和处理器,存储器上储存有在处理器上运行的计算机程序,其特征在于:处理器执行计算机程序时实现权利要求1或2所述的方法。
5.一种基于Android的页面启动***,其特征在于:该***包括设置于Android客户端上的消息事件总线设置模块、设置于组件上的页面启动信息传输模块、以及设置于应用模块上的消息接收模块;
消息事件总线设置模块用于:在组件与应用模块之间设置消息事件总线;
页面启动信息传输模块用于:需要启动应用模块内部的页面时,获取页面启动信息,页面启动信息包括页面信息和启动参数信息;将页面启动信息封装为页面启动数据后,将页面启动数据通过消息事件总线传输至消息接收模块;
消息接收模块用于:解析页面启动数据得到页面启动信息后,通过start函数确定与页面信息对应的页面后,根据启动参数信息启动确定的页面。
6.如权利要求5所述的基于Android的页面启动***,其特征在于:所述页面启动信息传输模块中的页面启动数据的格式为JSON格式。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711058320.2A CN108052361B (zh) | 2017-11-01 | 2017-11-01 | 基于Android的页面启动方法、存储介质、电子设备及*** |
PCT/CN2018/081289 WO2019085385A1 (zh) | 2017-11-01 | 2018-03-30 | 基于Android的页面启动方法、存储介质、电子设备及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711058320.2A CN108052361B (zh) | 2017-11-01 | 2017-11-01 | 基于Android的页面启动方法、存储介质、电子设备及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108052361A CN108052361A (zh) | 2018-05-18 |
CN108052361B true CN108052361B (zh) | 2019-08-23 |
Family
ID=62119853
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711058320.2A Active CN108052361B (zh) | 2017-11-01 | 2017-11-01 | 基于Android的页面启动方法、存储介质、电子设备及*** |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN108052361B (zh) |
WO (1) | WO2019085385A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113254154B (zh) * | 2021-05-21 | 2024-03-29 | 技德技术研究所(武汉)有限公司 | 一种在Linux上兼容运行Android***的应用启动方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103914204A (zh) * | 2012-12-31 | 2014-07-09 | 北京新媒传信科技有限公司 | 一种用于视图显示和切换的方法和装置 |
CN106155639A (zh) * | 2015-03-24 | 2016-11-23 | 阿里巴巴集团控股有限公司 | 一种操作界面的加载方法及装置 |
CN106843912A (zh) * | 2017-03-22 | 2017-06-13 | 武汉斗鱼网络科技有限公司 | 页面信息获取方法及装置 |
-
2017
- 2017-11-01 CN CN201711058320.2A patent/CN108052361B/zh active Active
-
2018
- 2018-03-30 WO PCT/CN2018/081289 patent/WO2019085385A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103914204A (zh) * | 2012-12-31 | 2014-07-09 | 北京新媒传信科技有限公司 | 一种用于视图显示和切换的方法和装置 |
CN106155639A (zh) * | 2015-03-24 | 2016-11-23 | 阿里巴巴集团控股有限公司 | 一种操作界面的加载方法及装置 |
CN106843912A (zh) * | 2017-03-22 | 2017-06-13 | 武汉斗鱼网络科技有限公司 | 页面信息获取方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2019085385A1 (zh) | 2019-05-09 |
CN108052361A (zh) | 2018-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107005062B (zh) | 充电方法、移动终端和充电装置 | |
CN108337236A (zh) | 一种基于Protobuf和HTTP/1.1的gRPC调用方法及装置 | |
CN107463348B (zh) | 基于B/S架构实现Web端自定义格式打印方法及*** | |
CN110213058A (zh) | 一种实现数据上链的区块链一体机 | |
CN109271125A (zh) | 分体式终端设备的屏显控制方法、装置及存储介质 | |
CN107689982A (zh) | 多数据源数据同步方法、应用服务器及计算机可读存储介质 | |
CN107438832B (zh) | 一种数据刷新方法、装置及计算机可读存储介质 | |
CN103905482B (zh) | 推送信息的方法、推送服务器和*** | |
CN103986788A (zh) | Ott应用的数据抓取方法和装置 | |
CN110533106A (zh) | 图像分类处理方法、装置及存储介质 | |
CN108052361B (zh) | 基于Android的页面启动方法、存储介质、电子设备及*** | |
CN108170385A (zh) | 模板打印方法及***、计算机可读存储介质、终端 | |
CN103051623B (zh) | 限制开放平台的调用的方法 | |
CN107678863A (zh) | 页面组件通讯方法及装置 | |
CN109525550B (zh) | 一种数据报文的处理方法、装置以及*** | |
CN105338517B (zh) | 发送消息的方法、移动宽带设备和主机 | |
CN111638871A (zh) | 一种设备信息处理方法、装置、设备、介质 | |
CN110113660A (zh) | 一种转码时长估计的方法、装置、终端和存储介质 | |
CN110263308A (zh) | 电子签约方法、装置、计算机可读存储介质及服务器 | |
CN109286689A (zh) | 一种信息发送方法、装置及车载人车交互终端 | |
CN110032499A (zh) | 页面用户流失的分析方法、装置、服务器及可读存储介质 | |
CN109308327A (zh) | 基于子图模型兼容点中心模型的图计算方法装置介质设备 | |
CN104598223B (zh) | 一种网络建模语言解析方法及装置 | |
CN112766486A (zh) | 神经网络结构的搜索方法、终端、服务器及可读存储介质 | |
CN110098903B (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 |