CN106201600A - 移动终端应用程序运行控制方法和操作系统 - Google Patents
移动终端应用程序运行控制方法和操作系统 Download PDFInfo
- Publication number
- CN106201600A CN106201600A CN201610509428.8A CN201610509428A CN106201600A CN 106201600 A CN106201600 A CN 106201600A CN 201610509428 A CN201610509428 A CN 201610509428A CN 106201600 A CN106201600 A CN 106201600A
- Authority
- CN
- China
- Prior art keywords
- application program
- mobile terminal
- class
- applicating category
- control method
- 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.)
- Pending
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/445—Program loading or initiating
- G06F9/44568—Immediately runnable code
- G06F9/44578—Preparing or optimising for loading
Abstract
本发明提供一种移动终端应用程序运行控制方法和移动终端操作系统,系统获取针对应用程序的对应的触发事件;系统判断应用程序对应的、预设的应用类别;系统执行与应用类别对应的、预设的优化操作。系统根据应用程序的类别(预先设定)来执行与之相适应的优化操作,可以提高用户体验,并且不需要APP开发者自行内置优化方法,提高了APP开发效率。
Description
技术领域
本发明涉及应用程序运行控制技术领域,具体而言,本发明涉及一种移动终端应用程序运行控制方法和移动终端操作系统。
背景技术
在移动操作系统(例如安卓系统)领域,各种类别的APP(Application,应用程序)越来越多,每种类别的APP都有其特点,通常有与之相适应的优化操作或设置,例如看视频的时候移动终端屏幕处于常亮状态。然而,由于移动操作系统的局限,系统无法针对各种类别的APP进行与之相适应的优化操作或设置,通常需要APP开发者自行内置优化方法,这样使得APP开发变得繁琐,APP开发效率有待提高。
发明内容
本发明的目的旨在至少能解决上述的技术缺陷之一,特别是APP开发效率不高的技术缺陷。
本发明提供一种移动终端应用程序运行控制方法,包括如下步骤:
系统获取针对应用程序的对应的触发事件;
所述系统判断所述应用程序对应的、预设的应用类别;
所述系统执行与所述应用类别对应的、预设的优化操作。
在其中一个实施例中,所述触发事件包括启动事件和激活事件的任意一项或组合。
在其中一个实施例中,所述系统为安卓系统,通过调用onCreate()方法识别所述启动事件,通过调用onStart()方法、onRestart()方法或onResume()方法识别所述激活事件。
在其中一个实施例中,所述系统判断所述应用程序对应的、预设的应用类别包括:
获取所述应用程序的包名;
根据所述应用程序的包名从预设的类别列表中确定对应的应用类别。
在其中一个实施例中,所述应用类别包括游戏类、音乐类、金融类、支付类、阅读类和视频类的任意一项或组合。
在其中一个实施例中,所述优化操作包括清理内存、网速保护、后台播放音乐、开启安全防护状态、保持屏幕常亮的任意一项或组合。
在其中一个实施例中,当所述应用类别为游戏类时,所述优化操作包括清理内存、网速保护和保持屏幕常亮的任意一项或组合。
在其中一个实施例中,所述清理内存包括:按照预设的优先级别顺序结束后台进程以保证可用内存的大小超过设定内存阈值。
在其中一个实施例中,所述网速保护包括:按照预设的优先级别顺序结束网速超过设定网速阈值的后台进程。
在其中一个实施例中,当所述应用类别为音乐类时,所述优化操作包括后台播放音乐。
在其中一个实施例中,当所述应用类别为金融类或支付类时,所述优化操作包括开启安全防护状态,以保护资金安全和信息安全。
在其中一个实施例中,所述开启安全防护状态包括:检测和清除木马和病毒。
在其中一个实施例中,当所述应用类别为阅读类和视频类时,所述优化操作包括保持屏幕常亮。
在其中一个实施例中,所述系统获取针对应用程序的对应的触发事件之前,还包括步骤:
为所述应用程序设置对应的应用类别。
本发明还提供一种移动终端操作系统,包括:
获取模块,用于获取针对应用程序的对应的触发事件;
判断模块,用于判断所述应用程序对应的、预设的应用类别;
执行模块,用于执行与所述应用类别对应的、预设的优化操作。
在其中一个实施例中,所述触发事件包括启动事件和激活事件的任意一项或组合。
在其中一个实施例中,所述移动终端操作系统为安卓系统,获取模块用于通过调用onCreate()方法识别所述启动事件,获取模块用于通过调用onStart()方法、onRestart()方法或onResume()方法识别所述激活事件。
在其中一个实施例中,所述判断模块用于:
获取所述应用程序的包名;
根据所述应用程序的包名从预设的类别列表中确定对应的应用类别。
在其中一个实施例中,所述应用类别包括游戏类、音乐类、金融类、支付类、阅读类和视频类的任意一项或组合。
在其中一个实施例中,所述优化操作包括清理内存、网速保护、后台播放音乐、开启安全防护状态、保持屏幕常亮的任意一项或组合。
在其中一个实施例中,当所述应用类别为游戏类时,所述优化操作包括清理内存、网速保护和保持屏幕常亮的任意一项或组合。
在其中一个实施例中,所述清理内存包括:按照预设的优先级别顺序结束后台进程以保证可用内存的大小超过设定内存阈值。
在其中一个实施例中,所述网速保护包括:按照预设的优先级别顺序结束网速超过设定网速阈值的后台进程。
在其中一个实施例中,当所述应用类别为音乐类时,所述优化操作包括后台播放音乐。
在其中一个实施例中,当所述应用类别为金融类或支付类时,所述优化操作包括开启安全防护状态,以保护资金安全和信息安全。
在其中一个实施例中,所述开启安全防护状态包括:检测和清除木马和病毒。
在其中一个实施例中,当所述应用类别为阅读类和视频类时,所述优化操作包括保持屏幕常亮。
在其中一个实施例中,还包括设置模块,所述设置模块用于:为所述应用程序设置对应的应用类别。
上述的移动终端应用程序运行控制方法和移动终端操作系统,系统获取针对应用程序的对应的触发事件;所述系统判断所述应用程序对应的、预设的应用类别;所述系统执行与所述应用类别对应的、预设的优化操作。系统根据应用程序的类别(预先设定)来执行与之相适应的优化操作,可以提高用户体验,并且不需要APP开发者自行内置优化方法,提高了APP开发效率。
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为一个实施例的移动终端应用程序运行控制方法流程图;
图2为一个实施例的移动终端操作系统简略模块图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
本技术领域技术人员可以理解,这里所使用的“终端”、“终端设备”既包括无线信号接收器的设备,其仅具备无发射能力的无线信号接收器的设备,又包括接收和发射硬件的设备,其具有能够在双向通信链路上,执行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备;PCS(Personal Communications Service,个人通信系统),其可以组合语音、数据处理、传真和/或数据通信能力;PDA(Personal Digital Assistant,个人数字助理),其可以包括射频接收器、寻呼机、互联网/内联网访问、网络浏览器、记事本、日历和/或GPS(Global Positioning System,全球定位系统)接收器;常规膝上型和/或掌上型计算机或其他设备,其具有和/或包括射频接收器的常规膝上型和/或掌上型计算机或其他设备。这里所使用的“终端”、“终端设备”可以是便携式、可运输、安装在交通工具(航空、海运和/或陆地)中的,或者适合于和/或配置为在本地运行,和/或以分布形式,运行在地球和/或空间的任何其他位置运行。这里所使用的“终端”、“终端设备”还可以是通信终端、上网终端、音乐/视频播放终端,例如可以是PDA、MID(Mobile Internet Device,移动互联网设备)和/或具有音乐/视频播放功能的移动电话,也可以是智能电视、机顶盒等设备。
本技术领域技术人员可以理解,这里所使用的远端网络设备,其包括但不限于计算机、网络主机、单个网络服务器、多个网络服务器集或多个服务器构成的云。在此,云由基于云计算(Cloud Computing)的大量计算机或网络服务器构成,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。本发明的实施例中,远端网络设备、终端设备与WNS服务器之间可通过任何通信方式实现通信,包括但不限于,基于3GPP、LTE、WIMAX的移动通信、基于TCP/IP、UDP协议的计算机网络通信以及基于蓝牙、红外传输标准的近距无线传输方式。
图1为一个实施例的移动终端应用程序运行控制方法流程图。
本发明提供一种移动终端应用程序运行控制方法,包括如下步骤:
步骤S100:系统获取针对应用程序的对应的触发事件。
系统是移动终端的操作系统,例如安卓系统、iOS移动操作系统等等。在以下的描述中,以安卓系统作为示例性说明。
上述的触发事件为作用于应用程序以使得应用程序执行相应指令的事件,可以是由用户点击动作、滑动动作而生成的事件。
触发事件如果进行细分,可以包括启动事件和激活事件的任意一项或组合。启动事件是应用程序第一次启动的事件,激活事件是应用程序重新激活以在前台运行的事件,启动事件和激活事件都可以通过判断应用程序所处的状态来识别。
对于安卓系统而言,每一个应用程序都处于某一个状态,而该状态由Activity(活动)反映,因此开发者可以通过调用识别Activity状态的方法获知应用程序所处状态。识别Activity状态的方法主要有:onCreate()、onStart()、onResume()、onPause()、onStop()、onRestart()、onDestroy()。
以下简单描述上述七个方法各自的意义:
1、onCreate():当Activity第一次启动的时候,触发该方法,可以在此时完成Activity的初始化工作。onCreate()方法有一个参数,该参数可以为空(null),也可以是之前调用onSaveInstanceState()方法保存的状态信息。系统调用onSaveInstanceState()该方法时,允许活动保存之前的状态,比如说在一串字符串中的光标所处的位置等。通常情况下,开发者不需要重写覆盖该方法,在默认的实现中,已经提供了自动保存活动所涉及到的用户界面组件的所有状态信息。
2、onStart():该方法的触发表示所属Activity将被展现给用户。换种说法,当Activity可见、未获得用户焦点、不能交互时系统会调用该方法。
3、onResume():当Activity和用户发生交互的时候,触发该方法。换种说法,当Activity可见且获得用户焦点能交互时系统会调用该方法。
4、onPause():当一个正在前台运行的Activity因为其他的Activity需要前台运行而转入后台运行的时候,触发该方法。这时候需要将活动的状态持久化,比如正在编辑的数据库记录等。
5、onStop():当Activity不再需要展示给用户的时候,触发该方法。如果内存紧张,系统会直接结束这个Activity,而不会触发onStop()方法。Activity如果没有在前台运行,都将被onStop()方法停止,或者Linux管理进程为了给新的活动预留足够的存储空间而随时结束这些活动。在一些情况下,onPause()方法或许是活动触发的最后的方法,因此开发者需要在这个时候保存需要保存的信息。
6、onRestart():当处于停止状态的Activity需要再次展现给用户的时候,触发该方法。
7、onDestroy():当活动销毁的时候,触发该方法。和onStop()方法一样,如果内存紧张,系统会直接结束这个Activity而不会触发该方法。
因此,如果系统为安卓系统,可以通过调用onCreate()方法识别启动事件,可以通过调用onStart()方法、onRestart()方法或onResume()方法识别激活事件。通过onCreate()方法识别应用程序第一次启动时,则认为应用程序被启动,通过onStart()方法、onRestart()方法或onResume()方法识别应用即将在前台运行,则认为应用程序被激活。
获取触发事件后,执行步骤S200。
步骤S200:系统判断应用程序对应的、预设的应用类别。
应用程序可以预先设置其所属的应用类别。应用类别是根据应用程序的特性而分成各种类别,例如游戏类、音乐类、金融类、支付类、阅读类和视频类。系统预先设定包括有多个应用类别的类别列表,然后将市场上主流的应用程序分别划分为列表中的一个或多个应用类别。当然,将应用程序划分为哪个应用类别也可以是由用户自行设置的。例如用户新下载了一个游戏APP“孙悟空大战变形金刚”,用户可以在系统中将其划分到游戏类APP,即在该游戏APP“孙悟空大战变形金刚”与游戏类之间建立联系。因此,在本实施例中,系统获取针对应用程序的对应的触发事件之前,还包括步骤:为应用程序设置对应的应用类别。
由于一些应用程序可能同属多个应用类型,因此应用类别包括游戏类、音乐类、金融类、支付类、阅读类和视频类的任意一项或组合。
可以通过应用程序的包名(Package Name)来识别不同的应用程序,因此在上述的类别列表中,对应每种应用类别之下存储有多个不同应用程序的包名。因此,系统判断应用程序对应的、预设的应用类别可以通过如下步骤1~2实现:
步骤1:获取应用程序的包名。这里的应用程序为上述触发事件所触发的应用程序,确定某一应用程序被触发后,获取其包名。
步骤2:根据应用程序的包名从预设的类别列表中确定对应的应用类别。获取包名后,根据包名遍历上述的类别列表,从而确定包名所对应的应用类型,即可确认该应用程序的所属应用类型。
确定应用类型后,执行步骤S300。
步骤S300:系统执行与应用类别对应的、预设的优化操作。
系统预先为上述类别列表中的各种应用类型配置了相应的优化方案,每个优化方案对应各自的优化操作,这些优化操作例如可以包括调用服务、组件、函数等方式,以配置上述应用程序在前台运行时的应用环境。
每个应用类别对应着不一样的优化方案,即对应着不同的优化操作,对于上述的应用类别,优化操作可以包括清理内存、网速保护、后台播放音乐、开启安全防护状态、保持屏幕常亮的任意一项或组合,以下分别举例说明。
当应用类别为游戏类时,优化操作包括清理内存、网速保护和保持屏幕常亮的任意一项或组合。清理内存的步骤可以包括:按照预设的优先级别顺序结束(杀死,KILL,后同)后台进程以保证可用内存的大小超过设定内存阈值,使得可用内存可以保证游戏类应用程序的流畅运行。网速保护的步骤可以包括:按照预设的优先级别顺序结束网速超过设定网速阈值的后台进程,使得可用带宽可以保证游戏类应用程序的流畅运行。对于优先级别,可以先按照系统优先的方式划分,也可以结合进程优先级别来划分。进程优先级别由低到高可以分为空进程、后台进程、服务进程、可见进程和前台进程。以下简单描述各个进程:
1、空进程:这是Android系统优先杀死的,因为此时该进程已经没有任何用途。
2、后台进程:包含不可见的Activity,即跳转到其他Activity后,由于资源不足,系统会将原来的Activity杀死(即跳转的来源)。
3、服务进程:当系统资源不足时,系统可能会杀掉正在执行任务的服务。因此在服务执行比较耗时的操作,并不能保证一定能执行完毕。
4、可见进程:当前移动终端屏幕上可以看到的Activity,例如显示一个对话框的Activity,那么对话框变成了前台进程,而调用他的Activity是可见进程,但并不是前台的。
5、前台进程:当前处于最前端的Activity,也就是Android最后考虑杀死的对象。一般来说,前台进程Android系统是不会杀死的,只有上述4个进程都杀掉资源依旧不够才可能会发生。
因此,在清理内存和网速保护时,可以按照以下的优先级别顺序杀死后台进程:空进程、后台进程、服务进程、可见进程、前台进程。但是,在杀死后台进程中,应该将一些处于白名单中的进程保留运行,这些白名单中的进程必须一直调用某些服务,例如以下将要描述的播放音乐时候所需要的后台服务进程。
当应用类别为音乐类时,优化操作包括后台播放音乐(加入上述的白名单)。后台播放音乐,表示需要一直调用播放音乐所需要的后台服务,此时即使音乐应用程序转入了后台,也可以播放音乐,并且可以接收用户指令进行相关操作,例如上一曲、后一曲、暂停等等操作;甚至在移动终端黑屏状态下,也可以播放音乐和接收用户指令进行相关操作。
当应用类别为金融类或支付类时,优化操作包括开启安全防护状态,以保护资金安全和信息安全。例如,开启安全防护状态的时候可以包括:检测和清除木马和病毒。在安全防护状态下,系统不断查杀木马和病毒,以保证资金安全和信息安全。
当应用类别为阅读类和视频类时,优化操作包括保持屏幕常亮。
可以通过Window的flag属性来保持屏幕常亮,代码如下:
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
也可以通过在XML文件中,使用android:keepScreenOn属性来保持屏幕常亮,代码如下:android:keepScreenOn="true"。
对应上述移动终端应用程序运行控制方法,以下还描述一种移动终端操作系统。移动终端操作系统,例如可以是安卓系统、iOS移动操作系统等等。在以下的描述中,以安卓系统作为示例性说明。图2为一个实施例的移动终端操作系统简略模块图。
一种移动终端操作系统,包括:获取模块100、判断模块200和执行模块300。
获取模块100用于获取针对应用程序的对应的触发事件,判断模块200用于判断应用程序对应的、预设的应用类别,执行模块300,用于执行与应用类别对应的、预设的优化操作。
获取模块100获取针对应用程序的对应的触发事件。
上述的触发事件为作用于应用程序以使得应用程序执行相应指令的事件,可以是由用户点击动作、滑动动作而生成的事件。
触发事件如果进行细分,可以包括启动事件和激活事件的任意一项或组合。启动事件是应用程序第一次启动的事件,激活事件是应用程序重新激活以在前台运行的事件,启动事件和激活事件都可以通过判断应用程序所处的状态来识别。
对于安卓系统而言,每一个应用程序都处于某一个状态,而该状态由Activity(活动)反映,因此开发者可以通过调用识别Activity状态的方法获知应用程序所处状态。识别Activity状态的方法主要有:onCreate()、onStart()、onResume()、onPause()、onStop()、onRestart()、onDestroy()。
以下简单描述上述七个方法各自的意义:
1、onCreate():当Activity第一次启动的时候,触发该方法,可以在此时完成Activity的初始化工作。onCreate()方法有一个参数,该参数可以为空(null),也可以是之前调用onSaveInstanceState()方法保存的状态信息。系统调用onSaveInstanceState()该方法时,允许活动保存之前的状态,比如说在一串字符串中的光标所处的位置等。通常情况下,开发者不需要重写覆盖该方法,在默认的实现中,已经提供了自动保存活动所涉及到的用户界面组件的所有状态信息。
2、onStart():该方法的触发表示所属Activity将被展现给用户。换种说法,当Activity可见、未获得用户焦点、不能交互时系统会调用该方法。
3、onResume():当Activity和用户发生交互的时候,触发该方法。换种说法,当Activity可见且获得用户焦点能交互时系统会调用该方法。
4、onPause():当一个正在前台运行的Activity因为其他的Activity需要前台运行而转入后台运行的时候,触发该方法。这时候需要将活动的状态持久化,比如正在编辑的数据库记录等。
5、onStop():当Activity不再需要展示给用户的时候,触发该方法。如果内存紧张,系统会直接结束这个Activity,而不会触发onStop()方法。Activity如果没有在前台运行,都将被onStop()方法停止,或者Linux管理进程为了给新的活动预留足够的存储空间而随时结束这些活动。在一些情况下,onPause()方法或许是活动触发的最后的方法,因此开发者需要在这个时候保存需要保存的信息。
6、onRestart():当处于停止状态的Activity需要再次展现给用户的时候,触发该方法。
7、onDestroy():当活动销毁的时候,触发该方法。和onStop()方法一样,如果内存紧张,系统会直接结束这个Activity而不会触发该方法。
因此,如果系统为安卓系统,可以通过调用onCreate()方法识别启动事件,可以通过调用onStart()方法、onRestart()方法或onResume()方法识别激活事件。通过onCreate()方法识别应用程序第一次启动时,则认为应用程序被启动,通过onStart()方法、onRestart()方法或onResume()方法识别应用即将在前台运行,则认为应用程序被激活。
获取模块100获取触发事件后,判断模块200判断应用程序对应的、预设的应用类别。
应用程序可以预先设置其所属的应用类别。应用类别是根据应用程序的特性而分成各种类别,例如游戏类、音乐类、金融类、支付类、阅读类和视频类。系统预先设定包括有多个应用类别的类别列表,然后将市场上主流的应用程序分别划分为列表中的一个或多个应用类别。当然,将应用程序划分为哪个应用类别也可以是由用户自行设置的。例如用户新下载了一个游戏APP“孙悟空大战变形金刚”,用户可以在系统中将其划分到游戏类APP,即在该游戏APP“孙悟空大战变形金刚”与游戏类之间建立联系。因此,在本实施例中,还可以包括设置模块。系统获取针对应用程序的对应的触发事件之前,设置模块还为应用程序设置对应的应用类别。
由于一些应用程序可能同属多个应用类型,因此应用类别包括游戏类、音乐类、金融类、支付类、阅读类和视频类的任意一项或组合。
可以通过应用程序的包名(Package Name)来识别不同的应用程序,因此在上述的类别列表中,对应每种应用类别之下存储有多个不同应用程序的包名。因此,判断模块200判断应用程序对应的、预设的应用类别可以通过如下步骤1~2实现:
步骤1:获取应用程序的包名。这里的应用程序为上述触发事件所触发的应用程序,确定某一应用程序被触发后,获取其包名。
步骤2:根据应用程序的包名从预设的类别列表中确定对应的应用类别。获取包名后,根据包名遍历上述的类别列表,从而确定包名所对应的应用类型,即可确认该应用程序的所属应用类型。
判断模块200确定应用类型后,执行模块300执行与应用类别对应的、预设的优化操作。
系统预先为上述类别列表中的各种应用类型配置了相应的优化方案,每个优化方案对应各自的优化操作,这些优化操作例如可以包括调用服务、组件、函数等方式,以配置上述应用程序在前台运行时的应用环境。
每个应用类别对应着不一样的优化方案,即对应着不同的优化操作,对于上述的应用类别,优化操作可以包括清理内存、网速保护、后台播放音乐、开启安全防护状态、保持屏幕常亮的任意一项或组合,以下分别举例说明。
当应用类别为游戏类时,优化操作包括清理内存、网速保护和保持屏幕常亮的任意一项或组合。清理内存的步骤可以包括:按照预设的优先级别顺序结束后台进程以保证可用内存的大小超过设定内存阈值,使得可用内存可以保证游戏类应用程序的流畅运行。网速保护的步骤可以包括:按照预设的优先级别顺序结束网速超过设定网速阈值的后台进程,使得可用带宽可以保证游戏类应用程序的流畅运行。对于优先级别,可以先按照系统优先的方式划分,也可以结合进程优先级别来划分。进程优先级别由低到高可以分为空进程、后台进程、服务进程、可见进程和前台进程。以下简单描述各个进程:
1、空进程:这是Android系统优先杀死的,因为此时该进程已经没有任何用途。
2、后台进程:包含不可见的Activity,即跳转到其他Activity后,由于资源不足,系统会将原来的Activity杀死(即跳转的来源)。
3、服务进程:当系统资源不足时,系统可能会杀掉正在执行任务的服务。因此在服务执行比较耗时的操作,并不能保证一定能执行完毕。
4、可见进程:当前移动终端屏幕上可以看到的Activity,例如显示一个对话框的Activity,那么对话框变成了前台进程,而调用他的Activity是可见进程,但并不是前台的。
5、前台进程:当前处于最前端的Activity,也就是Android最后考虑杀死的对象。一般来说,前台进程Android系统是不会杀死的,只有上述4个进程都杀掉资源依旧不够才可能会发生。
因此,在清理内存和网速保护时,可以按照以下的优先级别顺序杀死后台进程:空进程、后台进程、服务进程、可见进程、前台进程。但是,在杀死后台进程中,应该将一些处于白名单中的进程保留运行,这些白名单中的进程必须一直调用某些服务,例如以下将要描述的播放音乐时候所需要的后台服务进程。
当应用类别为音乐类时,优化操作包括后台播放音乐(加入上述白名单)。后台播放音乐,表示需要一直调用播放音乐所需要的后台服务,此时即使音乐应用程序转入了后台,也可以播放音乐,并且可以接收用户指令进行相关操作,例如上一曲、后一曲、暂停等等操作;甚至在移动终端黑屏状态下,也可以播放音乐和接收用户指令进行相关操作。
当应用类别为金融类或支付类时,优化操作包括开启安全防护状态,以保护资金安全和信息安全。例如,开启安全防护状态的时候可以包括:检测和清除木马和病毒。在安全防护状态下,系统不断查杀木马和病毒,以保证资金安全和信息安全。
当应用类别为阅读类和视频类时,优化操作包括保持屏幕常亮。
可以通过Window的flag属性来保持屏幕常亮,代码如下:
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
也可以通过在XML文件中,使用android:keepScreenOn属性来保持屏幕常亮,代码如下:android:keepScreenOn="true"。
上述的移动终端应用程序运行控制方法和移动终端操作系统,系统获取针对应用程序的对应的触发事件;系统判断应用程序对应的、预设的应用类别;系统执行与应用类别对应的、预设的优化操作。系统根据应用程序的类别(预先设定)来执行与之相适应的优化操作,可以提高用户体验,并且不需要APP开发者自行内置优化方法,提高了APP开发效率。
应该理解的是,虽然图1的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,图1中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种移动终端应用程序运行控制方法,其特征在于,包括如下步骤:
系统获取针对应用程序的对应的触发事件;
所述系统判断所述应用程序对应的、预设的应用类别;
所述系统执行与所述应用类别对应的、预设的优化操作。
2.根据权利要求1所述的移动终端应用程序运行控制方法,其特征在于,所述触发事件包括启动事件和激活事件的任意一项或组合。
3.根据权利要求2所述的移动终端应用程序运行控制方法,其特征在于,所述系统为安卓系统,通过调用onCreate()方法识别所述启动事件,通过调用onStart()方法、onRestart()方法或onResume()方法识别所述激活事件。
4.根据权利要求1所述的移动终端应用程序运行控制方法,其特征在于,所述系统判断所述应用程序对应的、预设的应用类别包括:
获取所述应用程序的包名;
根据所述应用程序的包名从预设的类别列表中确定对应的应用类别。
5.根据权利要求1所述的移动终端应用程序运行控制方法,其特征在于,所述应用类别包括游戏类、音乐类、金融类、支付类、阅读类和视频类的任意一项或组合。
6.根据权利要求5所述的移动终端应用程序运行控制方法,其特征在于,所述优化操作包括清理内存、网速保护、后台播放音乐、开启安全防护状态、保持屏幕常亮的任意一项或组合。
7.根据权利要求6所述的移动终端应用程序运行控制方法,其特征在于,当所述应用类别为游戏类时,所述优化操作包括清理内存、网速保护和保持屏幕常亮的任意一项或组合。
8.根据权利要求6或7所述的移动终端应用程序运行控制方法,其特征在于,所述清理内存包括:按照预设的优先级别顺序结束后台进程以保证可用内存的大小超过设定内存阈值。
9.根据权利要求6或7所述的移动终端应用程序运行控制方法,其特征在于,所述网速保护包括:按照预设的优先级别顺序结束网速超过设定网速阈值的后台进程。
10.一种移动终端操作系统,其特征在于,包括:
获取模块,用于获取针对应用程序的对应的触发事件;
判断模块,用于判断所述应用程序对应的、预设的应用类别;
执行模块,用于执行与所述应用类别对应的、预设的优化操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610509428.8A CN106201600A (zh) | 2016-06-30 | 2016-06-30 | 移动终端应用程序运行控制方法和操作系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610509428.8A CN106201600A (zh) | 2016-06-30 | 2016-06-30 | 移动终端应用程序运行控制方法和操作系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106201600A true CN106201600A (zh) | 2016-12-07 |
Family
ID=57464403
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610509428.8A Pending CN106201600A (zh) | 2016-06-30 | 2016-06-30 | 移动终端应用程序运行控制方法和操作系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106201600A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106648325A (zh) * | 2016-12-28 | 2017-05-10 | 北京金山安全软件有限公司 | 一种在锁屏界面上播放视频的方法、装置及电子设备 |
CN107404569A (zh) * | 2017-06-09 | 2017-11-28 | 努比亚技术有限公司 | 一种系统控制方法、终端和计算机可读存储介质 |
CN107608744A (zh) * | 2017-09-05 | 2018-01-19 | 珠海格力电器股份有限公司 | 一种应用进程管理方法及其装置、移动终端 |
CN107621977A (zh) * | 2017-09-28 | 2018-01-23 | 努比亚技术有限公司 | 一种应用的控制方法、终端及计算机可读存储介质 |
CN107786738A (zh) * | 2017-10-18 | 2018-03-09 | 广东欧珀移动通信有限公司 | 网络控制方法及设备 |
CN108182096A (zh) * | 2018-01-23 | 2018-06-19 | 北京小米移动软件有限公司 | 运行优化方法及系统、计算机可读存储介质 |
CN108304263A (zh) * | 2018-01-18 | 2018-07-20 | 硕诺科技(深圳)有限公司 | 一种操作系统后台进程查杀方法、系统及存储装置 |
CN108415762A (zh) * | 2017-02-10 | 2018-08-17 | 凯欧斯科技(香港)有限公司 | 移动装置之应用管理方法及移动装置 |
CN108897621A (zh) * | 2018-06-27 | 2018-11-27 | 努比亚技术有限公司 | 基于应用程序的学习管控方法、终端及存储介质 |
CN108920325A (zh) * | 2018-06-12 | 2018-11-30 | 奇酷互联网络科技(深圳)有限公司 | 应用类型检测方法、系统、可读存储介质及智能终端 |
CN109634677A (zh) * | 2018-12-27 | 2019-04-16 | 努比亚技术有限公司 | 一种后台清理的方法、终端及计算机可读存储介质 |
CN110035169A (zh) * | 2018-01-12 | 2019-07-19 | 广东欧珀移动通信有限公司 | 进程处理方法和装置、电子设备、计算机可读存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101770307A (zh) * | 2008-12-31 | 2010-07-07 | 宏达国际电子股份有限公司 | 手持电子装置及其操作方法 |
CN103699413A (zh) * | 2013-12-24 | 2014-04-02 | 北京奇虎科技有限公司 | 优化游戏运行环境的方法、客户端、服务器及系统 |
CN104142828A (zh) * | 2014-07-30 | 2014-11-12 | 北京奇虎科技有限公司 | 应用加速方法及装置 |
CN105468416A (zh) * | 2015-11-30 | 2016-04-06 | 魅族科技(中国)有限公司 | 一种应用程序清理的方法及终端 |
-
2016
- 2016-06-30 CN CN201610509428.8A patent/CN106201600A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101770307A (zh) * | 2008-12-31 | 2010-07-07 | 宏达国际电子股份有限公司 | 手持电子装置及其操作方法 |
CN103699413A (zh) * | 2013-12-24 | 2014-04-02 | 北京奇虎科技有限公司 | 优化游戏运行环境的方法、客户端、服务器及系统 |
CN104142828A (zh) * | 2014-07-30 | 2014-11-12 | 北京奇虎科技有限公司 | 应用加速方法及装置 |
CN105468416A (zh) * | 2015-11-30 | 2016-04-06 | 魅族科技(中国)有限公司 | 一种应用程序清理的方法及终端 |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106648325B (zh) * | 2016-12-28 | 2020-11-03 | 北京金山安全软件有限公司 | 一种在锁屏界面上播放视频的方法、装置及电子设备 |
CN106648325A (zh) * | 2016-12-28 | 2017-05-10 | 北京金山安全软件有限公司 | 一种在锁屏界面上播放视频的方法、装置及电子设备 |
CN108415762A (zh) * | 2017-02-10 | 2018-08-17 | 凯欧斯科技(香港)有限公司 | 移动装置之应用管理方法及移动装置 |
CN107404569A (zh) * | 2017-06-09 | 2017-11-28 | 努比亚技术有限公司 | 一种系统控制方法、终端和计算机可读存储介质 |
CN107404569B (zh) * | 2017-06-09 | 2020-10-02 | 海南飞特同创科技有限公司 | 一种系统控制方法、终端和计算机可读存储介质 |
CN107608744A (zh) * | 2017-09-05 | 2018-01-19 | 珠海格力电器股份有限公司 | 一种应用进程管理方法及其装置、移动终端 |
CN107608744B (zh) * | 2017-09-05 | 2020-09-25 | 珠海格力电器股份有限公司 | 一种应用进程管理方法及其装置、移动终端 |
CN107621977A (zh) * | 2017-09-28 | 2018-01-23 | 努比亚技术有限公司 | 一种应用的控制方法、终端及计算机可读存储介质 |
CN107621977B (zh) * | 2017-09-28 | 2021-06-18 | 努比亚技术有限公司 | 一种应用的控制方法、终端及计算机可读存储介质 |
WO2019076213A1 (zh) * | 2017-10-18 | 2019-04-25 | Oppo广东移动通信有限公司 | 网络控制方法及设备 |
CN107786738A (zh) * | 2017-10-18 | 2018-03-09 | 广东欧珀移动通信有限公司 | 网络控制方法及设备 |
CN110035169A (zh) * | 2018-01-12 | 2019-07-19 | 广东欧珀移动通信有限公司 | 进程处理方法和装置、电子设备、计算机可读存储介质 |
CN108304263A (zh) * | 2018-01-18 | 2018-07-20 | 硕诺科技(深圳)有限公司 | 一种操作系统后台进程查杀方法、系统及存储装置 |
CN108182096A (zh) * | 2018-01-23 | 2018-06-19 | 北京小米移动软件有限公司 | 运行优化方法及系统、计算机可读存储介质 |
CN108920325A (zh) * | 2018-06-12 | 2018-11-30 | 奇酷互联网络科技(深圳)有限公司 | 应用类型检测方法、系统、可读存储介质及智能终端 |
CN108897621A (zh) * | 2018-06-27 | 2018-11-27 | 努比亚技术有限公司 | 基于应用程序的学习管控方法、终端及存储介质 |
CN109634677A (zh) * | 2018-12-27 | 2019-04-16 | 努比亚技术有限公司 | 一种后台清理的方法、终端及计算机可读存储介质 |
CN109634677B (zh) * | 2018-12-27 | 2023-10-17 | 努比亚技术有限公司 | 一种后台清理的方法、终端及计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106201600A (zh) | 移动终端应用程序运行控制方法和操作系统 | |
US10467025B2 (en) | Managing delivery of code and dependent data using application containers | |
US9021427B2 (en) | Conversion methods of applications of mobile devices and mobile devices and systems using the same | |
US20200311210A1 (en) | Method and system for learning and enabling commands via user demonstration | |
CN104765617A (zh) | 基于html5实现的流应用功能接口分发方法及系统 | |
CN107689904A (zh) | 语音控制方法、装置、物联网系统及可读存储介质 | |
US11240290B2 (en) | Application download method and apparatus, application sending method and apparatus, and system | |
WO2020206691A1 (zh) | 应用程序的处理方法、装置、存储介质及电子设备 | |
CN108762836B (zh) | 预加载应用的管理方法、装置、存储介质及智能终端 | |
CN111859198A (zh) | 页面跳转方法、页面跳转系统、客户端设备及服务端设备 | |
CN107402791B (zh) | 应用程序处理方法、装置、存储介质及终端 | |
KR101943430B1 (ko) | 사용자 장치, 사용자 장치의 구동방법, 서비스제공장치 및 서비스제공장치의 구동방법 | |
CN102520957A (zh) | 一种嵌入式系统的软件分离设计的方法 | |
CN109117153A (zh) | 应用程序的处理方法、装置、终端和存储介质 | |
CN104702701A (zh) | 一种数据分享方法及装置 | |
CN103198252B (zh) | 用于管理便携式终端中的应用程序的控制信息的设备和方法 | |
US9164817B2 (en) | Mobile communication terminal to provide widget expansion function using message communication, and operation method of the mobile communication terminal | |
CN107608744B (zh) | 一种应用进程管理方法及其装置、移动终端 | |
KR101482149B1 (ko) | 어플리케이션 실행 장치, 그 방법 및 그 방법이 기록된 컴퓨터로 판독 가능한 기록 매체 | |
CN115002274B (zh) | 控制方法及装置、电子设备及计算机可读存储介质 | |
CN116028267A (zh) | 双系统安全手机重置方法、装置、服务器及存储介质 | |
CN114443174A (zh) | 代码加载方法、代码加载装置、存储介质与电子设备 | |
CN113282363A (zh) | 一种优化混合app的方法及装置 | |
CN108228307A (zh) | 应用的显示方法、装置、存储介质及电子设备 | |
CA2600258C (en) | Remotely controlling playback of media content on a wireless communication device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20170719 Address after: 100102, 18 floor, building 2, Wangjing street, Beijing, Chaoyang District, 1801 Applicant after: BEIJING ANYUN SHIJI SCIENCE AND TECHNOLOGY CO., LTD. Address before: 100088 Beijing city Xicheng District xinjiekouwai Street 28, block D room 112 (Desheng Park) Applicant before: Beijing Qihu Technology Co., Ltd. |
|
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20161207 |