一种异常修复的方法及装置
技术领域
本发明属于智能设备技术领域,尤其涉及一种异常修复的方法及装置。
背景技术
在智能设备的使用过程中,经常会遇到桌面启动器崩溃而导致设备无法正常启动的问题,比如主页挂掉。现有技术需要用户手动重启智能设备来重启桌面启动器,但有时候即使重启了智能设备桌面启动器也不能正常启动,只能找售后解决,用户的等待时间长,体验不佳。
发明内容
鉴于此,本发明实施例提供一种异常修复的方法及装置,以实现智能设备自动修复桌面启动器不能正常启动的问题。
第一方面,提供了一种异常修复的方法,所述方法包括:
在设备开机时,将与桌面启动器相关的数据信息进行备份;
初始化异常处理器,并通过所述异常处理器检测桌面启动器的异常信息;
当通过所述异常处理器检测到桌面启动器的异常信息时,清除指定目录下与桌面启动器相关的数据信息,并将所备份的数据信息复制到所述指定目录下,重新启动桌面启动器。
第二方面,提供了一种异常修复的装置,所述装置包括:
备份模块,用于在设备开机时,将与桌面启动器相关的数据信息进行备份;
检测模块,用于初始化异常处理器,并通过所述异常处理器检测桌面启动器的异常信息;
第一修复模块,用于当通过所述异常处理器检测到桌面启动器的异常信息时,清除指定目录下与桌面启动器相关的数据信息,并将所备份的数据信息复制到所述指定目录下,重新启动桌面启动器。
与现有技术相比,本发明实施例通过在设备开机时,将与桌面启动器相关的数据信息进行备份;初始化异常处理器,并通过所述异常处理器检测桌面启动器的异常信息;当通过所述异常处理器检测到桌面启动器的异常信息时,则清除指定目录下与桌面启动器相关的数据信息,并将所备份的数据信息复制到所述指定目录下,重新启动桌面启动器。从而实现了智能设备自动修复桌面启动器不能正常启动的问题,保证了桌面启动器启动的正确性,且能够一并修复那些未被检测到但仍会导致桌面启动器不能正常启动的异常,修复速度快。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
图1是本发明实施例提供的异常修复的方法的实现流程图;
图2是本发明另一实施例提供的异常修复的方法的实现流程图;
图3是本发明另一实施例提供的异常修复的方法的实现流程图;
图4是本发明实施例提供的异常修复的装置的组成结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例通过在设备开机时,将与桌面启动器相关的数据信息进行备份;初始化异常处理器,并通过所述异常处理器检测桌面启动器的异常信息;当通过所述异常处理器检测到桌面启动器的异常信息时,则清除指定目录下与桌面启动器相关的数据信息,并将所备份的数据信息复制到所述指定目录下,重新启动桌面启动器。从而实现了智能设备自动修复桌面启动器不能正常启动的问题,保证了桌面启动器启动的正确性,且能够一并修复那些未被检测到但仍会导致桌面启动器不能正常启动的异常,修复速度快。本发明实施例还提供了相应的装置,以下分别进行详细的说明。在本发明中桌面启动器可以代指各种***的桌面启动器,例如是安卓***或者是windows***或者是其他***,以下用安卓设备的桌面启动器launcher为例进行说明,其中名词代称中以launcher代指上述的桌面启动器,以launcher异常处理器代指上述的异常处理器。
图1示出了本发明实施例提供的异常修复的方法的实现流程。
在本发明实施例中,所述异常修复的方法应用于智能设备。所述智能设备为Android设备,包括但不限于智能手机、平板电脑、智能电视机、智能手表、学习机等。
参阅图1,所述异常修复的方法包括:
在步骤S101中,在设备开机时,将与launcher相关的数据信息进行备份。
在步骤S102中,初始化launcher异常处理器,并通过所述launcher异常处理器检测launcher的异常信息。
在本发明实施例中,所述与launcher相关的数据信息包括但不限于与launcher启动、正常运行所需的.xml文件、主题包信息、字体格式信息、APP界面信息等。
智能设备在开机时,将与launcher相关的数据信息进行备份。其中,备份的方式包括:在设备开机时,将与launcher相关的数据信息保存至本地存储器中以进行备份;或者,在设备开机且连接网络时,将与launcher相关的数据信息发送至服务器以进行备份。
在备份完成后,初始化launcher异常处理器。本发明实施例预先定义了一个CrashHandler类,实现launcher异常处理器(Handler),然后实现所述处理器Handler中的异常处理接口。通过所述launcher异常处理器中的异常处理接口实时捕获launcher的异常信息。所述异常信息为launcher崩溃时所反馈的出错信息,即launcher不能正常启动时反馈的出错信息。其中优选,该异常处理接口是未捕捉异常的接口(UncaughtException),初始化时需要设置CrashHandler类的线程默认为UncatchException的处理器。
在步骤S103中,当通过所述launcher异常处理器检测到launcher的异常信息时,清除指定目录下与launcher相关的数据信息,并将所备份的数据信息复制到所述指定目录下,重新启动launcher。
在本发明实施例中,所述指定目录用于存储当前供launcher启动时加载的与launcher相关的数据信息,包括本次launcher启动时使用到的数据信息以及用户设置的数据信息。当launcher发生崩溃时,通过所述launcher异常处理器能够检测到launcher的异常信息,此时,再通过所述launcher异常处理器清除指定目录下的与launcher相关的数据信息,并获取预先备份的与launcher相关的数据信息,将所备份的数据信息复制到所述指定目录下,以覆盖原有的与launcher相关的数据信息,然后重新启动launcher,以使得launcher重新加载所述指定目录下的数据信息进行启动。由于本发明实施例是将所备份的与launcher相关的数据信息完全覆盖至指定目录下,能够一并修复那些未被检测到但仍会导致launcher不能正常启动的异常情况。
可选地,在通过所述launcher异常处理器检测到launcher的异常信息,所述方法还可以包括:
将所述launcher的异常信息发送至服务器,以供开发者确定产生异常的原因。
在这里,通过将launcher崩溃时的异常信息上传至服务器,使得开发者可以预先根据所述异常信息确定异常问题所在,避免了售后长时间的处理,有效地节约了用户的时间成本。
在本发明实施例中,默认在设备开机时所备份的与launcher相关的数据信息为能够让launcher正常启动的数据信息。智能设备通过所述launcher异常处理器检测到launcher的异常信息,即launcher发生崩溃时,则清除指定目录下与launcher相关的数据信息,并恢复所备份的数据信息至所述指定目录下,重新启动launcher;从而实现了智能设备自动修复launcher不能正常启动的问题,保证了launcher启动的正确性,且能够一并修复那些未被检测到但仍会导致launcher不能正常启动的异常,修复速度快。
作为本发明的另一个优选示例,图2示出了本发明另一实施例提供的异常修复的方法的实现流程。
参阅图2,所述异常修复的方法包括步骤S201至步骤S203,其中,步骤S201至S203分别与图1实施例中所述的步骤S101至S103相同,具体请参见上述图1实施例的叙述,此处不再赘述。
进一步地,在本发明实施例中,在将所备份的数据信息复制到所述指定目录下并重新启动launcher之后,所述方法还包括:
在步骤S204中,若launcher无法启动,则将设备恢复为出厂设置,并重新启动设备以重启launcher。
在这里,恢复备份的数据信息后,若launcher仍不能正常启动,通常是因为用户在使用智能设备的过程中设置的与launcher相关的数据信息出错,此时,将设备恢复为出厂设置,以将用户设置的与launcher相关的数据信息删除。回复出厂设置后,所述指定目录下存储的是设备出厂时设置的与launcher相关的数据信息。然后重启launcher,以使得launcher重新加载所述指定目录下的数据信息进行启动,从而进一步保证了launcher启动的正确性,且修复速度快。
作为本发明的另一个优选示例,图3示出了本发明另一实施例提供的异常修复的方法的实现流程。
参阅图3,所述异常修复的方法包括步骤S301至步骤S304,其中,步骤S301至S304分别与图2实施例中所述的步骤S201至S204相同,具体请参见上述图2实施例的叙述,此处不再赘述。
进一步地,在本发明实施例中,在将设备恢复为出厂设置,并重新启动设备以重启launcher后,所述方法还包括:
在步骤S305中,若launcher仍无法启动,则从服务器中获取***升级包,根据所述***升级包对设备的***进行升级,并在***升级完成后重新启动***以重启launcher。
在这里,设备恢复出厂设置后,若launcher仍不能正常启动,判断为***方面的原因。则从服务器上获取***升级包,按照所述***升级包对***以及launcher进行升级;并在升级之后启动***,从而达到了launcher及***正常启动的目的,进一步保证了launcher启动的正确性。
图4示出了本发明实施例提供的异常修复的装置的组成结构,为了便于说明,仅示出了与本发明实施例相关的部分。
在本发明实施例中,所述装置用于实现上述图1至图3中任一实施例所述的异常修复的方法,可以是内置于智能设备的软件单元、硬件单元或者软硬件结合的单元。所述智能设备为Android设备,包括但不限于智能手机、平板电脑、智能电视机、智能手表、学习机等。
参阅图4,所述异常修复的装置包括:
备份模块41,用于在设备开机时,将与launcher相关的数据信息进行备份。
检测模块42,用于初始化launcher异常处理器,并通过所述launcher异常处理器检测launcher的异常信息。
第一修复模块43,用于当通过所述launcher异常处理器检测到launcher的异常信息时,清除指定目录下与launcher相关的数据信息,并将所备份的数据信息复制到所述指定目录下,重新启动launcher。
进一步地,所述备份模块41具体用于:
在设备开机时,将与launcher相关的数据信息保存至本地存储器中以进行备份;或者
在设备开机且连接网络时,将与launcher相关的数据信息发送至服务器以进行备份。
进一步地,所述装置还包括:
第二修复模块44,用于若launcher无法启动,则将设备恢复为出厂设置,并重新启动设备以重启launcher。
进一步地,所述装置还包括:
第三修复模块45,用于若launcher仍无法启动,则从服务器中获取***升级包,根据所述***升级包对设备的***进行升级,并在***升级完成后重新启动***以重启launcher。
进一步地,所述装置还包括:
发送模块46,用于将所述launcher的异常信息发送至服务器,以供开发者确定产生异常的原因。
进一步地,所述备份模块41具体用于:
在设备开机时,将与launcher相关的数据信息保存至本地存储器中以进行备份;或者
在设备开机且连接网络时,将与launcher相关的数据信息发送至服务器以进行备份。
需要说明的是,本发明实施例中的装置可以用于实现上述方法实施例中的全部技术方案,其各个功能模块的功能可以根据上述方法实施例中的方法具体实现,其具体实现过程可参照上述实例中的相关描述,此处不再赘述。
本发明实施例通过在设备开机时,将与launcher相关的数据信息进行备份;初始化launcher异常处理器,并通过所述launcher异常处理器检测launcher的异常信息;当通过所述launcher异常处理器检测到launcher的异常信息时,则清除指定目录下与launcher相关的数据信息,并将所备份的数据信息复制到所述指定目录下,重新启动launcher。从而实现了智能设备自动修复launcher不能正常启动的问题,保证了launcher启动的正确性,且能够一并修复那些未被检测到但仍会导致launcher不能正常启动的异常,修复速度快。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的异常修复的方法及装置,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块、单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元、模块单独物理存在,也可以两个或两个以上单元、模块集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。