CN113360384B - App运行稳定性保护方法、装置及计算机可读介质 - Google Patents
App运行稳定性保护方法、装置及计算机可读介质 Download PDFInfo
- Publication number
- CN113360384B CN113360384B CN202110657457.XA CN202110657457A CN113360384B CN 113360384 B CN113360384 B CN 113360384B CN 202110657457 A CN202110657457 A CN 202110657457A CN 113360384 B CN113360384 B CN 113360384B
- Authority
- CN
- China
- Prior art keywords
- current app
- app
- current
- navigation
- executing
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3644—Software debugging by instrumenting at runtime
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/54—Presence management, e.g. monitoring or registration for receipt of user log-on information, or the connection status of the users
Abstract
本发明提供了App运行稳定性保护方法、装置及计算机可读介质。方法包括:S1:当前App开始运行时,初始化当前App的系统文件中的运行状态值;在当前App的运行时间达到预设的检测时间时,执行S2;S2:下发检测广播,以使当前App在接收到检测广播时检测自身是否正常运行并进行反馈,当前App正常运行时,执行S3;S3:检测当前App是否在线,若是,执行S4,若否,执行S5;S4:将当前App的系统文件中的运行状态值修改为表征稳定运行的稳定运行值并保存,执行S6;S5:重新启动当前App,执行S6;S6:根据预设的检测周期,检测当前App的运行状态值,若运行状态值为稳定运行值时,执行S2;若运行状态值不为稳定运行值时,执行S5。本发明的方案能够保证App的稳定运行。
Description
技术领域
本发明涉及智能设备技术领域,特别涉及App运行稳定性保护方法、装置及计算机可读介质。
背景技术
很多App在长期运行后会出现运行问题,比如某些操作不能正常执行或无响应等问题,当App出现运行问题时,用户可以手动关闭该App的进程并手动重启该App来恢复正常运行并能保留之前的数据。
但该方法仅适用于手机、平板等便携设备,而对于应用于智能设备的App,比如售卖机等用于营业的智能设备,由于其分布的地区较多且地点较广,如果出现App的运行问题,无法及时在该设备上进行App的重启,且这些智能设备对于App的稳定运行要求较高,现有的对App的手动重启的方法不能够保证应用于智能设备的App的稳定运行。
申请号CN111355685A提供了一种低功耗产品双链保活方案,专利方案通过在App待机时添加一条网络链路,通过双网络链路来保活App,从而达到让App长期稳定运行的目的。该专利也主要有一个缺点,即该专利保持稳定性的方案不够完善,不能满足智能终端设备的实际需求,只考虑到了网络不稳定的这个场景,仍无法保证App的稳定运行。
发明内容
本发明实施例提供了App运行稳定性保护方法、装置及计算机可读介质,能够保证App的稳定运行。
第一方面,本发明实施例提供了App运行稳定性保护方法,包括:
S1:当前App开始运行时,初始化当前App的系统文件中的运行状态值;在当前App的运行时间达到预设的检测时间时,执行S2;
S2:下发检测广播,以使当前App在接收到检测广播时检测自身是否正常运行并进行反馈,当前App正常运行时,执行S3;
S3:检测当前App是否在线,若是,执行S4,若否,执行S5;
S4:将当前App的系统文件中的所述运行状态值修改为表征稳定运行的稳定运行值并保存,执行S6;
S5:重新启动当前App,执行S6;
S6:根据预设的检测周期,检测当前App的所述运行状态值,若运行状态值为稳定运行值时,执行所述S2;若运行状态值不为稳定运行值时,执行所述S5。
优选地,所述S5中,当前App不在线时,重新启动当前App之后,执行S6之前,进一步包括:恢复当前App的数据;
所述恢复当前App的数据,包括:
将当前App的导航栈以及所述导航栈对应的页面上的数据进行存储,所述导航栈以及所述导航栈对应的页面上的数据用于构建当前App重新启动前的当前场景,所述当前场景包括由所述导航栈以及所述导航栈对应的页面上的数据构建的导航栏,所述导航栈包括所述导航栏的栈结构,所述栈结构用于表示所述导航栈对应的页面之间的层级关系;
当检测到当前App被重新启动后,根据已存储的所述导航栈以及所述导航栈对应的页面上的数据,对所述当前场景进行恢复处理。
优选地,
将当前App的导航栈以及所述导航栈对应的页面上的数据进行存储,包括:
遍历所述导航栈的导航路径对应的页面,将所述导航栈的导航路径以及所述导航栈的导航路径对应的页面上的数据存储到所述终端。
优选地,还包括:
接收外部发来的升级指令;
当接收到升级指令时,访问云服务器并确定是否存在新的升级包,所述云服务器用于接收外部上传的升级包并保存所述升级包,所述升级包用于升级当前App;
当存在所述升级包时,下载所述升级包;
利用所述升级包对当前App进行升级。
优选地,
所述利用所述升级包对当前App进行升级,包括:
检测当前App是否正在运行一预设的工作场景,若否,利用所述升级包升级当前App;若是,待所述工作场景运行结束后利用所述升级包升级当前App;
利用所述升级包升级当前App完成后,重新启动当前App,并执行所述S1。
优选地,
所述S2,还包括:
当前App不正常运行时,重新启动当前App;
重新启动当前App后,执行所述S1。
第二方面,本发明实施例提供了App运行稳定性保护装置,包括:
初始模块,用于在当前App开始运行时,初始化当前App的系统文件中的运行状态值;在当前App的运行时间达到预设的检测时间时,触发下发模块;
所述下发模块,用于下发检测广播,以使当前App在接收到检测广播时检测自身是否正常运行并进行反馈,当前App正常运行时,检测当前App
是否在线,并触发处理模块;
所述处理模块,用于执行:当前App在线时,将当前App的系统文件中的所述运行状态值修改为表征稳定运行的稳定运行值并保存,触发检测模块;当前App不在线时,重新启动当前App,触发所述检测模块;
所述检测模块,用于根据预设的检测周期,检测当前App的所述运行状态值,若运行状态值为稳定运行值时,触发所述下发模块;若运行状态值不为稳定运行值时,触发所述处理模块重新启动当前App。
优选地,
所述处理模块,在执行重新启动当前App之后,触发所述检测模块之前,还执行:
恢复当前App的数据;
所述恢复当前App的数据,包括:
将当前App的导航栈以及所述导航栈对应的页面上的数据进行存储,所述导航栈以及所述导航栈对应的页面上的数据用于构建当前App重新启动前的当前场景,所述当前场景包括由所述导航栈以及所述导航栈对应的页面上的数据构建的导航栏,所述导航栈包括所述导航栏的栈结构,所述栈结构用于表示所述导航栈对应的页面之间的层级关系;
当检测到当前App被重新启动后,根据已存储的所述导航栈以及所述导航栈对应的页面上的数据,对所述当前场景进行恢复处理。
第三方面,本发明实施例提供了App运行稳定性保护装置,包括:至少一个存储器和至少一个处理器;
所述至少一个存储器,用于存储机器可读程序;
所述至少一个处理器,用于调用所述机器可读程序,执行上述第一方面中任一所述的方法。
第四方面,本发明实施例提供了计算机可读介质,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,使所述处理器执行上述第一方面中任一所述的方法。
本发明实施例提供了App运行稳定性保护方法、装置及计算机可读介质。在当前App开始运行时,比如进行了断电之后的重启,重启之后当前App开始工作,在系统文件中将记录当前App运行状态的运行状态值初始化,并开始定时,在定时一定时间后,下发检测广播,当前App接收到检测广播后开始自检是否处于正常运行的状态,当前App正常运行时,检测当前App是否在线,若当前App在线,则将系统文件中的运行状态值修改为表征稳定运行的稳定运行值并保存在系统文件中;若当前App离线,则重启当前App;之后,通过系统文件中的运行状态时检测当前App是否正常运行,若当前App正常运行,则在到了预设的检测时间时,再次下发检测广播;若当前App不正常运行,则重启当前App。本发明实施方式的目的在于提供一种让App长期稳定运行的方法,能够解决智能终端设备在设备断电重启、设备App被系统关闭等各种实际运营场景中设备App不能稳定运行的问题,当App重启后是否正常启动,检测App是否在线,启动后能否正常运行,并检测运行状态值,由此能够保证App的稳定运行。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例提供的一种App运行稳定性保护方法的流程图;
图2是本发明一实施例提供的一种App运行稳定性保护装置的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如前所述,很多App在长期运行后会出现运行问题,比如某些操作不能正常执行或无响应等问题,当App出现运行问题时,用户可以手动关闭该App的进程并手动重启该App来恢复正常运行并能保留之前的数据。但该方法仅适用于手机、平板等便携设备,而对于应用于智能设备的App,比如售卖机等用于营业的智能设备,由于其分布的地区较多且地点较广,如果出现App的运行问题,无法及时在该设备上进行App的重启,且这些智能设备对于App的稳定运行要求较高,现有的对App的手动重启的方法不能够保证应用于智能设备的App的稳定运行。
下面结合附图对本发明各个实施例提供的App运行稳定性保护方法、装置及计算机可读介质作详细说明。
如图1所示,本发明实施例提供了一种App运行稳定性保护方法,该方法包括以下步骤:
步骤101:当前App开始运行时,初始化当前App的系统文件中的运行状态值;在当前App的运行时间达到预设的检测时间时,执行步骤102;
步骤102:下发检测广播,以使当前App在接收到检测广播时检测自身是否正常运行并进行反馈,当前App正常运行时,执行步骤103;
步骤103:检测当前App是否在线,若是,执行步骤104,若否,执行步骤105;
步骤104:将当前App的系统文件中的运行状态值修改为表征稳定运行的稳定运行值并保存,执行步骤106;
步骤105:重新启动当前App,执行步骤106;
步骤106:根据预设的检测周期,检测当前App的运行状态值是否为稳定运行值,若是,执行步骤102;若否,执行步骤105。
在本发明实施例中,在当前App开始运行时,比如进行了断电之后的重启,重启之后当前App开始工作,在系统文件中将记录当前App运行状态的运行状态值初始化,并开始定时,在定时一定时间后,下发检测广播,当前App接收到检测广播后开始自检是否处于正常运行的状态,当前App正常运行时,检测当前App是否在线,若当前App在线,则将系统文件中的运行状态值修改为表征稳定运行的稳定运行值并保存在系统文件中;若当前App离线,则重启当前App;之后,通过系统文件中的运行状态时检测当前App是否正常运行,若当前App正常运行,则在到了预设的检测时间时,再次下发检测广播;若当前App不正常运行,则重启当前App。本发明实施方式的目的在于提供一种让App长期稳定运行的方法,能够解决智能终端设备在设备断电重启、设备App被系统关闭等各种实际运营场景中设备App不能稳定运行的问题,当App重启后是否正常启动,检测App是否在线,启动后能否正常运行,并检测运行状态值,由此能够保证App的稳定运行。
在本发明一实施例中,步骤105中,当前App不在线时,重新启动当前App之后,执行步骤106之前,进一步包括:恢复当前App的数据;
所述恢复当前App的数据,包括:
将当前App的导航栈以及所述导航栈对应的页面上的数据进行存储,所述导航栈以及所述导航栈对应的页面上的数据用于构建当前App重新启动前的当前场景,所述当前场景包括由所述导航栈以及所述导航栈对应的页面上的数据构建的导航栏,所述导航栈包括所述导航栏的栈结构,所述栈结构用于表示所述导航栈对应的页面之间的层级关系;
当检测到当前App被重新启动后,根据已存储的所述导航栈以及所述导航栈对应的页面上的数据,对所述当前场景进行恢复处理。
在本发明实施例中,将当前App的导航栈以及导航栈对应的页面上的数据进行存储,导航栈以及导航栈对应的页面上的数据用于构建当前场景;当检测到当前App的重新启动操作,根据已存储的导航栈以及导航栈对应的页面上的数据,对当前场景进行恢复处理。如此,应用程序在异常重启或者正常的人为重启后,具有恢复的功能,使当前App恢复异常之前或者正常的重启之前的页面和页面上的数据。
在本发明一实施例中,将当前App的导航栈以及所述导航栈对应的页面上的数据进行存储,包括:
遍历所述导航栈的导航路径对应的页面,将所述导航栈的导航路径以及所述导航栈的导航路径对应的页面上的数据存储到所述终端。
在本发明实施例中,App异常退出的时候,遍历当前的导航栈对应的页面,把导航路径上所有的页面以及数据信息存储到本地;重新启动App的时候,提示用户,是否要恢复上次异常引起的页面以及信息数据;用户选择恢复的话,从本地取出导航栈以及页面上的数据信息一一进行场景恢复,用户选择不需要恢复的话,直接删除本地对应的缓存数据。
此外,当检测到当前App在线但mqtt状态离线的时候,启动离线机制,重新注册订阅mqtt,并执行上述的恢复数据的操作。
在本发明一实施例中,该方法还包括:
接收外部发来的升级指令;
当接收到升级指令时,访问云服务器并确定是否存在新的升级包,所述云服务器用于接收外部上传的升级包并保存所述升级包,所述升级包用于升级当前App;
当存在所述升级包时,下载所述升级包;
利用所述升级包对当前App进行升级。
在本发明实施例中,具体地,当接收到外部发来的升级指令时,从当前App的系统文件中获取当前App的版本号,确定版本号是否是最新的,若不是最新的,则访问云服务器并确定是否存在新版本的升级包,因为即使当前App不是最新版本,新版本的升级包也不一定就一定已经保存在了云服务器中,有可能因为版本不稳定等原因升级包被下架。当云服务器中保存有升级包时,下载升级包对App进行更新。
在本发明一实施例中,所述利用所述升级包对当前App进行升级,包括:
检测当前App是否正在运行一预设的工作场景,若否,利用所述升级包升级当前App;若是,待所述工作场景运行结束后利用所述升级包升级当前App;
利用所述升级包升级当前App完成后,重新启动当前App,并执行所述S1。
在本发明实施例中,举例来说,App为运行在自动售卖机中的软件,用于商品的展示和购买,当用户正在进行购买操作时,即使App已经下载了最新的升级包,也不会立刻进行升级,因为进行升级App必然会经历重启的过程,如果此时用户的购买过程尚未完成就进行升级,App可能无法进行出货等操作的控制,App重启后也有无法找回历史未完成订单的风险,从而在用户体验上大打折扣,甚至有可能造成用户的财产损失,需要更多的工序来进行订单找回、订单退款等步骤。
在本发明一实施例中,该方法还包括:
当前App不正常运行时,重新启动当前App;
重新启动当前App后,执行步骤101。
本发明开发了基于广播以及android系统文件的一种让android App长期稳定运行的方法,能够解决智能终端设备在设备断电重启、设备App升级重启、设备App被系统关闭等各种实际运营场景中设备App不能稳定运行的问题。上述方法的实现可以通过Android系统的保活App来完成,保活App主要负责检测设备App开机后或者设备App升级后是否正常启动,启动后是否正常运行。保活广播对应的保活重启机制以及保活恢复机制负责设备App离线后的数据恢复,并使设备在线等操作。保活App与需要保护的App通过广播以及系统文件进行通讯,保活App通过轻量化以及添加到白名单进行开机后一直稳定运行,同时精简功能,保证保活App会一直稳定运行,不会受到设备断电重启、App离线、被android系统关闭、网络不稳定、App稳定性差等因素的影响。
如上所述,设备App断电重启后,android系统资源紧张,android系统关闭设备App,场景如下:
1、断电重启设备App;
2、断电重启保活App;
3、设备App由于android系统资源紧张,被android系统关闭;
4、保活App定时时间到,发送广播;
5、保活App根据系统文件获取设备App运行状态,App运行状态异常,重新启动设备App;
通过保活App在设备断电之后进行重启的App稳定运行检测流程如下:
1、断电重启,启动设备端App;
2、通过开机广播,启动保活App;
3、保活App初始化保存设备App运行状态的系统文件,并启动定时检测机制;
4、定时时间到,发送广播;
5、设备App根据收到的广播,检测设备App是否正常运行,如果正常则继续下一步检测,否则重启设备App;
6、检测设备App是否在线,如果在线则修改设备运行状态的状态值,并保存在系统文件中。如果设备不在线,则使设备在线,并恢复设备的数据;
7、定时时间到,检测设备App运行状态的状态值,如果正常则重复执行第4步,否则执行重启设备App的操作。
在App进行升级重启之后的稳定运行检测流程如下:
1、收到升级请求,下载升级包;
2、完成升级包下载,执行升级设备App操作;
3、升级设备App完毕,重启设备App;
4、定时时间到,发送广播;
5、设备App根据收到的广播,检测设备App是否正常运行,如果正常则继续下一步检测,否则重启设备App;
6、检测设备App是否在线,如果在线则修改设备运行状态的状态值,并保存在系统文件中。如果设备不在线,则使设备在线,并恢复设备的数据;
定时时间到,检测设备App运行状态的状态值,如果正常则重复执行第4步,否则执行重启设备App的操作。
如图2所示,本发明一实施例提供了App运行稳定性保护装置,包括:
初始模块201,用于在当前App开始运行时,初始化当前App的系统文件中的运行状态值;在当前App的运行时间达到预设的检测时间时,触发下发模块202;
下发模块202,用于下发检测广播,以使当前App在接收到检测广播时检测自身是否正常运行并进行反馈,当前App正常运行时,检测当前App是否在线,并触发处理模块203;
处理模块203,用于执行:当前App在线时,将当前App的系统文件中的所述运行状态值修改为表征稳定运行的稳定运行值并保存,触发检测模块;当前App不在线时,重新启动当前App,触发所述检测模块204;
检测模块204,用于根据预设的检测周期,检测当前App的所述运行状态值,若运行状态值为稳定运行值时,触发所述下发模块;若运行状态值不为稳定运行值时,触发所述处理模块重新启动当前App。
在本发明一实施例中,
处理模块203,在执行重新启动当前App之后,触发所述检测模块之前,还执行:
恢复当前App的数据;
所述恢复当前App的数据,包括:
将当前App的导航栈以及所述导航栈对应的页面上的数据进行存储,所述导航栈以及所述导航栈对应的页面上的数据用于构建当前App重新启动前的当前场景,所述当前场景包括由所述导航栈以及所述导航栈对应的页面上的数据构建的导航栏,所述导航栈包括所述导航栏的栈结构,所述栈结构用于表示所述导航栈对应的页面之间的层级关系;
当检测到当前App被重新启动后,根据已存储的所述导航栈以及所述导航栈对应的页面上的数据,对所述当前场景进行恢复处理。
可以理解的是,本发明实施例示意的结构并不构成对App运行稳定性保护装置的具体限定。在本发明的另一些实施例中,App运行稳定性保护装置可以包括比图示更多或者更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件、App或者App和硬件的组合来实现。
上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
本发明还提供了一种计算机可读介质,存储用于使一计算机执行如本文所述的App运行稳定性保护方法的指令。具体地,可以提供配有存储介质的系统或者装置,在该存储介质上存储着实现上述实施例中任一实施例的功能的App程序代码,且使该系统或者装置的计算机(或CPU或MPU)读出并执行存储在存储介质中的程序代码。
在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的一部分。
用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、DVD+RW)、磁带、非易失性存储卡和ROM。可选择地,可以由通信网络从服务器计算机上下载程序代码。
此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且可以通过基于程序代码的指令使计算机上操作的操作系统等来完成部分或者全部的实际操作,从而实现上述实施例中任意一项实施例的功能。
此外,可以理解的是,将由存储介质读出的程序代码写到插入计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展单元中设置的存储器中,随后基于程序代码的指令使安装在扩展板或者扩展单元上的CPU等来执行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。
需要说明的是,上述各流程和各系统结构图中不是所有的步骤和模块都是必须的,可以根据实际的需要忽略某些步骤或模块。各步骤的执行顺序不是固定的,可以根据需要进行调整。上述各实施例中描述的系统结构可以是物理结构,也可以是逻辑结构,即,有些模块可能由同一物理实体实现,或者,有些模块可能分由多个物理实体实现,或者,可以由多个独立设备中的某些部件共同实现。
以上各实施例中,硬件单元可以通过机械方式或电气方式实现。例如,一个硬件单元可以包括永久性专用的电路或逻辑(如专门的处理器,FPGA或ASIC)来完成相应操作。硬件单元还可以包括可编程逻辑或电路(如通用处理器或其它可编程处理器),可以由App进行临时的设置以完成相应操作。具体的实现方式(机械方式、或专用的永久性电路、或者临时设置的电路)可以基于成本和时间上的考虑来确定。
上文通过附图和优选实施例对本发明进行了详细展示和说明,然而本发明不限于这些已揭示的实施例,基于上述多个实施例本领域技术人员可以知晓,可以组合上述不同实施例中的代码审核手段得到本发明更多的实施例,这些实施例也在本发明的保护范围之内。
Claims (7)
1.App运行稳定性保护方法,其特征在于,包括:
S1:当前App开始运行时,初始化当前App的系统文件中的运行状态值;在当前App的运行时间达到预设的检测时间时,执行S2;
S2:下发检测广播,以使当前App在接收到检测广播时检测自身是否正常运行并进行反馈,当前App正常运行时,执行S3;
S3:检测当前App是否在线,若是,执行S4,若否,执行S5;
S4:将当前App的系统文件中的所述运行状态值修改为表征稳定运行的稳定运行值并保存,执行S6;
S5:重新启动当前App,执行S6;
S6:根据预设的检测周期,检测当前App的所述运行状态值,若运行状态值为稳定运行值时,执行所述S2;若运行状态值不为稳定运行值时,执行所述S5;
所述S2,进一步包括:
当前App不正常运行时,重新启动当前App;
重新启动当前App后,执行所述S1;
所述S5中,当前App不在线时,重新启动当前App之后,执行S6之前,进一步包括:恢复当前App的数据;
所述恢复当前App的数据,包括:
将当前App的导航栈以及所述导航栈对应的页面上的数据进行存储,所述导航栈以及所述导航栈对应的页面上的数据用于构建当前App重新启动前的当前场景,所述当前场景包括由所述导航栈以及所述导航栈对应的页面上的数据构建的导航栏,所述导航栈包括所述导航栏的栈结构,所述栈结构用于表示所述导航栈对应的页面之间的层级关系;
当检测到当前App被重新启动后,根据已存储的所述导航栈以及所述导航栈对应的页面上的数据,对所述当前场景进行恢复处理。
2.根据权利要求1所述的方法,其特征在于,
将当前App的导航栈以及所述导航栈对应的页面上的数据进行存储,包括:
遍历所述导航栈的导航路径对应的页面,将所述导航栈的导航路径以及所述导航栈的导航路径对应的页面上的数据存储到终端。
3.根据权利要求1所述的方法,其特征在于,
进一步包括:
接收外部发来的升级指令;
当接收到升级指令时,访问云服务器并确定是否存在新的升级包,所述云服务器用于接收外部上传的升级包并保存所述升级包,所述升级包用于升级当前App;
当存在所述升级包时,下载所述升级包;
利用所述升级包对当前App进行升级。
4.根据权利要求3所述的方法,其特征在于,
所述利用所述升级包对当前App进行升级,包括:
检测当前App是否正在运行一预设的工作场景,若否,利用所述升级包升级当前App;若是,待所述工作场景运行结束后利用所述升级包升级当前App;
利用所述升级包升级当前App完成后,重新启动当前App,并执行所述S1。
5.App运行稳定性保护装置,其特征在于,包括:
初始模块,用于在当前App开始运行时,初始化当前App的系统文件中的运行状态值;在当前App的运行时间达到预设的检测时间时,触发下发模块;
所述下发模块,用于下发检测广播,以使当前App在接收到检测广播时检测自身是否正常运行并进行反馈,当前App正常运行时,检测当前App是否在线,并触发处理模块;当前App不正常运行时,重新启动当前App;
在重新启动当前App后,转向所述在当前App开始运行时,初始化当前App的系统文件中的运行状态值;
所述处理模块,用于执行:当前App在线时,将当前App的系统文件中的所述运行状态值修改为表征稳定运行的稳定运行值并保存,触发检测模块;当前App不在线时,重新启动当前App,触发所述检测模块;
所述检测模块,用于根据预设的检测周期,检测当前App的所述运行状态值,若运行状态值为稳定运行值时,触发所述下发模块;若运行状态值不为稳定运行值时,触发所述处理模块重新启动当前App;
所述处理模块,在执行重新启动当前App之后,触发所述检测模块之前,进一步执行:
恢复当前App的数据;
所述恢复当前App的数据,包括:
将当前App的导航栈以及所述导航栈对应的页面上的数据进行存储,所述导航栈以及所述导航栈对应的页面上的数据用于构建当前App重新启动前的当前场景,所述当前场景包括由所述导航栈以及所述导航栈对应的页面上的数据构建的导航栏,所述导航栈包括所述导航栏的栈结构,所述栈结构用于表示所述导航栈对应的页面之间的层级关系;
当检测到当前App被重新启动后,根据已存储的所述导航栈以及所述导航栈对应的页面上的数据,对所述当前场景进行恢复处理。
6.App运行稳定性保护装置,其特征在于,包括:至少一个存储器和至少一个处理器;
所述至少一个存储器,用于存储机器可读程序;
所述至少一个处理器,用于调用所述机器可读程序,执行权利要求1至4中任一所述的方法。
7.计算机可读介质,其特征在于,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,使所述处理器执行权利要求1至4中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110657457.XA CN113360384B (zh) | 2021-06-12 | 2021-06-12 | App运行稳定性保护方法、装置及计算机可读介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110657457.XA CN113360384B (zh) | 2021-06-12 | 2021-06-12 | App运行稳定性保护方法、装置及计算机可读介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113360384A CN113360384A (zh) | 2021-09-07 |
CN113360384B true CN113360384B (zh) | 2022-08-02 |
Family
ID=77534127
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110657457.XA Active CN113360384B (zh) | 2021-06-12 | 2021-06-12 | App运行稳定性保护方法、装置及计算机可读介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113360384B (zh) |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8752049B1 (en) * | 2008-12-15 | 2014-06-10 | Open Invention Network, Llc | Method and computer readable medium for providing checkpointing to windows application groups |
CN102215215A (zh) * | 2010-08-02 | 2011-10-12 | 深圳市深信服电子科技有限公司 | 一种页面恢复的方法和电子终端 |
US9858052B2 (en) * | 2013-03-21 | 2018-01-02 | Razer (Asia-Pacific) Pte. Ltd. | Decentralized operating system |
CN103441495B (zh) * | 2013-08-28 | 2015-07-29 | 三川电力设备股份有限公司 | 电力系统元件参数和功率修正系数的辨识方法及系统 |
TW201517568A (zh) * | 2013-10-23 | 2015-05-01 | Synology Inc | 伺服器操作系統及其操作方法 |
CN106123476B (zh) * | 2016-06-27 | 2018-11-16 | 青岛海尔股份有限公司 | 用于冰箱的智能检测方法 |
US10607134B1 (en) * | 2016-12-19 | 2020-03-31 | Jasmin Cosic | Artificially intelligent systems, devices, and methods for learning and/or using an avatar's circumstances for autonomous avatar operation |
CN106789317A (zh) * | 2016-12-30 | 2017-05-31 | 广州市保伦电子有限公司 | 一种服务器切换方法及其装置 |
CN106936632B (zh) * | 2017-02-28 | 2019-07-16 | 烽火通信科技股份有限公司 | 网关的链路智能诊断方法及系统 |
CN109981415B (zh) * | 2019-04-04 | 2021-08-06 | 深圳市网心科技有限公司 | 状态判定方法、电子设备、系统及介质 |
US10922072B1 (en) * | 2019-05-25 | 2021-02-16 | Juniper Networks, Inc | Apparatus, system, and method for seamless and reversible in-service software upgrades |
CN110311811A (zh) * | 2019-06-14 | 2019-10-08 | 深圳绿米联创科技有限公司 | 配置方法、装置、系统、云服务器以及存储介质 |
CN111274503B (zh) * | 2020-01-20 | 2024-02-20 | 北京有竹居网络技术有限公司 | 数据处理的方法、装置、电子设备及计算机可读介质 |
-
2021
- 2021-06-12 CN CN202110657457.XA patent/CN113360384B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN113360384A (zh) | 2021-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10114655B2 (en) | Rapid start up method for electronic equipment | |
CN109634645B (zh) | 固件升级方法及终端 | |
CN102667716A (zh) | 使用固件更新应用程序更新部件的固件的方法及装置 | |
CN102722394B (zh) | 一种嵌入式设备的启动升级方法 | |
WO2013103023A1 (ja) | 情報処理装置、情報処理方法、およびコンピュータプログラム | |
CN110597542B (zh) | 软件自动ota升级方法及装置、电子设备 | |
CN102184111B (zh) | 操作系统在线升级方法及带操作系统的设备 | |
CN100357893C (zh) | 一种终端升级方法及系统 | |
CN102141921A (zh) | 一种终端设备系统升级方法及终端设备 | |
CN102541595A (zh) | 智能设备的升级方法、装置及智能设备 | |
CN100549959C (zh) | 引导程序在线升级方法 | |
CN106952425B (zh) | 一种终端远程升级方法和pos终端 | |
CN105607972A (zh) | 一种异常修复的方法及装置 | |
CN109766140A (zh) | 一种机顶盒启动异常的定位方法及装置 | |
CN113360384B (zh) | App运行稳定性保护方法、装置及计算机可读介质 | |
CN112433739B (zh) | 一种固件升级方法 | |
CN111176897A (zh) | 一种封闭式bios自修复方法、系统、终端及存储介质 | |
JP2014115928A (ja) | Bios復旧制御装置及びその復旧制御方法、情報処理装置、並びにコンピュータ・プログラム | |
EP1771787B1 (en) | Recovery method for a portable data processing apparatus | |
CN112732285A (zh) | 适用于云计算linux操作系统的升级方法、装置及电子设备 | |
CN109634782B (zh) | 一种系统健壮性的检测方法、装置、存储介质及终端 | |
CN112363739B (zh) | 终端设备的分区镜像在线升级方法、装置、设备及介质 | |
CN115951920A (zh) | 移动设备升级方法、装置、存储单元和移动设备 | |
CN104834574B (zh) | 一种解决系统分区损坏的方法及装置 | |
CN114546455A (zh) | 一种双分区的mcu软件升级方法及装置 |
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 |