一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种管理应用程序的方法和电子设备与流程

2022-11-16 08:53:31 来源:中国专利 TAG:
1.本技术涉及终端
技术领域
:,并且具体地,涉及一种管理应用程序的方法和电子设备。
背景技术
::2.随着智能终端的飞速发展,用户会在智能终端中主动或被动安装一些应用程序,比如第三方应用程序或系统应用程序等。目前智能终端中安装的应用程序中可能会存在部分流氓应用。流氓应用除了会占用手机资源以外,还会存在盗用用户信息等安全隐患,严重影响用户的终端使用体验。目前存在一些流氓应用在用户清理应用时,还会在后台通过进行自动重启的方式进行保活,以使得自己可以一直运行在后台。这就导致这些流氓应用无法被真正清理,从而导致其一直在占用后台资源。因此,亟需提出一种方案解决此问题。技术实现要素:3.有鉴于此,本技术提供了一种管理应用程序的方法、电子设备、计算机可读存储介质和计算机程序产品,能够有效清理流氓应用,极大提升用户的使用体验。4.第一方面,提供了一种管理应用程序的方法,包括:5.检测到第一应用程序发起所述第一应用程序的重启操作;6.确定第一数据列表中是否包括所述第一应用程序的信息,其中,所述第一数据列表中包括强制停止的应用程序的标识信息和强制停止的应用程序的时间信息;7.在第一数据列表中包括所述第一应用程序的信息时,禁止所述第一应用程序的重启操作。8.上述方案可由电子设备或电子设备中的芯片执行。基于上述方案,在检测到第一应用程序发起所述第一应用程序的重启操作时,通过判断第一数据列表中是否包括所述第一应用程序的信息,其中,所述第一数据列表中包括强制停止的应用程序的标识信息和强制停止的应用程序的时间信息;并在第一数据列表中包括所述第一应用程序的信息时,禁止所述第一应用程序的重启操作,能够有效关闭第一应用程序,从而节省了电子设备的内存资源。另外,在关闭了第一应用程序后,可以避免第一应用程序在后台运行消耗电子设备的电量,还能够节省电子设备的电量,显著提升用户体验。9.可选地,所述第一应用程序的重启操作包括:调用活动管理服务ams中的重启函数对所述第一应用程序进行重启。比如,重启函数是ams中的startinstrumentation()方法。10.可选地,所述第一应用程序的信息包括第一标识和第一时间,所述第一标识用于标识所述第一应用程序,所述第一时间用于确定禁止所述第一应用程序执行重启操作的时间;11.其中,所述禁止所述第一应用程序的重启操作,包括:12.在所述第一时间前,禁止所述第一应用程序的重启操作。13.可选地,第一时间是在第二时间的基础上累加第一预设时长得到的。也就是说,从第二时间开始,在第一预设时长内,不允许第一应用程序调用重启函数。14.在一些可能的实现方式中,在检测到第一应用程序发起所述第一应用程序的重启操作之前,所述方法还包括:15.显示第一界面,所述第一界面为所述第一应用程序的管理界面,所述第一界面中包括第一控件,所述第一控件的状态为可操作状态;16.检测到用户的针对所述第一控件的第一操作,所述第一操作用于强制停止所述第一应用程序;17.响应于所述第一操作,强制停止所述第一应用程序,并将所述第一应用程序的信息存储在所述第一数据列表中。18.因此,在检测到强制停止第一应用程序时,可以将第一应用程序的信息存储在第一数据列表中,以为后续查询第一数据列表提供依据。19.可选地,强制停止所述第一应用程序,包括:调用活动管理服务ams中的强制停止函数停止所述第一应用程序对应的进程。比如,强制停止函数为ams中的forcestoppackagelocked()方法。20.在一些可能的实现方式中,在禁止所述第一应用程序的重启操作后,所述方法还包括:21.显示第二界面,所述第二界面为所述第一应用程序的管理界面,所述第二界面中包括第二控件,所述第二控件的状态为无法操作状态。22.因此,当第一应用程序被强制停止后,第一应用程序的管理界面中的第一控件可以变更为无法操作状态,侧面表征第一应用程序已经被成功杀死。23.在一些可能的实现方式中,所述方法还包括:24.检测到第二应用程序发起重启所述第一应用程序的操作;25.确定所述第一数据列表中是否包括所述第一应用程序的信息;26.在所述第一数据列表中包括所述第一应用程序的信息时,判断第一标识与第二标识是否相同,所述第一标识用于标识所述第一应用程序,所述第二标识用于标识所述第二应用程序;27.在所述第一标识与所述第二标识不同时,允许所述第二应用程序调用重启函数执行所述第一应用程序的重启操作;28.在所述第一标识与所述第二标识相同时,禁止所述第二应用程序调用重启函数执行所述第一应用程序的重启操作。29.这样,在第一应用程序被强制停止后,能够避免其他应用程序(比如第二应用程序)在调用第一应用程序重启时失败。换句话说,本技术实施例旨在防止第一应用程序的自启动的保活操作,但是不影响其他应用程序调用第一应用程序的重启行为。30.在一些可能的实现方式中,所述方法还包括:31.在所述第一数据列表中存储的数据大于预设数据阈值时,清理所述第一数据列表中存储的已过期的数据,所述已过期的数据包括存储时间早于预设时间的数据。32.因此,通过清理过期数据,能够避免第一数据列表中维护的数据列表过大,从而节省内存。33.第二方面,提供了一种电子设备,包括用于执行第一方面中任一种方法的单元。该装置可以是终端(或者终端设备),也可以是终端(或者终端设备)内的芯片。该装置包括输入单元、显示单元和处理单元。34.当该装置是终端时,该处理单元可以是处理器,该输入单元可以是通信接口,该显示单元可以是图形处理模块和屏幕;该终端还可以包括存储器,该存储器用于存储计算机程序代码,当该处理器执行该存储器所存储的计算机程序代码时,使得该终端执行第一方面中的任一种方法。35.当该装置是终端内的芯片时,该处理单元可以是芯片内部的逻辑处理单元,该输入单元可以是输出接口、管脚或电路等,该显示单元可以是芯片内部的图形处理单元;该芯片还可以包括存储器,该存储器可以是该芯片内的存储器(例如,寄存器、缓存等),也可以是位于该芯片外部的存储器(例如,只读存储器、随机存取存储器等);该存储器用于存储计算机程序代码,当该处理器执行该存储器所存储的计算机程序代码时,使得该芯片执行第一方面的任一种方法。36.第三方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序代码,当所述计算机程序代码被电子设备运行时,使得该电子设备执行第一方面中的任一种方法。37.第四方面,提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码被电子设备运行时,使得该电子设备执行第一方面中的任一种方法。附图说明38.图1是进入应用程序管理界面的一个示例图;39.图2是对应用程序进行管理的一个界面示意图;40.图3是一种适用于本技术的电子设备的硬件系统的示意图;41.图4是一种适用于本技术的电子设备的软件系统的示意图;42.图5是本技术实施例的管理应用程序的方法的示意性流程图;43.图6是本技术实施例的管理应用程序的方法的另一个示意性流程图;44.图7是本技术实施例的管理应用程序的一个界面示例图;45.图8是本技术实施例的电子设备的一个示意框图。具体实施方式46.下面将结合附图,对本技术实施例中的技术方案进行描述。47.本技术实施例提供的管理应用程序的方法可应用于电子设备中。该电子设备例如可以为各种终端设备,例如手机、平板电脑、多媒体播放设备、电子书阅读器、个人计算机、个人数字助理(personaldigitalassistant,pda)、智能手表等。本技术对电子设备的具体形式不作限制。48.以下结合图1和图2描述本技术实施例的应用场景的示意图。49.图1中示出了进入应用管理的相关界面示意图。例如,手机10的主界面可以显示图1中(1)所示的界面。如图1中(1)所示,界面中显示各个应用图标(包括设置应用、应用1、应用2、…、应用7)。当用户点击设置应用的图标101后,手机10可以进入设置应用程序的界面,如图1中(2)示出的界面。50.如图1中(2)所示,设置界面中包括手机10的相关设置选项。比如,应用设置选项、电池设置选项、存储设置选项、隐私设置选项等。当用户点击控件102,可以进入应用设置界面,比如,图1中(3)所示的界面。51.应理解,图1中(2)的界面仅示出了手机10的部分设置选项,本技术实施例并不限于此。事实上,图1中(2)的界面可以包含更多的功能设置。52.还应理解,图1中(2)的界面还示出了搜索设置项的搜索栏。用户在搜索栏可以输入目标功能设置选项,以便快速搜索到目标功能设置。53.如图1中(3)所示,应用设置界面中包括与应用的各种功能相关的设置选项。比如,图1中(3)示出的应用管理、应用启动管理、权限管理、默认应用、应用助手、应用分身以及应用设置。当用户点击控件103后,可以进入应用管理界面,比如图1中(4)所示的界面。54.如图1中(4)所示,应用管理界面中示出了手机10中安装的部分应用程序的图标以及针对每个应用程序的操作控件。比如,图1中(4)示出的应用程序(备忘录、拨号服务、app1等)当前安装于手机10中。又比如,图1中(4)示出的app1的操作控件为控件104。控件104用于进入app1的管理界面。55.应理解,app1可以是用户安装的第三方应用程序,也可以是系统应用程序,对此不作具体限定。56.还应理解,图1中(4)示出的应用程序仅是示例性描述,本技术实施例并不限于此。比如,手机10中可以包含更多其他应用程序。又比如,图1中(4)示出的应用程序也可以替换为其他应用程序。57.以下结合图2中的界面描述针对app1的管理操作。图2中(1)示出的界面为应用管理界面,与图1中(4)示出的界面类似。如图2中(1)所示的界面,当用户点击控件104后,可以进入app1的应用信息界面或者管理界面,比如图2中(2)所示的界面。58.如图2中(2)所示,界面中示出了针对app1的管理功能选项。比如,图2中(2)示出卸载控件105,强制停止控件106。当用户点击卸载控件105后,可以对app1进行卸载操作。当用户点击强制停止控件106后,可以执行强制关闭app1的相关操作。59.在一些实施方式中,当用户点击强制停止控件106后,系统可以调用ams中的强制停止函数对app1进行强制关闭。比如,强制停止函数可以是forcestoppackagelocked()方法。60.在一些实施方式中,图2中(2)所示的控件106为可操作状态。可操作状态是指用户可以点击控件106,执行强行停止app1的操作。比如,在具体实现时,可通过控件106的颜色变化来区分控件106是否为可操作状态。当控件106的颜色较深(比如为深蓝色)时,控件106为可操作状态,即用户可以点击控件106;当控件106的颜色较浅(比如置灰)时,控件106为不可操作状态,即用户无法点击控件106。61.可选地,图2中(2)示出的界面还可以包含其他的管理选项。比如,图2中(2)示出的通知管理、权限、流量使用情况、存储、内存、耗电详情、默认打开、撤销权限并释放空间的开关选项(针对未使用的应用)、高级等功能选项。62.其中,通知管理用于设置app1的通知消息的通知形式。权限管理用于管理app1读取或访问手机中其他功能(比如位置信息、麦克风、通讯录等)的权限。流量使用情况用于统计app1所使用的流量数据。存储用于统计app1所使用的内部存储空间(比如15mb)。内存用于统计app1在过去3小时内平均使用的内存(比如6mb)。耗电详情用于统计app1电量使用情况(比如自上次充满电后,未消耗任何电量)。默认打开用于设置app1默认打开选项。针对未使用的应用,开启撤销权限并释放空间的开关选项后,应用可以默认开启一些功能权限,会占用手机内存空间;关闭撤销权限并释放空间的开关选项后,可以撤销应用默认开启一些功能的权限,能够释放手机内存空间。63.在一些实施例中,当用户点击强制停止控件后,手机会弹出窗口提示用户是否确定执行强行停止功能。64.比如,当用户单击图2中(2)所示的强制停止控件106后,手机的界面显示为图2中(3)所示的界面。如图2中(3)所示,窗口107向用户提示“可能导致异常。是否强行停止该应用?”窗口107中包括取消选项和强行停止选项。如果用户点击取消选项,则取消强行停止app1的操作;如果用户点击强行停止选项,则执行强行停止app1的操作。换句话说,可以设置窗口107提醒用户是否确定要执行强行停止操作,以避免因误点击强行停止106而带来损失。65.当用户点击图2中(3)所示的窗口107中的强行停止选项后,界面显示如图2中(4)所示。可以看到,图2中(4)所示的控件106的颜色,与图2中(2)所示的控件106的颜色相同。如果控件106的颜色仍与用户点击之前相同,说明app1未被成功杀死,或者说app1通过自启动的方式实现了保活。即,用户在点击了窗口107中的强行停止选项后,app1仍然未被真正杀死。66.以app1为例进行说明,当用户强行停止app1时,app1可能会利用系统漏洞在后台进行自动重启操作,导致app1无法被真正停止掉,从而一直在后台占用手机的资源,并且耗电严重,影响用户体验。67.有鉴于此,本技术实施例的管理应用程序的方法引入第一数据列表,在检测到第一应用程序发起重启操作时,通过查询第一数据列表中是否包括第一应用程序的信息,如果第一数据列表中包括第一应用程序的信息,那么限制第一应用程序的重启操作,从而避免第一应用程序的自动重启操作。68.图3是一种适用于本技术的电子设备的硬件系统。69.电子设备100可以是手机、智慧屏、平板电脑、可穿戴电子设备、车载电子设备、增强现实(augmentedreality,ar)设备、虚拟现实(virtualreality,vr)设备、笔记本电脑、超级移动个人计算机(ultra-mobilepersonalcomputer,umpc)、上网本、个人数字助理(personaldigitalassistant,pda)、投影仪等等,本技术实施例对电子设备100的具体类型不作任何限制。70.电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universalserialbus,usb)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170a,受话器170b,麦克风170c,耳机接口170d,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriberidentificationmodule,sim)卡接口195等。其中传感器模块180可以包括压力传感器180a,陀螺仪传感器180b,气压传感器180c,磁传感器180d,加速度传感器180e,距离传感器180f,接近光传感器180g,指纹传感器180h,温度传感器180j,触摸传感器180k,环境光传感器180l,骨传导传感器180m等。71.需要说明的是,图3所示的结构并不构成对电子设备100的具体限定。在本技术另一些实施例中,电子设备100可以包括比图3所示的部件更多或更少的部件,或者,电子设备100可以包括图3所示的部件中某些部件的组合,或者,电子设备100可以包括图3所示的部件中某些部件的子部件。比如,图3所示的接近光传感器180g可以是可选的。图3示的部件可以以硬件、软件、或软件和硬件的组合实现。72.处理器110可以包括一个或多个处理单元。例如,处理器110可以包括以下处理单元中的至少一个:应用处理器(applicationprocessor,ap)、调制解调处理器、图形处理器(graphicsprocessingunit,gpu)、图像信号处理器(imagesignalprocessor,isp)、控制器、视频编解码器、数字信号处理器(digitalsignalprocessor,dsp)、基带处理器、神经网络处理器(neural-networkprocessingunit,npu)。其中,不同的处理单元可以是独立的器件,也可以是集成的器件。73.控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。74.处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。75.图3所示的各模块间的连接关系只是示意性说明,并不构成对电子设备100的各模块间的连接关系的限定。可选地,电子设备100的各模块也可以采用上述实施例中多种连接方式的组合。76.电子设备100可以通过gpu、显示屏194以及应用处理器实现显示功能。gpu为图像处理的微处理器,连接显示屏194和应用处理器。gpu用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个gpu,其执行程序指令以生成或改变显示信息。77.显示屏194可以用于显示图像或视频。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquidcrystaldisplay,lcd)、有机发光二极管(organiclight-emittingdiode,oled)、有源矩阵有机发光二极体(active-matrixorganiclight-emittingdiode,amoled)、柔性发光二极管(flexlight-emittingdiode,fled)、迷你发光二极管(minilight-emittingdiode,miniled)、微型发光二极管(microlight-emittingdiode,microled)、微型oled(microoled)或量子点发光二极管(quantumdotlightemittingdiodes,qled)。在一些实施例中,电子设备100可以包括1个或n个显示屏194,n为大于1的正整数。在本技术实施例中,显示屏194是柔性显示屏,或者说,可伸缩显示屏,或者说卷屏。在一些实施例中,显示屏194的展开状态可以如图1中示出的3种状态。78.电子设备100可以通过isp、摄像头193、视频编解码器、gpu、显示屏194以及应用处理器等实现拍摄功能。79.isp用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给isp处理,转化为肉眼可见的图像。isp可以对图像的噪点、亮度和色彩进行算法优化,isp还可以优化拍摄场景的曝光和色温等参数。在一些实施例中,isp可以设置在摄像头193中。80.摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(chargecoupleddevice,ccd)或互补金属氧化物半导体(complementarymetal-oxide-semiconductor,cmos)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给isp转换成数字图像信号。isp将数字图像信号输出到dsp加工处理。dsp将数字图像信号转换成标准的红绿蓝(redgreenblue,rgb),yuv等格式的图像信号。在一些实施例中,电子设备100可以包括1个或n个摄像头193,n为大于1的正整数。81.数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。82.电子设备100可以通过音频模块170、扬声器170a、受话器170b、麦克风170c、耳机接口170d以及应用处理器等实现音频功能,例如,音乐播放和录音。83.音频模块170用于将数字音频信息转换成模拟音频信号输出,也可以用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170或者音频模块170的部分功能模块可以设置于处理器110中。84.扬声器170a,也称为喇叭,用于将音频电信号转换为声音信号。电子设备100可以通过扬声器170a收听音乐或免提通话。85.受话器170b,也称为听筒,用于将音频电信号转换成声音信号。当用户使用电子设备100接听电话或语音信息时,可以通过将受话器170b靠近耳朵接听语音。86.麦克风170c,也称为话筒或传声器,用于将声音信号转换为电信号。当用户拨打电话或发送语音信息时,可以通过靠近麦克风170c发声将声音信号输入麦克风170c。87.耳机接口170d用于连接有线耳机。耳机接口170d可以是usb接口130,也可以是3.5mm的开放移动电子设备100平台(openmobileterminalplatform,omtp)标准接口,美国蜂窝电信工业协会(cellulartelecommunicationsindustryassociationoftheusa,ctia)标准接口。88.压力传感器180a用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180a可以设置于显示屏194。压力传感器180a的种类很多,例如可以是电阻式压力传感器、电感式压力传感器或电容式压力传感器。电容式压力传感器可以是包括至少两个具有导电材料的平行板,当力作用于压力传感器180a,电极之间的电容改变,电子设备100根据电容的变化确定压力的强度。当触摸操作作用于显示屏194时,电子设备100根据压力传感器180a检测所述触摸操作。电子设备100也可以根据压力传感器180a的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令;当触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。89.陀螺仪传感器180b可以用于确定电子设备100的运动姿态。在一些实施例中,可以通过陀螺仪传感器180b确定电子设备100围绕三个轴(即,x轴、y轴和z轴)的角速度。陀螺仪传感器180b可以用于拍摄防抖。例如,当快门被按下时,陀螺仪传感器180b检测电子设备100抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消电子设备100的抖动,实现防抖。陀螺仪传感器180b还可以用于导航和体感游戏等场景。90.气压传感器180c用于测量气压。在一些实施例中,电子设备100通过气压传感器180c测得的气压值计算海拔高度,辅助定位和导航。91.磁传感器180d包括霍尔传感器。电子设备100可以利用磁传感器180d检测翻盖皮套的开合。在一些实施例中,当电子设备100是翻盖机时,电子设备100可以根据磁传感器180d检测翻盖的开合。电子设备100可以根据检测到的皮套的开合状态或翻盖的开合状态,设置翻盖自动解锁等特性。92.加速度传感器180e可检测电子设备100在各个方向上(一般为x轴、y轴和z轴)加速度的大小。当电子设备100静止时可检测出重力的大小及方向。加速度传感器180e还可以用于识别电子设备100的姿态,作为横竖屏切换和计步器等应用程序的输入参数。93.距离传感器180f用于测量距离。电子设备100可以通过红外或激光测量距离。在一些实施例中,例如在拍摄场景中,电子设备100可以利用距离传感器180f测距以实现快速对焦。94.接近光传感器180g可以包括例如发光二极管(light-emittingdiode,led)和光检测器,例如,光电二极管。led可以是红外led。电子设备100通过led向外发射红外光。电子设备100使用光电二极管检测来自附近物体的红外反射光。当检测到反射光时,电子设备100可以确定附近存在物体。当检测不到反射光时,电子设备100可以确定附近没有物体。电子设备100可以利用接近光传感器180g检测用户是否手持电子设备100贴近耳朵通话,以便自动熄灭屏幕达到省电的目的。接近光传感器180g也可用于皮套模式或口袋模式的自动解锁与自动锁屏。应理解,图3中所述的接近光传感器180g可以是可选部件。在一些场景下,可以利用超声传感器来替代接近光传感器180g检测接近光。95.环境光传感器180l用于感知环境光亮度。电子设备100可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180l也可用于拍照时自动调节白平衡。环境光传感器180l还可以与接近光传感器180g配合,检测电子设备100是否在口袋里,以防误触。在一些实施例中,可以通过环境光传感器180l检测所述终端的环境光信息。96.指纹传感器180h用于采集指纹。电子设备100可以利用采集的指纹特性实现解锁、访问应用锁、拍照和接听来电等功能。97.触摸传感器180k,也称为触控器件。触摸传感器180k可以设置于显示屏194,由触摸传感器180k与显示屏194组成触摸屏,触摸屏也称为触控屏。触摸传感器180k用于检测作用于其上或其附近的触摸操作。触摸传感器180k可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180k也可以设置于电子设备100的表面,并且与显示屏194设置于不同的位置。98.按键190包括开机键和音量键。按键190可以是机械按键,也可以是触摸式按键。电子设备100可以接收按键输入信号,实现于案件输入信号相关的功能。99.马达191可以产生振动。马达191可以用于来电提示,也可以用于触摸反馈。马达191可以对作用于不同应用程序的触摸操作产生不同的振动反馈效果。对于作用于显示屏194的不同区域的触摸操作,马达191也可产生不同的振动反馈效果。不同的应用场景(例如,时间提醒、接收信息、闹钟和游戏)可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。100.在一些实施例中,处理器110用于检测到第一应用程序发起所述第一应用程序的重启操作;确定第一数据列表中是否包括所述第一应用程序的信息,其中,所述第一数据列表中包括强制停止的应用程序的标识信息,以及,强制停止的应用程序的时间信息;在第一数据列表中包括所述第一应用程序的信息时,禁止所述第一应用程序的重启操作。101.上文详细描述了电子设备100的硬件系统,下面介绍电子设备100的软件系统。软件系统可以采用分层架构、事件驱动架构、微核架构、微服务架构或云架构,本技术实施例以分层架构为例,示例性地描述电子设备100的软件系统。102.如图4所示,采用分层架构的软件系统分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,软件系统可以分为四层,从上至下分别为应用程序层、应用程序框架层、安卓运行时(androidruntime)和系统库、以及内核层。103.应用程序层可以包括设置、相机、图库、日历、通话、地图、导航、wlan、蓝牙、音乐、视频、短信息等应用程序。104.应用程序框架层为应用程序层的应用程序提供应用程序编程接口(applicationprogramminginterface,api)和编程框架。应用程序框架层可以包括一些预定义的函数。105.例如,应用程序框架层包括窗口管理器、活动管理器、内容提供器、输入管理器、视图系统、电话管理器、资源管理器和通知管理器。106.窗口管理器提供窗口管理服务(windowmanagerservice,wms),wms可以用于窗口管理、窗口动画管理、surface管理以及作为输入系统的中转站。窗口管理器可以获取显示屏大小,判断是否有状态栏、锁定屏幕和截取屏幕。107.活动管理器可以提供活动管理服务(activitymanagerservice,ams),ams可以用于系统组件(例如活动、服务、内容提供者、广播接收器)的启动、切换、调度以及应用进程的管理和调度工作。108.输入管理器可以提供输入管理服务(inputmanagerservice,ims),ims可以用于管理系统的输入,例如触摸屏输入、按键输入、传感器输入等。ims从输入设备节点取出事件,通过和wms的交互,将事件分配至合适的窗口。109.内容提供器(contentprovider)用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频、图像、音频、拨打和接听的电话、浏览历史和书签、以及电话簿。110.视图系统包括可视控件,例如显示文字的控件和显示图片的控件。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成,例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。111.电话管理器用于提供电子设备100的通信功能,例如通话状态(接通或挂断)的管理。112.资源管理器为应用程序提供各种资源,比如本地化字符串、图标、图片、布局文件和视频文件。113.通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于下载完成告知和消息提醒。通知管理器还可以管理以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知。通知管理器还可以管理以对话窗口形式出现在屏幕上的通知,例如在状态栏提示文本信息、发出提示音、电子设备振动以及指示灯闪烁。114.本技术实施例的管理应用程序的方法可在应用程序框架层执行。在一些实施例中,当系统检测到第一应用程序调用ams中的重启函数发起所述第一应用程序的重启操作时,查询第一数据列表中是否包括所述第一应用程序的信息,其中,所述第一数据列表中包括强制停止的应用程序的标识信息,以及,强制停止的应用程序的时间信息;在第一数据列表中包括所述第一应用程序的信息时,禁止所述第一应用程序调用ams中的重启函数进行重启操作。可选地,第一数据列表存储于应用程序框架层。115.androidruntime包括核心库和虚拟机。androidruntime负责安卓系统的调度和管理。116.核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。117.应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理、堆栈管理、线程管理、安全和异常的管理、以及垃圾回收等功能。118.系统库可以包括多个功能模块,例如:表面管理器(surfacemanager),媒体库(medialibraries),三维图形处理库(例如:针对嵌入式系统的开放图形库(opengraphicslibraryforembeddedsystems,opengles)和2d图形引擎(例如:skia图形库(skiagraphicslibrary,sgl))。119.表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2d图层和3d图层的融合。120.媒体库支持多种音频格式的回放和录制、多种视频格式回放和录制以及静态图像文件。媒体库可以支持多种音视频编码格式,例如:mpeg4、h.264、动态图像专家组音频层面3(movingpictureexpertsgroupaudiolayeriii,mp3)、高级音频编码(advancedaudiocoding,aac)、自适应多码率(adaptivemulti-rate,amr)、联合图像专家组(jointphotographicexpertsgroup,jpg)和便携式网络图形(portablenetworkgraphics,png)。121.三维图形处理库可以用于实现三维图形绘图、图像渲染、合成和图层处理。122.二维图形引擎是2d绘图的绘图引擎。123.内核层是硬件和软件之间的层。内核层可以包括显示驱动、摄像头驱动、音频驱动、传感器驱动等驱动模块。124.应理解,上述是以图3为例对电子设备的结构图进行举例说明,通过图4对电子设备的软件架构进行举例描述,本技术实施例并不限于此。125.以下结合图5至图7描述本技术实施例的管理应用程序的方法。126.参考图5,图5示出了强制停止应用程序的一个方法流程图。可以理解,图5中的方法500可应用于图1和图2所示的场景。如图5所示,该方法500包括:127.步骤501,显示第一界面,所述第一界面为第一应用程序的管理界面,所述第一界面中包括第一控件,所述第一控件的状态为可操作状态。128.第一应用程序可以是第三方应用程序,也可以是系统应用程序,对此不作具体限定。129.在本技术实施例中,第一应用程序可以认为是用户无法强行停止或关闭掉的应用程序,也可以称作流氓应用。当用户强制停止第一应用程序时,第一应用程序会调用ams中的startinstrumentation()方法进行自启动,以保活第一应用程序。130.本技术实施例对如何进入到第一界面不作具体限定。在一些实施例中,用户可以通过图1中示出的方式进入到第一应用程序的管理界面。比如,第一应用程序是app1,第一界面可以是图2中(2)示出的app1的管理界面,第一控件可以是图2中(2)示出的控件106。又比如,第一界面可以是图7中(2)示出的app1的管理界面,第一控件可以是图7中(2)示出的控件803。131.步骤502,检测到用户针对所述第一控件的第一操作,所述第一操作用于强制停止所述第一应用程序。132.本技术实施例对第一操作的具体形式不作限定。示例性地,第一操作可以包括:用户点击图2中(2)所示的界面中的控件106的操作,以及,点击图2中(3)所示界面中的窗口107中的强行停止选项。又比如,第一操作可以包括:用户点击图7中(2)示出的界面中的控件803的操作,以及,点击图7中(3)所示界面中窗口804中的强行停止选项。133.步骤503,响应于所述第一操作,强制停止第一应用程序,并将所述第一应用程序的信息存储在所述第一数据列表中。134.本技术实施例对强制停止第一应用程序的具体方法不作限定。在一些实施例中,在安卓系统中,可通过框架层调用相关的强制停止函数的接口,来实现第一应用程序的停止运行。135.可选地,强制停止第一应用程序包括:调用ams中的强制停止函数,关闭所述第一应用程序。136.示例性地,强制停止函数为ams中的forcestoppackagelocked()方法。通常而言,一个应用程序可对应多个进程,在强制停止第一应用程序时,需要停止第一应用程序的多个进程。forcestoppackagelocked()方法会遍历第一应用程序的所有进程,然后逐个清理进程,最后清理应用程序涉及的4大组件,从而完成第一应用程序的情理。137.其中,4大组件具体包括:活动(activity)组件,服务(service)组件,广播接受者(broadcastreceive)组件,以及,内容提供器(contentprovider)组件。138.活动组件是用户操作的可视化界面,其用于表现功能。服务组件通常后台运行服务,不提供界面呈现。广播接受者是对发送出来的广播进行过滤接受并响应的一类组件,可用于接收广播。内容提供者支持多个应用中存储和读取数据,其相当于数据库。139.在本技术实施例中,在调用强制停止函数关闭第一应用程序的同时,将第一应用程序的信息存储到第一数据列表中。第一数据列表可以理解为用于记录或者保存被用户强制停止的应用程序的信息的列表。140.在一些实施例中,第一数据列表中包括强制停止的应用程序的标识信息,以及,强制停止的应用程序的时间信息。141.可选地,强制停止的应用程序的标识信息可以包括以下信息中的一项或多项:用户标识符(useridentifier,uid)、应用包名(packagename)等信息。142.uid用于标识应用程序。应用程序在安装时被分配uid。应用程序在设备上的存续期间内,uid保持不变。143.包名可作为应用程序的唯一标识,主要用于系统识别应用。通常而言,一个包名代表一个应用,不允许两个应用程序使用同样的包名。144.可选地,强制停止的应用程序的时间信息可以包括:应用程序被强制停止时系统的时间,或者,应用程序被强制停止时系统的时间累加上预设时长后得到的时间。其中,预设时长可以是预先设置的。预设时长大于应用程序进行重启的时间。比如,预设时长可以设置为6秒。145.示例性地,第一数据列表中包括标识信息列表和时间信息列表。146.以标识信息包括uid为例,以下结合表1中的示例进行描述。147.表1148.标识信息时间信息app1的uid18点25分03秒 6秒app2的uid212点10分04秒 6秒app3的uid316点19分21秒 6秒149.如上表1所示,以app1为例,表1中存储app1的标识信息为uid1,app1的时间信息为8点25分03秒 6秒。具体地,app1被用户强制停止时系统的时间为8点25分03秒,在8点25分03秒的基础上增加6秒,可得到8点25分09秒。那么系统在8点25分09秒之前不允许app1调用重启函数进行重启。150.需要说明的是,对于被强制停止运行的app而言,表1中存储的标识信息是唯一的。在app被强制停止运行后,后续如果再次检测到强制停止运行app,则在表1中对app相应的时间信息进行更新即可。比如,在时间点1,首次检测到强制停止app1,那么在表1中存储标识信息(比如,app1的uid1)以及相应的时间信息(比如,时间点1加上预设时长得到的时间点);在过了一段时间后,如果在时间点2,再次检测到强制停止app1,那么在表1中找到app1的uid1所在行,并在相应的时间信息处进行更新,将app1对应的时间信息存储为时间2加上预设时长得到的时间点。151.应理解,此处做统一说明,应用程序可以通过uid进行标识,也可以通过uid和包名共同进行标识。152.以标识信息包括uid 包名为例,以下结合表2中的示例进行描述。153.表2154.标识信息时间信息app1的uid1 包名18点25分03秒 6秒app2的uid2 包名212点10分04秒 6秒app3的uid3 包名316点19分21秒 6秒155.如上表2所示,以app1为例,表2中存储的app1的标识信息为uid1 包名1,表2中存储的app1的时间信息为8点25分03秒 6秒。具体地,app1被用户强制停止时系统的时间为8点25分03秒,在8点25分03秒的基础上增加6秒,可得到8点25分09秒。那么系统在8点25分09秒之前不允许app1调用重启函数进行重启。156.应理解,表1和表2中的示例仅是示例性描述,本技术实施例并不限于此。比如,表1或表2中可以包括更多应用的标识信息以及对应的时间信息。又比如,表1或表2中的时间信息也可以记录应用程序被强制停止的时间,也可以替换为其他发生时间。157.本技术实施例对第一数据列表的存储位置不作具体限定。在一些实施例中,第一数据列表可以存储在ams中。158.第一数据列表中维护的数据可以基于预设的原则对数据进行清理,以防止第一数据列表占用的内存太大。159.可选地,作为一种实现方式,所述方法500还包括:在第一数据列表中存储的数据大于预设数据阈值时,清理所述第一数据列表中存储的已过期的数据,所述已过期的数据包括存储时间早于预设时间的数据(比如,早于预设时间的app的标识信息和时间信息)。160.预设数据阈值是预先设定的任意数值,具体可以取决于产品实现,本技术实施例对预设数据阈值的取值不作具体限定。预设时间也可以基于需求进行预先设定。161.当第一数据列表中存储的数据超过预设阈值时,可以清理第一数据列表中已过期的数据。162.示例性地,假设预设数据阈值为30,预设时间为系统当前时间的前10天,当第一数据列表中存储的数据超过30时,可以遍历第一数据列表中存储的数据,并将第一数据列表中存储的数据对应的时间信息与系统当前时间进行对比,然后对早于系统当前时间前10天存储的数据进行清理,以避免第一数据列表中维护的数据列表过大,造成内存占用过多。163.以上描述了第一数据列表的构建和维护过程。在本技术实施例中,在生成上述第一数据列表后,可以将第一数据列表中是否包括应用程序的信息,作为是否允许调用重启操作的依据。以下将结合图6中的方法流程进行描述。164.图6示出了本技术实施例管理应用程序的方法600的示意性流程图。可以理解,图6中的方法600可应用于图1和图2所示的场景。还应理解,图5中示出的方法500与图6的方法600可以组合使用,比如,在执行图6的方法600之前,还可以先执行图5中的方法500。165.如图6所示,所述方法600包括:166.步骤601,检测到第一应用程序发起第一应用程序的重启操作。167.第一应用程序的描述可以参考前文图5处的描述,为了简洁,此处不再赘述。168.可选地,所述发起第一应用程序的重启操作包括:调用重启函数。重启函数用于重新启动第一应用程序,以保活第一应用程序。169.示例性地,重启函数是框架层中的startinstrumentation()方法。第一应用程序调用ams中的startinstrumentation()方法。ams中的startinstrumentation()方法会先杀死第一应用程序,然后再将第一应用程序重新启动。170.本技术实施例对第一应用程序发起第一应用程序的重启操作的具体时机不作限定。171.示例性地,当用户强制停止第一应用程序时,会遍历第一应用程序的多个进程进行逐个杀死。第一应用程序会启动多个进程,且多个进程之间会互相监听。当监听到某个进程(比如主进程)被杀死后,其他进程会调用ams中的startinstrumentation()方法进行重启。172.步骤602,确定(或者说判断,或者说查询)第一数据列表中是否包括第一应用程序的信息,所述第一数据列表中包括强制停止的应用程序的标识信息以及强制停止的应用程序的时间信息。173.第一数据列表的构建和维护过程已在前文描述,具体可以参考前文。为了简洁,此处不再赘述。174.可选地,所述第一应用程序的信息包括第一标识和第一时间。所述第一标识用于标识所述第一应用程序。所述第一时间用于确定禁止所述第一应用程序执行重启操作的时间。175.示例性地,第一标识可以包括第一应用程序的uid和/或第一应用程序的包名。其中,uid和包名的定义可以参考前文描述,为了简洁,此处不再赘述。176.在一些实施例中,所述第一时间用于确定禁止所述第一应用程序执行重启操作的时间,包括:第一时间为禁止第一应用程序进行重启的时间。也就是说,在第一时间之前,不允许第一应用程序执行重启操作。177.可选地,第一时间是基于第二时间和第一预设时长确定的。示例性地,第一时间是在第二时间的基础上累加第一预设时长得到的。也就是说,从第二时间开始,在第一预设时长内,不允许第一应用程序调用重启函数。178.其中,第二时间为强制停止第一应用程序的系统时间,或者说,第二时间为系统调用强制停止函数时记录的系统时间。179.第一预设时长可以是预先设置的。第一预设时长的取值大于第一应用程序进行重启的时间。或者说,第一预设时长大于第一应用程序调用重启函数进行保活所需的时间。180.可以理解,上述第一时间以及第二时间可以为时间点的含义。181.还应理解,本技术实施例对第一预设时长的具体取值不作限定,可以基于实际需求设定。比如,第一预设时长可以设置为6秒。182.示例性地,假设系统调用强制停止函数时的系统时间(即第二时间)为8点10分3秒,第一预设时长为6秒,可以得到第一时间为8点10分3秒加上6秒得到的时间,即8点10分9秒,那么在8点10分9秒之前,不允许第一应用程序调用重启函数。183.本技术实施例对第一数据列表中存储的时间的形式不作具体限定。上文是以存储第一时间为例进行描述,但是本技术实施例并不限于此。事实上,第一数据列表中存储的也可以是强制停止第一应用程序时记录的系统时间,比如,第二时间。此时,系统在获取到第二时间后,可以自动累加第一预设时长,即从第二时间开始,在第一预设时长内不允许第一应用程序调用重启函数。184.步骤603,在第一数据列表中包括第一应用程序的信息时,禁止所述第一应用程序的重启操作。185.可选地,禁止所述第一应用程序的重启操作,包括:在第一时间前,禁止所述第一应用程序的重启操作;或者说,从第二时间开始,在第一预设时长内不允许第一应用程序调用重启函数。186.示例性地,如果第一数据列表中包括第一应用程序的信息,第一应用程序的信息包括第一标识以及第一时间,那么在第一时间之前,禁止第一应用程序调用重启函数进行重启。当然,如果第一数据列表中不包括第一应用程序的信息,则允许第一应用程序的重启操作。187.例如,如果第一数据列表中存储了调用强制停止函数时的系统时间为8点10分3秒,那么从为8点10分3秒开始的6秒内,不允许第一应用程序调用重启函数进行重启。或者说,在查询到第一数据列表中存储了第一应用程序的信息时,如果当前系统时间早于8点10分9秒,那么就不允许第一应用程序调用重启函数,从而防止第一应用程序保活。188.又例如,如果第一数据列表中存储了禁止调用重启函数的时间为8点10分9秒,那么在为8点10分9秒前,不允许第一应用程序调用重启函数进行重启。189.在本技术实施例中,在检测到第一应用程序发起所述第一应用程序的重启操作时,通过判断第一数据列表中是否包括所述第一应用程序的信息,其中,所述第一数据列表中包括强制停止的应用程序的标识信息和强制停止的应用程序的时间信息;并在第一数据列表中包括所述第一应用程序的信息时,禁止所述第一应用程序的重启操作,能够有效关闭第一应用程序,从而节省了电子设备的内存资源。另外,在关闭了第一应用程序后,可以避免第一应用程序在后台运行消耗电子设备的电量,还能够节省电子设备的电量,显著提升用户体验。190.可选地,作为一个可能的实施例,在强制停止第一应用程序后,所述方法600还包括:191.显示第二界面,所述第二界面为第一应用程序的管理界面,所述第二界面中包括第二控件,所述第二控件的状态为无法操作状态。192.当所述第二控件的状态为无法操作的状态时,表示第一应用程序已被强制停止,且,所述第一应用程序未成功重启,即第一应用程序已经真正被清理掉。193.也就是说,当第一应用程序被强制停止后,第一应用程序的管理界面中的第二控件可以变更为无法操作状态。以下结合图7中的界面示例进行描述。194.应理解,本技术实施例对如何进入第一应用程序的管理界面不作具体限定。比如,可以参考图1中的界面,进入第一应用程序的管理界面。195.图7中示出了本技术实施例的一个界面示例图。图7中(1)至图7中(3)所示的界面与图2中(1)至图2中(3)所示的界面类似。如图7中(1)所示,当用户点击控件801后,可以进入app1的应用信息界面或者管理界面,比如图7中(2)所示的界面。图7中(2)所示的界面与图2中(2)所示的界面中包含的管理功能选项类似,此处不再赘述各个功能选项的具体含义。196.比如,图7中(2)示出了卸载控件802和强制停止控件803。如果用户点击卸载控件802,可以对app1进行卸载操作。如果用户点击强制停止控件803后,执行强制关闭app1的相关操作。在用户单击图7中(2)所示的强制停止控件803后,手机的界面显示为图7中(3)所示的界面。如图7中(3)所示,窗口804向用户提示“可能导致异常。是否强行停止该应用?”。窗口804与图2中(3)所示的窗口107类似。197.在本技术实施例中,示例性地,当用户点击图7中(3)所示的窗口804中的强行停止选项后,界面显示如图7中(4)所示(对应上述第二界面)。可以看到,图7中(4)所示的控件803的颜色,明显浅于与图7中(2)所示的控件803的颜色。或者说,图7中(4)所示的控件803(对应上述第二控件)被置灰,处于无法点击的状态(对应前文的无法操作状态),这说明app1已被成功杀死。即,在采用本技术实施例的管理应用程序的方法后,用户在点击了窗口804中的强行停止选项后,app1被真正杀死。198.应理解,在图7中(4)所示的界面中,控件803被置灰只是app1被成功杀死的一种表现形式,本技术实施例并不限于此。事实上,也可以通过其他方式查看app1是否被真正杀死。199.示例性地,也可以在后台查看手机运行的进程是否包括app1的进程。当app1被杀死后,手机正在运行的进程不包括app1的进程,即app1的所有进程也被清理掉。200.示例性地,在设置中查看app1时,可以看到app1已经关闭。201.示例性地,在app1被杀死后,用户如果重新打开app1,那么手机会显示app1的首次进入界面(或者说初始进入界面),或者说app1被杀死之前所打开的页面已被关闭。202.上文描述了第一应用程序自己发起第一应用程序的重启操作的相关实施例,本技术实施例还提供了在第一应用程序被强制停止后,其他应用程序发起第一应用程序的重启操作的相关实施例。203.可选地,作为一种可能的实现方式,所述方法600还包括:204.检测到第二应用程序发起重启所述第一应用程序的操作,所述第二应用程序通过第二标识进行标识;205.确定第一数据列表中是否包括所述第一应用程序的信息;206.在所述第一数据列表中包括所述第一应用程序的信息时,判断第一标识与所述第二标识是否相同,所述第一标识用于标识所述第一应用程序,所述第二标识用于标识所述第二应用程序;207.在所述第一标识与所述第二标识不同时,允许所述第二应用程序调用重启函数执行所述第一应用程序的重启操作;208.在所述第一标识与所述第二标识相同时,禁止所述第二应用程序调用重启函数执行所述第一应用程序的重启操作。209.为了简洁,第一数据列表、第一应用程序的信息的相关描述可以参考前文描述,此处不再赘述。210.可选地,第一标识可以包括第一应用程序的uid和包名。211.可选地,第二标识可以包括第二应用程序的uid和包名。212.示例性地,在第一应用程序被强制停止后,如果检测到其他应用程序(比如第二应用程序)调用重启函数对第一应用程序进行重启的操作,那么再查询到第一数据列表中包括第一应用程序的信息后,还需要判断下调用重启函数的第二应用程序的uid和包名,与第一数据列表中存储的第一应用程序的uid和包名是否一致。假设第一数据列表中存储的是第一应用程序的uid和包名,调用重启函数的是第二应用程序的uid和包名,如果第一应用程序的uid和包名与第二应用程序的uid和包名相同,即调用重启函数的第二应用程序与第一数据列表中存储的第一应用程序为同一应用程序,那么禁止调用重启函数;如果第一应用程序的uid和包名与第二应用程序的uid和包名不相同,即调用重启函数的第二应用程序与第一数据列表中存储的第一应用程序为不同的应用程序,那么允许调用重启函数。这样,在第一应用程序被强制停止后,能够避免其他应用程序在调用第一应用程序重启时失败。换句话说,本技术实施例旨在防止第一应用程序的自启动的保活操作,但是不影响其他应用程序调用第一应用程序的重启行为。213.换个具体示例描述,以第一应用程序是a应用,第二应用程序是b应用为例描述,假设b应用调用ams中的startinstrumentation()方法重启应用a,那么在查询到第一应用列表包含a应用的信息后,还需要判断调用ams中的startinstrumentation()方法的uid和包名(即b应用的uid和包名),与需要通过ams中的startinstrumentation()方法拉起的应用的uid和包名(即a应用的uid和包名)是否一致。如果一致则不允许b应用调用ams中的startinstrumentation()方法重启应用a;如果不一致,则允许b应用调用ams中的startinstrumentation()方法重启应用a。这样,在a应用被强制停止后,能够防止b应用通过ams中的startinstrumentation()调用a应用失败,即避免误杀到b应用的调用。214.应理解,上述示例只是举例描述,本技术实施例并不限于此。215.还应理解,上述是以应用的标识包括uid和包名为例进行描述,本技术实施例并不限于此。比如,第一标识包括uid,第二标识包括uid,即也可以通过uid来判断调用重启函数的应用程序与第一数据列表中存储的应用程序是否为同一应用程序。216.上文结合图1至图7,详细了本技术实施例提供的一种管理应用程序的方法。下面结合图8描述本技术的装置实施例。应理解,本技术实施例的管理应用程序的装置可以执行前述本技术实施例的各种管理应用程序的方法的实施例,即以下各种产品的具体工作过程,可以参考前述方法实施例中的对应过程。217.图8是根据本技术实施例的电子设备800的一个示意性框图。如图8所示,所述电子设备800包括:输入单元810,处理单元820和显示单元830。应理解,电子设备800可以执行前文方法实施例中的管理应用程序的方法。218.在一种可能的示例中,所述处理单元820用于检测到第一应用程序发起所述第一应用程序的重启操作;219.确定第一数据列表中是否包括所述第一应用程序的信息,其中,所述第一数据列表中包括强制停止的应用程序的标识信息和强制停止的应用程序的时间信息;220.在第一数据列表中包括所述第一应用程序的信息时,禁止所述第一应用程序的重启操作。221.可选地,作为一种可能的实现方式,所述第一应用程序的信息包括第一标识和第一时间,所述第一标识用于标识所述第一应用程序,所述第一时间用于确定禁止所述第一应用程序执行重启操作的时间;222.其中,所述处理单元820用于禁止所述第一应用程序的重启操作,具体包括:在所述第一时间前,禁止所述第一应用程序的重启操作。223.可选地,作为一种可能的实现方式,所述处理单元820还用于在检测到第一应用程序发起所述第一应用程序的重启操作之前,调用所述显示单元830显示第一界面,所述第一界面为所述第一应用程序的管理界面,所述第一界面中包括第一控件,所述第一控件的状态为可操作状态;224.所述输入单元810用于检测到用户的针对所述第一控件的第一操作,所述第一操作用于强制停止所述第一应用程序;225.所述处理单元820还用于响应于所述第一操作,强制停止所述第一应用程序,并将所述第一应用程序的信息存储在所述第一数据列表中。226.可选地,作为一种可能的实现方式,所述处理单元820还用于在禁止所述第一应用程序的重启操作后,调用所述显示单元830显示第二界面,所述第二界面为所述第一应用程序的管理界面,所述第二界面中包括第二控件,所述第二控件的状态为无法操作状态。227.可选地,作为一种可能的实现方式,所述处理单元820还用于检测到第二应用程序发起重启所述第一应用程序的操作;确定所述第一数据列表中是否包括所述第一应用程序的信息;228.在所述第一数据列表中包括所述第一应用程序的信息时,判断第一标识与第二标识是否相同,所述第一标识用于标识所述第一应用程序,所述第二标识用于标识所述第二应用程序;229.在所述第一标识与所述第二标识不同时,允许所述第二应用程序调用重启函数执行所述第一应用程序的重启操作;230.在所述第一标识与所述第二标识相同时,禁止所述第二应用程序调用重启函数执行所述第一应用程序的重启操作。231.可选地,作为一种可能的实现方式,所述处理单元820还用于:232.在所述第一数据列表中存储的数据大于预设数据阈值时,清理所述第一数据列表中存储的已过期的数据,所述已过期的数据包括存储时间早于预设时间的数据。233.可选地,作为一种可能的实现方式,所述处理单元820用于强制停止所述第一应用程序,包括:234.调用活动管理服务ams中的强制停止函数停止所述第一应用程序对应的进程。235.可选地,作为一种可能的实现方式,所述第一应用程序的重启操作包括:调用活动管理服务ams中的重启函数对所述第一应用程序进行重启。236.应理解,上述电子设备800以功能单元的形式体现。这里的术语“单元”可以通过软件和/或硬件的形式实现,本技术实施例对此不作具体限定。237.例如,“单元”可以是实现上述功能的软件程序、硬件电路或者二者结合。所述硬件电路可能包括(applicationspecificintegratedcircuit,asic)应用特定集成电路、电子电路、执行一个或多个软件或固件程序的处理器(例如共享处理器、专有处理器或组处理器等)和存储器、集成逻辑电路,和/或其他可以提供上述功能的合适器件。在一个简单的实施例中,本领域的技术人员可以想到电子设备可以采用图3所示的形式。238.由上可知,本技术实施例提供的管理应用程序的方法,在检测到第一应用程序发起所述第一应用程序的重启操作时,先判断第一数据列表中是否包括所述第一应用程序的信息,如果第一数据列表中包括所述第一应用程序的信息时,那么在预设时长内禁止所述第一应用程序的重启操作,能够有效关闭第一应用程序,从而节省了电子设备的内存资源,显著提升用户体验。239.本技术还提供了一种计算机程序产品,该计算机程序产品被处理器执行时实现本技术中任一方法实施例所述的方法。240.该计算机程序产品可以存储在存储器中,经过预处理、编译、汇编和链接等处理过程最终被转换为能够被处理器执行的可执行目标文件。241.本技术还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被计算机执行时实现本技术中任一方法实施例所述的方法。该计算机程序可以是高级语言程序,也可以是可执行目标程序。242.该计算机可读存储介质可以是易失性存储器或非易失性存储器,或者,可以同时包括易失性存储器和非易失性存储器。其中,非易失性存储器可以是只读存储器(read-onlymemory,rom)、可编程只读存储器(programmablerom,prom)、可擦除可编程只读存储器(erasableprom,eprom)、电可擦除可编程只读存储器(electricallyeprom,eeprom)或闪存。易失性存储器可以是随机存取存储器(randomaccessmemory,ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(staticram,sram)、动态随机存取存储器(dynamicram,dram)、同步动态随机存取存储器(synchronousdram,sdram)、双倍数据速率同步动态随机存取存储器(doubledataratesdram,ddrsdram)、增强型同步动态随机存取存储器(enhancedsdram,esdram)、同步连接动态随机存取存储器(synchlinkdram,sldram)和直接内存总线随机存取存储器(directrambusram,drram)。243.本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。244.本领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和设备的具体工作过程以及产生的技术效果,可以参考前述方法实施例中对应的过程和技术效果,在此不再赘述。245.在本技术所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。246.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。247.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。248.所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器rom、随机存取存储器ram、磁碟或者光盘等各种可以存储程序代码的介质。249.应理解,在本技术的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术的实施例的实施过程构成任何限定。250.本技术实施例中出现的术语(或者说编号)“第一”、“第二”、…等,仅用于描述目的,即只是为了区分不同的对象,比如,不同的“应用程序”等,并不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”、…等的特征可以明示或者隐含地包括一个或者更多个特征。在本技术实施例的描述中,“至少一个(项)”是指一个或多个。“多个”的含义是两个或两个以上。“以下至少一个(项)”或其类似表达,是指这些项中的任意组合,包括单个(项)或复数个(项)的任意组合。251.另外,本文中术语“系统”和“网络”在本文中常被可互换使用。本文中的术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。252.例如,本技术实施例中出现的类似于“项目包括如下中至少一种:a,b,以及c”表述的含义,如无特别说明,通常是指该项目可以为如下中任一个:a;b;c;a和b;a和c;b和c;a,b和c;a和a;a,a和a;a,a和b;a,a和c,a,b和b;a,c和c;b和b,b,b和b,b,b和c,c和c;c,c和c,以及其他a,b和c的组合。以上是以a,b和c共3个元素进行举例来说明该项目的可选用条目,当表达为“项目包括如下中至少一种:a,b,……,以及x”时,即表达中具有更多元素时,那么该项目可以适用的条目也可以按照前述规则获得。253.总之,以上所述仅为本技术技术方案的较佳实施例而已,并非用于限定本技术的保护范围。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。当前第1页12当前第1页12
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献