CN108052361A - 基于Android的页面启动方法、存储介质、电子设备及系统 - Google Patents

基于Android的页面启动方法、存储介质、电子设备及系统 Download PDF

Info

Publication number
CN108052361A
CN108052361A CN201711058320.2A CN201711058320A CN108052361A CN 108052361 A CN108052361 A CN 108052361A CN 201711058320 A CN201711058320 A CN 201711058320A CN 108052361 A CN108052361 A CN 108052361A
Authority
CN
China
Prior art keywords
page
starts
information
application module
android
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
Application number
CN201711058320.2A
Other languages
English (en)
Other versions
CN108052361B (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.)
Wuhan Douyu Network Technology Co Ltd
Original Assignee
Wuhan Douyu Network Technology 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 Wuhan Douyu Network Technology Co Ltd filed Critical Wuhan Douyu Network Technology Co Ltd
Priority to CN201711058320.2A priority Critical patent/CN108052361B/zh
Priority to PCT/CN2018/081289 priority patent/WO2019085385A1/zh
Publication of CN108052361A publication Critical patent/CN108052361A/zh
Application granted granted Critical
Publication of CN108052361B publication Critical patent/CN108052361B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message 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客户端的组件,来启动应用模块内的页面。本发明能够以应用模块启动页面的手段,来实现组件启动页面的目的,进而保证了页面的稳定性能以及后续的用户体验。
为达到以上目的,本发明提供的基于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 (10)

1.一种基于Android的页面启动方法,其特征在于,该方法包括以下步骤:
S1:在组件与应用模块之间设置消息事件总线;
S2:组件需要启动应用模块内部的页面时,组件获取页面启动信息,将页面启动信息封装为页面启动数据后,将页面启动数据通过消息事件总线传输至应用模块,转到S3;
S3:应用模块解析页面启动数据,得到页面启动信息,通过start函数启动与页面启动信息对应的页面。
2.如权利要求1所述的基于Android的页面启动方法,其特征在于:S2中所述页面启动信息包括页面信息和启动参数信息。
3.如权利要求2所述的基于Android的页面启动方法,其特征在于:S3中所述通过start函数启动与页面启动信息对应的页面的流程包括:通过start函数确定与页面信息对应的页面后,根据启动参数信息启动确定的页面。
4.如权利要求1至3任一项所述的基于Android的页面启动方法,其特征在于:S2中所述页面启动数据的格式为JSON格式。
5.一种存储介质,该存储介质上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现权利要求1至4任一项所述的方法。
6.一种电子设备,包括存储器和处理器,存储器上储存有在处理器上运行的计算机程序,其特征在于:处理器执行计算机程序时实现权利要求1至4任一项所述的方法。
7.一种基于Android的页面启动系统,其特征在于:该系统包括设置于Android客户端上的消息事件总线设置模块、设置于组件上的页面启动信息传输模块、以及设置于应用模块上的消息接收模块;
消息事件总线设置模块用于:在组件与应用模块之间设置消息事件总线;
页面启动信息传输模块用于:需要启动应用模块内部的页面时,获取页面启动信息,将页面启动信息封装为页面启动数据后,将页面启动数据通过消息事件总线传输至消息接收模块;
消息接收模块用于:解析页面启动数据得到页面启动信息后,通过start函数启动与页面启动信息对应的页面。
8.如权利要求7所述的基于Android的页面启动系统,其特征在于:所述页面启动信息传输模块中的页面启动信息包括页面信息和启动参数信息。
9.如权利要求8所述的基于Android的页面启动系统,其特征在于:所述消息接收模块通过start函数启动与页面启动信息对应的页面的流程包括:通过start函数确定与页面信息对应的页面后,根据启动参数信息启动确定的页面。
10.如权利要求7至9任一项所述的基于Android的页面启动系统,其特征在于:所述页面启动信息传输模块中的页面启动数据的格式为JSON格式。
CN201711058320.2A 2017-11-01 2017-11-01 基于Android的页面启动方法、存储介质、电子设备及系统 Active CN108052361B (zh)

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 true CN108052361A (zh) 2018-05-18
CN108052361B 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)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113254154A (zh) * 2021-05-21 2021-08-13 技德技术研究所(武汉)有限公司 一种在Linux上兼容运行Android系统的应用启动方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
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 武汉斗鱼网络科技有限公司 页面信息获取方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
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 武汉斗鱼网络科技有限公司 页面信息获取方法及装置

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
WHILU: "一次Andriod项目组件化", 《HTTP://WWW.JIANSHU.COM/P/894E7878DE17》 *
刘望舒: "Android事件总线(一)EventBus3.0用法全解析", 《HTTPS://WWW.JIANSHU.COM/P/2A0540330580》 *
李嘉周: "资讯类Android应用开发框架的设计与实现", 《中国优秀硕士学位论文全文数据库》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113254154A (zh) * 2021-05-21 2021-08-13 技德技术研究所(武汉)有限公司 一种在Linux上兼容运行Android系统的应用启动方法及装置
CN113254154B (zh) * 2021-05-21 2024-03-29 技德技术研究所(武汉)有限公司 一种在Linux上兼容运行Android系统的应用启动方法及装置

Also Published As

Publication number Publication date
WO2019085385A1 (zh) 2019-05-09
CN108052361B (zh) 2019-08-23

Similar Documents

Publication Publication Date Title
CN108521858B (zh) 基于分组的数据通信的设备标识符相关操作处理
US10825088B2 (en) Contract generation method and apparatus, server and storage medium
CN109417719B (zh) 一种网络资源的管理方法、装置及系统
CN111552838B (zh) 数据处理方法及装置、计算机设备、存储介质
CN107483358A (zh) 一种基于物联网的数据传输方法及装置
CN107689982A (zh) 多数据源数据同步方法、应用服务器及计算机可读存储介质
CN108255701A (zh) 场景测试方法及移动终端
CN107294832A (zh) 一种添加好友的方法及装置
CN109783357A (zh) 测试应用程序的方法及装置、计算机设备、存储介质
CN107438832A (zh) 一种数据刷新方法、装置及计算机可读存储介质
CN108052361A (zh) 基于Android的页面启动方法、存储介质、电子设备及系统
CN106888461A (zh) 一种弱网络环境的构建方法和设备
CN112671936B (zh) 一种跨不同本国系统的专用传输模块适配方法、装置
CN111885723B (zh) 确定解调参考信号指示信息大小的方法、设备及存储介质
CN109582659A (zh) 请求处理环节的记录方法、系统、装置及可读存储介质
CN113051202A (zh) 接口适配方法、装置、电子设备和计算机可读存储介质
CN110263308A (zh) 电子签约方法、装置、计算机可读存储介质及服务器
CN105843391A (zh) 调频调核的方法、装置及终端
CN107204961A (zh) 接口报文中需转义字符的处理方法和装置
CN108681448A (zh) Ios系统的网络请求方法、存储介质、电子设备及系统
CN104378256A (zh) 基于fpga的性能测试数据流的调度方法和装置
CN114726681A (zh) 业务与通讯逻辑分离的网关服务分层设计方法和装置
US11425680B2 (en) Positioning system, positioning signal generation and sending method, and storage medium
CN105119982B (zh) 增值处理的方法及装置
CN111859145B (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