CN106469080B - 防止系统服务进程重启的方法及装置、移动终端 - Google Patents

防止系统服务进程重启的方法及装置、移动终端 Download PDF

Info

Publication number
CN106469080B
CN106469080B CN201610814985.0A CN201610814985A CN106469080B CN 106469080 B CN106469080 B CN 106469080B CN 201610814985 A CN201610814985 A CN 201610814985A CN 106469080 B CN106469080 B CN 106469080B
Authority
CN
China
Prior art keywords
sensor
enabled
system service
service process
sensed data
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
Application number
CN201610814985.0A
Other languages
English (en)
Other versions
CN106469080A (zh
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.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Guangdong Oppo Mobile Telecommunications Corp 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 Guangdong Oppo Mobile Telecommunications Corp Ltd filed Critical Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority to CN201610814985.0A priority Critical patent/CN106469080B/zh
Publication of CN106469080A publication Critical patent/CN106469080A/zh
Application granted granted Critical
Publication of CN106469080B publication Critical patent/CN106469080B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files

Abstract

本发明公开了一种防止系统服务进程重启的方法,包括:驱动层在接收到系统服务进程发送的传感器使能指令后,根据该传感器使能指令使能相应的传感器,若使能传感器失败,则根据预先保存的该传感器的感应数据向系统服务进程上报感应数据。本发明还公开了一种防止系统服务进程重启的装置及移动终端。通过根据预先保存的传感器的感应数据向系统服务进程上报感应数据,使得能够避免系统服务进程因未接收到传感器上报的感应数据,而认为系统出现超时卡顿从而重启的问题,且避免因系统服务进程重启带来的暂时黑屏及当前需要使能该传感器的应用程序闪退的问题。

Description

防止系统服务进程重启的方法及装置、移动终端
技术领域
本发明涉及移动终端技术领域,尤其涉及一种防止系统服务进程重启的方法及装置、移动终端。
背景技术
随着通信技术的发展,手机已经成为人们日常生活中常用的电子设备,且手机也能够安装越来越多的应用程序,具有多种功能。
目前,大多数应用程序在使用时需要调用硬件设备的数据,例如,指南针应用程序需要调用手机中安装的方向传感器,并对方向传感器感应到的数据进行处理,以实现指示方向的功能。
然而,应用程序在启动时,需要使能其需要使用的传感器,如果传感器出现故障,该传感器将无法被成功使能,系统服务进程将不会接收到传感器的上报的感应数据,导致系统服务进程认为系统存在超时卡顿,从而自动重启,带来显示界面出现短暂黑屏的现象,且由于系统服务进程重启,也将导致上述应用程序闪退。
发明内容
本发明的主要目的在于提供一种防止系统服务进程重启的方法及装置、移动终端,旨在解决现有技术中由于系统服务进程重启带来的显示界面出现短暂黑屏及应用程序闪退的问题。
为实现上述目的,本发明第一方面提供一种防止系统服务进程重启的方法,该方法包括:
驱动层在接收到系统服务进程发送的传感器使能指令后,根据所述传感器使能指令使能相应的传感器;
若使能所述传感器失败,则所述驱动层根据预先保存的所述传感器的感应数据向所述系统服务进程上报感应数据,以防止所述系统服务进程重启。
为实现上述目的,本发明第二方面提供一种防止系统服务进程重启的装置,包括:
使能模块,用于在接收到系统服务进程发送的传感器使能指令后,根据所述传感器使能指令使能相应的传感器;
上报模块,用于若使能所述传感器失败,则根据预先保存的所述传感器的感应数据向所述系统服务进程上报感应数据,以防止所述系统服务进程重启。
为实现上述目的,本发明第三方面提供一种移动终端,包含上述第二方面中的防止系统服务进程重启的装置。
本发明提供一种防止系统服务进程重启的方法,在该方法中,驱动层在接收到系统服务进程发送的传感器使能指令后,根据该传感器使能指令使能相应的传感器,若使能传感器失败,则根据预先保存的该传感器的感应数据向系统服务进程上报感应数据。其中,在使能传感器失败时,即可确定该传感器出现故障,无法成功使能,在这种情况下,通过根据预先保存的传感器的感应数据向系统服务进程上报感应数据,使得能够避免系统服务进程因未接收到传感器上报的感应数据,而认为系统出现超时卡顿从而重启的问题,且进一步避免因系统服务进程重启带来的暂时黑屏及当前需要使能该传感器的应用程序闪退的问题,使得应用程序能够正常启动。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为一种移动终端的结构框图;
图2为本发明第一实施例中防止系统服务进程重启的方法的流程示意图;
图3为本发明第二实施例中防止系统服务进程重启的方法的流程示意图;
图4为本发明图2所示第一实施例中步骤201的细化步骤的流程示意图;
图5为本发明第三实施例中防止系统服务进程重启的装置的功能模块的示意图;
图6为本发明第四实施例中防止系统服务进程重启的装置的功能模块的示意图;
图7为本发明图5所示第三实施例中使能模块501的细化功能模块的示意图。
具体实施方式
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1示出了一种移动终端的结构框图。本发明实施例提供的防止系统服务进程重启的方法可应用于如图1所示的移动终端10中,移动终端10可以但不限于包括:需依靠电池维持正常运行且支持网络及下载功能的智能手机、笔记本、平板电脑、穿戴智能设备等。
如图1所示,移动终端10包括存储器101、存储控制器102,一个或多个(图中仅示出一个)处理器103、外设接口104、射频模块105、按键模块106、音频模块107以及触控屏幕108。这些组件通过一条或多条通讯总线/信号线109相互通讯。
可以理解,图1所示的结构仅为示意,其并不对移动终端的结构造成限定。移动终端10还可包括比图1所示更多或者更少的组件,或者具有与图1所示不同的配置。图1所示的各组件可以采用硬件、软件或其组合实现。
存储器101可用于存储软件程序以及模块,如本发明实施例中的防止系统服务进程重启的方法及装置、移动终端对应的程序指令/模块,处理器103通过运行存储在存储器101内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的防止系统服务进程重启的方法。
存储器101可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器101可进一步包括相对于处理器103远程设置的存储器,这些远程存储器可以通过网络连接至移动终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。处理器103以及其他可能的组件对存储器101的访问可在存储控制器102的控制下进行。
外设接口104将各种输入/输入装置耦合至CPU以及存储器101。处理器103运行存储器101内的各种软件、指令以执行移动终端10的各种功能以及进行数据处理。
在一些实施例中,外设接口104,处理器103以及存储控制器102可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。
射频模块105用于接收以及发送电磁波,实现电磁波与电信号的相互转换,从而与通讯网络或者其他设备进行通讯。射频模块105可包括各种现有的用于执行这些功能的电路元件,例如,天线、射频收发器、数字信号处理器、加密/解密芯片、用户身份模块(SIM)卡、存储器等等。射频模块105可与各种网络如互联网、企业内部网、预置类型的无线网络进行通讯或者通过预置类型的无线网络与其他设备进行通讯。上述的预置类型的无线网络可包括蜂窝式电话网、无线局域网或者城域网。上述的预置类型的无线网络可以使用各种通信标准、协议及技术,包括但并不限于全球移动通信系统(Global System for MobileCommunication,GSM),增强型移动通信技术(Enhanced Data GSM Environment,EDGE),宽带码分多址技术(Wideband Code Division Multiple Access,W-CDMA),码分多址技术(Code Division Access,CDMA),时分多址技术(Time Division Multiple Access,TDMA),蓝牙,无线保真技术(Wireless-Fidelity,WiFi)(如美国电气和电子工程师协会标准IEEE802.11a、IEEE 802.11b、IEEE802.11g和/或IEEE 802.11n),网络电话(Voice overInternet Protocal,VoIP),全球微波互联接入(Worldwide Interoperability forMicrowave Access,Wi-Max),其他用于邮件、即时通讯及短消息的协议,以及任何其他合适的通讯协议。
按键模块106提供用户向移动终端进行输入的接口,用户可以通过按下不同的按键以使移动终端10执行不同的功能。
音频模块107向用户提供音频接口,其可包括一个或多个麦克风、一个或者多个扬声器以及音频电路。音频电路从外设接口104处接收声音数据,将声音数据转换为电信息,将电信息传输至扬声器。扬声器将电信息转换为人耳能听到的声波。音频电路还从麦克风处接收电信息,将电信号转换为声音数据,并将声音数据传输至外设接口104中以进行进一步的处理。音频数据可以从存储器101处或者通过射频模块105获取。此外,音频数据也可以存储至存储器101中或者通过射频模块105进行发送。在一些实例中,音频模块107还可包括一个耳机播孔,用于向耳机或者其他设备提供音频接口。
触控屏幕108在移动终端与用户之间同时提供一个输出及输入界面。具体地,触控屏幕108向用户显示视频输出,这些视频输出的内容可包括文字、图形、视频、及其任意组合。一些输出结果是对应于一些用户界面对象。触控屏幕108还接收用户的输入,例如用户的点击、滑动等手势操作,以便用户界面对象对这些用户的输入做出响应。检测用户输入的技术可以是基于电阻式、电容式或者其他任意可能的触控检测技术。触控屏幕108显示单元的具体实例包括但并不限于液晶显示器或发光聚合物显示器。
基于上述移动终端描述本发明实施例中防止系统服务进程重启的方法。
由于现有技术中,需要使用传感器的应用程序在启动时,将使能该传感器,若该传感器存在故障,则将导致系统服务进程重启,且系统服务进程重启将带来显示界面出现短暂黑屏及应用程序闪退的问题。
为了解决上述问题,本发明提出一种防止系统服务进程重启的方法,在使能传感器失败时,即可确定该传感器出现故障,无法成功使能,且通过根据预先保存的传感器的感应数据向系统服务进程上报感应数据,使得能够避免系统服务进程因未接收到传感器上报的感应数据,而认为系统出现超时卡顿从而重启的问题,且进一步避免因系统服务进程重启带来的暂时黑屏及当前需要使能该传感器的应用程序闪退的问题,使得应用程序能够正常启动。
请参阅图2,为本发明第一实施例中防止系统服务进程重启的方法的流程示意图,该方法包括:
步骤201、驱动层在接收到系统服务进程发送的传感器使能指令后,根据所述传感器使能指令使能相应的传感器;
在本发明实施例中,移动终端中可以安装多种不同的应用程序,且很多应用程序需要使用到移动终端内的传感器,例如:指南针应用程序需要使用到方向传感器。
其中,用户可以点击移动终端的显示界面上应用程序的图标,且移动终端在检测到用户对应用程序的图标的点击操作之后,将在应用层运行该应用程序的启动程序,以实现应用程序的启动。其中,在运行该应用程序的启动程序的过程中,应用层将确定该应用程序需要使能的传感器,并调用系统服务进程,将该待使能的传感器发送给该系统服务进程,系统服务进程在接收到该待使能的传感器之后,将调用驱动层,并向该驱动层发送传感器使能指令,且该传感器的使能指令中包含该待使能的传感器。
在本发明实施例中,驱动层在接收到该系统服务进程发送的传感器使能指令之后,将根据该传感器使能指令使能相应的传感器。
步骤202、若使能所述传感器失败,则所述驱动层根据预先保存的所述传感器的感应数据向所述系统服务进程上报感应数据,以防止所述系统服务进程重启。
在本发明实施例中,驱动层在使能传感器时,若该传感器未出现任何故障,则将使能成功,若该传感器出现故障,则将使能失败。
其中,若使能该传感器失败,则表示传感器出现故障,传感器出现故障之后,将无法向驱动层发送其感应到的数据,驱动层也就无法向系统服务进程上报感应数据,在这种情况下,系统服务进程在等待一段时间后若一直未接收到驱动层上报的感应数据,将认为系统存在超时卡顿的问题而自动进入重启程序,导致应用程序闪退及显示界面短暂黑屏的问题,为了避免该问题的出现,驱动层在确定使能传感器失败时,将根据预先保存的传感器的感应数据向系统服务进程上报感应数据,以假装传感器使能成功,使得系统服务进程能够按照正常的情况接收驱动层上报的感应数据,以避免系统服务进程重启。
在本发明实施例中,驱动层在接收到系统服务进程发送的传感器使能指令后,根据该传感器使能指令使能相应的传感器,其中,该传感器使能指令由系统服务进程在检测到应用程序启动时发送给驱动层,若使能传感器失败,则根据预先保存的该传感器的感应数据向系统服务进程上报感应数据。其中,在使能传感器失败时,即可确定该传感器出现故障,无法成功使能,且通过根据预先保存的传感器的感应数据向系统服务进程上报感应数据,使得能够避免系统服务进程因未接收到传感器上报的感应数据,而认为系统出现超时卡顿从而重启的问题,且进一步避免因系统服务进程重启带来的暂时黑屏及当前需要使能该传感器的应用程序闪退的问题,使得应用程序能够正常启动。
请参阅图3,为本发明第二实施例中防止系统服务进程重启的方法的流程示意图,该方法包括:
步骤301、驱动层在接收到系统服务进程发送的传感器使能指令后,根据所述传感器使能指令使能相应的传感器;
需要说明的是,本发明实施例中步骤301与图2所示第一实施例中的步骤201描述的内容相似,此处不做限定。
步骤302、接收所述传感器反馈的使能返回值;
步骤303、若所述使能返回值与预置的使能失败的返回值相同,则确定使能所述传感器失败。
步骤304、若使能所述传感器失败,则每间隔预置时长,采用轮询的方式从所述N组感应数据中读取一组感应数据并上报给所述系统服务进程,所述预置时长等于所述传感器正常上报感应数据的时间间隔。
需要说明的是,本发明实施例中,步骤304与图2所示第一实施例中的步骤202描述的内容相似,此处不做赘述。
在本发明实施例中,该驱动层在使能相应的传感器之后,该传感器将向驱动层反馈使能返回值,可以基于该使能返回值确定使能该传感器是成功还失败。其中,移动终端内已经预置各个传感器使能失败的返回值及使能成功的返回值,驱动层在接收到传感器反馈的使能返回值之后,将该使能返回值与预置的使能失败的返回值及使能成功的返回值进行比较,若该使能返回值与预置的使能成功的返回值相同,则表明使能该传感器成功,该传感器未出现故障,能够正常的向驱动层发送感应数据,以便驱动层将该感应数据上报系统服务进程。若该使能返回值与预置的使能失败的返回值相同,则表明使能该传感器失败,该传感器出现故障。
在本发明实施例中,为了应对传感器使能失败的情况,移动终端内预先保存了每种传感器的N组感应数据,该N为正整数,例如:加速度传感器、磁传感器、陀螺仪传感器等等,每种传感器可以预先保存10组感应数据,且该10组感应数据可以是移动终端在多种角度、姿态下的数据,即要求保存的多组感应数据之间存在差异。可以理解的是,对于不同的传感器,设置的感应数据的组数可以不同,例如,对于接近传感器值需要保存2组感应数据就可以了,因为接近传感器只有接近或者远离两种状态,因此,在实际应用中,可以根据具体的需要预先保存各种传感器的感应数据,此处不做限定。
在本发明实施例中,在确定使能传感器失败的情况下,驱动层将每间隔预置时长,采用轮询的方式从该传感器的N组感应数据中读取一组感应数据并上报给系统服务进程,以模拟传感器使能成功状态下上报数据的情形。其中,该预置时长等于传感器正常上报感应数据的时间间隔,例如,若传感器正常上报感应数据的时间间隔是2秒,则在该传感器使能失败的情况下,驱动层将每间隔2s读取一组感应数据,且是采用轮询的方式读取的,若该传感器有5组感应数据,分别为组1、组2、组3、组4、组5,则驱动层间隔2秒之后将读取组1的感应数据并上报给系统服务进程,再间隔2秒,读取组2的感应数据并上报给系统服务进程,再间隔2秒,读取组3的感应数据并上报系统服务进程,并以此类推,实现轮询,且在上一次读取组5的感应数据之后,这一次则将返回读取组1的感应数据并上报系统服务进程。
可以理解的是,应用程序在启动时,若其需要使能的传感器使能失败,将通过读取预置的感应数据并上报给系统服务进程时,以假装传感器使能成功,使得系统服务进程将不会重启,应用程序也将正常启动,然而由于驱动层上报的是预置的感应数据,而非传感器实际感应到的感应数据,因此,该应用程序在启动之后,需要使用到该传感器的功能将无法使用,且应用程序其他不需要使用到该传感器的功能可以正常使用,使得即使在应用程序需要使能的传感器使能失败的情况下,该应用程序还是能够正常启动,且可以使用不涉及该传感器的功能,避免因该传感器使能失败,带来的应用程序闪退导致该应用程序的所有功能都无法使用的问题。
在本发明实施例中,驱动层在确定使能传感器失败的情况下,将输出提示信息,该提示信息用于提示该传感器出现故障,具体的,驱动层将该提示信息输出给系统服务进程,系统服务进程在应用程序启动之后,将根据该提示信息输出至该应用程序运行的应用层,应用层将根据该提示信息输出相应的提示消息,例如在显示界面上显示文字提示信息,或者播放语音提示消息,以提示用户传感器出现故障。
在本发明实施例中,驱动层在接收到系统服务进程发送的传感器使能指令后,根据该传感器使能指令使能相应的传感器,接收该传感器反馈的使能返回值,在该使能返回值与预置的使能失败的返回值相同时,确定使能该传感器失败,驱动层将每间隔预置时长,采用轮询的方式从该传感器的N组感应数据中读取一组感应数据并上报给系统服务进程。通过在确定使能传感器失败的情况下,每间隔预置时长,上报一组感应数据给系统服务进程,使得系统服务进程将按照正常情况接收上报的感应数据,而不会因为长时间未接收到感应数据而重启,使得应用程序能够正常启动且系统服务进程也不会重启。
请参阅图4,为本发明图2所示第一实施例中步骤201的细化步骤的流程示意图,该步骤201的细化步骤包括:
步骤401、驱动层在接收到系统服务进程发送的传感器使能指令后,所述驱动层获取所述传感器使能指令中包含的待使能的传感器;
步骤402、所述驱动层调用所述传感器对应的使能函数,并利用所述使能函数使能所述传感器。
在本发明实施例中,由于系统服务进程发送的传感器使能指令中包含待使能的传感器,因此,驱动层在接收到系统服务进程发送的传感器使能指令之后,将从该传感器使能指令中获取待使能的传感器,且驱动层将调用该待使能的传感器对应的使能函数,并利用该使能函数使能传感器,以实现对传感器的使能。
在本发明实施例中,通过获取传感器使能指令中包含的待使能的传感器,并调用该待使能的传感器的对应的使能函数对传感器进行使能,使得驱动层能够有效的实现对传感器的使能操作。
请参阅图5,为本发明第三实施例中防止系统服务进程重启的装置的功能模块的示意图,该装置包括:使能模块501及上报模块502。
使能模块501,用于在接收到系统服务进程发送的传感器使能指令后,根据所述传感器使能指令使能相应的传感器;
需要说明的是,本发明实施例中防止服务进程重启的装置(以下简称为:装置)是驱动层中的部分装置。
在本发明实施例中,移动终端中可以安装多种不同的应用程序,且很多应用程序需要使用到移动终端内的传感器,例如:指南针应用程序需要使用到方向传感器。
其中,用户可以点击移动终端的显示界面上应用程序的图标,且移动终端在检测到用户对应用程序的图标的点击操作之后,将在应用层运行该应用程序的启动程序,以实现应用程序的启动。其中,在运行该应用程序的启动程序的过程中,应用层将确定该应用程序需要使能的传感器,并调用系统服务进程,将该待使能的传感器发送给该系统服务进程,系统服务进程在接收到该待使能的传感器之后,将调用驱动层,并向该驱动层发送传感器使能指令,且该传感器的使能指令中包含该待使能的传感器。
在本发明实施例中,在接收到该系统服务进程发送的传感器使能指令之后,使能模块501将根据该传感器使能指令使能相应的传感器。
上报模块502,用于若使能所述传感器失败,则根据预先保存的所述传感器的感应数据向所述系统服务进程上报感应数据,以防止所述系统服务进程重启。
在本发明实施例中,在使能传感器时,若该传感器未出现任何故障,则将使能成功,若该传感器出现故障,则将使能失败。
其中,若使能该传感器失败,则表示传感器出现故障,传感器出现故障之后,将无法向驱动层发送其感应到的数据,驱动层也就无法向系统服务进程上报感应数据,在这种情况下,系统服务进程在等待一段时间后若一直未接收到驱动层上报的感应数据,将认为系统存在超时卡顿的问题而自动进入重启程序,导致应用程序闪退及显示界面短暂黑屏的问题,为了避免该问题的出现,在确定使能传感器失败时,上报模块502将根据预先保存的传感器的感应数据向系统服务进程上报感应数据,以假装传感器使能成功,使得系统服务进程能够按照正常的情况接收驱动层上报的感应数据,以避免系统服务进程重启。
在本发明实施例中,驱动层在接收到系统服务进程发送的传感器使能指令后,装置中的使能模块501根据该传感器使能指令使能相应的传感器,其中,该传感器使能指令由系统服务进程在检测到应用程序启动时发送给驱动层,若使能传感器失败,则上报模块502根据预先保存的该传感器的感应数据向系统服务进程上报感应数据。其中,在使能传感器失败时,即可确定该传感器出现故障,无法成功使能,且通过根据预先保存的传感器的感应数据向系统服务进程上报感应数据,使得能够避免系统服务进程因未接收到传感器上报的感应数据,而认为系统出现超时卡顿从而重启的问题,且进一步避免因系统服务进程重启带来的暂时黑屏及当前需要使能该传感器的应用程序闪退的问题,使得应用程序能够正常启动。
请参阅图6,为本发明第四实施例中防止系统服务进程重启的装置的功能模块的示意图,该装置包括如图5所示第三实施例中使能模块501及上报模块502,且与图5所示第三实施例中描述的内容相似,此处不做赘述。
在本发明实施例中,装置还包括:
接收模块601,用于在所述使能模块501之后,接收所述传感器反馈的使能返回值;
确定模块602,用于若所述使能返回值与预置的使能失败的返回值相同,则确定使能所述传感器失败。
在本发明实施例中,已预先保存所述传感器的N组感应数据,N为正整数;
则所述上报模块502具体用于:
每间隔预置时长,采用轮询的方式从所述N组感应数据中读取一组感应数据并上报给所述系统服务进程,所述预置时长等于所述传感器正常上报感应数据的时间间隔。
在本发明实施例中,该装置还包括:
提示模块603,用于输出提示信息,所述提示信息用于提示所述传感器存在故障。
在本发明实施例中,该使能模块501在使能相应的传感器之后,该传感器将向装置反馈使能返回值,可以基于该使能返回值确定使能该传感器是成功还失败。其中,移动终端内已经预置各个传感器使能失败的返回值及使能成功的返回值,驱动层的装置中的接收模块601接收传感器反馈的使能返回值,在接收到传感器反馈的使能返回值之后,将该使能返回值与预置的使能失败的返回值及使能成功的返回值进行比较,若该使能返回值与预置的使能成功的返回值相同,则表明使能该传感器成功,该传感器未出现故障,能够正常的向驱动层发送感应数据,以便驱动层将该感应数据上报系统服务进程。若该使能返回值与预置的使能失败的返回值相同,则确定模块602确定使能该传感器失败,该传感器出现故障。
在本发明实施例中,为了应对传感器使能失败的情况,移动终端内预先保存了每种传感器的N组感应数据,该N为正整数,例如:加速度传感器、磁传感器、陀螺仪传感器等等,每种传感器可以预先保存10组感应数据,且该10组感应数据可以是移动终端在多种角度、姿态下的数据,即要求保存的多组感应数据之间存在差异。可以理解的是,对于不同的传感器,设置的感应数据的组数可以不同,例如,对于接近传感器值需要保存2组感应数据就可以了,因为接近传感器只有接近或者远离两种状态,因此,在实际应用中,可以根据具体的需要预先保存各种传感器的感应数据,此处不做限定。
在本发明实施例中,在确定使能传感器失败的情况下,上报模块502将每间隔预置时长,采用轮询的方式从该传感器的N组感应数据中读取一组感应数据并上报给系统服务进程,以模拟传感器使能成功状态下上报数据的情形。其中,该预置时长等于传感器正常上报感应数据的时间间隔,例如,若传感器正常上报感应数据的时间间隔是2秒,则在该传感器使能失败的情况下,驱动层将每间隔2s读取一组感应数据,且是采用轮询的方式读取的,若该传感器有5组感应数据,分别为组1、组2、组3、组4、组5,则驱动层间隔2秒之后将读取组1的感应数据并上报给系统服务进程,再间隔2秒,读取组2的感应数据并上报给系统服务进程,再间隔2秒,读取组3的感应数据并上报系统服务进程,并以此类推,实现轮询,且在上一次读取组5的感应数据之后,这一次则将返回读取组1的感应数据并上报系统服务进程。
可以理解的是,应用程序在启动时,若其需要使能的传感器使能失败,将通过读取预置的感应数据并上报给系统服务进程时,以假装传感器使能成功,使得系统服务进程将不会重启,应用程序也将正常启动,然而由于驱动层上报的是预置的感应数据,而非传感器实际感应到的感应数据,因此,该应用程序在启动之后,需要使用到该传感器的功能将无法使用,且应用程序其他不需要使用到该传感器的功能可以正常使用,使得即使在应用程序需要使能的传感器使能失败的情况下,该应用程序还是能够正常启动,且可以使用不涉及该传感器的功能,避免因该传感器使能失败,带来的应用程序闪退导致该应用程序的所有功能都无法使用的问题。
在本发明实施例中,装置在确定使能传感器失败的情况下,提示模块603将输出提示信息,该提示信息用于提示该传感器出现故障,具体的,提示模块603将该提示信息输出给系统服务进程,系统服务进程在应用程序启动之后,将根据该提示信息输出至该应用程序运行的应用层,应用层将根据该提示信息输出相应的提示消息,例如在显示界面上显示文字提示信息,或者播放语音提示消息,以提示用户传感器出现故障。
在本发明实施例中,装置在接收到系统服务进程发送的传感器使能指令后,使能模块501根据该传感器使能指令使能相应的传感器,并由接收模块601接收该传感器反馈的使能返回值,在该使能返回值与预置的使能失败的返回值相同时,确定模块602确定使能该传感器失败,上报模块502将每间隔预置时长,采用轮询的方式从该传感器的N组感应数据中读取一组感应数据并上报给系统服务进程。通过在确定使能传感器失败的情况下,每间隔预置时长,上报一组感应数据给系统服务进程,使得系统服务进程将按照正常情况接收上报的感应数据,而不会因为长时间未接收到感应数据而重启,使得应用程序能够正常启动且系统服务进程也不会重启。
请参阅图7,为本发明5所示第三实施例中使能模块501的细化功能模块的示意图,该使能模块501的细化功能模块包括:
获取模块701,用于在接收到系统服务进程发送的传感器使能指令后,获取所述传感器使能指令中包含的待使能的传感器;
调用使能模块702,用于调用所述传感器对应的使能函数,并利用所述使能函数使能所述传感器。
在本发明实施例中,由于系统服务进程发送的传感器使能指令中包含待使能的传感器,因此,装置在接收到系统服务进程发送的传感器使能指令之后,将由获取模块701从该传感器使能指令中获取待使能的传感器,且调用使能模块702将调用该待使能的传感器对应的使能函数,并利用该使能函数使能传感器,以实现对传感器的使能。
在本发明实施例中,通过获取传感器使能指令中包含的待使能的传感器,并调用该待使能的传感器的对应的使能函数对传感器进行使能,使得驱动层能够有效的实现对传感器的使能操作。
在本发明的第五实施例中提供一种移动终端,该移动终端包含如图5至图7任意一个实施例所描述的防止系统服务进程重启的装置。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本发明所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上为对本发明所提供的一种防止系统服务进程重启的方法及装置、移动终端的描述,对于本领域的技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本发明的限制。

Claims (9)

1.一种防止系统服务进程重启的方法,其特征在于,所述方法包括:
驱动层在接收到系统服务进程发送的传感器使能指令后,根据所述传感器使能指令使能相应的传感器;
若使能所述传感器失败,则所述驱动层每间隔预置时长,采用轮询的方式从已预先保存的所述传感器的N组感应数据中读取一组感应数据并上报给所述系统服务进程,以模拟传感器使能成功状态下上报数据的情形,其中,所述预置时长等于所述传感器正常上报感应数据的时间间隔。
2.根据权利要求1所述的方法,其特征在于,所述根据所述传感器使能指令使能相应的传感器的步骤之后还包括:
接收所述传感器反馈的使能返回值;
若所述使能返回值与预置的使能失败的返回值相同,则确定使能所述传感器失败。
3.根据权利要求1所述的方法,其特征在于,所述根据所述传感器使能指令使能相应的传感器的步骤包括:
所述驱动层获取所述传感器使能指令中包含的待使能的传感器;
所述驱动层调用所述传感器对应的使能函数,并利用所述使能函数使能所述传感器。
4.根据权利要求1至3任意一项所述的方法,其特征在于,所述方法还包括:
所述驱动层输出提示信息,所述提示信息用于提示所述传感器存在故障。
5.一种防止系统服务进程重启的装置,其特征在于,所述装置包括:
使能模块,用于在接收到系统服务进程发送的传感器使能指令后,根据所述传感器使能指令使能相应的传感器;
上报模块,用于若使能所述传感器失败,则每间隔预置时长,采用轮询的方式从已预先保存的所述传感器的N组感应数据中读取一组感应数据并上报给所述系统服务进程,以模拟传感器使能成功状态下上报数据的情形,其中,所述预置时长等于所述传感器正常上报感应数据的时间间隔。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括:
接收模块,用于在所述使能模块之后,接收所述传感器反馈的使能返回值;
确定模块,用于若所述使能返回值与预置的使能失败的返回值相同,则确定使能所述传感器失败。
7.根据权利要求5所述的装置,其特征在于,所述使能模块包括:
获取模块,用于在接收到系统服务进程发送的传感器使能指令后,获取所述传感器使能指令中包含的待使能的传感器;
调用使能模块,用于调用所述传感器对应的使能函数,并利用所述使能函数使能所述传感器。
8.根据权利要求5至7任意一项所述的装置,其特征在于,所述装置还包括:
提示模块,用于输出提示信息,所述提示信息用于提示所述传感器存在故障。
9.一种移动终端,其特征在于,所述移动终端包含如权利要求5至8任意一项所述的防止系统服务进程重启的装置。
CN201610814985.0A 2016-09-09 2016-09-09 防止系统服务进程重启的方法及装置、移动终端 Active CN106469080B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610814985.0A CN106469080B (zh) 2016-09-09 2016-09-09 防止系统服务进程重启的方法及装置、移动终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610814985.0A CN106469080B (zh) 2016-09-09 2016-09-09 防止系统服务进程重启的方法及装置、移动终端

Publications (2)

Publication Number Publication Date
CN106469080A CN106469080A (zh) 2017-03-01
CN106469080B true CN106469080B (zh) 2019-08-16

Family

ID=58230448

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610814985.0A Active CN106469080B (zh) 2016-09-09 2016-09-09 防止系统服务进程重启的方法及装置、移动终端

Country Status (1)

Country Link
CN (1) CN106469080B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109669360A (zh) * 2018-12-19 2019-04-23 南京遍宇联动科技有限公司 智能家居的工作方法及装置
CN111800810B (zh) * 2020-06-30 2022-09-13 展讯通信(上海)有限公司 智能设备及其wcn模块异常恢复的系统和方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104516796A (zh) * 2013-09-29 2015-04-15 中兴通讯股份有限公司 一种基于命令集的网元备份与恢复方法及装置
CN105824622A (zh) * 2016-03-11 2016-08-03 联想(北京)有限公司 数据处理方法及电子设备
CN105843712A (zh) * 2016-03-31 2016-08-10 联想(北京)有限公司 一种数据传输方法及电子设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104516796A (zh) * 2013-09-29 2015-04-15 中兴通讯股份有限公司 一种基于命令集的网元备份与恢复方法及装置
CN105824622A (zh) * 2016-03-11 2016-08-03 联想(北京)有限公司 数据处理方法及电子设备
CN105843712A (zh) * 2016-03-31 2016-08-10 联想(北京)有限公司 一种数据传输方法及电子设备

Also Published As

Publication number Publication date
CN106469080A (zh) 2017-03-01

Similar Documents

Publication Publication Date Title
CN105653486B (zh) 移动终端和其处理器的usb接口复用的方法
CN105653226B (zh) 信息显示方法及装置
CN111106907B (zh) 传输配置指示tci状态的指示方法及终端
US11800513B2 (en) Method of information transmission in unlicensed band, terminal, and network device
CN111246441B (zh) 蓝牙耳机与终端的连接方法、系统及存储介质
CN106406947B (zh) 防止系统服务进程重启的方法及装置、移动终端
CN105045639B (zh) 移动终端下载方法、装置及移动终端
CN110035556B (zh) 通信业务过程冲突的处理方法及终端
CN105100141B (zh) 多媒体内容网络分享方法、装置及系统
CN105718405B (zh) 移动终端和其处理器的usb接口复用的方法
CN106445314B (zh) 显示界面刷新方法及装置
CN109471742A (zh) 信息处理方法、装置、电子设备及可读存储介质
CN106375478B (zh) 一种移动终端数据的同步方法、装置及系统
CN105657656B (zh) 一种发射功率调整方法及用户设备
CN107360332A (zh) 通话状态显示方法、装置、移动终端及存储介质
CN106126377B (zh) 系统启动的方法及装置
WO2019076170A1 (zh) 非授权频段下的信息传输方法、网络设备及终端
CN105872980B (zh) 一种扫描无线网络信号的方法及装置
US11452081B2 (en) Spatial relationship determination method, terminal and base station
CN106254791A (zh) 摄像头的启动方法及移动终端
CN107608720A (zh) 应用角标的显示方法、装置、移动终端及存储介质
CN109951400A (zh) 终端的指令发送方法、装置、电子设备及可读存储介质
CN110572508B (zh) 通讯录同步方法、装置、存储介质及电子设备
CN106331258A (zh) 一种通话方法、装置及系统
CN106469080B (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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 523860 No. 18, Wu Sha Beach Road, Changan Town, Dongguan, Guangdong

Applicant after: OPPO Guangdong Mobile Communications Co., Ltd.

Address before: 523860 No. 18, Wu Sha Beach Road, Changan Town, Dongguan, Guangdong

Applicant before: Guangdong OPPO Mobile Communications Co., Ltd.

GR01 Patent grant
GR01 Patent grant