CN105955779B - 进程关闭方法及装置 - Google Patents

进程关闭方法及装置 Download PDF

Info

Publication number
CN105955779B
CN105955779B CN201610285286.1A CN201610285286A CN105955779B CN 105955779 B CN105955779 B CN 105955779B CN 201610285286 A CN201610285286 A CN 201610285286A CN 105955779 B CN105955779 B CN 105955779B
Authority
CN
China
Prior art keywords
camera
application program
attribute value
needs
information
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
CN201610285286.1A
Other languages
English (en)
Other versions
CN105955779A (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.)
Shenzhen TCL Digital Technology Co Ltd
Original Assignee
Shenzhen TCL Digital Technology 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 Shenzhen TCL Digital Technology Co Ltd filed Critical Shenzhen TCL Digital Technology Co Ltd
Priority to CN201610285286.1A priority Critical patent/CN105955779B/zh
Priority to PCT/CN2016/096740 priority patent/WO2017190450A1/zh
Publication of CN105955779A publication Critical patent/CN105955779A/zh
Application granted granted Critical
Publication of CN105955779B publication Critical patent/CN105955779B/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
    • 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
    • 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/44594Unloading
    • 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种进程关闭方法,包括:在应用程序启动时,根据应用程序的信息确定所述应用程序是否需要使用所述摄像头;在所述应用程序需要使用摄像头时,获取所述摄像头的系统属性值;基于所述系统属性值判断所述摄像头是否被其他进程占用;在所述系统属性值为应用程序的进程号时,判定所述摄像头被其他进程占用,并通过所述框架层关闭当前占用所述摄像头的进程。本发明还公开了一种进程关闭装置。本发明实现了根据系统属性值通过框架层关闭占用摄像头的进程,能够在需要使用所述摄像头的应用程序启动时及时释放摄像头的资源,避免了在使用摄像头时造成冲突,提高了摄像头使用的便捷性。

Description

进程关闭方法及装置
技术领域
本发明涉及计算机技术领域,尤其涉及一种进程关闭方法及装置。
背景技术
Android系统因其开放性,允许任何设备厂商成为其开发者而得到了迅速的发展,目前已成为主流的操作系统之一,被广泛应用于手机、平板电脑、电视和相机等设备上。对用户而言,最大的收益则是拥有丰富的基于Android系统的软件资源可供选择。
与此同时,用户对使用应用程序时的体验要求越来越高,往往需要面对面的交流或者通过肢体动作发出指令,因此,在许多Android终端上越来越多的应用程序需要使用到摄像头进行照相、录像、视频通讯、手势识别等。例如,在Android智能电视上,通过即时通信软件可以实现视频通话、通过一些肢体动作来参与体感游戏等。
但是有些应用程序在退出了使用摄像头的界面后,在后台的进程中摄像头仍然处于被占用的状态,由于占用摄像头的进程没有及时关闭而造成摄像头的资源无法及时释放。
发明内容
本发明提供一种进程关闭方法及装置,旨在解决Android系统中由于占用摄像头的进程没有及时关闭而造成摄像头的资源无法及时释放的技术问题。
为实现上述目的,本发明提供的一种进程关闭方法,所述进程关闭方法包括以下步骤:
在应用程序启动时,根据应用程序的信息确定所述应用程序是否需要使用摄像头;
在所述应用程序需要使用所述摄像头时,获取所述摄像头的系统属性值;
基于所述系统属性值判断所述摄像头是否被其他进程占用;
在所述系统属性值为应用程序的进程号时,判定所述摄像头被其他进程占用,并通过所述框架层关闭当前占用所述摄像头的进程。
优选地,所述通过所述框架层关闭当前占用所述摄像头的进程的步骤之后,所述进程关闭方法还包括:
在应用程序启动完成后,接收到基于所述应用程序的摄像头启动请求时,通过所述框架层将所述摄像头分配给所述应用程序使用。
优选地,所述通过所述框架层将所述摄像头分配给所述应用程序使用的步骤之后,所述进程关闭方法还包括:
基于所述应用程序中占用所述摄像头进程的进程号通过所述框架层更新所述摄像头的系统属性值。
优选地,所述在应用程序启动时,根据应用程序的信息确定所述应用程序是否需要使用所述摄像头的步骤包括:
在应用程序启动时,获取预置的配置文件,其中,所述预置的配置文件包括终端中所有需要使用所述摄像头的应用程序的信息;
确定所述预置的配置文件是否包括启动的所述应用程序的信息,其中,在所述预置的配置文件包括启动的所述应用程序的信息时,判定所述应用程序需要使用所述摄像头。
优选地,所述进程关闭方法还包括:
在检测到所述终端安装需要使用摄像头的应用程序后,将安装的所述应用程序的信息添加进所述预置的配置文件中;或者,
在检测到所述终端卸载需要使用摄像头的应用程序后,从所述预置的配置文件中删除所述应用程序的信息。
此外,为实现上述目的,本发明还提供一种进程关闭装置,所述进程关闭装置包括:
确定模块,用于在应用程序启动时,根据应用程序的信息确定所述应用程序是否需要使用摄像头;
获取模块,用于在所述应用程序需要使用所述摄像头时,获取所述摄像头的系统属性值;
判断模块,用于基于所述系统属性值判断所述摄像头是否被其他进程占用;
关闭模块,用于在所述系统属性值为应用程序的进程号时,判定所述摄像头被其他进程占用,并通过所述框架层关闭当前占用所述摄像头的进程。
优选地,所述进程关闭装置还包括:
分配模块,用于在应用程序启动完成后,接收到基于所述应用程序的摄像头启动请求时,通过所述框架层将所述摄像头分配给所述应用程序使用。
优选地,所述进程关闭装置还包括:
更新模块,用于基于所述应用程序中占用所述摄像头进程的进程号通过所述框架层更新所述摄像头的系统属性值。
优选地,所述确定模块包括:
获取单元,用于在应用程序启动时,获取预置的配置文件,其中,所述预置的配置文件包括终端中所有需要使用所述摄像头的应用程序的信息;
确定单元,用于确定所述预置的配置文件是否包括启动的所述应用程序的信息,其中,在所述预置的配置文件包括启动的所述应用程序的信息时,判定所述应用程序需要使用所述摄像头。
优选地,所述进程关闭装置还包括:
添加模块,用于在检测到所述终端安装需要使用摄像头的应用程序后,将安装的所述应用程序的信息添加进所述预置的配置文件中;或者,
删除模块,用于在检测到所述终端卸载需要使用摄像头的应用程序后,从所述预置的配置文件中删除所述应用程序的信息。
本发明通过在应用程序启动时,根据应用程序的信息确定所述应用程序是否需要使用所述摄像头,接着在所述应用程序需要使用摄像头时,获取所述摄像头的系统属性值,而后基于所述系统属性值判断所述摄像头是否被其他进程占用,最后在所述系统属性值为应用程序的进程号时,判定所述摄像头被其他进程占用,而后通过所述框架层关闭当前占用所述摄像头的进程,实现了根据系统属性值通过框架层关闭占用摄像头的进程,能够在需要使用所述摄像头的应用程序启动时及时释放摄像头的资源,避免了由于应用程序没有及时释放摄像头的设备资源而导致其他应用程序不能正常使用摄像头的情况,进而避免了在使用摄像头时造成冲突,提高了摄像头使用的便捷性。
附图说明
图1为本发明进程关闭方法第一实施例的流程示意图;
图2为本发明进程关闭方法第二实施例中确定所述应用程序是否需要使用所述摄像头步骤的细化流程示意图;
图3为本发明进程关闭装置第一实施例的功能模块示意图;
图4为本发明进程关闭装置第二实施例中确定模块的细化功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供一种进程关闭方法。参照图1,图1为本发明进程关闭方法第一实施例的流程示意图。
在本实施例中,该进程关闭方法包括:
步骤S10,在应用程序启动时,根据应用程序的信息确定所述应用程序是否需要使用所述摄像头;
在本实施例中,可以在应用程序安装时,将需要使用摄像头的应用程序的信息存储在预置的配置文件中,在应用程序启动时,获取该预置的配置文件,判断预置的配置文件包该含应用程序的信息时,确定当前启动的应用程序需要使用摄像头,其中,应用程序的信息可以为应用程序的唯一标识,例如编号等。当然,也可以通过其他方式确定应用程序是否需要使用摄像头,譬如,获取当前正在启动的应用程序的具体信息,然后基于应用程序的具体信息确定应用程序是否需要使用摄像头,其中,该具体信息包括需要使用摄像头实现的功能信息等。
步骤S20,在所述应用程序需要使用所述摄像头时,获取所述摄像头的系统属性值;
本实施例中,Android系统的框架层framework的代码中包含摄像头的系统属性值,例如,可以在摄像头相关的framework的代码里面添加Android属性“com.tcl.camera.used”,通过该属性的属性值来标识摄像头被占用以及占用摄像头的进程,具体地,如果摄像头被占用,该属性值为占用摄像头的进程的标识ID,该ID为该应用程序的进程号PID,例如,在占用摄像头的进程为微信时,该进程号PID为672等,其中进程号与终端中应用程序的进程一一对应;如果摄像头未被占用,则该属性值可以设置为预设值,例如将该属性值设置为0。
步骤S30,基于所述系统属性值判断所述摄像头是否被其他进程占用;
本实施例中,基于所述系统属性值判断所述摄像头是否被其他进程占用具体是指:在获取到的系统属性值为预设值例如0时,判定所述摄像头未被其他进程占用,在获取到的系统属性值为应用程序的标识ID即应用程序的进程号时,判定所述摄像头正在被其他进程占用,且占用摄像头的进程的标识ID为获取到的系统属性值。
步骤S40,在所述系统属性值为应用程序的进程号时,判定所述摄像头被其他进程占用,并通过所述框架层关闭当前占用所述摄像头的进程。
在系统属性值为应用程序的进程号时,判定所述摄像头被其他进程占用,然后可以根据应用程序的ID即进程号通过框架层关闭当前占用摄像头的进程,进而释放终端的摄像头资源。具体地,通过所述框架执行一个脚本命令,该脚本命令会通过socket发送给系统后台运行的一个后门程序,而这个后门程序是专门来执行包含kill命令的系统命令,进而杀掉后台运行的占用摄像头的进程。
在通过框架层关闭当前占用摄像头的进程之后,即终端的摄像头资源释放完成时,通过框架层将系统属性值设置为预设值,该预设值表示摄像头当前未被其他进程占用,具体的,可以将系统属性值设置为0。
本实施例中进程关闭方法,完全在框架层进行动态处理,不需要修改当前占用摄像头的进程的代码即可释放摄像头的资源、解决摄像头冲突的问题,提高了摄像头资源释放的效率。
进一步地,在一实施例中,在步骤S40之后,该进程关闭方法还包括:在应用程序启动完成后,接收到基于所述应用程序的摄像头启动请求时,通过所述框架层将所述摄像头分配给所述应用程序使用。
本实施例中,在应用程序启动完成后,接收到基于所述应用程序的摄像头启动请求时,例如用户正在使用该应用程序中需要使用摄像头的功能时,通过框架层将摄像头分配给所述应用程序使用;由于在分配之前,摄像头未被任何应用程序占用,因此能够快速、准确地将摄像头分配给应用程序使用,进而能够避免该应用程序不能正常使用摄像头的情况,解决了多个应用程序同时占用摄像头时发生冲突的问题。
优选地,在将所述摄像头分配给所述应用程序使用的步骤之后,该进程关闭方法还包括:基于所述应用程序中占用所述摄像头进程的进程号通过所述框架层更新所述摄像头的系统属性值。
本实施例中,在通过框架层将摄像头分配给应用程序使用之后,框架层更新摄像头的系统属性值,具体地,框架层可以将系统属性值设置为应用程序的ID即进程号,实现了及时更新系统属性值,使得后续再次需要释放摄像头的资源时,能够准确的确定占用摄像头的进程。
本实施例中,通过在应用程序启动时,确定所述应用程序是否需要使用所述摄像头,接着在所述应用程序需要使用所述摄像头时,获取所述摄像头的系统属性值,而后基于所述系统属性值判断所述摄像头是否被其他进程占用,最后在系统属性值为应用程序的进程号时,判定所述摄像头被其他进程占用,而后通过所述框架层关闭当前占用所述摄像头的进程,实现了根据系统属性值通过框架层关闭占用摄像头的进程,能够在需要使用所述摄像头的应用程序启动时及时释放摄像头的资源,避免了由于应用程序没有及时释放摄像头的设备资源而导致其他应用程序不能正常使用摄像头的情况,进而避免了在使用摄像头时造成冲突,提高了摄像头使用的便捷性。
基于第一实施例提出本发明进程关闭方法的第二实施例,参照图2,在本实施例中,步骤S10包括:
步骤S11,在应用程序启动时,获取预置的配置文件,其中,所述预置的配置文件包括终端中所有需要使用所述摄像头的应用程序的信息;
Android系统的系统分区用于放置预置的应用程序、系统文件和用户界面等,数据分区用于放置用户的数据,如联系人信息和第三方应用程序等。而Android系统的框架层包含了编写核心服务时需要使用的框架,在Android系统启动过程中,框架层启动时会执行启动核心服务和获取预置的配置文件等操作。
在本实施例中,在应用程序启动时,从数据分区中获取预置的配置文件。在获取该预置的配置文件之前,还需要进行如下步骤:对于Android系统,在系统分区中添加配置文件作为预置的配置文件,该配置文件配置了预置应用程序中所有需要使用摄像头的应用程序的信息。当Android系统启动时,通过框架层检测数据分区是否存在所需的配置文件,如果没有,则从系统分区中拷贝一份到数据分区中。
在本实施例中,从数据分区中获取预置的配置文件,如果出现获取失败的情况,则从系统分区获取上述配置文件,同时,从系统分区中重新拷贝一份到数据分区中。这样,在Android系统恢复出厂设置时,系统分区中的上述预置的配置文件不会被用户清除掉,保证能够获取成功。在Android系统启动时,从数据分区获取上述配置了预置应用程序和第三方应用程序信息的配置文件,如果出现获取失败的情况,则从系统分区获取仅包含预置应用程序的配置文件,这样既可以解决预置应用程序和第三方应用程序同时需要占用摄像头时产生冲突的问题,也可以保证在Android系统恢复出厂设置时,系统分区中预置的配置文件不会被用户清除掉,仍然能够成功获取。
步骤S12,确定所述预置的配置文件是否包括启动的所述应用程序的信息,其中,在所述预置的配置文件包括启动的所述应用程序的信息时,判定所述应用程序需要使用所述摄像头。
本实施例中,若预置的配置文件包括启动的所述应用程序的信息时,则判定所述应用程序需要使用所述摄像头,否则判定所述应用程序不需要使用所述摄像头。
进一步地,在其他实施例中,该进程关闭方法还包括:
在检测到所述终端安装需要使用摄像头的应用程序后,将安装的所述应用程序的信息添加进所述预置的配置文件中;或者,
在检测到所述终端卸载需要使用摄像头的应用程序后,从所述预置的配置文件中删除所述应用程序的信息。
本实施例中,用户在使用终端时,除了预置的应用程序,还需要下载和安装许多第三方应用程序以满足其个性化需求,例如在Android智能电视中,通常都安装有网络电视等的应用程序,但是用户还会下载和安装其他的第三方应用程序,如体感游戏,以享受电视大屏幕化带来的良好体验和全家一起参与游戏的乐趣。而这些第三方应用程序中也可能需要使用到摄像头,因此上述预置的配置文件中也应该包含用户安装的第三方应用程序的信息。
为了兼容第三方应用程序,当检测到所述终端安装需要使用摄像头的应用程序后,将安装的所述应用程序的信息添加进所述预置的配置文件中;当检测到所述终端删除需要使用摄像头的应用程序后,从所述预置的配置文件中删除所述应用程序的信息。在应用商店部署第三方应用程序时,对该第三方应用程序是否需要使用摄像头进行标识,并记录到服务器的数据库中,通过该第三方应用程序与服务器的数据交互来获取该标识,判断其是否需要使用摄像头。在本实施例中,安装第三方应用程序后,检测该标识,如果需要使用摄像头,则将该第三方应用程序的信息添加到数据分区预置的配置文件中;在卸载第三方应用程序后,则从数据分区中上述预置的配置文件中删除该第三方应用程序的信息。这样可以动态更新数据分区中的上述预置的配置文件。
本实施例通过在应用程序启动时,获取预置的配置文件,而后确定所述预置的配置文件是否包括启动的所述应用程序的信息,实现了根据预置的配置文件准确的确定应用程序是否需要使用摄像头,提高了确定需要使用摄像头的应用程序的准确性。
本发明进一步提供一种进程关闭装置。参照图3,图3为本发明进程关闭装置第一实施例的功能模块示意图。
在本实施例中,该进程关闭装置包括:
确定模块10,用于在应用程序启动时,根据应用程序的信息确定所述应用程序是否需要使用所述摄像头;
在本实施例中,可以在应用程序安装时,将需要使用摄像头的应用程序的信息存储在预置的配置文件中,在应用程序启动时,获取该预置的配置文件,判断预置的配置文件包该含应用程序的信息时,确定当前启动的应用程序需要使用摄像头,其中,应用程序的信息可以为应用程序的唯一标识,例如编号等。当然,也可以通过其他方式确定应用程序是否需要使用摄像头,譬如,获取当前正在启动的应用程序的具体信息,然后基于应用程序的具体信息确定应用程序是否需要使用摄像头,其中,该具体信息包括需要使用摄像头实现的功能信息等。
获取模块20,用于在所述应用程序需要使用所述摄像头时,获取所述摄像头的系统属性值;
本实施例中,Android的框架层framework的代码中包含摄像头的系统属性值,例如,可以在摄像头相关的framework的代码里面添加Android属性“com.tcl.camera.used”,通过该属性的属性值来标识摄像头被占用以及占用摄像头的进程,具体地,如果摄像头被占用,该属性值为占用摄像头的进程的标识ID,该ID可以为该应用程序的进程号PID,例如,在占用摄像头的进程为微信时,该进程号PID为672等,其中进程号与终端中的应用程序一一对应;如果摄像头未被占用,则该属性值可以设置为预设值,例如将该属性值设置为0。
判断模块30,用于基于所述系统属性值判断所述摄像头是否被其他进程占用;
本实施例中,判断模块30基于所述系统属性值判断所述摄像头是否被其他进程占用具体是指:在获取到的系统属性值为预设值例如0时,判断模块30判定所述摄像头未被其他进程占用,在获取到的系统属性值为应用程序的标识ID即应用程序的进程号时,判断模块30判定所述摄像头正在被其他进程占用,且占用摄像头的进程的标识ID为获取到的系统属性值。
关闭模块40,用于在所述系统属性值为应用程序的进程号时,判定所述摄像头被其他进程占用,并通过所述框架层关闭当前占用所述摄像头的进程。
在系统属性值为应用程序的进程号时,判定所述摄像头被其他进程占用时,然后关闭模块40可以根据应用程序的ID即进程号通过框架层关闭当前占用摄像头的进程,进而释放终端的摄像头资源。具体地,通过所述框架执行一个脚本命令,该脚本命令会通过socket发送给系统后台运行的一个后门程序,而这个后门程序是专门来执行包含kill命令的系统命令,进而杀掉后台运行的占用摄像头的进程。
在关闭模块40通过框架层关闭当前占用摄像头的进程之后,即终端的摄像头资源释放完成时,通过框架层将系统属性值设置为预设值,该预设值表示摄像头当前未被其他进程占用,具体的,可以将系统属性值设置为0。
进一步地,在一实施例中,该进程关闭装置还包括:
分配模块,用于在应用程序启动完成后,接收到基于所述应用程序的摄像头启动请求时,通过所述框架层将所述摄像头分配给所述应用程序使用。
本实施例中,在应用程序启动完成后,接收到基于所述应用程序的摄像头启动请求时,例如用户正在使用该应用程序中需要使用摄像头的功能时,分配模块通过框架层将摄像头分配给所述应用程序使用;由于在分配之前,摄像头未被任何应用程序占用,因此能够快速、准确地将摄像头分配给应用程序使用,进而能够避免该应用程序不能正常使用摄像头的情况,解决了多个应用程序同时占用摄像头时发生冲突的问题。
优选地,在又一实施例中,该进程关闭装置还包括:
更新模块,用于基于所述应用程序中占用所述摄像头进程的进程号通过所述框架层更新所述摄像头的系统属性值。
在分配模块通过框架层将摄像头分配给应用程序使用之后,更新模块通过框架层更新摄像头的系统属性值,具体地,更新模块通过框架层可以将系统属性值设置为应用程序的ID即进程号,实现了及时更新系统属性值,使得后续再次需要释放摄像头的资源时,能够准确的确定占用摄像头的进程。
本实施例中,通过在应用程序启动时,确定模块10确定所述应用程序是否需要使用所述摄像头,接着在所述应用程序需要使用所述摄像头时,获取模块20获取所述摄像头的系统属性值,而后判断模块30基于所述系统属性值判断所述摄像头是否被其他进程占用,最后在系统属性值为应用程序的进程号时,判定所述摄像头被其他进程占用,而后关闭模块40通过所述框架层关闭当前占用所述摄像头的进程,实现了根据系统属性值通过框架层关闭占用摄像头的进程,能够在需要使用所述摄像头的应用程序启动时及时释放摄像头的资源,避免了由于应用程序没有及时释放摄像头的设备资源而导致其他应用程序不能正常使用摄像头的情况,进而避免了在使用摄像头时造成冲突,提高了摄像头使用的便捷性。
基于第一实施例提出本发明进程关闭装置的第二实施例,参照图4,在本实施例中,确定模块包括:
获取单元11,用于在应用程序启动时,获取预置的配置文件,其中,所述预置的配置文件包括终端中所有需要使用所述摄像头的应用程序的信息;
Android系统的系统分区用于放置预置的应用程序、系统文件和用户界面等,数据分区用于放置用户的数据,如联系人信息和第三方应用程序等。而Android系统的框架层包含了编写核心服务时需要使用的框架,在Android系统启动过程中,框架层启动时会执行启动核心服务和获取预置的配置文件等操作。
在本实施例中,在应用程序启动时,从数据分区中获取预置的配置文件。在获取该预置的配置文件之前,还需要进行如下步骤:对于Android系统,在系统分区中添加配置文件作为预置的配置文件,该配置文件配置了预置应用程序中所有需要使用摄像头的应用程序的信息。当Android系统启动时,通过框架层检测数据分区是否存在所需的配置文件,如果没有,则从系统分区中拷贝一份到数据分区中。
在本实施例中,从数据分区中获取预置的配置文件,如果出现获取失败的情况,则从系统分区获取上述配置文件,同时,从系统分区中重新拷贝一份到数据分区中。这样,在Android系统恢复出厂设置时,系统分区中的上述预置的配置文件不会被用户清除掉,保证能够获取成功。在Android系统启动时,从数据分区获取上述配置了预置应用程序和第三方应用程序信息的配置文件,如果出现获取失败的情况,则从系统分区获取仅包含预置应用程序的配置文件,这样既可以解决预置应用程序和第三方应用程序同时需要占用摄像头时产生冲突的问题,也可以保证在Android系统恢复出厂设置时,系统分区中预置的配置文件不会被用户清除掉,仍然能够成功获取。
确定单元12,用于确定所述预置的配置文件是否包括启动的所述应用程序的信息,其中,在所述预置的配置文件包括启动的所述应用程序的信息时,判定所述应用程序需要使用所述摄像头。
本实施例中,若预置的配置文件包括启动的所述应用程序的信息时,则判定所述应用程序需要使用所述摄像头,否则判定所述应用程序不需要使用所述摄像头。
进一步地,在其他实施例中,该进程关闭装置还包括:
添加模块,用于在检测到所述终端安装需要使用摄像头的应用程序后,将安装的所述应用程序的信息添加进所述预置的配置文件中;或者,
删除模块,用于在检测到所述终端卸载需要使用摄像头的应用程序后,从所述预置的配置文件中删除所述应用程序的信息。
本实施例中,用户在使用终端时,除了预置的应用程序,还需要下载和安装许多第三方应用程序以满足其个性化需求,例如在Android智能电视中,通常都安装有网络电视等的应用程序,但是用户还会下载和安装其他的第三方应用程序,如体感游戏,以享受电视大屏幕化带来的良好体验和全家一起参与游戏的乐趣。而这些第三方应用程序中也可能需要使用到摄像头,因此上述预置的配置文件中也应该包含用户安装的第三方应用程序的信息。
为了兼容第三方应用程序,当检测到所述终端安装需要使用摄像头的应用程序后,添加模块将安装的所述应用程序的信息添加进所述预置的配置文件中;当检测到所述终端删除需要使用摄像头的应用程序后,删除模块从所述预置的配置文件中删除所述应用程序的信息。在应用商店部署第三方应用程序时,对该第三方应用程序是否需要使用摄像头进行标识,并记录到服务器的数据库中,通过该第三方应用程序与服务器的数据交互来获取该标识,判断其是否需要使用摄像头。在本实施例中,安装第三方应用程序后,检测该标识,如果需要使用摄像头,则将该第三方应用程序的信息添加到数据分区预置的配置文件中;在卸载第三方应用程序后,则删除模块从数据分区中上述预置的配置文件中删除该第三方应用程序的信息。这样可以动态更新数据分区中的上述预置的配置文件。
本实施例通过在应用程序启动时,获取单元11获取预置的配置文件,而后确定单元12确定所述预置的配置文件是否包括启动的所述应用程序的信息,实现了根据预置的配置文件准确的确定应用程序是否需要使用摄像头,提高了确定需要使用摄像头的应用程序的准确性。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (6)

1.一种进程关闭方法,其特征在于,所述进程关闭方法包括以下步骤:
在应用程序启动时,根据应用程序的信息确定所述应用程序是否需要使用摄像头;
在所述应用程序需要使用所述摄像头时,获取所述摄像头的系统属性值;
基于所述系统属性值判断所述摄像头是否被其他进程占用;
在所述系统属性值为应用程序的进程号时,判定所述摄像头被其他进程占用,并通过框架层执行对应的脚本命令,所述脚本命令通过socket发送给系统后台运行的后门程序,通过所述后门程序关闭当前占用所述摄像头的进程;
其中,所述根据应用程序的信息确定所述应用程序是否需要使用摄像头的步骤包括:获取所述应用程序的具体信息,基于所述具体信息确定应用程序是否需要使用摄像头,其中,在所述具体信息包括需要使用摄像头实现的功能信息时,确定所述应用程序需要使用所述摄像头。
2.如权利要求1所述的进程关闭方法,其特征在于,所述通过所述后门程序关闭当前占用所述摄像头的进程的步骤之后,所述进程关闭方法还包括:
在应用程序启动完成后,接收到基于所述应用程序的摄像头启动请求时,通过所述框架层将所述摄像头分配给所述应用程序使用。
3.如权利要求2所述的进程关闭方法,其特征在于,所述通过所述框架层将所述摄像头分配给所述应用程序使用的步骤之后,所述进程关闭方法还包括:
基于所述应用程序中占用所述摄像头进程的进程号通过所述框架层更新所述摄像头的系统属性值。
4.一种进程关闭装置,其特征在于,所述进程关闭装置包括:
确定模块,用于在应用程序启动时,根据应用程序的信息确定所述应用程序是否需要使用摄像头;
获取模块,用于在所述应用程序需要使用所述摄像头时,获取所述摄像头的系统属性值;
判断模块,用于基于所述系统属性值判断所述摄像头是否被其他进程占用;
关闭模块,用于在所述系统属性值为应用程序的进程号时,判定所述摄像头被其他进程占用,并通过框架层执行对应的脚本命令,所述脚本命令通过socket发送给系统后台运行的后门程序,通过所述后门程序关闭当前占用所述摄像头的进程;
所述获取模块还用于获取所述应用程序的具体信息,基于所述具体信息确定应用程序是否需要使用摄像头,其中,在所述具体信息包括需要使用摄像头实现的功能信息时,确定所述应用程序需要使用所述摄像头。
5.如权利要求4所述的进程关闭装置,其特征在于,所述进程关闭装置还包括:
分配模块,用于在应用程序启动完成后,接收到基于所述应用程序的摄像头启动请求时,通过所述框架层将所述摄像头分配给所述应用程序使用。
6.如权利要求5所述的进程关闭装置,其特征在于,所述进程关闭装置还包括:
更新模块,用于基于所述应用程序中占用所述摄像头进程的进程号通过所述框架层更新所述摄像头的系统属性值。
CN201610285286.1A 2016-05-03 2016-05-03 进程关闭方法及装置 Active CN105955779B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201610285286.1A CN105955779B (zh) 2016-05-03 2016-05-03 进程关闭方法及装置
PCT/CN2016/096740 WO2017190450A1 (zh) 2016-05-03 2016-08-25 进程关闭方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610285286.1A CN105955779B (zh) 2016-05-03 2016-05-03 进程关闭方法及装置

Publications (2)

Publication Number Publication Date
CN105955779A CN105955779A (zh) 2016-09-21
CN105955779B true CN105955779B (zh) 2020-06-09

Family

ID=56913305

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610285286.1A Active CN105955779B (zh) 2016-05-03 2016-05-03 进程关闭方法及装置

Country Status (2)

Country Link
CN (1) CN105955779B (zh)
WO (1) WO2017190450A1 (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107197379B (zh) * 2017-06-06 2019-08-06 烽火通信科技股份有限公司 基于IPTV平台认证的Android机顶盒管理方法及系统
CN108322640B (zh) * 2017-12-27 2020-10-27 武汉长江通信智联技术有限公司 一种基于广播机制实现多应用同时调用摄像头的方法及系统
US11546451B2 (en) 2019-05-15 2023-01-03 Asustek Computer Inc. Electronic device
US10911593B2 (en) 2019-05-15 2021-02-02 Asustek Computer Inc. Electronic device having a rotatable camera module
US11375125B2 (en) 2019-05-15 2022-06-28 Asustek Computer Inc. Electronic device
US11240357B2 (en) 2019-05-15 2022-02-01 Asustek Computer Inc. Electronic device
US11477385B2 (en) 2019-05-15 2022-10-18 Asustek Computer Inc. Electronic device with rotatable camera for protecting privacy
CN113014792A (zh) * 2019-12-20 2021-06-22 青岛海信移动通信技术股份有限公司 一种终端设备和相机资源共享方法
CN112685099A (zh) * 2020-12-31 2021-04-20 联想(北京)有限公司 一种处理方法及装置
CN113114936B (zh) * 2021-04-08 2022-07-29 读书郎教育科技有限公司 一种解决人脸解锁与拍照冲突的方法及系统
CN113489898B (zh) * 2021-06-29 2023-10-31 广州小鹏汽车科技有限公司 摄像头的调用方法、装置、交通工具和存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103389900A (zh) * 2013-07-23 2013-11-13 Tcl集团股份有限公司 一种Android设备摄像头使用的控制方法及装置
CN103793246A (zh) * 2014-01-22 2014-05-14 深圳Tcl新技术有限公司 协调摄像头资源的方法及系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102088470B (zh) * 2009-12-07 2014-03-05 中兴通讯股份有限公司 通信系统中文件传输协议死锁检测及自恢复的方法与装置
CN103677848B (zh) * 2013-12-27 2018-11-16 厦门雅迅网络股份有限公司 一种基于Android的摄像头控制方法
CN105068945A (zh) * 2015-08-03 2015-11-18 Tcl集团股份有限公司 一种Android系统的摄像头分配方法及系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103389900A (zh) * 2013-07-23 2013-11-13 Tcl集团股份有限公司 一种Android设备摄像头使用的控制方法及装置
CN103793246A (zh) * 2014-01-22 2014-05-14 深圳Tcl新技术有限公司 协调摄像头资源的方法及系统

Also Published As

Publication number Publication date
WO2017190450A1 (zh) 2017-11-09
CN105955779A (zh) 2016-09-21

Similar Documents

Publication Publication Date Title
CN105955779B (zh) 进程关闭方法及装置
KR102389235B1 (ko) 리소스 배치 방법, 장치, 단말기 및 저장 매체
CN109582463B (zh) 资源配置方法、装置、终端及存储介质
CN103389900B (zh) 一种Android设备摄像头使用的控制方法及装置
US20180043264A1 (en) Game Accessing Method and Processing Method, Server, Terminal, and System
CN107045508B (zh) 应用程序的处理方法和装置
EP2696532A2 (en) Method, server and system for starting application
CN108174302B (zh) 一种直播应用中活动功能玩法的更新方法及装置
CN110780789B (zh) 游戏应用启动方法和装置、存储介质及电子装置
CN104202323A (zh) 一种基于移动终端对应用软件的管控方法
CN111966311A (zh) 云游戏的显示设置方法、装置、可读存储介质及设备
CN108874437B (zh) 一种android应用程序的在线云更新方法
CN106101836A (zh) 智能电视的播放方法及装置
CN110764805A (zh) 客户端无感升级的方法、装置、终端及存储介质
CN108228477B (zh) 一种基于存储容量来获取运行数据的方法及系统
CN106028142B (zh) 一种播放设备的升级控制方法和装置
CN108108294B (zh) 一种根据基准时间来获取定制运行数据的方法及系统
CN117056115B (zh) 应用程序的修复方法和装置、存储介质及电子设备
CN111506393B (zh) 一种基于arm的虚拟化装置及其使用方法
CN106507160B (zh) 一种基于远程蓝牙设备的多媒体应用播放控制方法、系统
CN112256295A (zh) 应用程序的更新方法、装置、设备和存储介质
CN108174245B (zh) 一种基于视频数据进行动态内容呈现的方法及系统
CN115022718B (zh) 数据导入方法和数据发送方法
JP7331132B2 (ja) アプリケーションプログラムのインストール方法、稼働方法、電子機器、コンピュータ可読媒体
CN114090085A (zh) 对象控制方法及相关装置

Legal Events

Date Code Title Description
C06 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