CN109683974A - 针对移动终端中应用后台服务进程的唤醒方法及相关设备 - Google Patents
针对移动终端中应用后台服务进程的唤醒方法及相关设备 Download PDFInfo
- Publication number
- CN109683974A CN109683974A CN201811602716.3A CN201811602716A CN109683974A CN 109683974 A CN109683974 A CN 109683974A CN 201811602716 A CN201811602716 A CN 201811602716A CN 109683974 A CN109683974 A CN 109683974A
- Authority
- CN
- China
- Prior art keywords
- party application
- application
- service process
- telephone
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4418—Suspend and resume; Hibernate and awake
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72484—User interfaces specially adapted for cordless or mobile telephones wherein functions are triggered by incoming communication events
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (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 (10)
1.一种针对移动终端中应用后台服务进程的唤醒方法,其特征在于,所述方法应用于第三方应用,其中,所述第三方应用具有电话接管服务,所述方法包括:
在所述移动终端的操作系统启动所述第三方应用的电话接管服务时,启动所述第三方应用的电话服务进程;
在创建所述电话服务进程的同时,唤醒所述第三方应用的后台服务进程。
2.根据权利要求1所述的方法,其特征在于,还包括:
在监测到所述后台服务进程成功启动时,生成针对所述电话服务进程的杀死指令,并根据所述杀死指令杀死所述电话服务进程,以使所述操作系统启动系统电话应用;
或者,所述电话服务进程执行自杀操作,以使所述操作系统启动系统电话应用。
3.根据权利要求2所述的方法,其特征在于,还包括:
在所述操作系统启动系统电话应用时,所述后台服务进程开启所述移动终端的摄像头;
将所述摄像头采集的视频数据流加载至与电话界面对应的悬浮窗口中;
调用加载后的所述悬浮窗口,以在所述移动终端的屏幕中展示呈现为透明主题的电话界面。
4.根据权利要求3所述的方法,其特征在于,还包括:
检测所述电话界面在所述屏幕中是否展示成功;
若展示失败,则调整所述悬浮窗口的布局参数;
若调整后所述电话界面在所述屏幕中仍然展示失败,则重新调整与所述悬浮窗口的布局参数,直至所述来电话界面在所述屏幕中展示成功。
5.根据权利要求4所述的方法,其特征在于,所述调整所述悬浮窗口的布局参数,包括:
调整用于控制所述悬浮窗口的展示优先级的属性的参数值;或者,调整用于控制所述悬浮窗口的展示条件的属性的参数值;或者,调整用于控制所述悬浮窗口的控件展示的属性的参数值。
6.根据权利要求2所述的方法,其特征在于,还包括:
在所述操作系统启动系统电话应用时,所述后台服务进程获取预先设置的三维模型;
在所述移动终端的屏幕中显示包括所述三维模型的电话界面;
获取所述移动终端的重力信息;
根据所述重力信息,控制所述电话界面中所述三维模型的显示效果。
7.根据权利要求6所述的方法,其特征在于,根据所述重力信息,控制所述电话界面中所述三维模型的显示效果,包括:
根据所述重力信息,控制所述电话界面中的所述三维模型进行旋转。
8.根据权利要求1至7中任一项所述的方法,其特征在于,在所述移动终端的操作系统启动所述第三方应用的电话接管服务之前,所述方法还包括:
在所述第三方应用被启动时,判断是否已将所述第三方应用设置为默认电话应用;
如果判断未将所述第三方应用设置为默认电话应用,则生成提示信息,其中,所述提示信息用于指示所述操作系统在接收到用户的授权指令时,将所述第三方应用设置为默认电话应用;
如果判断已将所述第三方应用设置为默认电话应用,则判断所述第三方应用是否被关闭;
若是,则向所述操作系统发送消息以通知所述操作系统杀死所述第三方应用的所有进程。
9.一种针对移动终端中应用后台服务进程的唤醒方法,其特征在于,所述方法应用于所述移动终端的操作系统,所述应用为第三方应用,所述第三方应用具有电话功能,所述方法包括:
在监听到来电或拨出号码时,从已安装第三方应用中获取已注册电话接管服务的目标第三方应用;
判断所述目标第三方应用是否为当前默认电话应用;
若是,则启动所述目标第三方应用的电话接管服务;
在所述目标第三方应用的电话接管服务成功启动时,向所述目标第三方应用发送回调函数,其中,所述回调函数用于指示所述目标第三方应用启动自身的电话服务进程,并在创建所述电话服务进程的同时,唤醒所述目标第三方应用的后台服务进程。
10.根据权利要求9所述的方法,其特征在于,还包括:
在监听到所述目标第三方应用的电话服务进程杀死时,启动系统电话应用。
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 true CN109683974A (zh) | 2019-04-26 |
CN109683974B 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) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110262838A (zh) * | 2019-06-14 | 2019-09-20 | 深圳乐信软件技术有限公司 | 一种程序崩溃的处理方法、装置、终端及存储介质 |
CN110515901A (zh) * | 2019-08-23 | 2019-11-29 | 掌阅科技股份有限公司 | 信息推送方法、计算设备及计算机存储介质 |
CN112653769A (zh) * | 2021-01-08 | 2021-04-13 | 青岛海尔科技有限公司 | 一种消息的推送方法及系统 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110173631A1 (en) * | 2008-02-01 | 2011-07-14 | Arimilli Ravi K | Wake-and-Go Mechanism for a Data Processing System |
US20140366042A1 (en) * | 2013-06-09 | 2014-12-11 | Apple Inc. | Initiating Background Updates Based on User Activity |
US20150005041A1 (en) * | 2013-06-26 | 2015-01-01 | Camp Mobile Corporation | Method and system for providing video multimedia ringtone |
CN105335171A (zh) * | 2014-06-24 | 2016-02-17 | 北京奇虎科技有限公司 | 应用程序常驻操作系统后台的方法及装置 |
CN105468409A (zh) * | 2015-11-20 | 2016-04-06 | 北京金山安全软件有限公司 | 一种应用程序关闭方法、装置及电子设备 |
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 | 广州久邦世纪科技有限公司 | 一种来电显示系统及其方法 |
-
2018
- 2018-12-26 CN CN201811602716.3A patent/CN109683974B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110173631A1 (en) * | 2008-02-01 | 2011-07-14 | Arimilli Ravi K | Wake-and-Go Mechanism for a Data Processing System |
US20140366042A1 (en) * | 2013-06-09 | 2014-12-11 | Apple Inc. | Initiating Background Updates Based on User Activity |
US20150005041A1 (en) * | 2013-06-26 | 2015-01-01 | Camp Mobile Corporation | Method and system for providing video multimedia ringtone |
CN105335171A (zh) * | 2014-06-24 | 2016-02-17 | 北京奇虎科技有限公司 | 应用程序常驻操作系统后台的方法及装置 |
CN105468409A (zh) * | 2015-11-20 | 2016-04-06 | 北京金山安全软件有限公司 | 一种应用程序关闭方法、装置及电子设备 |
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 | 广州久邦世纪科技有限公司 | 一种来电显示系统及其方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110262838A (zh) * | 2019-06-14 | 2019-09-20 | 深圳乐信软件技术有限公司 | 一种程序崩溃的处理方法、装置、终端及存储介质 |
CN110515901A (zh) * | 2019-08-23 | 2019-11-29 | 掌阅科技股份有限公司 | 信息推送方法、计算设备及计算机存储介质 |
CN110515901B (zh) * | 2019-08-23 | 2023-03-14 | 掌阅科技股份有限公司 | 信息推送方法、计算设备及计算机存储介质 |
CN112653769A (zh) * | 2021-01-08 | 2021-04-13 | 青岛海尔科技有限公司 | 一种消息的推送方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN109683974B (zh) | 2022-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109683974A (zh) | 针对移动终端中应用后台服务进程的唤醒方法及相关设备 | |
US9113183B2 (en) | System and method for updating user availability for wireless communication applications | |
US20230022194A1 (en) | Distinguishing real from virtual objects in immersive reality | |
JP3685938B2 (ja) | 通信支援方法及び通信支援システム | |
US20110014932A1 (en) | Mobile Telephony Combining Voice and Ancillary Information | |
CN106233718A (zh) | 显示视频通话数据 | |
US20120098918A1 (en) | Video analytics as a trigger for video communications | |
US9041763B2 (en) | Method for establishing video conference | |
AU2016209940A1 (en) | Personal emergency triggering, notification and communication for smartwatches | |
US20120297305A1 (en) | Presenting or sharing state in presence | |
CN108632633A (zh) | 一种网络直播的数据处理方法和装置 | |
CN1870933A (zh) | 具有远程报警能力的心脏监视器 | |
US8599236B2 (en) | Utilizing a video image from a video communication session as contact information | |
CN106060263A (zh) | 一种处理来电的方法及终端 | |
US8953750B2 (en) | Communications via a media content device | |
CN108055404B (zh) | 通知提醒方法、装置、终端及存储介质 | |
CN102497600A (zh) | 网络视频终端待机状态呼叫提醒方法、终端及服务器 | |
CN112134788B (zh) | 事件处理方法、装置、存储介质、移动终端及电脑 | |
CN103905442B (zh) | 一种数据同步中的唤醒方法及装置 | |
CN105159676B (zh) | 进度条的加载方法、装置和系统 | |
CN110650253B (zh) | 彩铃的自适应播放方法、终端设备、服务器及存储介质 | |
CN113873270A (zh) | 一种游戏直播方法、装置、系统、电子设备及存储介质 | |
WO2016095604A1 (zh) | 通话时的信息推送方法、装置和存储介质 | |
CN106210278A (zh) | 一种屏幕控制的方法及终端 | |
CN109348057A (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 |