CN109683974B - 针对移动终端中应用后台服务进程的唤醒方法及相关设备 - Google Patents

针对移动终端中应用后台服务进程的唤醒方法及相关设备 Download PDF

Info

Publication number
CN109683974B
CN109683974B CN201811602716.3A CN201811602716A CN109683974B CN 109683974 B CN109683974 B CN 109683974B CN 201811602716 A CN201811602716 A CN 201811602716A CN 109683974 B CN109683974 B CN 109683974B
Authority
CN
China
Prior art keywords
telephone
party application
application
service process
mobile terminal
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
CN201811602716.3A
Other languages
English (en)
Other versions
CN109683974A (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.)
Beijing Kingsoft Internet Security Software Co Ltd
Original Assignee
Beijing Kingsoft Internet Security Software Co 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 Beijing Kingsoft Internet Security Software Co Ltd filed Critical Beijing Kingsoft Internet Security Software Co Ltd
Priority to CN201811602716.3A priority Critical patent/CN109683974B/zh
Publication of CN109683974A publication Critical patent/CN109683974A/zh
Application granted granted Critical
Publication of CN109683974B publication Critical patent/CN109683974B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/4401Bootstrapping
    • G06F9/4418Suspend and resume; Hibernate and awake
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72484User interfaces specially adapted for cordless or mobile telephones wherein functions are triggered by incoming communication events
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Telephone Function (AREA)

Abstract

本发明公开了一种针对移动终端中应用后台服务进程的唤醒方法,该方法可应用于第三方应用,其中,第三方应用具有电话接管服务,该方法包括:在移动终端的操作系统启动第三方应用的电话接管服务时,启动第三方应用的电话服务进程;在创建电话服务进程的同时,唤醒第三方应用的后台服务进程。该方法可以解决在安卓高版本系统上,在应用程序退出后也能够保证该应用后台服务进程存活的问题。

Description

针对移动终端中应用后台服务进程的唤醒方法及相关设备
技术领域
本发明涉及移动终端控制领域,尤其涉及一种针对移动终端中应用后台服务进程的唤醒方法、装置、系统、移动终端和计算机可读存储介质。
背景技术
目前,在移动终端上很多时候需要以下一种场景:应用程序退出后也能够有一个后台服务进程存在,用以处理消息推送和网络请求,或监听系统状态等;所以需要一种能够保证应用后台服务进程存活的解决方案。
但是,目前大部分的移动终端系统对应用后台服务进程的管理十分严格,应用程序退出后即杀死所有此应用的所有进程;虽然目前市面上已经出现了众多保活技术方案,但在安卓Android OS高版本系统上基本都已失效。因此,如何在安卓高版本系统上,在应用程序退出后也能够保证该应用后台服务进程存活,已经成为亟待解决的技术问题。
发明内容
本发明的目的旨在至少在一定程度上解决上述的技术问题之一。
为此,本发明的第一个目的在于提出一种针对移动终端中应用后台服务进程的唤醒方法。该方法可以解决在安卓高版本系统上,在应用程序退出后也能够保证该应用后台服务进程存活的问题。
本发明的第二个目的在于提出另一种针对移动终端中应用后台服务进程的唤醒方法。
本发明的第三个目的在于提出一种针对移动终端中应用后台服务进程的唤醒装置。
本发明的第四个目的在于提出另一种针对移动终端中应用后台服务进程的唤醒装置。
本发明的第五个目的在于提出一种针对移动终端中应用后台服务进程的唤醒系统。
本发明的第六个目的在于提出一种移动终端。
本发明的第七个目的在于提出一种计算机可读存储介质。
为达到上述目的,本发明第一方面实施例提出的针对移动终端中应用后台服务进程的唤醒方法,所述方法应用于第三方应用,其中,所述第三方应用具有电话接管服务,所述方法包括:
在所述移动终端的操作系统启动所述第三方应用的电话接管服务时,启动所述第三方应用的电话服务进程;
在创建所述电话服务进程的同时,唤醒所述第三方应用的后台服务进程。
根据本发明实施例的针对移动终端中应用后台服务进程的唤醒方法,在移动终端的操作系统启动第三方应用的电话接管服务时,启动第三方应用的电话服务进程,并在创建电话服务进程的同时,唤醒第三方应用的后台服务进程。即通过系统调用该第三方应用的电话接管服务以启动该第三方应用的电话服务进程的同时,启动该第三方应用的后台服务进程,从而完成了来电或拨号时拉活该第三方应用,解决了在安卓高版本系统上,在应用程序退出后也能够保证该应用后台服务进程存活的问题。由于用户每天拨号和来电是基本操作,而且频率较高,因此拉活应用后台服务进程的时机会更多,效率更好。
在本发明的一个实施例中,所述唤醒方法还包括:在监测到所述后台服务进程成功启动时,生成针对所述电话服务进程的杀死指令;根据所述杀死指令杀死所述电话服务进程,以使所述操作系统启动系统电话应用;或者,所述电话服务进程执行自杀操作,以使所述操作系统启动系统电话应用。
在本发明的一个实施例中,所述方法还包括:在所述操作系统启动系统电话应用时,所述后台服务进程开启所述移动终端的摄像头;将所述摄像头采集的视频数据流加载至与电话界面对应的悬浮窗口中;调用加载后的所述悬浮窗口,以在所述移动终端的屏幕中展示呈现为透明主题的电话界面。
在本发明的一个实施例中,所述方法还包括:检测所述电话界面在所述屏幕中是否展示成功;若展示失败,则调整所述悬浮窗口的布局参数;若调整后所述电话界面在所述屏幕中仍然展示失败,则重新调整与所述悬浮窗口的布局参数,直至所述来电话界面在所述屏幕中展示成功。
在本发明的一个实施例中,所述调整所述悬浮窗口的布局参数,包括:调整用于控制所述悬浮窗口的展示优先级的属性的参数值;或者,调整用于控制所述悬浮窗口的展示条件的属性的参数值;或者,调整用于控制所述悬浮窗口的控件展示的属性的参数值。
在本发明的一个实施例中,所述方法还包括:在所述操作系统启动系统电话应用时,所述后台服务进程获取预先设置的三维模型;在所述移动终端的屏幕中显示包括所述三维模型的电话界面;获取所述移动终端的重力信息;根据所述重力信息,控制所述电话界面中所述三维模型的显示效果。
在本发明的一个实施例中,根据所述重力信息,控制所述电话界面中所述三维模型的显示效果,包括:根据所述重力信息,控制所述电话界面中的所述三维模型进行旋转。
在本发明的一个实施例中,在所述移动终端的操作系统启动所述第三方应用的电话接管服务之前,所述方法还包括:在所述第三方应用被启动时,判断是否已将所述第三方应用设置为默认电话应用;如果判断未将所述第三方应用设置为默认电话应用,则生成提示信息,其中,所述提示信息用于指示所述操作系统在接收到用户的授权指令时,将所述第三方应用设置为默认电话应用;如果判断已将所述第三方应用设置为默认电话应用,则判断所述第三方应用是否被关闭;若是,则向所述操作系统发送消息以通知所述操作系统杀死所述第三方应用的所有进程。
为达到上述目的,本发明第二方面实施例提出的针对移动终端中应用后台服务进程的唤醒方法,所述方法应用于所述移动终端的操作系统,所述应用为第三方应用,所述第三方应用具有电话功能,所述方法包括:
在监听到来电或拨出号码时,从已安装第三方应用中获取已注册电话接管服务的目标第三方应用;
判断所述目标第三方应用是否为当前默认电话应用;
若是,则启动所述目标第三方应用的电话接管服务;
在所述目标第三方应用的电话接管服务成功启动时,向所述目标第三方应用发送回调函数,其中,所述回调函数用于指示所述目标第三方应用启动自身的电话服务进程,并在创建所述电话服务进程的同时,唤醒所述目标第三方应用的后台服务进程。
根据本发明实施例的针对移动终端中应用后台服务进程的唤醒方法,在监听到来电或拨出号码时,从已安装第三方应用中获取已注册电话接管服务的目标第三方应用,并判断该目标第三方应用是否为当前默认电话应用,若是,则启动该目标第三方应用的电话接管服务,并在该目标第三方应用的电话接管服务成功启动时,向该目标第三方应用发送回调函数,其中,该回调函数用于指示该目标第三方应用启动自身的电话服务进程,并在创建该电话服务进程的同时,唤醒该目标第三方应用的后台服务进程。即通过系统调用该第三方应用的电话接管服务以启动该第三方应用的电话服务进程的同时,启动该第三方应用的后台服务进程,从而完成了来电或拨号时拉活该第三方应用,解决了在安卓高版本系统上,在应用程序退出后也能够保证该应用后台服务进程存活的问题。由于用户每天拨号和来电是基本操作,而且频率较高,因此拉活应用后台服务进程的时机会更多,效率更好。
在本发明的一个实施例中,所述唤醒方法还包括:在监听到所述目标第三方应用的电话服务进程杀死时,启动系统电话应用。
为达到上述目的,本发明第三方面实施例提出的针对移动终端中应用后台服务进程的唤醒装置,所述装置应用于第三方应用,其中,所述第三方应用具有电话接管服务,所述装置包括:
电话服务进程启动模块,用于在所述移动终端的操作系统启动所述第三方应用的电话接管服务时,启动所述第三方应用的电话服务进程;
后台服务进程唤醒模块,用于在创建所述电话服务进程的同时,唤醒所述第三方应用的后台服务进程。
根据本发明实施例的针对移动终端中应用后台服务进程的唤醒装置,可通过电话服务进程启动模块在移动终端的操作系统启动第三方应用的电话接管服务时,启动第三方应用的电话服务进程,后台服务进程唤醒模块在创建电话服务进程的同时,唤醒第三方应用的后台服务进程。即通过系统调用该第三方应用的电话接管服务以启动该第三方应用的电话服务进程的同时,启动该第三方应用的后台服务进程,从而完成了来电或拨号时拉活该第三方应用,解决了在安卓高版本系统上,在应用程序退出后也能够保证该应用后台服务进程存活的问题。由于用户每天拨号和来电是基本操作,而且频率较高,因此拉活应用后台服务进程的时机会更多,效率更好。
在本发明的一个实施例中,所述唤醒装置还包括:电话服务进程杀死模块,用于在监测到所述后台服务进程成功启动时,生成针对所述电话服务进程的杀死指令,并根据所述杀死指令杀死所述电话服务进程,以使所述操作系统启动系统电话应用。
在本发明的一个实施例中,所述唤醒装置还包括:提示授权模块,用于在所述第三方应用被启动时,判断是否已将所述第三方应用设置为默认电话应用,如果判断未将所述第三方应用设置为默认电话应用,则生成提示信息,其中,所述提示信息用于指示所述操作系统在接收到用户的授权指令时,将所述第三方应用设置为默认电话应用;消息发送模块,用于在判断已将所述第三方应用设置为默认电话应用时,判断所述第三方应用是否被关闭,若是,则向所述操作系统发送消息以通知所述操作系统杀死所述第三方应用的所有进程。
为达到上述目的,本发明第四方面实施例提出的针对移动终端中应用后台服务进程的唤醒装置,所述装置应用于所述移动终端的操作系统,所述应用为第三方应用,所述第三方应用具有电话功能,所述装置包括:
获取模块,用于在监听到来电或拨出号码时,从已安装第三方应用中获取已注册电话接管服务的目标第三方应用;
判断模块,用于判断所述目标第三方应用是否为当前默认电话应用;
服务启动模块,用于在判断所述目标第三方应用为当前默认电话应用时,启动所述目标第三方应用的电话接管服务;
回调函数发送模块,用于在所述目标第三方应用的电话接管服务成功启动时,向所述目标第三方应用发送回调函数,其中,所述回调函数用于指示所述目标第三方应用启动自身的电话服务进程,并在创建所述电话服务进程的同时,唤醒所述目标第三方应用的后台服务进程。
根据本发明实施例的针对移动终端中应用后台服务进程的唤醒装置,可通过获取模块在监听到来电或拨出号码时,从已安装第三方应用中获取已注册电话接管服务的目标第三方应用,判断模块判断该目标第三方应用是否为当前默认电话应用,若是,服务启动模块则启动该目标第三方应用的电话接管服务,回调函数发送模块在该目标第三方应用的电话接管服务成功启动时,向该目标第三方应用发送回调函数,其中,该回调函数用于指示该目标第三方应用启动自身的电话服务进程,并在创建该电话服务进程的同时,唤醒该目标第三方应用的后台服务进程。即通过系统调用该第三方应用的电话接管服务以启动该第三方应用的电话服务进程的同时,启动该第三方应用的后台服务进程,从而完成了来电或拨号时拉活该第三方应用,解决了在安卓高版本系统上,在应用程序退出后也能够保证该应用后台服务进程存活的问题。由于用户每天拨号和来电是基本操作,而且频率较高,因此拉活应用后台服务进程的时机会更多,效率更好。
在本发明的一个实施例中,所述唤醒装置还包括:系统电话应用启动模块,用于在监听到所述目标第三方应用的电话服务进程杀死时,启动系统电话应用。
为达到上述目的,本发明第五方面实施例提出的针对移动终端中应用后台服务进程的唤醒系统,包括:移动终端的操作系统和第三方应用,其中,
所述操作系统,用于在监听到来电或拨出号码时,获取已注册电话接管服务的第三方应用,并判断所述第三方应用是否为当前默认电话应用,并在判断所述第三方应用为当前默认电话应用时,启动所述第三方应用的电话接管服务,并在所述第三方应用的电话接管服务成功启动时,向所述第三方应用发送回调函数;
所述第三方应用,用于根据所述回调函数确定出所述操作系统启动所述第三方应用的电话接管服务,启动所述第三方应用的电话服务进程,并在创建所述电话服务进程的同时,唤醒所述第三方应用的后台服务进程。
根据本发明实施例的针对移动终端中应用后台服务进程的唤醒系统,可通过操作系统在监听到来电或拨出号码时,获取已注册电话接管服务的第三方应用,并判断该第三方应用是否为当前默认电话应用,若是,则启动该第三方应用的电话接管服务,并在该第三方应用的电话接管服务成功启动时,向该第三方应用发送回调函数,第三方应用根据该回调函数确定出该操作系统启动第三方应用的电话接管服务,启动第三方应用的电话服务进程,并在创建该电话服务进程的同时,唤醒第三方应用的后台服务进程。即通过系统调用该第三方应用的电话接管服务以启动该第三方应用的电话服务进程的同时,启动该第三方应用的后台服务进程,从而完成了来电或拨号时拉活该第三方应用,解决了在安卓高版本系统上,在应用程序退出后也能够保证该应用后台服务进程存活的问题。由于用户每天拨号和来电是基本操作,而且频率较高,因此拉活应用后台服务进程的时机会更多,效率更好。
在本发明的一个实施例中,所述第三方应用,还用于在监测到所述后台服务进程成功启动时,生成针对所述电话服务进程的杀死指令,并根据所述杀死指令杀死所述电话服务进程;或者,所述电话服务进程执行自杀操作;所述操作系统,还用于在监听到所述第三方应用的电话服务进程杀死时,启动系统电话应用。
在本发明的一个实施例中,所述第三方应用还用于:在所述操作系统启动系统电话应用时,所述后台服务进程开启所述移动终端的摄像头;将所述摄像头采集的视频数据流加载至与电话界面对应的悬浮窗口中;调用加载后的所述悬浮窗口,以在所述移动终端的屏幕中展示呈现为透明主题的电话界面。
在本发明的一个实施例中,所述第三方应用还用于:检测所述电话界面在所述屏幕中是否展示成功;若展示失败,则调整所述悬浮窗口的布局参数;若调整后所述电话界面在所述屏幕中仍然展示失败,则重新调整与所述悬浮窗口的布局参数,直至所述来电话界面在所述屏幕中展示成功。
在本发明的一个实施例中,所述第三方应用具体用于:调整用于控制所述悬浮窗口的展示优先级的属性的参数值;或者,调整用于控制所述悬浮窗口的展示条件的属性的参数值;或者,调整用于控制所述悬浮窗口的控件展示的属性的参数值。
在本发明的一个实施例中,所述第三方应用还用于:在所述操作系统启动系统电话应用时,所述后台服务进程获取预先设置的三维模型;在所述移动终端的屏幕中显示包括所述三维模型的电话界面;获取所述移动终端的重力信息;根据所述重力信息,控制所述电话界面中所述三维模型的显示效果。
在本发明的一个实施例中,所述第三方应用具体用于:
根据所述重力信息,控制所述电话界面中的所述三维模型进行旋转。
为达到上述目的,本发明第六方面实施例提出的移动终端,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现本发明第一方面实施例所述的针对移动终端中应用后台服务进程的唤醒方法。
为达到上述目的,本发明第七方面实施例提出的计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本发明第一方面实施例所述的针对移动终端中应用后台服务进程的唤醒方法。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1是根据本发明一个实施例的针对移动终端中应用后台服务进程的唤醒方法的流程图;
图2是根据本发明一个实施例的针对移动终端中应用后台服务进程的唤醒方法的流程图;
图3是根据本发明另一个实施例的针对移动终端中应用后台服务进程的唤醒方法的流程图;
图4是根据本发明另一个实施例的针对移动终端中应用后台服务进程的唤醒装置的结构示意图;
图5是根据本发明一个实施例的针对移动终端中应用后台服务进程的唤醒系统的结构示意图;
图6是根据本发明一个实施例的移动终端的结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
下面参考附图描述本发明实施例的针对移动终端中应用后台服务进程的唤醒方法、装置、系统、移动终端和计算机可读存储介质。
图1是根据本发明一个实施例的针对移动终端中应用后台服务进程的唤醒方法的流程图。需要说明的是,本发明实施例的针对移动终端中应用后台服务进程的唤醒方法可应用于第三方应用,其中,该第三方应用具有电话接管服务。需要说明的是,所述电话接管服务可理解为可接管系统电话的服务。
也就是说,为了可以实现本发明实施例,首先需要在第三方应用内注册可接管系统电话的服务(如安卓系统中的InCallServiceImpl服务),并将该电话接管服务写入到该应用的配置文件中,使得该第三方应用具有电话接管服务,并在该第三方应用中提示用户开启相关权限,并将该当前应用设置为默认电话应用。其中,默认电话应用可理解为:系统来电时会查找默认电话应用,它是可以修改为系统电话应用,也可以修改为第三方任意的可支持电话接管服务的应用。
如图1所示,该针对移动终端中应用后台服务进程的唤醒方法可以包括:
S110,在移动终端的操作系统启动第三方应用的电话接管服务时,启动该第三方应用的电话服务进程。
需要说明的是,本发明实施例的操作系统可为安卓(Android)操作系统。作为一种示例,该操作系统的版本可为Android高版本,例如,Android 6.0及以上版本。
在本发明的实施例中,操作系统可对移动终端进行监听,当用户来电话或拨出号码时,操作系统会监听到该来电或拨出号码,之后,可从已安装的第三方应用中查找已注册电话接管服务的应用包名,并根据查到的应用包名判断该应用包名对应的第三方应用是否为当前默认电话应用,如果判断该查到的应用包名对应的第三方应用不是当前默认电话应用,则启动系统电话应用的相关服务,该系统电话应用即为系统原生的电话应用;如果判断该查到的应用包名对应的第三方应用是当前默认电话应用,则启动该第三方应用的电话接管服务,并向该第三方应用发送回调函数,以告知该第三方应用其电话接管服务被系统调用了。
第三方应用在接收到该回调函数时即可确定出该操作系统启动了该第三方应用的电话接管服务,此时,第三方应用可启动自身的电话服务进程。其中,在本发明的实施例中,该电话服务进程可以是在该第三方应用中的一个独立的进程,当系统来电时可启动该进程,杀死后对该第三方应用的其他进程不造成影响。
S120,在创建该电话服务进程的同时,唤醒该第三方应用的后台服务进程。
可选地,在第三方应用程序的电话服务进程启动后,可以在该电话服务进程创建的同时就可以唤醒该第三方应用的后台服务进程,使得该第三方应用的后台服务进程处于激活状态。由此,即使该第三方应用退出被关闭所有的进程,只要在操作系统启动该第三方应用的电话接管服务时,通过启动该第三方应用的电话服务进程的同时,唤醒该第三方应用的后台服务进程,从而实现了针对安卓高版本系统上,即使应用程序退出后也能够保证该应用的后台服务进程存活。由于用户每天拨号和来电是基本操作,而且频率较高,因此拉活应用后台服务进程的时机会更多,效率更好。
为了提升用户的使用体验,避免对用户的日常生活体验造成影响,可选地,在本发明的一个实施例中,在监测到该后台服务进程成功启动时,可生成针对该电话服务进程的杀死指令,并根据该杀死指令杀死该电话服务进程,以使操作系统启动系统电话应用;或者,该电话服务进程执行自杀操作,以使操作系统启动系统电话应用。可以理解,由于第三方应用的电话服务进程替换了系统电话应用,所以在来电或拨号后系统的电话界面则不再出现,会对用户的日常生活体验造成影响,为了避免该影响,在第三方应用的后台服务进程启动后,杀死该第三方应用已注册的电话服务进程,这样,操作系统在监听到与第三方应用的连接断开时,会主动再次启动系统电话应用,此时系统的来电或拨号界面即可正常显示,从而完成了来电或拨号时拉活该第三方应用,且对用户来说是无感知的,即实现透明拉活的目的。
为了给用户带来电话界面(即来电界面或去电界面)的不同效果展现,提升用户视觉体验,可选地,在本发明的一个实施例中,在操作系统启动系统电话应用时,所述后台服务进程可开启移动终端的摄像头,并将该摄像头采集的视频数据流加载至与电话界面对应的悬浮窗口中,并调用加载后的所述悬浮窗口,以在所述移动终端的屏幕中展示呈现为透明主题的电话界面。
在本实施例中,在操作系统启动系统电话应用时,可以开启移动终端的前置摄像头,也可以开启移动终端的后置摄像头,但并不以此为限。
其中,在本发明的实施例中,当通过所述第三方应用的电话接管服务触发来电事件时,电话界面为来电界面;当触发号码拨出事件时,电话界面为去电界面。电话界面是通过调用悬浮窗口得到的。为了使电话界面呈现为透明主题的界面,则需要在悬浮窗口添加一个视图,利用该视图来承载摄像头所采集的视频数据流,当在移动终端的屏幕中显示电话界面时,给用户感觉该电话界面为透明主题的界面。
以安卓系统为例,利用窗口管理(Window Manager)对象可以在移动终端的屏幕中显示一个悬浮窗口。其中,窗口管理(Window Manager)对象主要包括三个接口函数addViewremoveView和updateViewLayout。通过addView往悬浮窗口添加视图;通过removeView往悬浮窗口移除指定视图,通过updateViewLayout更新悬浮窗口中指定视图的布局参数。
例如,以电话界面为来电显示界面显示为透明主题的界面时,则通过addView往悬浮窗口添加一个TextureView控件,通过TextureView控件承载摄像头所采集的视频数据流,用户从移动终端的屏幕中看到的是透明主题的来电显示界面。
TextureView控件是一个用于承载显示“数据流”的View(视图),如摄像头(Camera)采集的视频数据流和从本地或网络解析出来的实时的视频数据流。关于TextureView控件承载视频数据流的更多介绍详见相关技术。
其中,需要说明的是,来电显示界面还可以显示更多的控件,例如,在来电显示界面上显示来电手机号码、号码归属地、接听控件、挂断控件等。例如,通过addView往悬浮窗口添加多个视图,利用多个视图分别承载来电手机号码、号码归属地、接听控件、挂断控件等,以在来电显示界面上显示来电手机号码、号码归属地、接听控件、挂断控件等。关于在来电显示界面中显示来电手机号码、号码归属地、接听控件、挂断控件等的更多介绍详见相关技术,此处不再赘述。
其中,作为一种示例性的实施方式,在移动终端中显示来电显示界面之后,如果检测到用户对来电显示界面进行挂断操作时,比如,用户触发来电界面上的挂断控件,则调用移动终端的操作系统中的挂断接口挂断来电并退出来电显示界面。
作为另一种示例性的实施方式,在移动终端中显示来电显示界面之后,如果检测到用户对来电显示界面进行接听操作时,比如,用户触发来电显示界面上的接听控件,则通过移动终端中的接听处理函数处理来电。
为了进一步提升用户体验,使得电话界面可以适配各种机型的移动设备,兼容各种系统、各种不同版本的系统、各种不同硬件配置的移动终端设备,可选地,在本发明的一个实施例中,检测所述电话界面在所述屏幕中是否展示成功,若展示失败,则调整所述悬浮窗口的布局参数;若调整后所述电话界面在所述屏幕中仍然展示失败,则重新调整与所述悬浮窗口的布局参数,直至所述来电话界面在所述屏幕中展示成功。
本实施例中,当检测到电话界面在移动终端的屏幕中展示成功时,说明电话界面适配移动终端设备的屏幕。当检测到电话界面在移动终端的屏幕中展示失败时,说明电话界面不适配移动终端的屏幕,这时需要对电话界面进行调整,直至电话界面适配移动终端的屏幕。
本实施例中,通过调用与电话界面对应的悬浮窗口在移动终端的屏幕中展示电话界面,当展示失败时,通过调整与电话界面对应的悬浮窗口的布局参数来实现调整电话界面,进而实现电话界面适配移动终端的屏幕。
具体地,当检测到电话界面在移动终端中展示失败时,调整与电话界面对应的悬浮窗口的布局参数,并重新在移动终端的屏幕中展示电话界面;若调整后电话界面在移动终端的屏幕中仍然展示失败,则重新调整所述悬浮窗口的布局参数,直至电话界面在移动终端的屏幕中展示成功。
本实施例中,在第一次展示电话界面之前,需要初始化与电话界面对应的悬浮窗口,配置悬浮窗口的布局参数,当电话界面展示失败,启动重试机制,不断调整悬浮窗口的布局参数,直至电话界面展示成功。
本实施例中,当电话界面展示失败时,主要是调整用于控制悬浮窗口的展示优先级的属性的参数值、用于控制悬浮窗口的展示条件的属性的参数值、调整用于控制悬浮窗口的控件展示的属性的参数值。
以安卓系统为例,悬浮窗口的基本属性有type属性、flags属性、systemVisibility属性,
通过调整type属性的参数值可以调整悬浮窗口的展示优先级,通过调整flags属性的参数值可以调整悬浮窗口的展示条件,通过调整systemVisibility属性的参数值可以调整悬浮窗口的控件是否要展示。
其中,type属性用于控制悬浮窗口展示的优先级,优先级越高,则悬浮窗口展示在移动终端的屏幕的越上层。type属性的参数值主要有以下几种:
当type属性的参数值为TYPE_SYSTEM_ALERT时,表示系统提示,悬浮窗口总是出现在应用程序窗口之上。
当type属性的参数值为TYPE_SYSTEM_OVERLAY时,表示系统顶层窗口,显示在其它一切内容上。此窗口不能>获得输入焦点,否则会影响锁屏。
当type属性的参数值为TYPE_SYSTEM_ERROR时,表示系统内部错误提示,显示在所有内容之上。
当type属性的参数值为TYPE_PHONE时,表示电话窗口,用于电话交互(特别是呼入)。显示在所有应用程序>之上,状态栏之下。
当type属性的参数值为TYPE_TOAST:Toast窗口,主要用于展示Toast。
其中,flags属性用于决定一些展示条件,例如是否锁屏时展示,是否可以获取焦点,是否保持屏幕常亮等等。flags属性的属性参数主要有以下几种:
当flags属性的参数值为FLAG_DISMISS_KEYGUARD,表示隐藏键盘。
当flags属性的参数值为FLAG_TURN_SCREEN_ON,表示唤醒屏幕。
当flags属性的参数值为FLAG_SHOW_WHEN_LOCKED,表示锁屏时也可展示。
当flags属性的参数值为FLAG_KEEP_SCREEN_ON,表示屏幕常亮。
当flags属性的参数值为FLAG_HARDWARE_ACCELERATED,表示开启硬件加速。
其中,systemVisibility属性用于决定悬浮窗口的控件是否要展示,例如,展示的悬浮窗口时是否要全屏,是否隐藏系统状态栏、导航栏等。systemVisibility属性的参数值主要有以下几种:
当systemVisibility属性的参数值为SYSTEM_UI_FLAG_FULLSCREEN,表示状态栏隐藏。
当systemVisibility属性的参数值为SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN,表示视图延伸至状态栏区域,状态栏上浮于视图之上。
当systemVisibility属性的参数值为SYSTEM_UI_FLAG_HIDE_NAVIGATION,表示隐藏导航栏。
当systemVisibility属性的参数值为SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION,表示视图延伸至导航栏区域,导航栏上浮于视图之上。
当systemVisibility属性的参数值为SYSTEM_UI_FLAG_IMMERSIV,表示沉浸模式,隐藏状态栏和导航栏,并且在第一次会弹泡提醒,并且在状态栏区域滑动可以呼出状态栏。
关于安卓系统的悬浮窗口的基本属性更多介绍详见相关技术,在此不在赘述。
例如,当type属性设置为TYPE_SYSTEM_ERROR时,某些机型的移动终端在展示电话界面的时候就会发生崩溃,当捕捉到这个崩溃时,尝试将type属性重新设置为TYPE_APPLICATION_OVERLAY或者TYPE_SYSTEM_ALERT或者TYPE_TOAST,再次去展示电话界面,尝试是否能展示成功。
以追求手机屏幕正上方为极致边框而出现的刘海屏手机为例,对某些刘海屏手机,在展示电话界面时,来电视频无法延伸至状态栏区域,尝试重新设置flags属性以进行状态栏适配,再次去展示电话界面,尝试是否能展示成功。
例如,某些带虚拟导航键的手机在展示电话界面时状态栏和导航栏会有异常情况,尝试重新设置systemVisibility属性以适配该手机,再次去展示电话界面,尝试是否能展示成功。
由此,可以实现当电话界面展示失败,启动重试机制,不断调整悬浮窗口的布局参数,直至电话界面展示成功,进而使得电话界面可以适配各种机型的移动设备,兼容各种系统、各种不同版本的系统、各种不同硬件配置的移动终端设备,提高了用户体验。
为了进一步提升用户体验,满足用户与电话界面进行交互的个性化需求,可选地,在本发明的一个实施例中,在所述操作系统启动系统电话应用时,所述后台服务进程可获取预先设置的三维模型,并在所述移动终端的屏幕中显示包括所述三维模型的电话界面,并获取所述移动终端的重力信息,以及根据所述重力信息,控制所述电话界面中所述三维模型的显示效果。其中,需要说明的是,三维模型可以是用户根据需求在移动终端中预先设置的。
其中,需要说明的是,在使用移动终端的过程中,移动终端可为用户提供多种三维模型,用户可根据需求选择对应的三维模型,并将对应的三维模型设置为默认来电秀,也可以根据需求将对应三维模型设置为对应联系人的来电秀,以满足用户为对应联系人设置个性化来电秀的需求。
作为一种示例性的实施方式,在用户将对应三维模型设置为默认来电秀时,移动终端在接收到来电事件时,将直接获取预先设置的三维模型。此时,移动终端所接收到的所有来电,所对应的三维模型均是相同的。
作为另一种示例性的实施方式,在用户为移动终端的预设联系人设置三维模型的来电秀时,在监听到来电事件时,还可获取来电事件的电话号码,并获取与该电话号码对应的三维模型。
本实施例中,电话界面是通过调用悬浮窗口得到的。为了使电话界面呈现为包括三维模型的电话界面,则可将三维模型添加悬浮窗中。
其中,重力信息可以包括倾斜角度。具体地,在移动终端的屏幕中显示包括三维模型的电话界面后,用户可通过摇晃移动终端的方式来实现对电话界面的三维模型进行互动。
其中,电话界面中的三维模型将随着用户的晃动而改变展示位置和展示角度,呈现出一种三维效果。
作为一种示例性的实施方式,在用户摇晃移动终端的过程中,可通过移动终端中的重力传感器可以获知移动终端的倾斜角度,然后,根据倾斜角度,对三维模型的展示角度和展示位置做出相应的调整,从而使得电话界面中的三维模型的展示角度和位置,可随着用户对移动终端晃动而相应地改变,满足了用户与电话界面进行交互的个性化需求,提高了用户的体验度。
其中,需要理解的是,在不同应用场景下,根据重力信息,控制电话界面中三维模型的显示效果也是不同的,举例说明如下:
作为一种示例性的实施方式,可根据重力信息,控制电话界面中的三维模型进行旋转。
其中,需要说明的是,三维模型可以包括预设虚拟对象和预设虚拟对象的周围背景。
其中,虚拟对象可以包括但不限于动物、花、建筑物等,该实施对此不作限定。
具体而言,可根据移动终端的偏转角度,确定三维模型的旋转角度,然后,根据旋转角度控制三维模型进行旋转。
其中,在控制电话界面中三维模型进行旋转的过程中,可控制三维模型中仅预设虚拟对象旋转,其对应的周围背景不旋转,也可以控制三维模型中的虚拟对象和其对应的周围背景一起旋转,该实施例对此不作限定。
例如,当手机晃动时,手机内置的重力传感器,可计算出手机偏移的角度,根据该角度和配置文件及时对预设对象的展示角度和位置做出相应的调整,呈现出一种3D的效果。
作为另一种示例性的实施方式,可根据重力信息,控制电话界面中的三维模型随着重力信息所指示的倾斜角度倾斜对应的角度。
需要说明的是,在本发明的一个实施例中,在移动终端的操作系统启动该第三方应用的电话接管服务之前,该唤醒方法还可包括:在该第三方应用被启动时,判断是否已将该第三方应用设置为默认电话应用,如果判断未将该第三方应用设置为默认电话应用,则生成提示信息,其中,该提示信息用于指示该操作系统在接收到用户的授权指令时,将该第三方应用设置为默认电话应用;如果判断已将该第三方应用设置为默认电话应用,则判断该第三方应用是否被关闭;若是,则向该操作系统发送消息以通知该操作系统杀死该第三方应用的所有进程。
也就是说,在该第三方应用被启动时,可判断是否已将该第三方应用设置为默认电话应用,若否,则在该第三方应用中提供将该第三方应用设置为默认电话应用的提示,以使得操作系统可以根据用户的确认指令将该第三方应用设置为默认电话应用,这样,在系统监听到来电或拨出号码时,系统可调用该第三方应用的电话接管服务。如果判断已经将该第三方应用设置为默认电话应用,并判断该第三方应用被关闭时,可通知操作系统杀死该第三方应用的所有进程,由此,如果系统将退出的应用程序的所有进程全部杀死,则可在系统监听到来电或拨出号码时,通过系统调用该第三方应用的电话接管服务以启动该第三方应用的电话服务进程的同时,启动该第三方应用的后台服务进程,从而完成了来电或拨号时拉活该第三方应用。
根据本发明实施例的针对移动终端中应用后台服务进程的唤醒方法,在移动终端的操作系统启动第三方应用的电话接管服务时,启动第三方应用的电话服务进程,并在创建电话服务进程的同时,唤醒第三方应用的后台服务进程。即通过系统调用该第三方应用的电话接管服务以启动该第三方应用的电话服务进程的同时,启动该第三方应用的后台服务进程,从而完成了来电或拨号时拉活该第三方应用,解决了在安卓高版本系统上,在应用程序退出后也能够保证该应用后台服务进程存活的问题。由于用户每天拨号和来电是基本操作,而且频率较高,因此拉活应用后台服务进程的时机会更多,效率更好。
与上述几种实施例提供的针对移动终端中应用后台服务进程的唤醒方法相对应,本发明的一种实施例还提供一种针对移动终端中应用后台服务进程的唤醒装置,由于本发明实施例提供的针对移动终端中应用后台服务进程的唤醒装置与上述几种实施例提供的针对移动终端中应用后台服务进程的唤醒方法相对应,因此在前述针对移动终端中应用后台服务进程的唤醒方法的实施方式也适用于本实施例提供的针对移动终端中应用后台服务进程的唤醒装置,在本实施例中不再详细描述。图2是根据本发明一个实施例的针对移动终端中应用后台服务进程的唤醒装置的结构示意图。需要说明的是,本发明实施例的针对移动终端中应用后台服务进程的唤醒装置可应用于第三方应用,其中,该第三方应用具有电话接管服务。
如图2所示,该针对移动终端中应用后台服务进程的唤醒装置200可以包括:电话服务进程启动模块210和后台服务进程唤醒模块220。
具体地,电话服务进程启动模块210用于在该移动终端的操作系统启动该第三方应用的电话接管服务时,启动该第三方应用的电话服务进程。
后台服务进程唤醒模块220用于在创建该电话服务进程的同时,唤醒该第三方应用的后台服务进程。
为了提升用户的使用体验,避免对用户的日常生活体验造成影响,可选地,在本发明的一个实施例中,该唤醒装置还可包括:电话服务进程杀死模块。其中,该电话服务进程杀死模块可用于在监测到所述后台服务进程成功启动时,生成针对所述电话服务进程的杀死指令,并根据所述杀死指令杀死所述电话服务进程,以使所述操作系统启动系统电话应用。
需要说明的是,在本发明的一个实施例中,该唤醒装置还可包括:提示授权模块和消息发送模块。其中,提示授权模块,用于在所述第三方应用被启动时,判断是否已将所述第三方应用设置为默认电话应用,如果判断未将所述第三方应用设置为默认电话应用,则生成提示信息,其中,所述提示信息用于指示所述操作系统在接收到用户的授权指令时,将所述第三方应用设置为默认电话应用;消息发送模块,用于在判断已将所述第三方应用设置为默认电话应用时,判断所述第三方应用是否被关闭,若是,则向所述操作系统发送消息以通知所述操作系统杀死所述第三方应用的所有进程。
根据本发明实施例的针对移动终端中应用后台服务进程的唤醒装置,可通过电话服务进程启动模块在移动终端的操作系统启动第三方应用的电话接管服务时,启动第三方应用的电话服务进程,后台服务进程唤醒模块在创建电话服务进程的同时,唤醒第三方应用的后台服务进程。即通过系统调用该第三方应用的电话接管服务以启动该第三方应用的电话服务进程的同时,启动该第三方应用的后台服务进程,从而完成了来电或拨号时拉活该第三方应用,解决了在安卓高版本系统上,在应用程序退出后也能够保证该应用后台服务进程存活的问题。由于用户每天拨号和来电是基本操作,而且频率较高,因此拉活应用后台服务进程的时机会更多,效率更好。
为了实现上述实施例,本发明还提出了另一种针对移动终端中应用后台服务进程的唤醒方法。
图3是根据本发明另一个实施例的针对移动终端中应用后台服务进程的唤醒方法的流程图。需要说明的是,本发明实施例的针对移动终端中应用后台服务进程的唤醒方法可应用于移动终端的操作系统,所述应用为第三方应用,该第三方应用具有电话功能。
也就是说,为了可以实现本发明实施例,首先需要在第三方应用内注册可接管系统电话的服务(如安卓系统中的InCallServiceImpl服务),并将该电话接管服务写入到该应用的配置文件中,使得该第三方应用具有电话接管服务,并在该第三方应用中提示用户开启相关权限,并将该当前应用设置为默认电话应用。其中,默认电话应用可理解为:系统来电时会查找默认电话应用,它是可以修改为系统电话应用,也可以修改为第三方任意的可支持电话接管服务的应用。
还需要说明的是,本发明实施例的操作系统可为安卓(Android)操作系统。作为一种示例,该操作系统的版本可为Android高版本,例如,Android 6.0及以上版本。
如图3所示,该针对移动终端中应用后台服务进程的唤醒方法可以包括:
S310,在监听到来电或拨出号码时,从已安装第三方应用中获取已注册电话接管服务的目标第三方应用。
在本发明的实施例中,操作系统可对移动终端进行监听,当用户来电话或拨出号码时,操作系统会监听到该来电或拨出号码,之后,可从已安装的第三方应用中查找已注册电话接管服务的应用包名,从而根据该应用包名即可得到已注册电话接管服务的目标第三方应用。
S320,判断该目标第三方应用是否为当前默认电话应用。
S330,若是,则启动该目标第三方应用的电话接管服务。
S340,在该目标第三方应用的电话接管服务成功启动时,向该目标第三方应用发送回调函数,其中,该回调函数用于指示该目标第三方应用启动自身的电话服务进程,并在创建该电话服务进程的同时,唤醒该目标第三方应用的后台服务进程。
需要说明的是,在本发明的一个实施例中,如果判断该目标第三方应用不是当前默认电话应用,则操作系统可启动系统电话应用。
为了提升用户的使用体验,避免对用户的日常生活体验造成影响,可选地,在本发明的一个实施例中,在监听到该目标第三方应用的电话服务进程杀死时,启动系统电话应用。可以理解,由于第三方应用的电话服务进程替换了系统电话应用,所以在来电或拨号后系统的来电界面则不再出现,会对用户的日常生活体验造成影响,为了避免该影响,在第三方应用的后台服务进程启动后,杀死该第三方应用已注册的电话服务进程,这样,操作系统在监听到与第三方应用的连接断开时,会主动再次启动系统电话应用,此时系统的来电或拨号界面即可正常显示,从而完成了来电或拨号时拉活该第三方应用,且对用户来说是无感知的,即实现透明拉活的目的。
根据本发明实施例的针对移动终端中应用后台服务进程的唤醒方法,在监听到来电或拨出号码时,从已安装第三方应用中获取已注册电话接管服务的目标第三方应用,并判断该目标第三方应用是否为当前默认电话应用,若是,则启动该目标第三方应用的电话接管服务,并在该目标第三方应用的电话接管服务成功启动时,向该目标第三方应用发送回调函数,其中,该回调函数用于指示该目标第三方应用启动自身的电话服务进程,并在创建该电话服务进程的同时,唤醒该目标第三方应用的后台服务进程。即通过系统调用该第三方应用的电话接管服务以启动该第三方应用的电话服务进程的同时,启动该第三方应用的后台服务进程,从而完成了来电或拨号时拉活该第三方应用,解决了在安卓高版本系统上,在应用程序退出后也能够保证该应用后台服务进程存活的问题。由于用户每天拨号和来电是基本操作,而且频率较高,因此拉活应用后台服务进程的时机会更多,效率更好。
与上述几种实施例(图3所示的实施例)提供的针对移动终端中应用后台服务进程的唤醒方法相对应,本发明的一种实施例还提供一种针对移动终端中应用后台服务进程的唤醒装置,由于本发明实施例提供的针对移动终端中应用后台服务进程的唤醒装置与上述几种实施例(图3所示的实施例)提供的针对移动终端中应用后台服务进程的唤醒方法相对应,因此在前述针对移动终端中应用后台服务进程的唤醒方法的实施方式也适用于本实施例提供的针对移动终端中应用后台服务进程的唤醒装置,在本实施例中不再详细描述。图4是根据本发明另一个实施例的针对移动终端中应用后台服务进程的唤醒装置的结构示意图。需要说明的是,本发明实施例的针对移动终端中应用后台服务进程的唤醒装置可应用于移动终端的操作系统,所述应用为第三方应用,所述第三方应用具有电话功能。
如图4所示,该针对移动终端中应用后台服务进程的唤醒装置400可以包括:获取模块410、判断模块420、服务启动模块430和回调函数发送模块440。
具体地,获取模块410用于在监听到来电或拨出号码时,从已安装第三方应用中获取已注册电话接管服务的目标第三方应用。
判断模块420用于判断该目标第三方应用是否为当前默认电话应用。
服务启动模块430用于在判断该目标第三方应用为当前默认电话应用时,启动该目标第三方应用的电话接管服务。
回调函数发送模块440用于在该目标第三方应用的电话接管服务成功启动时,向该目标第三方应用发送回调函数,其中,该回调函数用于指示该目标第三方应用启动自身的电话服务进程,并在创建该电话服务进程的同时,唤醒该目标第三方应用的后台服务进程。
为了提升用户的使用体验,避免对用户的日常生活体验造成影响,可选地,在本发明的一个实施例中,所述唤醒装置还可包括:系统电话应用启动模块。其中,系统电话应用启动模块用于在监听到所述目标第三方应用的电话服务进程杀死时,启动系统电话应用。
根据本发明实施例的针对移动终端中应用后台服务进程的唤醒装置,可通过获取模块在监听到来电或拨出号码时,从已安装第三方应用中获取已注册电话接管服务的目标第三方应用,判断模块判断该目标第三方应用是否为当前默认电话应用,若是,服务启动模块则启动该目标第三方应用的电话接管服务,回调函数发送模块在该目标第三方应用的电话接管服务成功启动时,向该目标第三方应用发送回调函数,其中,该回调函数用于指示该目标第三方应用启动自身的电话服务进程,并在创建该电话服务进程的同时,唤醒该目标第三方应用的后台服务进程。即通过系统调用该第三方应用的电话接管服务以启动该第三方应用的电话服务进程的同时,启动该第三方应用的后台服务进程,从而完成了来电或拨号时拉活该第三方应用,解决了在安卓高版本系统上,在应用程序退出后也能够保证该应用后台服务进程存活的问题。由于用户每天拨号和来电是基本操作,而且频率较高,因此拉活应用后台服务进程的时机会更多,效率更好。
为了实现上述实施例,本发明还提出了一种针对移动终端中应用后台服务进程的唤醒系统。
图5是根据本发明一个实施例的针对移动终端中应用后台服务进程的唤醒系统的结构示意图。如图5所示,该针对移动终端中应用后台服务进程的唤醒系统500可以包括:移动终端的操作系统510和第三方应用520。需要说明的是,在本发明的实施例中,第三方应用520具有电话接管服务。需要说明的是,所述电话接管服务可理解为可接管系统电话的服务。操作系统可为安卓(Android)操作系统。作为一种示例,该操作系统的版本可为Android高版本,例如,Android 6.0及以上版本。
也就是说,为了可以实现本发明实施例,首先需要在第三方应用内注册可接管系统电话的服务(如安卓系统中的InCallServiceImpl服务),并将该电话接管服务写入到该应用的配置文件中,使得该第三方应用具有电话接管服务,并在该第三方应用中提示用户开启相关权限,并将该当前应用设置为默认电话应用。其中,默认电话应用可理解为:系统来电时会查找默认电话应用,它是可以修改为系统电话应用,也可以修改为第三方任意的可支持电话接管服务的应用。
具体地,操作系统510用于在监听到来电或拨出号码时,获取已注册电话接管服务的第三方应用520,并判断第三方应用520是否为当前默认电话应用,并在判断第三方应用520为当前默认电话应用时,启动第三方应用520的电话接管服务,并在第三方应用520的电话接管服务成功启动时,向第三方应用520发送回调函数;
第三方应用520用于根据该回调函数确定出该操作系统启动第三方应用520的电话接管服务,启动第三方应用520的电话服务进程,并在创建该电话服务进程的同时,唤醒第三方应用520的后台服务进程。
为了提升用户的使用体验,避免对用户的日常生活体验造成影响,可选地,在本发明的一个实施例中,第三方应用520还用于在监测到所述后台服务进程成功启动时,生成针对所述电话服务进程的杀死指令,并根据所述杀死指令杀死所述电话服务进程或者,所述电话服务进程执行自杀操作;操作系统510还用于在监听到第三方应用520的电话服务进程杀死时,启动系统电话应用。
为了给用户带来电话界面(即来电界面或去电界面)的不同效果展现,提升用户视觉体验,可选地,在本发明的一个实施例中,第三方应用520还用于:在所述操作系统启动系统电话应用时,所述后台服务进程开启所述移动终端的摄像头;将所述摄像头采集的视频数据流加载至与电话界面对应的悬浮窗口中;调用加载后的所述悬浮窗口,以在所述移动终端的屏幕中展示呈现为透明主题的电话界面。
在本发明的一个实施例中,第三方应用520还用于:检测所述电话界面在所述屏幕中是否展示成功;若展示失败,则调整所述悬浮窗口的布局参数;若调整后所述电话界面在所述屏幕中仍然展示失败,则重新调整与所述悬浮窗口的布局参数,直至所述来电话界面在所述屏幕中展示成功。
在本发明的一个实施例中,第三方应用520具体用于:调整用于控制所述悬浮窗口的展示优先级的属性的参数值;或者,调整用于控制所述悬浮窗口的展示条件的属性的参数值;或者,调整用于控制所述悬浮窗口的控件展示的属性的参数值。
为了进一步提升用户体验,满足用户与电话界面进行交互的个性化需求,可选地,在本发明的一个实施例中,第三方应用520还还用于:在所述操作系统启动系统电话应用时,所述后台服务进程获取预先设置的三维模型;在所述移动终端的屏幕中显示包括所述三维模型的电话界面;获取所述移动终端的重力信息;根据所述重力信息,控制所述电话界面中所述三维模型的显示效果。
在本发明的一个实施例中,第三方应用520具体用于:根据所述重力信息,控制所述电话界面中的所述三维模型进行旋转。
根据本发明实施例的针对移动终端中应用后台服务进程的唤醒系统,可通过操作系统在监听到来电或拨出号码时,获取已注册电话接管服务的第三方应用,并判断该第三方应用是否为当前默认电话应用,若是,则启动该第三方应用的电话接管服务,并在该第三方应用的电话接管服务成功启动时,向该第三方应用发送回调函数,第三方应用根据该回调函数确定出该操作系统启动第三方应用的电话接管服务,启动第三方应用的电话服务进程,并在创建该电话服务进程的同时,唤醒第三方应用的后台服务进程。即通过系统调用该第三方应用的电话接管服务以启动该第三方应用的电话服务进程的同时,启动该第三方应用的后台服务进程,从而完成了来电或拨号时拉活该第三方应用,解决了在安卓高版本系统上,在应用程序退出后也能够保证该应用后台服务进程存活的问题。由于用户每天拨号和来电是基本操作,而且频率较高,因此拉活应用后台服务进程的时机会更多,效率更好。
为了实现上述实施例,本发明还提出了一种移动终端。
图6是根据本发明一个实施例的移动终端的结构示意图。如图6所示,该移动终端600可以包括:存储器610、处理器620及存储在存储器610上并可在处理器620上运行的计算机程序630,处理器620执行计算机程序630时,实现本发明上述图1所示实施例所述的针对移动终端中应用后台服务进程的唤醒方法。
为了实现上述实施例,本发明还提出了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本发明上述图1所示实施例所述的针对移动终端中应用后台服务进程的唤醒方法。
在本发明的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (18)

1.一种针对移动终端中应用后台服务进程的唤醒方法,其特征在于,所述方法应用于第三方应用,其中,所述第三方应用具有电话接管服务,所述方法包括:
在所述移动终端的操作系统启动所述第三方应用的电话接管服务时,启动所述第三方应用的电话服务进程;
在创建所述电话服务进程的同时,唤醒所述第三方应用的后台服务进程;还包括:在监测到所述后台服务进程成功启动时,生成针对所述电话服务进程的杀死指令,并根据所述杀死指令杀死所述电话服务进程,以使所述操作系统启动系统电话应用,或者,所述电话服务进程执行自杀操作,以使所述操作系统启动系统电话应用。
2.根据权利要求1所述的方法,其特征在于,还包括:
在所述操作系统启动系统电话应用时,所述后台服务进程开启所述移动终端的摄像头;
将所述摄像头采集的视频数据流加载至与电话界面对应的悬浮窗口中;
调用加载后的所述悬浮窗口,以在所述移动终端的屏幕中展示呈现为透明主题的电话界面。
3.根据权利要求2所述的方法,其特征在于,还包括:
检测所述电话界面在所述屏幕中是否展示成功;
若展示失败,则调整所述悬浮窗口的布局参数;
若调整后所述电话界面在所述屏幕中仍然展示失败,则重新调整与所述悬浮窗口的布局参数,直至所述电话界面在所述屏幕中展示成功。
4.根据权利要求3所述的方法,其特征在于,所述调整所述悬浮窗口的布局参数,包括:
调整用于控制所述悬浮窗口的展示优先级的属性的参数值;或者,调整用于控制所述悬浮窗口的展示条件的属性的参数值;或者,调整用于控制所述悬浮窗口的控件展示的属性的参数值。
5.根据权利要求1所述的方法,其特征在于,还包括:
在所述操作系统启动系统电话应用时,所述后台服务进程获取预先设置的三维模型;
在所述移动终端的屏幕中显示包括所述三维模型的电话界面;
获取所述移动终端的重力信息;
根据所述重力信息,控制所述电话界面中所述三维模型的显示效果。
6.根据权利要求5所述的方法,其特征在于,根据所述重力信息,控制所述电话界面中所述三维模型的显示效果,包括:
根据所述重力信息,控制所述电话界面中的所述三维模型进行旋转。
7.根据权利要求1至6中任一项所述的方法,其特征在于,在所述移动终端的操作系统启动所述第三方应用的电话接管服务之前,所述方法还包括:
在所述第三方应用被启动时,判断是否已将所述第三方应用设置为默认电话应用;
如果判断未将所述第三方应用设置为默认电话应用,则生成提示信息,其中,所述提示信息用于指示所述操作系统在接收到用户的授权指令时,将所述第三方应用设置为默认电话应用;
如果判断已将所述第三方应用设置为默认电话应用,则判断所述第三方应用是否被关闭;
若是,则向所述操作系统发送消息以通知所述操作系统杀死所述第三方应用的所有进程。
8.一种针对移动终端中应用后台服务进程的唤醒方法,其特征在于,所述方法应用于所述移动终端的操作系统,所述应用为第三方应用,所述第三方应用具有电话功能,所述方法包括:
在监听到来电或拨出号码时,从已安装第三方应用中获取已注册电话接管服务的目标第三方应用;
判断所述目标第三方应用是否为当前默认电话应用;
若是,则启动所述目标第三方应用的电话接管服务;
在所述目标第三方应用的电话接管服务成功启动时,向所述目标第三方应用发送回调函数,其中,所述回调函数用于指示所述目标第三方应用启动自身的电话服务进程,并在创建所述电话服务进程的同时,唤醒所述目标第三方应用的后台服务进程;在监测到所述后台服务进程成功启动时,生成针对所述电话服务进程的杀死指令,或者,所述电话服务进程执行自杀操作,在监听到所述目标第三方应用的电话服务进程杀死时,启动系统电话应用。
9.一种针对移动终端中应用后台服务进程的唤醒装置,其特征在于,所述装置应用于第三方应用,其中,所述第三方应用具有电话接管服务,所述装置包括:
电话服务进程启动模块,用于在所述移动终端的操作系统启动所述第三方应用的电话接管服务时,启动所述第三方应用的电话服务进程;
后台服务进程唤醒模块,用于在创建所述电话服务进程的同时,唤醒所述第三方应用的后台服务进程;还包括:
电话服务进程杀死模块,其中,所述电话服务进程杀死模块用于在监测到所述后台服务进程成功启动时,生成针对所述电话服务进程的杀死指令,或者,所述电话服务进程执行自杀操作,在监听到所述第三方应用的电话服务进程杀死时,启动系统电话应用。
10.一种针对移动终端中应用后台服务进程的唤醒装置,其特征在于,所述装置应用于所述移动终端的操作系统,所述应用为第三方应用,所述第三方应用具有电话功能,所述装置包括:
获取模块,用于在监听到来电或拨出号码时,从已安装第三方应用中获取已注册电话接管服务的目标第三方应用;
判断模块,用于判断所述目标第三方应用是否为当前默认电话应用;
服务启动模块,用于在判断所述目标第三方应用为当前默认电话应用时,启动所述目标第三方应用的电话接管服务;
回调函数发送模块,用于在所述目标第三方应用的电话接管服务成功启动时,向所述目标第三方应用发送回调函数,其中,所述回调函数用于指示所述目标第三方应用启动自身的电话服务进程,并在创建所述电话服务进程的同时,唤醒所述目标第三方应用的后台服务进程;还包括:
杀死模块,其中,所述杀死模块用于在监测到所述后台服务进程成功启动时,生成针对所述电话服务进程的杀死指令,或者,所述电话服务进程执行自杀操作,在监听到所述目标第三方应用的电话服务进程杀死时,启动系统电话应用。
11.一种针对移动终端中应用后台服务进程的唤醒系统,其特征在于,包括:移动终端的操作系统和第三方应用,其中,
所述操作系统,用于在监听到来电或拨出号码时,获取已注册电话接管服务的第三方应用,并判断所述第三方应用是否为当前默认电话应用,并在判断所述第三方应用为当前默认电话应用时,启动所述第三方应用的电话接管服务,并在所述第三方应用的电话接管服务成功启动时,向所述第三方应用发送回调函数;
所述第三方应用,用于根据所述回调函数确定出所述操作系统启动所述第三方应用的电话接管服务,启动所述第三方应用的电话服务进程,并在创建所述电话服务进程的同时,唤醒所述第三方应用的后台服务进程;所述第三方应用,还用于在监测到所述后台服务进程成功启动时,生成针对所述电话服务进程的杀死指令,或者,所述电话服务进程执行自杀操作;所述操作系统,还用于在监听到所述第三方应用的电话服务进程杀死时,启动系统电话应用。
12.根据权利要求11所述的系统,其特征在于,所述第三方应用还用于:
在所述操作系统启动系统电话应用时,所述后台服务进程开启所述移动终端的摄像头;
将所述摄像头采集的视频数据流加载至与电话界面对应的悬浮窗口中;
调用加载后的所述悬浮窗口,以在所述移动终端的屏幕中展示呈现为透明主题的电话界面。
13.根据权利要求12所述的系统,其特征在于,所述第三方应用还用于:
检测所述电话界面在所述屏幕中是否展示成功;
若展示失败,则调整所述悬浮窗口的布局参数;
若调整后所述电话界面在所述屏幕中仍然展示失败,则重新调整与所述悬浮窗口的布局参数,直至所述电话界面在所述屏幕中展示成功。
14.根据权利要求13所述的系统,其特征在于,所述第三方应用具体用于:
调整用于控制所述悬浮窗口的展示优先级的属性的参数值;或者,调整用于控制所述悬浮窗口的展示条件的属性的参数值;或者,调整用于控制所述悬浮窗口的控件展示的属性的参数值。
15.根据权利要求11所述的系统,其特征在于,所述第三方应用还用于:
在所述操作系统启动系统电话应用时,所述后台服务进程获取预先设置的三维模型;
在所述移动终端的屏幕中显示包括所述三维模型的电话界面;
获取所述移动终端的重力信息;
根据所述重力信息,控制所述电话界面中所述三维模型的显示效果。
16.根据权利要求15所述的系统,其特征在于,所述第三方应用具体用于:
根据所述重力信息,控制所述电话界面中的所述三维模型进行旋转。
17.一种移动终端,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现根据权利要求1至7中任一项所述的针对移动终端中应用后台服务进程的唤醒方法。
18.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现根据权利要求1至7中任一项所述的针对移动终端中应用后台服务进程的唤醒方法。
CN201811602716.3A 2018-12-26 2018-12-26 针对移动终端中应用后台服务进程的唤醒方法及相关设备 Active CN109683974B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811602716.3A CN109683974B (zh) 2018-12-26 2018-12-26 针对移动终端中应用后台服务进程的唤醒方法及相关设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811602716.3A CN109683974B (zh) 2018-12-26 2018-12-26 针对移动终端中应用后台服务进程的唤醒方法及相关设备

Publications (2)

Publication Number Publication Date
CN109683974A CN109683974A (zh) 2019-04-26
CN109683974B true CN109683974B (zh) 2022-05-31

Family

ID=66189755

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811602716.3A Active CN109683974B (zh) 2018-12-26 2018-12-26 针对移动终端中应用后台服务进程的唤醒方法及相关设备

Country Status (1)

Country Link
CN (1) CN109683974B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110262838A (zh) * 2019-06-14 2019-09-20 深圳乐信软件技术有限公司 一种程序崩溃的处理方法、装置、终端及存储介质
CN110515901B (zh) * 2019-08-23 2023-03-14 掌阅科技股份有限公司 信息推送方法、计算设备及计算机存储介质
CN112653769A (zh) * 2021-01-08 2021-04-13 青岛海尔科技有限公司 一种消息的推送方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105335171A (zh) * 2014-06-24 2016-02-17 北京奇虎科技有限公司 应用程序常驻操作系统后台的方法及装置
CN106406678A (zh) * 2016-10-23 2017-02-15 惠州Tcl移动通信有限公司 一种移动终端图标动态显示的方法及系统
CN107704274A (zh) * 2017-08-24 2018-02-16 武汉斗鱼网络科技有限公司 用于安卓应用主进程唤醒的方法、存储介质、设备及系统
CN107831886A (zh) * 2017-11-21 2018-03-23 广东欧珀移动通信有限公司 关联启动应用的管控方法、装置、存储介质及智能终端
CN108111680A (zh) * 2017-12-18 2018-06-01 广州久邦世纪科技有限公司 一种来电显示系统及其方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8516484B2 (en) * 2008-02-01 2013-08-20 International Business Machines Corporation Wake-and-go mechanism for a data processing system
US10223156B2 (en) * 2013-06-09 2019-03-05 Apple Inc. Initiating background updates based on user activity
KR20150001881A (ko) * 2013-06-26 2015-01-07 캠프모바일 주식회사 동영상 멀티미디어 링톤을 제공하기 위한 방법 및 시스템
CN105468409A (zh) * 2015-11-20 2016-04-06 北京金山安全软件有限公司 一种应用程序关闭方法、装置及电子设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105335171A (zh) * 2014-06-24 2016-02-17 北京奇虎科技有限公司 应用程序常驻操作系统后台的方法及装置
CN106406678A (zh) * 2016-10-23 2017-02-15 惠州Tcl移动通信有限公司 一种移动终端图标动态显示的方法及系统
CN107704274A (zh) * 2017-08-24 2018-02-16 武汉斗鱼网络科技有限公司 用于安卓应用主进程唤醒的方法、存储介质、设备及系统
CN107831886A (zh) * 2017-11-21 2018-03-23 广东欧珀移动通信有限公司 关联启动应用的管控方法、装置、存储介质及智能终端
CN108111680A (zh) * 2017-12-18 2018-06-01 广州久邦世纪科技有限公司 一种来电显示系统及其方法

Also Published As

Publication number Publication date
CN109683974A (zh) 2019-04-26

Similar Documents

Publication Publication Date Title
CN109683974B (zh) 针对移动终端中应用后台服务进程的唤醒方法及相关设备
US10324707B2 (en) Method, apparatus, and computer-readable storage medium for upgrading a ZigBee device
CN111399709B (zh) 消息提醒方法、装置、电子设备和存储介质
CN107526494B (zh) 键盘显示方法、装置、终端及存储介质
KR101495257B1 (ko) 단말 아이콘 제어 방법 및 장치
WO2022007513A1 (zh) 一种视频投放方法、装置、设备及存储介质
US9800666B2 (en) Method and client terminal for remote assistance
EP3144809A1 (en) Method and apparatus for displaying multimedia information
CN105893129B (zh) 终端中应用程序的处理方法及装置
EP3073379A1 (en) Firmware recovery method, device and terminal
CN108900693B (zh) 窗口显示方法及装置
TW201209696A (en) Mobile terminal and method for controlling mobile terminal
CN102780816B (zh) 拍照的方法、装置及移动终端
KR20130105235A (ko) 중앙 집중식 애플리케이션 알림을 위한 방법 및 장치
US20170126423A1 (en) Method, apparatus and system for setting operating mode of device
JP2006277497A (ja) 表示制御方法および情報処理装置
EP2191685B1 (en) Device and method for preserving customized user settings when transitioning between mobile communication devices
CN109510898B (zh) 通话界面自定义方法、装置、设备和存储介质
CN112463237A (zh) 防烧屏方法、装置、设备及存储介质
CN110650253A (zh) 彩铃的自适应播放方法、终端设备、服务器及存储介质
CN107632835B (zh) 应用安装方法及装置
CN115129283A (zh) 屏幕显示的方法及装置、电子设备、计算机可读存储介质
CN113453219B (zh) 消息处理方法、装置、电子设备以及计算机可读存储介质
EP3276930B1 (en) Prompting method and apparatus
CN106155863A (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
GR01 Patent grant
GR01 Patent grant