CN114254233A - 弹窗任务处理方法、装置、存储介质及电子设备 - Google Patents

弹窗任务处理方法、装置、存储介质及电子设备 Download PDF

Info

Publication number
CN114254233A
CN114254233A CN202111447961.3A CN202111447961A CN114254233A CN 114254233 A CN114254233 A CN 114254233A CN 202111447961 A CN202111447961 A CN 202111447961A CN 114254233 A CN114254233 A CN 114254233A
Authority
CN
China
Prior art keywords
task
popup
target
life cycle
application page
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.)
Pending
Application number
CN202111447961.3A
Other languages
English (en)
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.)
Shenzhen Yishi Huolala Technology Co Ltd
Original Assignee
Shenzhen Yishi Huolala 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 Shenzhen Yishi Huolala Technology Co Ltd filed Critical Shenzhen Yishi Huolala Technology Co Ltd
Priority to CN202111447961.3A priority Critical patent/CN114254233A/zh
Publication of CN114254233A publication Critical patent/CN114254233A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • 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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5022Mechanisms to release resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本申请实施例公开了一种弹窗任务处理方法、装置、存储介质及电子设备。该方法包括:确定基于目标应用页面发起的目标弹窗任务;执行目标弹窗任务,并监听目标弹窗任务的生命周期,其中,目标弹窗任务的生命周期与目标应用页面的生命周期关联;当目标弹窗任务的生命周期结束时,释放目标弹窗任务占用的内存空间。本方案使弹窗支持生命周期,减少内存泄漏。

Description

弹窗任务处理方法、装置、存储介质及电子设备
技术领域
本申请涉及电子设备技术领域,尤其涉及一种弹窗任务处理方法、装置、存储介质及电子设备。
背景技术
随着电子设备处理能力和存储能力的迅猛发展,海量的应用程序得到了迅速传播和使用,提高了用户的生活质量以及使用中的娱乐感。
现有的应用开发中,可能会出现在同一应用页面上同时存在多个弹窗出现的场景,此时则需要对弹窗进行管控,以避免页面混乱卡顿。相关技术中,可以通过设定一个全局的单例弹窗管理器控制弹窗逐个弹出。然而,这种方式仅约束了弹窗弹出的展示模式,容易造成内存泄漏。
发明内容
本申请实施例提供一种弹窗任务处理方法、装置、存储介质及电子设备,可使弹窗支持生命周期,减少了内存泄漏。
第一方面,本申请实施例提供一种弹窗任务处理方法,包括:
确定基于目标应用页面发起的目标弹窗任务;
执行所述目标弹窗任务,并监听所述目标弹窗任务的生命周期,其中,所述目标弹窗任务的生命周期与所述目标应用页面的生命周期关联;
当所述目标弹窗任务的生命周期结束时,释放所述目标弹窗任务占用的内存空间。
第二方面,本申请实施例提供了一种弹窗任务处理装置,包括:
第一确定单元,用于确定基于目标应用页面发起的目标弹窗任务;
处理单元,用于执行所述目标弹窗任务,并监听所述目标弹窗任务的生命周期,其中,所述目标弹窗任务的生命周期与所述目标应用页面的生命周期关联;
释放单元,用于当所述目标弹窗任务的生命周期结束时,释放所述目标弹窗任务占用的内存空间。
在一实施方式中,所述装置还包括:
监听单元,用于监听所述目标应用页面是否被销毁;
第一判断单元,用于基于监听结果判断所述目标应用页面的生命周期是否结束;
第二确定单元,用于当所述目标应用页面的生命周期结束时,确定所述目标弹窗的生命周期结束。
在一实施方式中,所述装置还包括:
构建单元,用于在确定基于目标应用页面发起的目标弹窗任务之后,执行所述目标弹窗任务之前,构建所述目标弹窗任务的生命周期与所述目标应用页面的生命周期之间的关联关系。
在一实施方式中,所述装置还包括:
添加单元,用于在确定基于目标应用页面发起的目标弹窗任务之后,执行所述目标弹窗任务之前,将所述目标弹窗任务添加至待执行任务队列中,所述待执行队列包括至少一个待执行弹窗任务;
更新单元,用于基于所述目标弹窗任务对应的等级信息和所述待执行弹窗任务对应的等级信息,更新所述待执行任务对列中任务的执行顺序。
在一实施方式中,所述装置还包括:
第二判断单元,用于在确定基于目标应用页面发起的目标弹窗任务之后,执行所述目标弹窗任务之前,判断当前是否存在处于执行中的弹窗任务;
所述处理单元,用于在所述第二判断单元判定为否时,执行所述目标弹窗任务。
在一实施方式中,所述装置还包括:
获取单元,用于在判断当前是否存在处于执行中的弹窗任务之前,获取所述目标弹窗任务的等级信息,并基于所述目标弹窗任务的等级信息确定任务等级;
所述处理单元,用于当所述任务等级高于指定任务等级时,执行所述目标弹窗任务。
在一实施方式中,所述目标弹窗任务对应的弹窗类型为警告框、活动视图、浮层中的任意一种。
第三方面,本申请实施例还提供了一种计算机可读存储介质,所述存储介质中存储有多条指令,所述指令适于由处理器加载以执行上述的弹窗任务处理方法。
第四方面,本申请实施例还提供了一种电子设备,包括处理器及存储器,所述处理器与所述存储器电性连接,所述存储器用于存储指令和数据,处理器用于执行上述的弹窗任务处理方法。
本申请实施中,通过将弹窗任务与应用页面的生命周期进行绑定,使弹窗支持以应用页面为维度的生命周期,当弹窗任务的生命周期结束时,释放其占用的内存空间。可知,本方案可使弹窗支持生命周期,优化了弹窗任务所占内存空间的释放时机,减少了内存泄漏。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的弹窗任务处理方法的一流程示意图。
图2是本申请实施例提供的弹窗任务处理方法的应用场景图。
图3是本申请实施例提供的弹窗任务处理装置的一结构示意图。
图4是本申请实施例提供的电子设备的一结构示意图。
图5是本申请实施例提供的电子设备的另一结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
相关技术中,一个应用内可能会在同一页面同一时间存在多个弹窗出现的场景,此时则需要对弹窗进行统一管理,确定各个弹窗的优先级关系,逐个弹出来提升用户体验。例如,可创建一个全局的单例弹窗管理器,其内部维护一个需要进行弹窗的支持优先级的数组,为每个弹窗设置一个标志和状态,当已有弹窗在弹出状态时,新的弹窗会被加入到数组中,等待弹窗管理器进行调度再次弹出。
然而,采用上述方式管理弹窗,由于弹窗管理器内部封装了弹窗调用相关,耦合度高,对使用者封闭了调用逻辑,不利于拓展。另外,弹窗管理器内部的弹窗不支持生命周期,容易造成内存泄漏。
基于此,本申请实施例提供一种弹窗任务处理方法、装置、存储介质及电子设备。以下将分别进行详细说明。
在一实施例中,提供一种弹窗任务处理方法,应用于智能手机、平板电脑、笔记本电脑等电子设备中。参考图1,该弹窗任务处理方法的具体流程可以如下:
101、确定基于目标应用页面发起的目标弹窗任务。
其中,目标应用页面可以为应用程序的任意一页面。该应用程序可以为安装在电子设备中的任一应用程序,如出行类应用(如用车软件)、社交娱乐类应用、办公类应用、购物类应用等等。
目标弹窗任务为在目标应用页面context(上下文环境)中发起的弹窗任务。在本申请实施例中,目标弹窗任务的弹窗类型可以为系统弹窗,如警告框(Dialog)、对话框(Alerts);也可以为活动视图(Activity View)或浮层(PopupWindow);还可以是动作栏(Actionbar)、操作栏(Action Sheets)等等。
102、执行目标弹窗任务,并监听目标弹窗任务的生命周期。
本实施例中,目标弹窗任务的生命周期与目标应用页面的生命周期是相关联的。其中,生命周期,是指一个页面从创建,到画面呈现给用户,到用户可点击输入,到页面不可见,直至页面被销毁的过程。在一实施方式中,可以在应用程序创建了目标弹窗任务后,执行所述目标弹窗任务之前,构建目标弹窗任务的生命周期与目标应用页面的生命周期之间的关联关系。
具体的,目标弹窗任务与应用页面的生命周期是绑定的,以使目标弹窗任务支持生命周期。当目标应用页面被销毁后,其生命周期结束,与其绑定的弹窗任务的生命周期也随之结束。因此,监听目标任务弹窗的生命周期是否结束,可以通过监听与其绑定的应用页面的生命周期来实现。也即,该方法还可以包括以下流程:
监听目标应用页面是否被销毁;
基于监听结果判断目标应用页面的生命周期是否结束;
当目标应用页面的生命周期结束时,确定目标弹窗的生命周期结束。
在一些实施方式中,为了避免一个页面同时出现多个弹窗,造成页面显示混乱的情况,可设定相关规则逐个显示弹窗。也即,在确定基于目标应用页面发起的目标弹窗任务之后,执行目标弹窗任务之前,还可以包括以下流程:
(11)将目标弹窗任务添加至待执行任务队列中,其中,待执行队列包括至少一个待执行弹窗任务;
(12)基于目标弹窗任务对应的等级信息和待执行弹窗任务对应的等级信息,更新待执行任务对列中任务的执行顺序。
其中,待执行弹窗任务的弹窗类型可以为警告框、对话框;也可以为活动视图或浮层;还可以是动作栏、操作栏等。
实际应用中,可以创建一任务调度管理器,将目标弹窗任务添加至该任务调度管理器的待执行任务队列中。本实施例中,该任务调度管理器不再局限于某一类弹窗管理,而是支持UI界面相关的任务调度,比如可以同时支持系统弹窗、视图、页面操作等等优先级控制。
在本实施例中,该任务调度管理器内置有一套通用的任务优先级排序默认算法,针对不同弹窗任务的类型,匹配设置了不同的等级信息。然后,基于匹配到的等级信息,将对应弹窗任务插入到任务调度管理器待执行任务队列中的不同位置,通过队列控制弹窗任务逐个执行,以实现弹窗的显示管控。其中,对于不同弹窗任务的等级信息设置,可以依赖于弹窗任务包含的内容。例如,对于安全性相关的弹窗任务,可设定较高等级;对于引导性的弹窗,可以设置较低等级。
在一实施方式中,该任务调度管理器还可支持自定义的任务调度算法来替代内部的默认算法,接入方可根据自身的业务创建去实现对应的算法来满足要求,可适应不同的类型的应用程序(即不同应用程序,可基于其自身特性而采用个性化的任务调度算法),拓展性高。
在一实施方式中,在应用页面当前存在弹窗显示时,为了避免弹窗任务不被打断,保证弹窗任务的正常执行,需要对任务弹窗任务的执行状态进行监控。也即,在确定基于目标应用页面发起的目标弹窗任务之后,执行所述目标弹窗任务之前,还可以判断当前是否存在处于执行中的弹窗任务;若否,则可正常执行目标弹窗任务;若是,则需等待处于执行中的弹窗任务结束之后,再执行目标弹窗任务。
实际应用中,有些弹窗任务优先级较高(如涉及到信息安全性的弹窗任务),且远高于当前正在执行中的弹窗任务的优先级时,可以强制中断当前正在执行中的弹窗任务,并执行该优先级较高的弹窗任务。也即,判断当前是否存在处于执行中的弹窗任务之前,还可以包括以下流程:
(21)获取目标弹窗任务的等级信息,并基于目标弹窗任务的等级信息确定任务等级;
(22)当任务等级高于指定任务等级时,执行目标弹窗任务。
在本实施例中,可提供多个维度的优先级控制,并且每个优先级类别还可支持0~10000的第二优先级。例如,可以在任务调度管理器内部封装优先级组Group,如低优先级组LOW=(1~10000),中优先级组MID=(20000~30000),高优先级组HIGH=(30000~40000),强制优先级组FORCE=(90000~99999)。设置的任务优先级可直接传入Group,也可根据需要采用Group+(1~10000)内的数字形式来特殊定义优先级。其中,强制优先级组表示可忽略任务调度管理器里的任务调度,直接强制执行。
103、当目标弹窗任务的生命周期结束时,释放目标弹窗任务占用的内存空间。
具体的,当目标应用页面被销毁后,弹窗任务会被自动销毁,可确定目标弹窗任务的生命周期结束。此时,目标弹窗任务会自动从调用栈、及待执行任务队列中移除,释放目标弹窗任务占用的内存空间,从而减少内存泄漏,减少不必要的内存开销。
由上可知,本实施例提供的弹窗任务处理方法,将弹窗任务的生命周期与应用页面的生命周期关联,在执行基于目标应用页面发起的目标弹窗任务的过程中,监听目标弹窗任务的生命周期,当目标弹窗任务的生命周期结束时,释放目标弹窗任务占用的内存空间。本方案通过将弹窗任务与应用页面的生命周期进行绑定,使弹窗支持以应用页面为维度的生命周期,优化了弹窗任务所占内存空间的释放时机,减少了内存泄漏。
在又一实施例中,还提供一种支持生命周期控制的弹窗管理方法。下面,将以安卓(android)系统为例,对该弹窗管理方法进行详细描述。
参考图2,假设应用场景,在安卓系统中应用页面内,执行网络后需要展示弹窗1。那么,需要通过应用创建一个弹窗1的任务1,设置任务1的优先级和名称(唯一标识)、回调方法。任务1会被加入到任务调度管理器的队列里,会依据优先级插入到内部队列的不同位置。任务调度管理器判断当前是否有任务弹窗在执行,如果没有弹窗则直接执行任务1,任务1的回调会被马上执行,此时会判断回调的生命周期。如果回调方已经被回收,则任务1的回调不执行,并且自动移除当前任务1;如果任务1生命周期正常,则任务1的回调继续被执行,调用方在回调里处理弹窗的弹出。当任务调度管理器判断当前已有弹窗弹出时,则会等待当前任务完结。当前任务弹窗消失时(即任务完结时),会触发调度管理器的移除任务,将当前弹窗对应的任务移除,然后自动执行下一条任务,下一个弹窗则会弹出。
具体实施时,可提供一个全局的静态管理类PManager,及可以链式调用的入口(一条链式调用则相当于一个任务),采用建造者模式设置参数,如下:
(31)将当前应用页面context传入,使弹窗任务和页面生命周期进行绑定;
(32)设置任务名,类型为字符,这是任务的唯一标识ID;
(33)设置任务优先级,数字形式,内部有封装优先级组Group;
(34)设置任务回调。即当任务被调度器执行时,调度器则会调用回调,在回调中执行需要执行的操作。例如,弹出一个弹窗,显示一个引导自定义View。
参数设置完毕后,调用post方法将当前任务添加到任务调度管理器中。其中,任务调度管理器是一个激活型事务,只有存在任务的情况下才会工作。若当前管理器中没有正在执行的任务,则添加的任务会被立刻执行,否则就等待正在执行的任务执行完之后,才会依据优先级顺序去执行任务。
通过调用post方法将任务发送到任务调度管理器的这个过程中,会依据传入的应用页面context,构建一个具有生命周期的Fragment与当前应用页面Context进行绑定,在此应用页面context中发起的任务都会和这个生命周期进行绑定。当该应用页面被销毁后,会去清除掉任务调度管理器中与该应用页面绑定的任务。
当设置的任务回调执行完结之后,调用任务调度管理器的取消(cancel)操作,将当前任务移除掉,任务调度管理器将自动开始执行下一条任务。具体实施时,可提供一个弹窗基类,继承此基类的弹窗不再需要手动调用cancel操作,基类中已对弹窗消失进行监听。
本申请实施例中,支持的弹窗生命周期是以页面为维度的生命周期,可给应用减小内存泄漏,更能精确控制弹窗弹出时机;支持任意形式的弹窗,应用范围广,实用性强。
在本申请又一实施例中,还提供一种弹窗任务处理装置。该弹窗任务处理装置可以软件或硬件的形式集成在电子设备中,该电子设备具体可以包括手机、平板电脑、笔记本电脑等设备。如图3所示,该弹窗任务处理装置300可以包括:第一确定单元301、处理单元302和释放单元303,其中:
第一确定单元301,用于确定基于目标应用页面发起的目标弹窗任务;
处理单元302,用于执行该目标弹窗任务,并监听该目标弹窗任务的生命周期,其中,该目标弹窗任务的生命周期与该目标应用页面的生命周期关联;
释放单元303,用于当该目标弹窗任务的生命周期结束时,释放该目标弹窗任务占用的内存空间。
在一实施方式中,弹窗任务处理装置300还包括:
监听单元,用于监听该目标应用页面是否被销毁;
第一判断单元,用于基于监听结果判断该目标应用页面的生命周期是否结束;
第二确定单元,用于当该目标应用页面的生命周期结束时,确定该目标弹窗的生命周期结束。
在一实施方式中,弹窗任务处理装置300还包括:
构建单元,用于在确定基于目标应用页面发起的目标弹窗任务之后,执行该目标弹窗任务之前,构建该目标弹窗任务的生命周期与该目标应用页面的生命周期之间的关联关系。
在一实施方式中,弹窗任务处理装置300还包括:
添加单元,用于在确定基于目标应用页面发起的目标弹窗任务之后,执行该目标弹窗任务之前,将该目标弹窗任务添加至待执行任务队列中,该待执行队列包括至少一个待执行弹窗任务;
更新单元,用于基于该目标弹窗任务对应的等级信息和该待执行弹窗任务对应的等级信息,更新该待执行任务对列中任务的执行顺序。
在一实施方式中,弹窗任务处理装置300还包括:
第二判断单元,用于在确定基于目标应用页面发起的目标弹窗任务之后,执行该目标弹窗任务之前,判断当前是否存在处于执行中的弹窗任务;
该处理单元,用于在该第二判断单元判定为否时,执行该目标弹窗任务。
在一实施方式中,弹窗任务处理装置300还包括:
获取单元,用于在判断当前是否存在处于执行中的弹窗任务之前,获取该目标弹窗任务的等级信息,并基于该目标弹窗任务的等级信息确定任务等级;
该处理单元,用于当该任务等级高于指定任务等级时,执行该目标弹窗任务。
在一实施方式中,目标弹窗任务对应的弹窗类型为警告框、活动视图、浮层中的任意一种;待执行弹窗任务对应的弹窗类型为警告框、活动视图、浮层中的任意一种。
由上可知,本申请实施例提供的弹窗任务处理装置,通过将弹窗任务与应用页面的生命周期进行绑定,使弹窗支持以应用页面为维度的生命周期,当弹窗任务的生命周期结束时,释放其占用的内存空间。可知,本方案可使弹窗支持生命周期,优化了弹窗任务所占内存空间的释放时机,减少了内存泄漏。
在本申请又一实施例中还提供一种电子设备,该电子设备可以是智能手机、平板电脑等智能终端。如图4所示,电子设备400包括处理器401和存储器402。其中,处理器401与存储器402电性连接。
处理器401是电子设备400的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或加载存储在存储器402内的应用,以及调用存储在存储器402内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。
在本实施例中,电子设备400中的处理器401会按照如下的步骤,将一个或一个以上的应用的进程对应的指令加载到存储器402中,并由处理器401来运行存储在存储器402中的应用,从而实现各种功能:
确定基于目标应用页面发起的目标弹窗任务;
执行该目标弹窗任务,并监听该目标弹窗任务的生命周期,其中,该目标弹窗任务的生命周期与该目标应用页面的生命周期关联;
当该目标弹窗任务的生命周期结束时,释放该目标弹窗任务占用的内存空间。
在一实施方式中,处理器401可以执行以下操作:
监听该目标应用页面是否被销毁;
基于监听结果判断该目标应用页面的生命周期是否结束;
当该目标应用页面的生命周期结束时,确定该目标弹窗的生命周期结束。
在一实施方式中,在确定基于目标应用页面发起的目标弹窗任务之后,执行该目标弹窗任务之前,处理器401可以执行以下操作:
构建该目标弹窗任务的生命周期与该目标应用页面的生命周期之间的关联关系。
在一实施方式中,在确定基于目标应用页面发起的目标弹窗任务之后,执行该目标弹窗任务之前,处理器401还可以执行以下操作:
将该目标弹窗任务添加至待执行任务队列中,该待执行队列包括至少一个待执行弹窗任务;
基于该目标弹窗任务对应的等级信息和该待执行弹窗任务对应的等级信息,更新该待执行任务对列中任务的执行顺序。
在一实施方式中,在确定基于目标应用页面发起的目标弹窗任务之后,执行该目标弹窗任务之前,处理器401还可以执行以下操作:
判断当前是否存在处于执行中的弹窗任务;
若否,则执行该目标弹窗任务。
在一实施方式中,在判断当前是否存在处于执行中的弹窗任务之前,处理器401还可以执行以下操作:
获取该目标弹窗任务的等级信息,并基于该目标弹窗任务的等级信息确定任务等级;
当该任务等级高于指定任务等级时,执行该目标弹窗任务。
在一实施方式中,该目标弹窗任务对应的弹窗类型为警告框、对话框、活动视图、动作栏、操作栏、浮层中的任意一种。
存储器402可用于存储应用和数据。存储器402存储的应用中包含有可在处理器中执行的指令。应用可以组成各种功能模块。处理器401通过运行存储在存储器402的应用,从而执行各种功能应用以及弹窗任务处理。
在一些实施例中,如图5所示,电子设备400还包括:显示屏403、控制电路404、射频电路405、输入单元406、传感器408以及电源409。其中,处理器401分别与显示屏403、控制电路404、射频电路405、输入单元406、摄像头407、传感器408以及电源409电性连接。
显示屏403可用于显示由用户输入的信息或提供给用户的信息以及电子设备的各种图形用户接口,这些图形用户接口可以由图像、文本、图标、视频和其任意组合来构成。
控制电路404与显示屏403电性连接,用于控制显示屏403显示信息。
射频电路405用于收发射频信号,以通过无线通信与电子设备或其他电子设备构建无线通讯,与服务器或其他电子设备之间收发信号。
输入单元406可用于接收输入的数字、字符信息或用户特征信息(例如指纹),以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。其中,输入单元406可以包括指纹识别模组。
摄像头407可用于采集图像信息。其中,该摄像头可以是具有一个镜头的单摄像头,也可以具有两个或多个镜头。
传感器408用于采集外部环境信息。传感器408可以包括环境亮度传感器、加速度传感器、光传感器、运动传感器、以及其他传感器。
电源409用于给电子设备400的各个部件供电。在一些实施例中,电源409可以通过电源管理系统与处理器401逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管图5中未示出,电子设备400还可以包括扬声器、蓝牙模块等,在此不再赘述。
由上可知,本申请实施例提供的电子设备,通过将弹窗任务与应用页面的生命周期进行绑定,使弹窗支持以应用页面为维度的生命周期,当弹窗任务的生命周期结束时,释放其占用的内存空间。本方案可使弹窗支持生命周期,优化了弹窗任务所占内存空间的释放时机,减少了内存泄漏。
在一些实施例中,还提供了一种计算机可读存储介质,该存储介质中存储有多条指令,该指令适于由处理器加载以执行上述任一弹窗任务处理方法。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,RandomAccess Memory)、磁盘或光盘等。
以上对本申请实施例所提供的弹窗任务处理方法、装置、存储介质及电子设备进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (10)

1.一种弹窗任务处理方法,其特征在于,包括:
确定基于目标应用页面发起的目标弹窗任务;
执行所述目标弹窗任务,并监听所述目标弹窗任务的生命周期,其中,所述目标弹窗任务的生命周期与所述目标应用页面的生命周期关联;
当所述目标弹窗任务的生命周期结束时,释放所述目标弹窗任务占用的内存空间。
2.根据权利要求1所述的弹窗任务处理方法,其特征在于,还包括:
监听所述目标应用页面是否被销毁;
基于监听结果判断所述目标应用页面的生命周期是否结束;
当所述目标应用页面的生命周期结束时,确定所述目标弹窗的生命周期结束。
3.根据权利要求1所述的弹窗任务处理方法,其特征在于,在确定基于目标应用页面发起的目标弹窗任务之后,执行所述目标弹窗任务之前,还包括:
构建所述目标弹窗任务的生命周期与所述目标应用页面的生命周期之间的关联关系。
4.根据权利要求1所述的弹窗任务处理方法,其特征在于,在确定基于目标应用页面发起的目标弹窗任务之后,执行所述目标弹窗任务之前,还包括:
将所述目标弹窗任务添加至待执行任务队列中,所述待执行队列包括至少一个待执行弹窗任务;
基于所述目标弹窗任务对应的等级信息和所述待执行弹窗任务对应的等级信息,更新所述待执行任务对列中任务的执行顺序。
5.根据权利要求1所述的弹窗任务处理方法,其特征在于,在确定基于目标应用页面发起的目标弹窗任务之后,执行所述目标弹窗任务之前,还包括:
判断当前是否存在处于执行中的弹窗任务;
若否,则执行所述目标弹窗任务。
6.根据权利要求5所述的弹窗任务处理方法,其特征在于,在判断当前是否存在处于执行中的弹窗任务之前,还包括:
获取所述目标弹窗任务的等级信息,并基于所述目标弹窗任务的等级信息确定任务等级;
当所述任务等级高于指定任务等级时,执行所述目标弹窗任务。
7.根据权利要求1-6任一项所述的弹窗任务处理方法,其特征在于,所述目标弹窗任务对应的弹窗类型为警告框、活动视图、浮层中的任意一种。
8.一种弹窗任务处理装置,其特征在于,包括:
第一确定单元,用于确定基于目标应用页面发起的目标弹窗任务;
处理单元,用于执行所述目标弹窗任务,并监听所述目标弹窗任务的生命周期,其中,所述目标弹窗任务的生命周期与所述目标应用页面的生命周期关联;
释放单元,用于当所述目标弹窗任务的生命周期结束时,释放所述目标弹窗任务占用的内存空间。
9.一种计算机可读存储介质,其特征在于,所述存储介质中存储有多条指令,所述指令适于由处理器加载以执行权利要求1-7任一项所述的弹窗任务处理方法。
10.一种电子设备,其特征在于,包括处理器及存储器,所述处理器与所述存储器电性连接,所述存储器用于存储指令和数据;所述处理器用于执行权利要求1-7任一项所述的弹窗任务处理方法。
CN202111447961.3A 2021-11-30 2021-11-30 弹窗任务处理方法、装置、存储介质及电子设备 Pending CN114254233A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111447961.3A CN114254233A (zh) 2021-11-30 2021-11-30 弹窗任务处理方法、装置、存储介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111447961.3A CN114254233A (zh) 2021-11-30 2021-11-30 弹窗任务处理方法、装置、存储介质及电子设备

Publications (1)

Publication Number Publication Date
CN114254233A true CN114254233A (zh) 2022-03-29

Family

ID=80793667

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111447961.3A Pending CN114254233A (zh) 2021-11-30 2021-11-30 弹窗任务处理方法、装置、存储介质及电子设备

Country Status (1)

Country Link
CN (1) CN114254233A (zh)

Similar Documents

Publication Publication Date Title
US20140179377A1 (en) Mobile electronic device having program notification function and program notification method thereof
EP2381357A2 (en) Management of device settings via a plurality of interfaces
US20220058772A1 (en) Image Processing Method and Device
CN108702414A (zh) 一种屏幕锁定方法及装置
US10712798B2 (en) Sensor processing method of mobile terminal, storage medium, and electronic device
CN110865837B (zh) 一种进行系统升级的方法和终端
CN113836540B (zh) 管理应用权限的方法、设备、存储介质和程序产品
CN112835472B (zh) 通信终端及显示方法
CN113934331B (zh) 信息处理方法、装置及存储介质
CN116088716B (zh) 窗口管理方法和终端设备
CN116107922A (zh) 一种应用程序的管理方法及电子设备
CN114327087A (zh) 输入事件处理方法、装置、电子设备和存储介质
CN114035870A (zh) 一种终端设备、应用资源控制方法和存储介质
CN114254233A (zh) 弹窗任务处理方法、装置、存储介质及电子设备
CN113642010B (zh) 一种获取扩展存储设备数据的方法及移动终端
CN114489419A (zh) 权限控制方法及电子设备
CN114968010A (zh) 协处理芯片的启动方法、装置、存储介质及电子装置
CN111787157A (zh) 移动终端及其操作响应方法
CN115344860B (zh) 一种管理应用程序的方法和电子设备
CN117857646B (zh) 数据网络共享方法、电子设备及存储介质
CN114416234B (zh) 一种页面切换方法、装置、计算机设备及存储介质
CN115828227B (zh) 识别广告弹窗的方法、电子设备及存储介质
CN116860374A (zh) 页面资源处理方法、装置、电子设备及存储介质
CN118069273A (zh) 一种弹窗管理方法、装置、计算机设备及存储介质
CN115391018A (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