异常服务处理方法及装置、存储介质、通信终端与流程

文档序号:19155048发布日期:2019-11-16 00:38阅读:188来源:国知局
异常服务处理方法及装置、存储介质、通信终端与流程

本公开涉及无线通信技术领域,具体涉及一种异常服务处理方法、一种异常服务处理装置、一种计算机可读介质以及一种通信终端。



背景技术:

为了提升用户对于智能终端设备的使用体验,方便用户操作,程序员可以在android系统的原生系统源码的基础上行增加新的系统功能。但由于用户量众多以及应用环境的复杂性等原因,部分功能可能存在不稳定等问题,新增功能会在用户某种操作模式下会触发稳定性问题,严重的可能会造成系统反复crash,甚至导致系统重启。

对于这样的异常问题,只能通过手机ota(overtheairtechnology,空间下载技术)升级才能解决问题,整个周期很漫长。并且,在整个解决问题期间,相同的异常可能会被再次触发异常,影响用户对智能终端设备的使用。

需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。



技术实现要素:

本公开的目的在于提供一种异常服务处理方法、一种异常服务处理装置、一种计算机可读介质、一种无线通信终端,从而提供一种针对系统异常功能的处理方法,减少异常对终端设备在使用过程中的影响,进而在一定程度上克服相关技术的限制和缺陷。

本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。

根据本公开的第一方面,提供一种异常服务处理方法,包括:

获取异常数据,根据所述异常数据查询调用栈;

在所述调用栈包括目标服务对应的目标方法信息时,根据所述目标方法信息获取所述目标服务对应的目标服务标识;

根据所述目标服务标识获取对应的所述目标服务的功能点开关,并关闭所述目标服务的功能点开关。

根据本公开的第二方面,提供一种异常服务处理装置,包括:

异常数据识别模块,用于获取异常数据,根据所述异常数据查询调用栈;

目标服务识别模块,用于在所述调用栈包括目标服务对应的目标方法信息时,根据所述目标方法信息获取所述目标服务对应的目标服务标识;

开关控制模块,用于根据所述目标服务标识获取对应的所述目标服务的功能点开关,并关闭所述目标服务的功能点开关。

根据本公开的第三方面,提供一种计算机可读介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的异常服务处理方法。

根据本公开的第四方面,提供一种无线通信终端,包括:

一个或多个处理器;

存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现上述的异常服务处理方法。

本公开的一种实施例所提供的异常服务处理方法中,通过在监听到系统异常时,查询调用栈数据,判断是否存在目标服务对应的目标方法;从而可以根据调用栈数据判断目标服务是否存在异常。若判断目标服务存在异常时,便可以查询对应的功能点开关,并关闭该开关,从而禁止发生异常的目标服务继续运行,防止异常的反复出现,避免影响系统的正产运行,提升用户体验。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1示意性示出本公开示例性实施例中一种异常服务处理方法流程的示意图;

图2示意性示出本公开示例性实施例中一种查询调用栈的方法流程的示意图;

图3示意性示出本公开示例性实施例中一种异常服务处理装置的组成示意图;

图4示意性示出本公开示例性实施例中一种无线通信设备的计算机系统的结构示意图。

具体实施方式

现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。

此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。

为了提升用户体验,提高用户对智能终端设备使用的便捷性,开发人员会修改android或ios原生系统的源代码,增加一些特有的功能。这些功能可能存在稳定的问题,但没有在前期测试中发现。而由于用户的使用环境复杂,可能会在某种操作模式下或特定的环境下触发稳定性问题,例如引起卡顿、crash或重启等系统异常。但用户却并不能直接找到导致系统异常的原因,只能够在线下通过售后,或者线上以主动提交的方式将log数据反馈给开发人员,再由开饭人员对异常信息进行过滤和处理,并针对异常问题进行编译,通过后续的ota进行升级。但这样的处理方式周期过于漫长,在这个期间内用户可能会再次出发异常,影响正常使用。

针对上述的现有技术的缺点和不足,本示例实施方式中提供了一种异常服务处理方法,可以应用于手机、平板电脑以及笔记本电脑等智能终端终端设备。参考图1中所示,上述的异常服务处理方法可以包括以下步骤:

s11,获取异常数据,根据所述异常数据查询调用栈;

s12,在所述调用栈包括目标服务对应的目标方法信息时,根据所述目标方法信息获取所述目标服务对应的目标服务标识;

s13,根据所述目标服务标识获取对应的所述目标服务的功能点开关,并关闭所述目标服务的功能点开关。

本示例实施方式所提供的网络连接方法中,一方面,通过对系统异常进行实时的监听,并在监听到系统异常时,查询调用栈数据,判断是否存在目标服务对应的目标方法;从而可以根据调用栈数据判断目标服务是否存在异常。另一方面,在判断目标服务存在异常时,便可以查询对应的功能点开关,并关闭该开关,从而禁止发生异常的目标服务继续运行,防止异常的反复出现,避免影响系统的正产运行,提升用户体验。

下面,将结合附图及实施例对本示例实施方式中的异常服务处理方法的各个步骤进行更详细的说明。

步骤s10,响应于预设控制操作,为新增的目标服务配置对应的功能点开关,并建立所述目标服务与对应的功能点开关之间的映射关系。

本示例实施方式中,上述的目标服务可以是能够实现指定功能的功能点。用户可以通过更新系统、安装插件或者加载应用程序安装包等方式在智能终端设备增加一定的功能。举例而言,上述的目标服务可以是一种系统新增的功能点,例如:紧急求助功能,可以自动拨打报警电话;搜索功能,可以对本地内存进行全局搜索;日志收集功能,可以自动收集蓝牙、wifi的数据包;等等。

对于各功能点,可以分别为其配置对应的功能点开关,建立功能点与对应的功能点开关之间的映射关系,通过控制该功能点开关,可以关闭或者打开该功能点。并且,各新增功能点可以配置有唯一识别名称,通过该唯一识别名称可以查询到对应的功能点开关。对于新增的功能点来说,其可以有对应的可执行的目标方法,以及所述目标方法对应的调用路径之间。可以建立功能点名称与目标方法的名称和调用路径之间的映射关系,并将所述映射关系保存在预设的关系表中。在查询时,可以根据调用栈中的方法名称,利用关系表中的映射关系查询到对应的功能点名称。

此外,上述的功能点还可以包括若干个子功能点。具体来说,对于系统新增的一个feature(特性),其可以包含多个小的子功能点,各子功能点之间可以相互独立,分别实现不同的功能,并具有对应的可执行的子目标方法、调用路径和唯一的识别名称。各子功能点同样具有对应的子功能点开关。通过该子功能点开关可以关闭或打开对应的子功能点,关闭一个子功能点并不会影响其他子功能点。

另外,还可以将该功能点或子功能点在设备列表中进行展示,同时展示对应的功能点开关,使用户可以手动控制是否启用开功能。

步骤s11,获取异常数据,根据所述异常数据查询调用栈。

本示例实施方式中,对于终端设备来说,参考图2所示,可以对系统异常进行实时的监听,具体来说,上述的步骤s11可以包括:

步骤s111,监听系统异常数据;

步骤s112,在监听存在系统异常数据时,触发dump服务以打印调用栈,并对所述调用栈中的方法数据进行查询。

举例来说,可以通过系统自带的异常检测模块对系统异常进行实时监听;也可以通过日志数据判断是否存在系统异常。上述的系统异常可以是:卡顿、crash或系统重启等情况。

在检测到系统存在异常时,便可以利用dump服务对调用栈进行打印,可以利用功能点对应的目标方法的名称进行查询。

步骤s12,在所述调用栈包括目标服务对应的目标方法信息时,根据所述目标方法信息获取所述目标服务对应的目标服务标识。

本示例实施方式中,具体来说,调用栈中可以包括在系统异常发生时,具体使用了哪些函数、执行了哪些进程。在获取调用栈的具体数据后,便可以利用方法名称查询调用栈中是否包含目标方法,例如,将目标方法名称与调用栈中的方法称进行匹配。在查询包含目标方法时,则可以根据目标方法的名称查询上述预设的关系表,从而进一步确定异常发生时涉及到的目标服务对应的功能点。

步骤s13,根据所述目标服务标识获取对应的所述目标服务的功能点开关,并关闭所述目标服务的功能点开关。

本示例实施方式中,在确定系统异常发生时对应的进程包含目标服务对应的功能点时。还可以对该功能点的属性进行确认,在该功能点为非核心功能点,便根据映射关系获取对应的功能点开关的路径,关闭功能点对应的功能点开关,从而将该目标服务关闭。从而实现在系统出现严重异常问题时,将非核心功能自动关闭,防止反复crash,从而提升用户体验。有效的避免终端设备的使用过程中由该功能点的运行导致再次发生异常,且关闭该功能点不会影响系统的正常运行。

基于上述内容,本示例实施方式中,在功能点包括多个子功能点时,当出现异常时,追踪调用栈发现异常点属于默认具体的子功能点,则只将该子功能点关闭。或者,也可以根据系统异常期间的执行的具体进程或调用的函数确定关闭一个或多个子功能点,而不必关闭整个功能点。从而实现对用户体验的最小影响,实现更加精细化的管控。

本公开实施例所提供的方法,通过预先为功能点配置对应的功能点开关,并建立功能点与对应的方法名称及方法路径之间的映射关系,并进行存储,方便后续的查询和管理。当用户实际使用中出现严重异常问题时,通过调用栈等追踪到对应的所属异常功能点时,便可以通过功能点开关将其动态关闭,恢复成原生系统的默认状态。直到终端设备升级系统修复该异常后再打开,防止用户在同一个应用场景下出现反复crash等问题。从而提升用户体验。

需要注意的是,上述附图仅是根据本发明示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。

进一步的,参考图3所示,本示例的实施方式中还提供一种异常服务处理装置30,包括:异常数据识别模块301、目标服务识别模块302和开关控制模块303。其中:

所述异常数据识别模块301可以用于获取异常数据,根据所述异常数据查询调用栈。

所述目标服务识别模块302可以用于在所述调用栈包括目标服务对应的目标方法信息时,根据所述目标方法信息获取所述目标服务对应的目标服务标识。

所述开关控制模块303可以用于根据所述目标服务标识获取对应的所述目标服务的功能点开关,并关闭所述目标服务的功能点开关。

在本公开的一种示例中,所述异常数据识别模块301可以包括:异常监听模块和调用栈查询模块(图中未示出)。其中,

所述异常监听模块可以用于监听系统异常数据。

所述调用栈查询模块可以用于在监听存在系统异常数据时,触发dump服务以打印调用栈,并对所述调用栈中的方法数据进行查询。

在本公开的一种示例中,所述目标服务为非核心服务。

在本公开的一种示例中,所述装置还可以包括:映射关系建立模块(图中未示出)。

所述映射关系建立模块可以用于响应于预设控制操作,为新增的目标服务配置对应的功能点开关,并建立所述目标服务与对应的功能点开关之间的映射关系。

在本公开的一种示例中,所述映射关系建立模块还可以包括:映射关系存储模块(图中未示出)。

所述映射关系存储模块可以用于建立所述目标服务与对应的目标方法,以及所述目标方法对应的调用路径之间的映射关系,并将所述映射关系保存在预设的关系表中。

在本公开的一种示例中,所述目标服务包括若干目标子服务;所述目标子服务配置有对应的子功能点开关。

在本公开的一种示例中,各所述目标子服务之间相互独立。

上述的异常服务处理装置中各模块的具体细节已经在对应的异常服务处理方法中进行了详细的描述,因此此处不再赘述。

应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。

图4示出了适于用来实现本发明实施例的无线通信设备的计算机系统的结构示意图。

需要说明的是,图4示出的电子设备的计算机系统400仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图4所示,计算机系统400包括中央处理单元(centralprocessingunit,cpu)401,其可以根据存储在只读存储器(read-onlymemory,rom)402中的程序或者从存储部分408加载到随机访问存储器(randomaccessmemory,ram)403中的程序而执行各种适当的动作和处理。在ram403中,还存储有系统操作所需的各种程序和数据。cpu401、rom402以及ram403通过总线404彼此相连。输入/输出(input/output,i/o)接口405也连接至总线404。

以下部件连接至i/o接口405:包括键盘、鼠标等的输入部分406;包括诸如阴极射线管(cathoderaytube,crt)、液晶显示器(liquidcrystaldisplay,lcd)等以及扬声器等的输出部分407;包括硬盘等的存储部分408;以及包括诸如lan(localareanetwork,局域网)卡、调制解调器等的网络接口卡的通信部分409。通信部分409经由诸如因特网的网络执行通信处理。驱动器410也根据需要连接至i/o接口405。可拆卸介质411,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器410上,以便于从其上读出的计算机程序根据需要被安装入存储部分408。

特别地,根据本发明的实施例,下文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分409从网络上被下载和安装,和/或从可拆卸介质411被安装。在该计算机程序被中央处理单元(cpu)401执行时,执行本申请的系统中限定的各种功能。

需要说明的是,本发明实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(erasableprogrammablereadonlymemory,eprom)、闪存、光纤、便携式紧凑磁盘只读存储器(compactdiscread-onlymemory,cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。

附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本发明实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。

作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现如下述实施例中所述的方法。例如,所述的电子设备可以实现如图1所示的各个步骤。

此外,上述附图仅是根据本发明示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。

应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1