CN108334392B - 安卓系统中启动页面的方法、存储介质、设备及系统 - Google Patents

安卓系统中启动页面的方法、存储介质、设备及系统 Download PDF

Info

Publication number
CN108334392B
CN108334392B CN201810019238.7A CN201810019238A CN108334392B CN 108334392 B CN108334392 B CN 108334392B CN 201810019238 A CN201810019238 A CN 201810019238A CN 108334392 B CN108334392 B CN 108334392B
Authority
CN
China
Prior art keywords
function
starting
page
param
startactivity
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
CN201810019238.7A
Other languages
English (en)
Other versions
CN108334392A (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 CN201810019238.7A priority Critical patent/CN108334392B/zh
Priority to PCT/CN2018/081288 priority patent/WO2019136843A1/zh
Publication of CN108334392A publication Critical patent/CN108334392A/zh
Application granted granted Critical
Publication of CN108334392B publication Critical patent/CN108334392B/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/44505Configuring for program initiating, e.g. using registry, configuration files

Abstract

本发明公开了一种安卓系统中启动页面的方法、存储介质、设备及系统,涉及计算机通信技术领域,本发明通过创建StartManager管理类,在StartManager管理类中定义startActivity方法,在startActivity方法中定义target对象和param对象;通过target对象获取并存储需启动的目标地址的类名,通过param对象获取并存储跳转需要的信息内容。通过本发明中创建的StartManager管理类以及target对象、param对象能够有效的实现启动页面的时候参数传递的便捷性。通过本发明能够统一的对启动动画进行维护和管理,无需每次启动的时候都编写相应的启动页面的启动动画,降低启动页面代码的冗余性同时提高代码的可维护性和扩展性。

Description

安卓系统中启动页面的方法、存储介质、设备及系统
技术领域
本发明涉及计算机通信技术领域,具体涉及一种安卓系统中启动页面的方法、存储介质、设备及系统。
背景技术
在Android中启动页面的方法通常是调用context类中的startActivity方法来对Activity进行启动操作,传统的这种启动方式存在很多缺陷:例如在启动页面的时候需要传递参数需要人为手动的构建intent对象并将相应的参数设置到intent对象中来进行启动;其次,启动过程中涉及到的启动动画需要进行编写,每次启动的时候都需要编写相应的启动页面的启动动画,这样就会导致会有许多冗余的代码存在,非常不方便启动方式的管理。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供一种安卓系统中启动页面的方法、存储介质、设备及系统,有效的实现启动页面的时候参数传递的便捷性,降低启动页面代码的冗余性同时提高代码的可维护性和扩展性。
为达到以上目的,本发明采取的技术方案是:一种安卓系统中启动页面的方法,包括:
创建StartManager管理类,在StartManager管理类中定义startActivity方法,在startActivity方法中定义target对象和param对象;
通过target对象获取并存储需启动的目标地址的类名,通过param对象获取并存储跳转需要的信息内容;
创建intent对象,通过intent对象获取target对象中存储的需启动的目标地址的类名和param对象存储的跳转需要的信息内容;
启动安卓系统context对象中的startActivity方法,向context对象中的startActivity方法传递intent对象,启动目标页面。
在上述技术方案的基础上,所述target对象包括setClass函数和getClass函数;通过setClass函数存储需启动的目标地址的类名,通过getClass函数获取setClass函数存储的需启动的目标地址的类名并标记为targetClass。
在上述技术方案的基础上,所述param对象包括put函数和get函数;通过put函数存储跳转需要的信息内容,通过get函数依次取出put函数中存储的跳转需要的信息内容。
在上述技术方案的基础上,通过调用intent对象中的setClass函数将所述target对象中需启动的目标地址的类名设置到intent对象中;通过调用intent对象中的getBundle方法获取bundle对象,调用get函数依次取出put函数中存储的跳转需要的信息内容,通过调用bundle对象中的putString方法将所述param对象中的跳转需要的信息内容封装到bundle对象中。
在上述技术方案的基础上,将param对象的类型设置为键值对类型,将param对象中的键及键值均设置为字符串类型。
在上述技术方案的基础上,在startActivity方法执行完成后,通过调用overridePendingTransition函数设置页面启动过程中的动画效果。
本发明还公开了一种存储介质,该存储介质上存储有计算机程序:所述计算机程序被处理器执行时实现安卓系统中启动页面的方法。
本发明还公开了一种电子设备,包括存储器和处理器,存储器上储存有在处理器上运行的计算机程序:处理器执行计算机程序时实现安卓系统中启动页面的方法。
本发明还公开了一种安卓系统中启动页面的系统,包括:
StartManager管理类模块,所述StartManager管理类模块包括startActivity方法,所述startActivity方法包括target对象和param对象;target对象用于获取并存储需启动的目标地址的类名,param对象用于获取并存储跳转需要的信息内容;
intent对象模块,所述intent对象模块用于获取target对象中存储的需启动的目标地址的类名和param对象存储的跳转需要的信息内容;
页面启动模块,所述页面启动模块用于启动安卓系统context对象中的startActivity方法,向context对象中的startActivity方法传递intent对象,启动目标页面。
在上述技术方案的基础上,所述安卓系统中启动页面的系统还包括动画效果设置模块,所述动画效果设置模块用于在startActivity方法执行完成后,通过调用overridePendingTransition函数设置页面启动过程中的动画效果。
与现有技术相比,本发明的优点在于:
(1)通过本发明中创建的StartManager管理类以及target对象、param对象,通过StartManager管理类中的target对象、param对象能够有效获取需启动的目标地址的类名和跳转需要的信息内容并传递给intent对象,实现启动页面的时候参数传递的便捷性,避免每次跳转的时候开发者都需要自行转换。
(2)通过本发明能够统一的对启动动画进行维护和管理,无需每次启动的时候都编写相应的启动页面的启动动画,降低启动页面代码的冗余性同时提高代码的可维护性和扩展性。
附图说明
图1为本发明实施例中安卓系统中启动页面的方法的流程示意图;
图2为本发明实施例中安卓系统中启动页面的系统的结构示意图。
具体实施方式
以下结合附图及实施例对本发明作进一步详细说明。
术语说明:
context对象,安卓系统中的上下文对象;
startActivity方法,安卓系统中的上下文对象中的一个方法,用以启动一个activity;
activity就是布满整个窗口或者悬浮于其他窗口上的交互界面;
intent对象,intent是安卓系统中的一种运行时绑定机制,用于在程序运行的过程中连接两个不同的组件;向context对象中的startActivity方法传递一个intent对象,可以启动一个activity。
参见图1所示,本发明实施例提供一种安卓系统中启动页面的方法,包括:
S1,创建StartManager管理类,在StartManager管理类中定义startActivity方法,在startActivity方法中定义target对象和param对象;
S2,通过target对象获取并存储需启动的目标地址的类名,通过param对象获取并存储跳转需要的信息内容;
S3,创建intent对象,通过intent对象获取target对象中存储的需启动的目标地址的类名和param对象存储的跳转需要的信息内容;
S4,启动安卓系统context对象中的startActivity方法,向context对象中的startActivity方法传递intent对象,启动目标页面。
通过本发明中创建的StartManager管理类以及target对象、param对象,通过StartManager管理类中的target对象、param对象能够有效获取需启动的目标地址的类名和跳转需要的信息内容并传递给intent对象,实现启动页面的时候参数传递的便捷性,避免每次跳转的时候开发者都需要自行转换。
target对象包括setClass函数和getClass函数;通过setClass函数存储需启动的目标地址的类名,通过getClass函数获取setClass函数存储的需启动的目标地址的类名并标记为targetClass。
target对象表示的是目标对象,即需要被启动的activity页面,在Java语言中每一个类都具有唯一的包名和类名,即在同一个app中包名和类名完全相同的文件是不存在的。利用了此特性在target对象中持有一个class对象的引用,class表示的是一个类的类型。
param对象包括put函数和get函数;通过put函数存储跳转需要的信息内容,通过get函数依次取出put函数中存储的跳转需要的信息内容。
通过调用intent对象中的setClass函数将所述target对象中需启动的目标地址的类名设置到intent对象中;通过调用intent对象中的getBundle方法获取bundle对象,调用get函数依次取出put函数中存储的跳转需要的信息内容,通过调用bundle对象中的putString方法将所述param对象中的跳转需要的信息内容封装到bundle对象中。
将param对象的类型设置为键值对类型,将param对象中的键及键值均设置为字符串类型。Param对象主要是用于在跳转的时候传递信息使用的,为了方便设置和解析出传递的消息内容,将param对象设计成一个map<String,String>类型的对象,也就是键值对类型的数据。键值对类型的数据有一个特性键是唯一的,值是不唯一的,即在map<String,String>对象中通过键来唯一标示一个数据,并且将其中的键设置为String类型(字符串类型),其值也是String类型的。
在startActivity方法执行完成后,通过调用overridePendingTransition函数设置页面启动过程中的动画效果,能够统一的对启动动画进行维护和管理,无需每次启动的时候都编写相应的启动页面的启动动画,降低启动页面代码的冗余性同时提高代码的可维护性和扩展性。
具体的说,调用overridePendingTransition(R.anim.open_in,R.anim.open_out);函数来设置启动过程中的动画效果,其中R.anim.open_in和R.anim.open_out是动画的进入和退出的动画描述文件,通过此方法的处理能够确保页面切换的时候页面退出和进入的动画得到统一的管理。
本发明实施例还公开了一种存储介质,该存储介质上存储有计算机程序,计算机程序被处理器执行时实现安卓系统中启动页面的方法。
本发明实施例还公开了一种电子设备,包括存储器和处理器,存储器上储存有在处理器上运行的计算机程序,处理器执行计算机程序时实现安卓系统中启动页面的方法。
参见图2所示,本发明实施例还公开了一种安卓系统中启动页面的系统,包括:
StartManager管理类模块,StartManager管理类模块包括startActivity方法,startActivity方法包括target对象和param对象;target对象用于获取并存储需启动的目标地址的类名,param对象用于获取并存储跳转需要的信息内容;
intent对象模块,intent对象模块用于获取target对象中存储的需启动的目标地址的类名和param对象存储的跳转需要的信息内容;
页面启动模块,页面启动模块用于启动安卓系统context对象中的startActivity方法,向context对象中的startActivity方法传递intent对象,启动目标页面。
安卓系统中启动页面的系统还包括动画效果设置模块,动画效果设置模块用于在startActivity方法执行完成后,通过调用overridePendingTransition函数设置页面启动过程中的动画效果。
本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。

Claims (7)

1.一种安卓系统中启动页面的方法,其特征在于,包括:
创建StartManager管理类,在StartManager管理类中定义startActivity方法,在startActivity方法中定义target对象和param对象,所述target对象包括setClass函数和getClass函数,所述param对象包括put函数和get函数;
通过setClass函数存储需启动的目标地址的类名,通过getClass函数获取setClass函数存储的需启动的目标地址的类名并标记为targetClass;
通过put函数存储跳转需要的信息内容,通过get函数依次取出put函数中存储的跳转需要的信息内容;
通过调用intent对象中的setClass函数将所述target对象中需启动的目标地址的类名设置到intent对象中;通过调用intent对象中的getBundle方法获取bundle对象,调用get函数依次取出put函数中存储的跳转需要的信息内容,通过调用bundle对象中的putString方法将所述param对象中的跳转需要的信息内容封装到bundle对象中;
启动安卓系统context对象中的startActivity方法,向context对象中的startActivity方法传递intent对象,启动目标页面。
2.如权利要求1所述的一种安卓系统中启动页面的方法,其特征在于:将param对象的类型设置为键值对类型,将param对象中的键及键值均设置为字符串类型。
3.如权利要求1所述的一种安卓系统中启动页面的方法,其特征在于:在startActivity方法执行完成后,通过调用overridePendingTransition函数设置页面启动过程中的动画效果。
4.一种存储介质,该存储介质上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现权利要求1至3任一项所述的方法。
5.一种电子设备,包括存储器和处理器,存储器上储存有在处理器上运行的计算机程序,其特征在于:处理器执行计算机程序时实现权利要求1至3任一项所述的方法。
6.一种安卓系统中启动页面的系统,其特征在于,包括:
StartManager管理类模块,所述StartManager管理类模块包括startActivity方法,所述startActivity方法包括target对象和param对象;所述target对象包括setClass函数和getClass函数,所述param对象包括put函数和get函数;所述target对象用于通过setClass函数存储需启动的目标地址的类名,通过getClass函数获取setClass函数存储的需启动的目标地址的类名并标记为targetClass;所述param对象用于通过put函数存储跳转需要的信息内容,通过get函数依次取出put函数中存储的跳转需要的信息内容;intent对象模块,所述intent对象模块用于通过调用intent对象中的setClass函数将所述target对象中需启动的目标地址的类名设置到intent对象中;通过调用intent对象中的getBundle方法获取bundle对象,调用get函数依次取出put函数中存储的跳转需要的信息内容,通过调用bundle对象中的putString方法将所述param对象中的跳转需要的信息内容封装到bundle对象中;
页面启动模块,所述页面启动模块用于启动安卓系统context对象中的startActivity方法,向context对象中的startActivity方法传递intent对象,启动目标页面。
7.如权利要求6所述的一种安卓系统中启动页面的系统,其特征在于:所述安卓系统中启动页面的系统还包括动画效果设置模块,所述动画效果设置模块用于在startActivity方法执行完成后,通过调用overridePendingTransition函数设置页面启动过程中的动画效果。
CN201810019238.7A 2018-01-09 2018-01-09 安卓系统中启动页面的方法、存储介质、设备及系统 Active CN108334392B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201810019238.7A CN108334392B (zh) 2018-01-09 2018-01-09 安卓系统中启动页面的方法、存储介质、设备及系统
PCT/CN2018/081288 WO2019136843A1 (zh) 2018-01-09 2018-03-30 安卓系统中启动页面的方法、存储介质、设备及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810019238.7A CN108334392B (zh) 2018-01-09 2018-01-09 安卓系统中启动页面的方法、存储介质、设备及系统

Publications (2)

Publication Number Publication Date
CN108334392A CN108334392A (zh) 2018-07-27
CN108334392B true CN108334392B (zh) 2019-09-20

Family

ID=62923250

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810019238.7A Active CN108334392B (zh) 2018-01-09 2018-01-09 安卓系统中启动页面的方法、存储介质、设备及系统

Country Status (2)

Country Link
CN (1) CN108334392B (zh)
WO (1) WO2019136843A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109254858B (zh) * 2018-08-31 2021-07-23 武汉斗鱼网络科技有限公司 活动窗口的数据共享方法、装置、设备及存储介质
CN109408057B (zh) * 2018-10-23 2022-03-04 网易传媒科技(北京)有限公司 自动生成代码的方法、装置、介质和计算设备
CN109151591A (zh) * 2018-11-20 2019-01-04 四川长虹电器股份有限公司 智能电视应用启动的方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103744669A (zh) * 2013-12-26 2014-04-23 世纪龙信息网络有限责任公司 安卓系统Activity插件的创建、调用方法及系统
CN105159712A (zh) * 2015-09-01 2015-12-16 北京金山安全软件有限公司 一种启动界面的方法及装置
CN106708506A (zh) * 2016-11-17 2017-05-24 武汉斗鱼网络科技有限公司 一种从视觉上优化Android应用启动速度的方法及装置
CN107454956A (zh) * 2017-03-15 2017-12-08 深圳大趋智能科技有限公司 应用程序启动页加载动画的方法、装置及终端

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105893061A (zh) * 2016-06-12 2016-08-24 杭州勒芒科技有限公司 应用程序开发方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103744669A (zh) * 2013-12-26 2014-04-23 世纪龙信息网络有限责任公司 安卓系统Activity插件的创建、调用方法及系统
CN105159712A (zh) * 2015-09-01 2015-12-16 北京金山安全软件有限公司 一种启动界面的方法及装置
CN106708506A (zh) * 2016-11-17 2017-05-24 武汉斗鱼网络科技有限公司 一种从视觉上优化Android应用启动速度的方法及装置
CN107454956A (zh) * 2017-03-15 2017-12-08 深圳大趋智能科技有限公司 应用程序启动页加载动画的方法、装置及终端

Also Published As

Publication number Publication date
CN108334392A (zh) 2018-07-27
WO2019136843A1 (zh) 2019-07-18

Similar Documents

Publication Publication Date Title
CN108334392B (zh) 安卓系统中启动页面的方法、存储介质、设备及系统
CN105956082B (zh) 实时数据处理与存储系统
CN104216912B (zh) 一种无侵入式的业务表单工作流化的实现方法与装置
CN101707399B (zh) 电能信息采集方法及系统
CN106843869A (zh) 一种前端开发工程化系统和方法
CN104182234B (zh) 一种业务处理方法和业务系统
CN104216785B (zh) 通用策略任务系统及其实现方法
CN104407863B (zh) 抽象控件模型编程装置和方法
US20100223446A1 (en) Contextual tracing
CN109814884A (zh) 一种根据游戏资源类型进行资源管理的方法及系统
CN109522018A (zh) 页面处理方法、装置及存储介质
CN108228166A (zh) 一种基于模板的后端代码生成方法及系统
CN103716691B (zh) 一种视频采集方法和装置
CN107506247B (zh) 一种基于异步回调的任务处理方法与设备
CN106844017A (zh) 用于网站服务器处理事件的方法和设备
CN106951536A (zh) 数据转化方法及系统
CN104935660B (zh) 一种云程序开发运行系统、方法及装置
CN104077199A (zh) 基于共享磁盘的高可用集群的隔离方法和系统
CN109213516A (zh) Svn中代码同步与通知的方法、存储介质、设备和系统
CN106209863B (zh) 一种基于全站扫描的网站安全监测方法
CN107729508A (zh) 信息爬取方法与装置
CN105718307B (zh) 进程管理方法及进程管理装置
CN106528293A (zh) 一种访问数据库的方法及装置
CN108763042A (zh) 一种基于python的云服务器性能数据采集方法及装置
CN108664657A (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