CN109600409B - 应用的资源管理方法及终端 - Google Patents
应用的资源管理方法及终端 Download PDFInfo
- Publication number
- CN109600409B CN109600409B CN201710940872.XA CN201710940872A CN109600409B CN 109600409 B CN109600409 B CN 109600409B CN 201710940872 A CN201710940872 A CN 201710940872A CN 109600409 B CN109600409 B CN 109600409B
- Authority
- CN
- China
- Prior art keywords
- application
- terminal
- resources
- protocol
- running
- 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
Links
- 238000007726 management method Methods 0.000 title claims abstract description 42
- 230000005540 biological transmission Effects 0.000 claims abstract description 124
- 238000000034 method Methods 0.000 claims abstract description 52
- 230000008569 process Effects 0.000 claims abstract description 22
- 230000004044 response Effects 0.000 claims description 82
- 238000012546 transfer Methods 0.000 claims description 78
- 230000006399 behavior Effects 0.000 claims description 69
- 238000004140 cleaning Methods 0.000 claims description 45
- 230000015654 memory Effects 0.000 claims description 34
- 230000001960 triggered effect Effects 0.000 claims description 27
- 238000013468 resource allocation Methods 0.000 claims description 25
- 238000004891 communication Methods 0.000 claims description 13
- 238000004458 analytical method Methods 0.000 claims description 10
- 101001094649 Homo sapiens Popeye domain-containing protein 3 Proteins 0.000 claims description 3
- 101000608234 Homo sapiens Pyrin domain-containing protein 5 Proteins 0.000 claims description 3
- 101000578693 Homo sapiens Target of rapamycin complex subunit LST8 Proteins 0.000 claims description 3
- 102100027802 Target of rapamycin complex subunit LST8 Human genes 0.000 claims description 3
- 238000001514 detection method Methods 0.000 description 24
- 230000006870 function Effects 0.000 description 22
- 230000033001 locomotion Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 16
- 238000012545 processing Methods 0.000 description 13
- 230000003287 optical effect Effects 0.000 description 8
- 238000013461 design Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 238000009825 accumulation Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000010079 rubber tapping Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
-
- 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5022—Mechanisms to release resources
-
- 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
-
- 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
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请实施例提供应用的资源管理方法及终端,能够管理终端中后台运行应用中存在文件传输行为的应用的资源。该方法包括:终端确定目标应用,其中,目标应用为在终端后台运行的,且存在文件传输行为的应用;终端在保证目标应用进程的资源的前提下,调整在终端前台运行的应用和/或者后台运行的应用的资源。
Description
技术领域
本申请涉及通信技术领域,尤其涉及应用的资源管理方法及终端。
背景技术
用户在使用前台应用时,后台运行的应用可执行文件传输任务。如图1所示,假设用户在T1时刻启动第一应用,并在第一应用中进行文件传输,当待传输文件尺寸较大时,用户可以一边等待文件传输一边使用其他的应用,例如,在T2时刻启动第二应用,在Tn时刻启动第三应用,假设第三应用为当前界面显示的应用,则第一应用和第二应用成为后台运行的应用,第一应用在后台继续进行文件传输。当***资源不足时终端的操作***会选择性清理后台的应用或服务,可能导致后台存在文件传输的第一应用被清理。
通常,终端会以内置***服务的方式为应用提供文件传输功能,以保证每一个文件传输任务执行完成,例如,安卓的操作***中的下载管理(download manager)或iOS的NSURL Session。然而,现有的许多应用选择自行实现文件传输任务,终端无法识别未调用这些内置***服务的应用中是否存在文件传输行为,从而不能对存在文件传输行为的应用实施针对性的资源管理。
目前,主要通过终端的应用有网络包交互来确认应用可能存在文件传输行为。然而,一方面,浏览器读取普通网页的情况下也存在网络包的收发,存在将应用的普通网络行为误识别为文件传输行为;另一方面,网络速率较慢或网络丢包严重时检测不到网络包的收发,存在识别不出应用的文件传输行为的情况。
因此,如何管理终端中后台运行应用中存在文件传输行为的应用的资源,是目前亟待解决的问题。
发明内容
本申请的实施例提供的应用的资源管理方法及终端,使得终端可以管理终端中后台运行应用中存在文件传输行为的应用的资源。
为达到上述目的,本申请的实施例采用如下技术方案:
一方面,提供一种应用的资源管理方法,该方法包括:终端确定目标应用,其中,该目标应用为在该终端后台运行的,且存在文件传输行为的应用,该终端在保证该目标应用的进程的资源的前提下,调整在该终端前台运行的应用和/或者后台运行的应用的资源。本申请实施例提供的应用的资源管理方法,通过确定目标应用,可以使终端可以管理目标应用和其他应用的资源,避免了资源浪费,进而提高了在使用终端进行文件传输时的用户体验。
一种可能的实现方式中,该存在文件传输行为的应用满足以下条件中任意一个条件:与服务器建立的连接包括至少一个长连接,且在第一连接时长内该至少一个长连接中的任意一个长连接上传输的流量超过第一阈值;通过标准文件传输协议与服务器建立至少一个连接,且在第二连接时长内该至少一个连接中的任意一个连接上传输的流量超过第二阈值;通过超文本传输协议HTTP协议或超文本传输安全协议HTTPS协议与服务器建立连接,且传输文件的尺寸大超过第三阈值。基于该方案,终端可以通过以上几个条件判断应用是否为存在文件传输行为的应用,从而使得终端可以更加准确调整终端中运行的应用的资源,避免了将存在文件传输行为的应用误清理。
一种可能的实现方式中,终端确定传输文件的尺寸大于网页尺寸超过第三阈值,包括:该终端获取应答消息,其中,该应答消息为该终端向服务器发送的应答消息,或服务器向该终端发送的应答消息;该终端根据该应答消息确定传输文件的尺寸;该终端确定该传输文件的尺寸是否超过该第三阈值。基于该方案,可以确定传输文件的尺寸是否超过第三阈值。
一种可能的实现方式中,终端根据应答消息确定传输文件的尺寸,包括:该终端根据第一指示获取该应答消息携带的该传输文件的尺寸;或者,该终端根据该应答消息携带的第二指示确定该应答消息中传输的数据块累计的尺寸,其中,该第二指示用于指示该应答消息为分块传输模式。通过终端检测到应用与服务器采用HTTP协议建立连接,终端检测服务器发送的应答消息,根据第一指示获取传输文件的尺寸,当服务器或终端采用HTTP协议的分块传输模式,终端通过确定传输的数据块累计尺寸获得传输文件的尺寸,从而可根据传输文件的尺寸确定应用是否存在文件传输行为,进而为终端合理管理应用的资源提供依据。
一种可能的实现方式中,终端获取应答消息,包括:该终端在传输对象解析点获取并解析该应答消息;其中,若应用通过HTTP协议与服务器建立连接,则该传输对象解析点位于HTTP层和传输控制协议层TCP层之间;或者,若应用通过HTTPS协议与服务器建立连接,则该传输对象解析点位于HTTP层和安全套接层/安全传输层SSL/TLS层之间。基于该方案,终端在传输对象解析点可以获得传输文件的尺寸,为终端判断后台运行的应用是否存在文件传输行为提供依据。若应用与服务器建立的连接采用HTTP协议,终端通过在TCP层和HTTP层之间解析应答消息,若应用与服务器建立的连接采用HTTPS协议,终端通过在SSL/TLS层和HTTP层之间获取并解密应答消息,从而获得传输文件的尺寸。
一种可能的实现方式中,标准文件传输协议为文件传输协议FTP协议、对等网络协议P2P协议、简单邮件传输协议SMTP协议、邮局协议第三版POP3协议或者邮件访问协议IMAP协议。基于该方案,若终端中的应用使用了上述协议中的至少一种,终端可确定应用中存在目标应用。
一种可能的实现方式中,调整在终端前台运行的应用和/或者后台运行的应用的资源包括:若确定为前台运行的应用分配的资源小于第四阈值时,清理除该目标应用之外的至少一个后台运行的应用;或者,若确定该终端可分配的资源大于或等于第五阈值时,重新分配该终端中当前运行的应用的资源。基于该方案,若确定为前台运行的应用分配的资源小于第四阈值时,或者若终端确定可分配的资源大于或等于第四阈值时,从而为终端中的应用动态的调整资源,因此可以为目标应用增加资源,使得文件传输任务尽快完成,从而提高了用户体验。
一种可能的实现方式中,该调整在该终端前台运行的应用和/或者后台运行的应用的资源还包括:若该终端检测到用户触发的清理操作指令,响应于该清理操作指令,该终端显示是否清理该目标应用的第一显示界面;检测到用户在该第一显示界面触发的第一操作指令,响应于该第一操作指令,该终端清理除该目标应用之外的至少一个后台运行的应用,其中,该第一操作指令指示不清理该目标应用。基于该方案,终端可以通过用户触发的清理操作指令向用户显示是否清理目标应用的第一显示界面,当终端检测到用户在第一显示界面触发的清理操作时,终端可以清理除该目标应用之外的至少一个后台运行的应用,从而在终端调整应用的资源时为用户提供更好的体验。
一种可能的实现方式中,该调整在该终端前台运行的应用和/或者后台运行的应用的资源还包括:若该终端检测到用户触发的第二操作指令,响应于该第二操作指令,该终端显示第二显示界面,该第二操作指示重新分配该终端中当前运行的应用的资源;检测到用户在该第二显示界面触发的第三操作指令,该终端重新分配该终端中当前运行的应用的资源,该第三操作指令指示为该终端中当前运行的应用分配资源。基于该方案,终端可以通过用户触发的重新分配该终端中当前运行的应用的资源,当终端检测到用户在第二显示界面触发的第三操作指令时,终端可以实现为该终端中当前运行的应用分配资源,从而在终端调整应用的资源时为用户提供更好的体验。
一种可能的实现方式中,重新分配终端中当前运行的应用的资源,包括:根据该当前运行的应用是否存在文件传输行为确定该终端中当前运行的应用的第一权重因子;根据该当前运行的应用是否为前台应用确定该终端中当前运行的应用的第二权重因子;根据该当前运行的应用的第一权重因子和该当前运行的应用的第二权重因子确定该当前运行的应用的资源分配权重;根据该当前运行的应用的资源分配权重为至少一个该当前运行的应用分配资源。本申请实施例提供的应用的资源管理方法,通过确定终端中运行的每个应用的第一权重因子和第二权重因子,进而通过每个应用的第一权重因子和第二权重因子可以确定该终端中运行的每个应用的资源分配权重,从而可以根据目标应用的资源分配权重管理目标应用的资源。
一种可能的实现方式中,终端在不减少目标应用的进程的资源量的前提下,或者,终端在不改变目标应用的进程当前占用的资源位置的前提下,调整在终端前台运行的应用和/或者后台运行的应用的资源。基于该方案,可以避免应用在重新分配资源时造成的应用的暂停带来的用户体验差的问题。
一种可能的实现方式中,该第三操作指令指示不清理该目标应用具体包括:该第一操作指令指示不变更该目标应用当前占用资源的位置的前提下重新分配该终端中当前运行的应用的资源。其中,终端选择其他位置的资源目标应用增加资源。
又一方面,提供一种终端,该终端具有实现上述方法中终端行为的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。
又一方面,提供一种终端,包括:处理器、存储器和通信接口;该存储器用于存储计算机执行指令,当该终端运行时,该处理器执行该存储器存储的该计算机执行指令,以使得终端执行上述各方面的应用的资源管理方法。
又一方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面的应用的资源管理方法。
又一方面,本申请实施例提供了一种包含指令的计算机程序产品,当其在计算机上执行时,使得计算机执行上述各方面的应用的资源管理方法。
另外,上述装置实施例中任一种设计方式所带来的技术效果可参见上述应用的资源管理方法实施例中不同设计方式所带来的技术效果,此处不再赘述。
本申请的这些方面或其他方面在以下实施例的描述中会更加简明易懂。
附图说明
图1为本申请实施例提供的一种用户启动应用时序示意图;
图2为本申请实施例提供的一种终端示意图;
图3为本申请实施例提供的一种应用的资源管理方法流程示意图;
图4为本申请实施例提供的一种解析应答消息示意图;
图5为本申请实施例提供的又一种解析应答消息示意图;
图6为本申请实施例提供的一种终端的显示界面示意图;
图7为本申请实施例提供的又种终端的显示界面示意图;
图8为本申请实施例提供的又一种终端的显示界面示意图;
图9为本申请实施例提供的又一种终端的显示界面示意图;
图10为本申请实施例提供的一种终端分配资源的界面示意图;
图11为本申请实施例提供的一种终端清理后台运行应用示意图;
图12为本申请实施例提供的一种终端为当前应用分配资源示意图;
图13为本申请实施例提供的一种终端的结构示意图;
图14为本申请实施例提供的一种终端的结构示意图。
具体实施方式
需要说明的是,本文中的“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。“多个”是指两个或多于两个。
需要说明的是,本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
需要说明的是,本申请实施例中,“的(of)”,“相应的(corresponding,relevant)”和“对应的(corresponding)”有时可以混用,应当指出的是,在不强调其区别时,其所要表达的含义是一致的。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
如图2所示,为本申请实施例提供的一种终端200的硬件结构图,包括:存储器201、其他输入设备202、显示屏203、传感器204、音频电路205、输入/输出(input/output,I/O)子***206、处理器207、以及电源208等部件。
需要说明的是,图2中示出的终端200的结构并不构成对设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。可以以硬件、软件或者包含一个或者多个信号处理和/或专用集成电路的硬件和软件的组合来实现图2所示的各种部件。另外,显示屏203属于用户界面(user interface,UI),且终端200可以包括比图示更多或者更少的用户界面。
需要说明的是,本申请实施例提供的终端可支持以下应用中的一个或者多个应用之类的各种应用:联系人应用、电话应用、视频会议应用、电子邮件客户端应用、即时消息应用、语音备忘录应用、照相机应用、图像管理应用、视频播放器应用、音乐播放器应用、浏览器应用、日历应用、购物应用、游戏应用、文字处理应用或演示应用等。
下面结合图2对终端200的各个构成部件进行具体的介绍:
存储器201可用于存储软件程序以及模块,处理器207通过运行存储在存储器201里的软件程序以及模块,从而执行终端200的各种功能应用以及数据处理。存储器201可包含一个或多个计算机可读存储介质。存储器201包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(例如,声音播放功能、图像播放功能等)等;存储数据区可存储根据终端200的使用所创建的数据(例如,音频数据、电话本等)等。此外,存储器201可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。可选的,存储器201可用于存储操作***217、通信模块218、接触/移动模块219、图形模块220、附件编辑模块221、文本输入模块222、全球定位***(global positioning system,GPS)模块223、文件传输行为检测模块224、资源检测模块225、资源清理模块226、资源分配模块227的软件程序;存储器201还可以存储以下至少一个应用的软件程序,可包括联系人模块228、电话模块229、视频会议模块230、电子邮件客户端模块231、即时消息模块232、语音备忘录模块233、照相机模块234、图像管理模块235、视频播放器模块236、音乐播放器模块237、浏览器模块238、日历模块239、购物模块240、游戏模块241、文字处理模块242和演示模块243,还可以存储包括天气小部件244、计算器小部件245和/或词典小部件246等应用。
其他输入设备202可用于接收输入的数字或字符信息,以及产生与终端200的用户设置以及功能控制有关的键信号输入。具体地,其他输入设备202可包括但不限于物理键盘、功能键(例如,音量控制按键、开关按键等)、轨迹球、鼠标、操作杆、光鼠(光鼠是不显示可视输出的触摸敏感表面,或者是由触摸屏形成的触摸敏感表面的延伸)等中的一种或多种。其他输入设备202与I/O子***206的其他输入设备控制器202相连接,在其他输入设备控制器209的控制下与处理器207进行信号交互。
显示屏203包括显示面板214和触控面板215。其中,触控面板215,也称为触摸屏、触敏屏等,可收集用户在其上或附近的接触或者非接触操作(例如,用户使用手指、触笔等任何适合的物体或附件在触控面板215上或在触控面板215附近的操作,也可以包括体感操作;该操作包括单点控制操作、多点控制操210作等操作类型),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板215可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位、姿势,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成处理器能够处理的信息,再通过I/O子***206送给处理器207,并能通过I/O子***206接收处理器207发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板215,也可以采用未来发展的任何技术实现触控面板215。进一步的,触控面板215可覆盖显示面板214,用户可以根据显示面板214显示的内容(该显示内容包括但不限于,软键盘、虚拟鼠标、虚拟按键、图标等等),在显示面板214上覆盖的触控面板215上或者附近进行操作,触控面板215检测到在其上或附近的操作后,通过I/O子***206传送给处理器207以确定用户输入,随后处理器207根据用户输入通过I/O子***206在显示面板214上提供相应的视觉输出。
需要说明的是,虽然在图2中,触控面板215与显示面板214是作为两个独立的部件来实现终端200的输入和输出功能,但是在某些实施例中,可以将触控面板215与显示面板214集成以实现终端200的输入和输出功能,本申请实施例对此不作具体限定。
终端200还可包括至少一种传感器204,例如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板214的亮度,与照相机模块234相结合,光学传感器可捕获静止图像或视频。可选的,光学传感器位于与设备前面的显示屏203相对的终端200的后面,以使得显示屏203可被用作用于静止和/或视频图像获取的取景器。可选的,光学传感器位于终端200的前面,以使得在用户在显示屏203上观看其它视频会议参与者的同时为进行视频会议而获得用户的图像。可由用户改变光学传感器的位置(例如,通过旋转设备外壳内的透镜和传感器),以使得光学传感器可以与显示屏203和视频会议模块230一起使用,以用于视频会议和静止和/或视频图像获取。接近传感器可在终端200移动到耳边时,关闭显示面板214和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别设备姿态的应用(例如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(例如计步器、敲击)等;至于终端200还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
可选的,终端200还可以包括射频(radio frequency,RF)电路216。RF电路216可用于收发信息或通话过程中,信号的接收和发送;通常,RF电路包括天线、放大器、收发信机、耦合器、低噪声放大器、双工器等等。此外,RF电路216还可以通过无线通信与网络和其他设备通信。该无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯***(global System of mobile communication,GSM)、码分多址(code division multipleaccess,CDMA)、通用分组无线服务(general packet radio service,GPRS)、宽带码分多址(wideband code division multiple access,WCDMA)、长期演进(long term evolution,LTE)、电子邮件、短消息服务(short messaging service,SMS)等。
音频电路205、扬声器212及麦克风213可提供用户与终端200之间的音频接口。音频电路205可将接收到的音频数据转换后的信号,传输到扬声器212,由扬声器212转换为声音信号输出;另一方面,麦克风213将收集的声音信号转换为信号,信号由音频电路205接收后转换为音频数据,再将音频数据输出至RF电路216以发送给另一设备,或者将音频数据输出至存储器201以便进一步处理。
I/O子***206用来控制输入输出的外部设备,包括其他输入设备控制器209、传感器控制器210、显示控制器211。可选的,一个或多个其他输入设备控制器209从其他输入设备202接收信号和/或者向其他输入设备202发送信号。I/O子***206中的显示控制器206从显示屏203接收信号和/或者向显示屏203发送信号。显示屏203检测到用户输入后,显示控制器206将检测到的用户输入转换为与显示在显示屏203上的用户界面对象的交互,即实现人机交互。传感器控制器210可以从一个或者多个传感器204接收信号和/或者向一个或者多个传感器204发送信号。
处理器207是终端200的控制中心,利用各种接口和线路连接整个终端200的各个部分,通过运行或执行存储在存储器201内的软件程序和/或模块,以及调用存储在存储器201内的数据,执行终端200的各种功能和处理数据,从而对终端200进行整体监控。可选的,为了更流畅的处理速度,处理器207内部可以设一个存储单元,该存储单元用于存储各种操作指令供处理器207调用。可选的,处理器207可包括一个或多个处理单元;可选的,处理器207可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作***、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器207中。
终端200还包括给各个部件供电的电源208(例如,电池),可选的,电源可以通过电源管理***与处理器207逻辑相连,从而通过电源管理***实现管理充电、放电、以及功耗等功能。尽管未示出,终端200还可以包括摄像头、蓝牙、菜单键等,在此不再赘述。
下面,结合终端200中的各个部件对存储器201内存储的各个模块进行简要说明:
操作***217包含用于控制和管理一般***任务(例如,存储器管理、存储设备控制、电力管理等)的各种软件部件和/或驱动器,并且有利于各种硬件和软件部件之间的通信。
通信模块218经由一个或多个外部端口与其它设备的通信,并且还包含用于处理由RF电路216和/或外部端口接收的数据的各种软件部件。
接触/移动模块219可检测与显示屏203(与显示控制器211结合)和其它触摸敏感设备(例如,触摸板)的接触。可选的,接触/移动模块219和显示控制器211可以结合检测触摸板上的接触。
图形模块220包含用于在触摸屏或其它显示器上呈现和显示图形的各种已知的软件部件。其中,“图形”包含可显示给用户的任何对象,包括但不限于文本、网页、图标(诸如包含软键的用户界面对象)、数字图像、视频和动画等。可选的,图形模块220存储表示要使用的图形的数据。图形模块220从应用等接收一个或多个代码,所述代码规定如果必要的话要与坐标数据和其它图形属性数据一起显示的图形,并随后产生输出到显示控制器211的屏幕图像数据。
文本输入模块222可以是图形模块220的部件,提供用于在各种应用(例如,联系人模块228、电子邮件客户端模块231、即时消息模块232、浏览器模块238和需要文本输入的任何其它应用)中键入文本的软键盘。
GPS模块223可用于确定终端200的位置并且提供该信息以用于各种应用中(例如,提供给电话模块229以用于基于位置的拨号中、提供给照相机模块234作为图片/视频元数据和提供给地图/导航之类的提供基于位置的服务的应用)。
文件传输行为检测模块224可用于识别终端中的应用是否存在文件传输行为。可选的,文件传输包括文件上传和文件下载。例如,用户通过在浏览器中点击下载链接,或者通过在下载软件中输入待下载文件的统一资源定位符(uniform resource locator,URL)地址可以启动文件下载任务。
资源检测模块225可用于检测终端中各个应用的资源使用情况以及终端中剩余资源情况。
资源清理模块226用于清理终端中运行的应用或服务,可与资源检测模块225和/或文件传输行为检测模块224结合使用。
资源分配模块227用于为各个应用分配终端内的各种资源。可选的,本申请实施例中的资源包括终端的CPU、内存或网络带宽等,需要说明的是,本申请实施例中还可包括其他资源,对于资源分配模块227可分配的资源类型,本申请实施例不作具体限定。
应用可包含以下模块(或多组指令)或它们的子集或超集:联系人模块228(也可称为地址薄或联系人列表);电话模块229;视频会议模块230;电子邮件客户端模块231;即时消息模块232;语音备忘录模块233;用于拍摄静止和/或视频图像的照相机模块234;图像管理模块235;视频播放器模块236;音乐播放器模块237;浏览器模块238;日历模块239;购物模块240、游戏模块241、文字处理模块242、演示模块243以及天气小部件244、计算器小部件245和/或词典小部件246等。
联系人模块228可提供电话号码或电子邮件地址,联系人模块228可以与显示屏203、显示控制器211、接触/移动模块219、图形模块220和文本输入模块222结合。用户可以使用联系人模块228管理地址薄或联系人列表,或者结合电话模块229、视频会议模块230、电子邮件客户端模块230或即时消息模块231使用联系人模块等。
电话模块229可被用于键入与电话号码对应的一系列字符、访问联系人模块228中的一个或多个电话号码、修改已键入的电话号码、对相应的电话号码拨号、进行通话并在完成通话时断开或挂断。电话模块229可以与RF电路216、音频电路205、扬声器212、麦克风213、显示屏203、显示控制器206、接触/移动模块219、图形模块220和/或文本输入模块222结合。
视频会议模块230可被用于启动、进行和终止用户和一个或多个其它参与者之间的视频会议。视频会议模块230可以与RF电路216、音频电路205、扬声器212、麦克风213、显示屏203、显示控制器206、光学传感器、光学传感器控制器、接触/移动模块219、图形模块220、文本输入模块222、联系人模块228和/或电话模块229结合。
电子邮件客户端模块231可被用于创建、发送、接收和管理电子邮件。电子邮件客户端模块231可以与RF电路216、显示屏203、显示控制器206、接触/移动模块219、图形模块220和/或文本输入模块222结合。电子邮件客户端模块231与图像管理模块235结合,可以使得创建和发送带有由照相机模块234拍摄的静止或视频图像的电子邮件变得非常容易。
即时消息模块232可被用于键入与即时消息对应的一系列字符、修改先前键入的字符、传送相应的即时消息(例如,使用用于基于电话的即时消息的SMS或多媒体消息服务(multimedia messaging service,MMS)协议或者使用用于基于因特网的即时消息的可扩展通讯和表示协议(extensible messaging and presence protocol,XMPP)、simple协议(session initiation protocol for instant messaging and presence leveraging,SIMPLE)或即时通信和状态信息的服务(instant messaging presence services,IMPS))、接收即时消息并观看接收到的即时消息。即时消息模块232可以与RF电路216、显示屏203、显示控制器206、接触/移动模块219、图形模块220和/或文本输入模块222结合;需要说明的是,传送和/或接收的即时消息可包含图形、照片、音频文件、视频文件和/或其它附件。即时消息指的是基于电话的消息(例如,使用SMS或MMS发送的消息)和基于因特网的消息(例如,使用XMPP、SIMPLE或IMPS发送的消息)。
语音备忘录模块233可被用于记录演讲、听写测验、电话交谈、会话、表演等的音频,并且在电子邮件或即时消息中发送该音频。语音备忘录模块233与RF电路216、显示屏203、显示控制器206、接触/移动模块219、图形模块220、文本输入模块222、电子邮件客户端模块231和/或即时消息模块232结合。
照相机模块234可被用于捕获静止图像或视频(包含视频流),照相机模块234与显示屏203、显示控制器206、光学传感器(一个或多个)、光学传感器控制器、接触/移动模块219、图形模块220和/或图像管理模块235结合,并且将它们存储于存储器201中、修改静止图像或视频的特性,或者从存储器201中删除静止图像或视频。
图像管理模块235可被用于配置、修改(例如,编辑)或另外操作、标注、删除、呈现(例如,以数字幻灯片放映或相册的方式)并且存储静止和/或视频图像。图像管理模块235与显示屏203、显示控制器206、接触/移动模块219、图形模块220、文本输入模块222和/或照相机模块234结合。
视频播放器模块236可被用于显示、呈现或另外回放视频(例如,在触摸屏上,或者,通过外部端口在外部的连接的显示器上),视频播放器模块236与显示屏203、显示控制器206、接触/移动模块219、图形模块220、音频电路205和/或扬声器212结合。
音乐播放器模块237允许用户下载并回放MP3(moving picture experts groupaudio layer-3)格式或高级音频编码(advanced audio coding,AAC)文件的以一种或多种文件格式存储的所记录的音乐和其它声音文件。音乐播放器模块237与显示屏203、显示控制器206、接触/移动模块219、图形模块220、音频电路205、扬声器212、RF电路216和/或浏览器模块238结合,可选的,终端200也可包含MP3播放器的功能。
浏览器模块238可被用于浏览因特网,包括搜索、链接到、接收和显示网页或者它们的各部分以及与网页链接的附件和其它文件。浏览器模块238可以与RF电路216、显示屏203、显示控制器206、接触/移动模块219、图形模块220和/或文本输入模块222结合。
日历模块239可被用于产生、显示、修改和存储日历和与日历相关的数据(例如,日历条目、待做事项列表等)。日历模块239与RF电路216、显示屏203、显示控制器206、接触/移动模块219、图形模块220、文本输入模块222、电子邮件客户端模块231和/或浏览器模块238结合。
小部件模块是可被下载并被用户使用的微型应用,小部件模块可以与RF电路216、显示屏203、显示控制器206、接触/移动模块219、图形模块220、文本输入模块221和/或浏览器模块238结合。
这些模块(即,多组指令)不需要被实现为单独的软件程序、过程或模块,可以在各种实施例中组合或另外重新配置这些模块的各种子集。例如,视频播放器模块236可与音乐播放器模块237组合成单个模块。在一些实施例中,存储器201可存储以上识别的模块和数据结构的子集。并且,存储器201可存储以上没有描述的其它模块和数据结构。
需要说明的是,本申请实施例所涉及的设备可以是移动电话(或称为“蜂窝”电话),平板电脑等任意具体上述功能模块的设备,本申请实施例对此不作具体限定。
下面将结合图2对本申请实施例提供的应用的资源管理方法进行具体阐述。
图3为本申请实施例提供的一种应用的资源管理方法流程示意图,包括步骤S101-S102:
S101、终端确定目标应用。
其中,目标应用为在终端后台运行的,且存在文件传输行为的应用。
可选的,存在文件传输行为的应用满足以下条件中任意一个条件:
第一个条件:与服务器建立的连接包括至少一个长连接,且在第一连接时长内该至少一个长连接中的任意一个长连接上传输的流量超过第一阈值。
其中,第一连接时长与第一连接时长对应的第一阈值也可以为根据经验值确定的,也可以为用户在终端上设置的。示例性的,第一条件可以为1min内一个长连接上传输了20MB流量,第一条件也可以为5min内一个长连接上传输了80MB流量,本申请实施例对于第一连接时长和第一阈值的值不作具体限定。
通常,长连接指在一个连接上可以连续发送多个数据包,在连接保持期间,如果没有数据包发送,需要双方发链路检测包。
示例性的,给出一个传输控制层协议(transmission control protocol,TCP)长连接的简要举例。假设客户端(client)向服务器(server)发起连接,服务器接受客户端发起的连接,服务器和客户端建立连接,在客户端与服务器完成一次读写之后,客户端和服务器之间的连接并不会主动关闭,后续该客户端和该服务器之间的读写操作继续使用该连接。通常,在应用的交互过程中,客户端或服务器端可能发生意外断电、死机、崩溃、重启;或者网络已经中断,而客户端与服务器端并不知道。为了确定TCP连接是否断开,目前TCP协议提供TCP保活功能,保活功能主要为服务器应用提供,服务器应用希望确定客户端主机是否崩溃,从而可以代表客户使用资源。如果客户已经消失,服务器上保留一个半开放的TCP连接等待来自客户端的数据,保活功能就是试图在服务器端检测到这种半开放的TCP连接,从而保证在意外发生时,可以释放半开放的TCP连接。
需要说明的是,HTTP长连接和HTTP短连接本质上为TCP长连接和TCP短连接。HTTP属于应用层协议,TCP协议属于传输层协议,本申请实施例对连接为哪一层的连接不作具体限定。
可选的,终端中的应用在传输文件时,与服务器建立一个连接可进行文件传输,也可建立多个连接进行文件传输,本申请实施例对于建立的连接的个数不作具体限定。
第二个条件:通过标准文件传输协议与服务器建立至少一个连接,且在第二连接时长内该至少一个连接中的任意一个连接上传输的流量超过第二阈值。
其中,第二连接时长与第二连接时长对应的第二阈值可以为根据经验值确定,也可以为用户在终端上设置的。示例性的,设置连接上1min内传输了超过20MB流量,或者设置连接上2min内传输了30MB流量,本申请实施例对于第二连接时长和第二阈值的值不作具体限定。
需要说明的是,本申请实施例中,第一连接时长和第二连接时长可以相同也可以不同,第一阈值和第二阈值可以相同也可以不同,本申请实施例对此不作具体限定。
其中,文件传输协议是用于在网络上进行文件传输的标准协议。
可选的,标准文件传输协议为文件传输(file transfer protocol,FTP)协议、对等网络(peer to peer,P2P)协议、简单邮件传输协议(simple mail transfer protocol,SMTP)协议、第三版本邮局协议(post office protocol-version 3,POP3)协议或者Internet邮件访问协议(Internet mail access protocol,IMAP)。
若终端中的应用使用了上述协议中的至少一种建立至少一个连接,且在第二连接时长内该至少一个连接中的任意一个连接上传输的流量超过第二阈值,终端可确定应用中存在目标应用。
文件传输协议还包括HTTP协议和超文本传输安全协议(hyper text transferprotocol over secure socket layer,HTTPS)协议。使用HTTPS协议的通信双方在HTTP上层使用HTTP协议通信,底层通过安全套接层协议(secure sockets layer,SSL)/安全传输层协议(transport layer security,TLS)协议加密数据包。
可选的,可以通过以下任一种方式确定一个连接使用的文件传输协议。
1、通过连接对应的端口号识别该连接使用的文件传输协议。
例如,若一个连接对应的端口为端口20/21,则确定该连接使用的文件传输协议为FTP协议;若一个连接对应的端口为端口80或端口8080,则确定该连接使用的文件传输协议为HTTP协议;若一个连接对应的端口为端口25,则确定该连接使用的文件传输协议为SMTP协议;若一个连接对应的端口为端口110,则确定该连接使用的文件传输协议为POP3协议;若一个连接对应的端口为端口143,则确定该连接使用的文件传输协议为IMAP协议。
2、通过监测连接上数据包的前几个数据包的识别该连接使用的文件传输协议。
例如,检测到连接上的第1包为Hello消息,且前6个字节中的1个字节为协议标识,1个字节为消息类型,4个字节为消息长度,则确定该连接使用的文件传输协议为eMule协议(一种常用的P2P协议)的。
第三个条件:通过HTTP协议或HTTPS协议与服务器建立连接,且传输文件的尺寸超过第三阈值。
需要说明的是,第三阈值可以设置为数十兆以上。
通常,常规的业务需要的流量较少,例如浏览网页,一般网页尺寸为几百KB到几MB,可以设置第三阈值为网页尺寸的十倍以上。本申请实施例对应第三阈值的具体数值不作具体限定。
可选的,本申请实施例中,终端可以在每次打开一个应用后判断该应用是否是目标应用,也可以每隔一个周期确定后台运行的应用是否存在目标应用,或者当终端检测到资源不够用需要清理当前后台运行的应用(比如正在下载视频的浏览器、音乐、视频、游戏或文字处理等应用)或服务,在清理之前可以确定后台应用中是否存在目标应用;或者,当用户手动触发清理,终端在清理之前确定后台应用中是否存在目标应用;终端也可以在其他情况下确定目标应用,本申请实施例对于何时确定目标应用不作具体限定。
S102、终端在保证目标应用进程的资源的前提下,调整在终端前台运行的应用和/或者后台运行的应用的资源。
可选的,本申请实施例中的资源包括终端的CPU、终端的内存、终端的电量或网络带宽等资源。
具体的,终端在不减少目标应用进程的资源量的前提下,调整在终端前台运行的应用和/或者后台运行的应用的资源。或者,终端在不改变目标应用进程当前占用的资源位置的前提下调整在终端前台运行的应用和/或者后台运行的应用的资源。
需要说明的是,应用进程的资源可以包括在内存中的状态,例如占用的内存的大小,在内存中的位置等。终端可以保持应用在内存中占用的大小以及所在位置,在此前提下,为应用增加额外的资源,也可以在不影响应用运行的前提下为应用重新分配更多的资源,本申请实施例对此不作具体限定。
可选的,当终端检测到终端的资源短缺,终端需要清理资源时可执行步骤S102;或者,终端检测到有应用存在文件传输行为,需要为文件传输增加网络带宽时可执行上述步骤S102;或者,用户发现前台应用运行不流畅,向终端触发调整资源的指令指示终端执行步骤S102;或者,终端在监测到应用存在文件传输行为后,向用户显示是否为该应用调整资源,在接收用户确定调整资源的指示后,终端也可执行步骤S102,终端也可以在其他情况下执行步骤S102,本申请实施例对于终端执行步骤S102的条件不作具体限定。
具体的,结合图2,终端200中的文件传输行为检测模块224用于支持终端200执行本申请实施例中的步骤S101、终端200中的资源清理模块226或资源分配模块227用于支持终端200执行本申请实施例中的步骤S102。
本申请实施例提供的应用的资源管理方法,通过第一条件、第二条件或第三条件确定目标应用,可以使终端可以管理目标应用和其他应用的资源,避免了资源浪费,进而提高了在使用终端进行文件传输时的用户体验。
当终端确定连接使用了HTTP协议或HTTPS协议时,文件传输和普通浏览网页行为无法区分,因此,本申请实施例中进一步通过判断传输文件的尺寸来确定应用中是否存在文件传输行为。
可选的,终端确定“传输文件的尺寸大于网页尺寸至少一个数量级”包括步骤S101a-S101c:
S101a、终端获取应答消息。
其中,应答消息为终端向服务器发送的应答消息,或服务器向终端发送的应答消息。
需要说明的是,当用户通过终端传输文件时,终端向服务器发送传输请求消息,该请求消息中携带需要传输的文件的标识,服务器收到终端发送的请求消息后,根据终端发送的请求消息向终端发送第一应答消息,该第一应答消息中携带用户需要传输的文件。当用户通过终端传输文件时,终端向服务器发送传输请求后,终端在接收到服务同意传输的指示后向服务器发送第二应答消息,该第二应答消息中携带用户需要传输的文件。
可选的,若终端中的应用通过HTTP协议与服务器建立连接,终端检测运行的应用是否存在文件传输行为需要获取应答消息时,步骤S101a可包括S101a1:
S101a1、终端在传输对象解析点获取并解析应答消息。
其中,若通过HTTP协议与服务器建立连接,传输对象解析点可位于HTTP层和传输控制协议层TCP层之间。
图4为一种解析应答消息的示意图,如图4所示,终端侧和服务器侧分别包括HTTP层、TCP层和IP层,其中,终端侧的IP层和服务器侧的IP层通过网络通信,终端在TCP层(传输层)和HTTP层(应用层)之间设置HTTP传输对象解析点,在该解析点获取并解析应答消息,从而获得传输文件的尺寸。
在TCP层和HTTP层之间解析应答消息,可以获得传输文件的尺寸,为终端判断后台运行的应用是否存在文件传输行为提供依据。
可选的,若通过HTTPS协议与服务器建立连接,传输对象解析点可位于HTTP层和SSL/TLS层之间。
加密协议的密钥只有通信双方持有,中间网络设备无法解析数据,目前互联网服务提供商(Internet Service Provider,ISP)提供的常规协议识别算法无法解析加密协议的数据。
图5为一种解析应答消息的示意图,如图5所示,终端侧和服务器侧分别包括HTTP层、SSL/TLS层、TCP层和IP层,其中,终端侧的IP层和服务器侧的IP层通过网络通信,在终端的SSL(安全套接层)/TLS层(安全传输层)和HTTP层(应用层)之间设置HTTP传输对象解析点,终端可在该解析点获取并解析应答消息,从而获得传输文件的尺寸。
若应用与服务器建立的连接采用HTTPS协议,终端通过在SSL/TLS层和HTTP层之间获取并解密应答消息,从而获得传输文件的尺寸。
S101b、终端根据应答消息确定传输文件的尺寸。
S101c、终端确定传输文件的尺寸是否超过第三阈值。
具体的,结合图2,终端200中的文件传输行为检测模块224可用于支持终端200执行本申请实施例中的步骤S101a、S101b和S101bc。
本申请实施例提供的应用的资源管理方法,若终端检测到后台运行的应用与服务器建立的连接采用HTTP协议或HTTPS协议,且传输文件的尺寸大于网页尺寸至少一个数量级,则终端可以确定该应用中存在文件传输行为,从而使得终端对该应用的资源可以灵活管理,可以使得文件传输任务尽快完成,提高了用户在使用终端进行文件传输的体验。
可选的,若终端中的应用采用HTTP协议或HTTPS协议与服务器建立连接,终端确定传输文件的尺寸时,步骤S101b包括S101b1:
S101b1、终端根据第一指示获取应答消息携带的传输文件的尺寸。
需要说明的是,应答消息中携带第一指示时,应答消息为整体传输模式。
通常,用户在终端上的操作会以请求消息的形式发送给终端或者服务器,终端或者服务器会根据用户发送的请求向终端发送应答消息,根据应答消息再向用户返回对用户操作的响应。其中,请求消息包括请求行和请求首部,可选的,还包括请求主体;应答消息包括:状态行,应答首部,可选的,还包括应答主体。请求行以请求方法名开始,后面是资源标识符以及浏览器使用的协议版本。最常用的请求方法为GET,GET请求用于从服务器中取资源,为默认的请求方法。例如,用户在浏览器的地址栏输入一个URL或点击一个链接,则用户的请求以GET请求发送给服务器。
示例性的,假设终端向服务器发送的请求消息如下:
GET/HTTP/1.1(请求行)
Host:www.***.com(请求首部)
示例性的,响应于上述的请求消息,整体传输时,服务器向终端发送的应答消息如下:
需要说明的是,上述示例的应答消息中的“Content-Length”字段即本申请实施例中的第一指示。根据第一指示获取传输文件的尺寸。若应答消息中携带“Content-Length”字段,表示该应答消息为整体传输模式;若一个应用采用HTTP协议与服务器建立连接,且应答消息中“Content-Length”的值为数十MB,终端可确定该应用是文件传输。
具体的,结合图2,终端200中的文件传输行为检测模块224可用于支持终端200执行本申请实施例中的步骤S101b1。
通过终端检测到应用与服务器采用HTTP协议建立连接,终端检测服务器发送的应答消息,为整体传输时,根据应答消息的第一指示获取传输文件的尺寸,从而可根据传输文件的尺寸确定应用是否存在文件传输行为,进而为终端合理管理应用的资源提供依据。
可选的,若终端中的应用采用HTTP协议或HTTPS协议与服务器建立连接,终端确定传输文件的尺寸时,步骤S101b还可以包括S101b2:
S101b2、终端根据应答消息携带的第二指示确定应答消息中传输的数据块累计的尺寸。
其中,第二指示用于指示应答消息为分块传输模式。
本申请实施例中,当服务器或终端采用HTTP协议的分块传输模式,终端通过确定传输的数据块累计尺寸获得传输文件的尺寸。
示例性的,响应于上述的请求消息,分块传输时,服务器向终端发送的应答消息如下:
需要说明的是,上述应答消息中的“Transfer-Encoding:chunked”即为本申请中的第二指示。上述的应答消息中的“23”、“1A”、“3”和“8”为4个数据块的长度(16进制,转换为10进制分别为35、26、3、8字节)对应的4段数据分别为“This is the data in the firstchunk”、“and this is the second one”、“con”、“sequence”。
具体的,结合图2,终端200中的文件传输行为检测模块224用于支持终端200执行本申请实施例中的步骤S101b2。
若终端检测到后台运行的应用与服务器采用HTTP协议建立连接,终端检测服务器发送的应答消息,若应答消息指示为分块传输时,可以从应答消息中确定累计的块HTTP传输对象的尺寸,进而为终端判断后台应用是否存在文件传输行为提供依据。
可选的,终端可以在后台自动清理后台运行的应用,终端也可以接收用户选择清理后台的应用。
当终端在后台自动清理后台运行的应用时,则步骤S102可包括步骤S102a1:
S102a1、若确定为前台运行的应用分配的资源小于第四阈值时,终端清理除目标应用之外的至少一个后台运行的应用。
示例性的,图6为本申请实施例提供的一种是否清理后台应用的选择界面。假设用户在启动多个应用后返回到主页面,终端在执行清理操作时检测到第一应用为存在下载行为,终端在主页面显示如图6中的6A所示的界面,在终端显示屏上显示一个选择提示框,显示“正在清理,是否清理以下应用?”,选择提示框中显示存在文件传输行为的应用以及提示开关,比如第一应用,若用户点击开关左边,表示用户不同意清理第一应用,若用户点击开关右边,表示用户同意清理第一应用;若同时存在多个下载的应用,则显示该多个下载应用是否清理的提示框,比如第二应用为下载电影的应用,第三应用为下载文件的应用,则终端可在界面上显示如图6的6B中,是否清理第一应用(文件传输)、第二应用(文件传输)和第三应用(文件传输)的提示框,用户在图6中的6A或6B所示的界面选择是否清理的操作。
需要说明的是,本申请实施例中的选择提示框可根据清理的应用是否存在文件传输行为的应用选择是否显示,当后台运行的应用中存在文件传输行为的应用时,终端显示选择提示框,当后台运行的应用中不存在文件传输行为的应用时,终端在后台直接清理,终端可以不显示选择提示框,也可显示选择提示框,本申请实施例对此不作具体限定。
示例性的,图7为本申请实施例提供的一种是否清理后台应用的选择界面。假设用户在启动多个应用后,用户正在第二应用中观看视频,后台的第一应用存在文件下载行为,其他后台应用不存在文件下载行为,终端在后台执行清理操作时可以向用户显示如图7中的7A所示的界面或7B所示的界面,其中,图7中的7A中选择框位于显示屏显示的边缘,图7中的7B中清理的选择框位于显示屏中的视频界面上,用户可以在图7中的7A或7B所示的界面触发不清理第一应用的操作。
本申请实施例提供的应用的资源管理方法,若确定为前台运行的应用分配的资源小于第四阈值时,终端清理除目标应用之外的至少一个后台运行的应用,可以保证目标应用不被清理,使得终端对应用的资源可以灵活管理,避免了目标应用中文件传输的失败,减少了用户的流量损失,提高了用户体验。
当用户触发清理后台应用时,例如触发清理图标时,终端无需判断前台应用资源是否小于第四阈值,终端可直接执行后台运行的应用的清理操作,则步骤S102可包括步骤S102a2-S102a3:
S102a2、若终端检测到用户触发的清理操作指令,响应于清理操作指令,终端在显示界面上显示是否清理目标应用的第一显示界面。
S102a3、检测到用户在第一显示界面触发的第一操作指令,响应于第一操作指令,终端清理除目标应用之外的至少一个后台运行的应用。
其中,第一操作指令指示不清理目标应用。
图8为本申请实施例提供的一种终端的显示界面,当终端接收用户指示清理时,可以为用户提供如图8所示的显示界面。其中,图8中的8A为用户在主页面上点击清理图标,可以显示如图7中的7B所示的界面,显示正在执行下载的第一应用以及第二应用和第三应用,供用户选择清理。
示例性的,用户在正在观看视频,如图9中的9A所示,用户触发任务栏中的清理图标,显示如图9中的9B所示的选择界面供用户选择,或者用户触发清理一段时间后清理到有下载行为的第一应用,在终端的通知栏显示如图9中的9C显示的选择界面供用户选择。
具体的,结合图2,终端200中的资源检测模块202和资源清理模块226用于支持终端200执行本申请实施例中的步骤S102a1-S102a3。
本申请实施例提供的应用的资源管理方法,若终端检测到用户触发的清理操作时,终端清理除目标应用之外的至少一个后台运行的应用,可以保证目标应用不被清理,使得终端对应用的资源可以灵活管理,避免了目标应用中文件传输的失败,减少了用户的流量损失,提高了用户体验。
可选的,终端检测到有文件传输行为的应用时,为了使文件传输的更快,或者为了使当前的应用的用户体验更佳,终端可以为存在文件传输行为的应用重新分配资源。当然,终端也可以接收用户指令重新分配传输资源。
当终端根据终端确定的资源满足分配的条件时,步骤S102可以包括步骤S102b1:
S102b1、若确定终端可分配的资源大于或等于第五阈值时,终端重新分配终端中当前运行的应用的资源。
可选的,终端在不减少目标应用的资源的前提下,或者不变更目标应用当前资源的位置情况下,重新分配终端中当前运行的应用的资源。其中当前资源信息为占用资源的位置或大小,终端可以在资源的其他位置为目标应用增加重新分配的更多的资源,例如从其他内存块为目标应用增加更多的内存,本申请实施例对此不作具体限定。
需要说明的是,第五阈值对于不同的资源可以为不用的数值,可以根据每种资源的使用情况选择一个经验值,例如网络带宽剩余量为50%为网络带宽资源的阈值,在实际应用中第五阈值可以根据终端的运行情况和各个应用需要的资源量确定一个经验值,本申请实施例对于第五阈值的具体值不作具体限定。
本申请实施例提供的应用的资源管理方法,若终端确定可分配的资源大于或等于第四阈值时,终端重新分配终端中当前运行的应用的资源,从而为终端中的应用动态的调整资源,因此可以为目标应用增加资源,使得文件传输任务尽快完成,从而提高了用户体验。
可选的,当用户触发重新分配资源的指令时,步骤S102可以包括步骤S102b2-S102b3:
S102b2、若终端检测到用户触发的第二操作指令,响应于第二操作指令,终端显示第二显示界面。
其中,第二操作指示重新分配终端中当前运行的应用的资源。
S102b3、检测到用户在第二显示界面触发的第三操作指令,终端重新分配终端中当前运行的应用的资源。
其中,第二操作指示为终端中当前运行的应用分配资源。
需要说明的是,用户触发的第三操作指令可为至少一个应用分配资源,本申请实施例对于用户触发的第三操作指令调整的应用的个数不作具体限定。
具体的,结合图2,终端200中的资源检测模块202和资源分配模块227用于支持终端200执行本申请实施例中的步骤S102b1-S102b3。
本申请实施例提供的应用的资源管理方法,若终端检测到用户触发的重新分配资源的指令时,终端重新分配终端中当前运行的应用的资源,从而为终端中的应用动态的调整资源,因此可以为目标应用增加资源,使得文件传输任务尽快完成,从而提高了用户体验。
当终端确定需要重新分配资源,或者终端接收用户触发的重新分配终端中资源的指令时,上述步骤S102b1和S102b2中的“终端重新分配终端中当前运行的应用的资源”包括步骤W1-W4:
W1、终端根据终端中当前运行的应用是否存在文件传输行为确定终端中当前运行的应用的第一权重因子。
W2、终端根据终端中当前运行的应用是否为前台应用确定终端中当前运行的应用的第二权重因子。
W3、终端根据当前运行的应用的第一权重因子和当前运行的应用的第二权重因子确定当前运行的应用的资源分配权重。
W4、终端根据当前运行的应用的资源分配权重为至少一个当前运行的应用分配资源。
需要说明的是,终端可以为所有的应用调整资源,也可以仅为终端中后台运行的,且存在文件传输行为的应用增加资源,本申请实施例对此不作具体限定。
具体的,结合图2,终端200中的资源分配模块227用于支持终端200执行本申请实施例中的步骤W1-W4。
需要说明的是,在终端的设置界面中,用户也可以手动为后台执行文件传输的应用选择分配的资源。例如,用户可以通过设置,允许后台文件上传下载使用70%的网络带宽。终端检测到第一应用存在文件传输行为,即可为第一应用保留70%的网络带宽。
示例性的,以分配网络带宽为例,图10为本申请实施例提供一种终端分配资源的界面示意图。如图10中的10A所示,假设终端默认后台运行的应用和前台运行的应用占用的网络带宽均为50%,用户可以直接设置后台运行的应用占用的网络带宽为70%,前台运行的应用占用30%,设置后的界面为图10中的10B所示。当然,也可以显示每个应用占用的网络带宽,例如如图10中的10C所示,第一应用占用50%的网络带宽,第二应用占用30%的网络带宽,第三应用占用20%的网络带宽,当终端确定需要重新给应用分配资源时,可以调整当前运行的每个应用的资源的管理条。假设终端显示后台运行的第一应用为存在文件传输行为的应用,第二应用为后台运行的,且不存在文件传输行为的应用,用户还可以减少第二应用的网络带宽,为第一应用增加资源,例如,为第一应用增加20%的网络带宽。
本申请实施例提供的应用的资源管理方法,通过确定终端中运行的每个应用的第一权重因子和第二权重因子,进而通过每个应用的第一权重因子和第二权重因子可以确定该终端中运行的每个应用的资源分配权重,从而可以根据目标应用的资源分配权重管理目标应用的资源。
可选的,在步骤S102之前,终端还可为应用设置优先级。优先级包括清理优先级和分配优先级。终端设置前台应用清理优先级最低,设置目标应用的清理优先级较低,设置后台运行的非目标应用的清理优先级较高,在终端清理后台运行的应用时,终端首先清理清理优先级较高的应用。
可选的,终端为前台应用设置最高的分配优先级,设置目标应用较高的分配优先级,非目标应用较低的分配优先级,终端在调整资源时首先调整分配优先级较高的应用的资源。
示例性的,假设终端当前运行了8个应用,其中,第一应用和第二应用为目标应用,第三应用为前台应用,其他应用为非目标应用,则终端在清理时按照当前运行的8个应用的按照清理清理优先级从高到低的顺序清理排在前5名的应用。
本申请实施例提供的应用的资源管理方法,通过为目标应用设置优先级,可以使得终端在对应用进行资源管理时,可以根据应用的优先级优先清理清理优先级较高的应用,或者优先调整调整优先级较高的应用,从而可以避免在清理后台运行应用过程中将存在文件传输行为的应用清理,增加了应用资源管理的灵活性。
示例1:前台运行的应用资源不足需要清理后台运行的应用
如图11所示,假设用户1的终端中第一应用为P2P下载软件,第二应用为浏览器软件,第三应用为游戏软件,其中,第一应用可以将视频文件下载到终端中。
用户打开终端希望观看某个影视剧,由于节目太热门视频服务器比较拥挤,在线观看效果不佳,用户决定将视频文件下载到本地后再观看。在时刻1,用户终端上启动了第一应用下载视频文件。由于视频文件尺寸比较大,下载需要较长时间,用户为了避免枯燥的等待在时刻2启动第二应用上网浏览网页;用户看了一段时间网页之后兴趣转移,在时刻3启动了第三应用开始玩游戏。
步骤1、终端确定目标应用。
(1)文件传输行为检测模块223检测到第一应用通过P2P协议与服务器建立了一个长连接,该长连接上1分钟内传输了200MB的流量,则确定第一应用存在文件传输行为。
(2)文件传输行为检测模块223检测到第二应用通过HTTP协议访问网络,且传输文件的尺寸为60KB,则确定第二应用不存在文件传输行为。
假设用户在第三应用玩游戏的过程中消耗了大量的内存资源。
步骤2、终端在保证目标应用的进程的资源的前提下,调整在终端前台运行的应用和/或者后台运行的应用的资源。
(1)资源检测模块225检测到内存短缺,资源检测模块225通知资源清理模块226清理后台应用和后台服务。
(2)资源清理模块226获取资源检测模块225的通知,资源清理检测模块226查询应用传输行为检测模块223检测的结果确定第一应用存在文件传输行为,第二应用不存在文件传输行为。
(3)、资源清理模块226清理第二应用。
示例2:前台运行应用资源充足,可为后台运行的应用中的存在传输行为的应用增加资源
如图12所示,假设第一应用为邮件(Email)客户端软件,第二应用为浏览器软件,其中,通过第一应用可以将邮件发送给服务器。用户在T1时刻打开第一应用发送邮件,其中用户在邮件中添加了一个比较大的附件,上传需要较长时间。用户为了避免枯燥的等待在T2时刻启动第二应用浏览网页。假设第一应用占用50%的网络带宽,第二应用占用10%的网络带宽。
步骤1、终端确定目标应用。
(1)传输行为检测模块224检测到第一应用采用SMTP协议与服务器建立了一个长连接,该长连接上在1分钟内传输了100M的流量,则确定第一应用存在文件传输行为。
(2)传输行为检测模块223检测第二应用通过HTTP协议访问网络,获取解析HTTP传输对象的尺寸为100KB,则确定第二应用不存在文件传输行为。
步骤2、终端在保留目标应用现有资源的前提下,调整在终端前台运行的应用和/或者后台运行的应用的资源。
(1)资源分配模块227确定终端中每个应用的资源分配因子。
对于第一应用,正在传输文件且处于后台,假设第一应用的第一权重因子为KDL1=10,第一应用的第二权重因子为KFG1=1,则第一应用的资源分配权重为W1=KDL1×KFG 2=10。
对于第二应用,没有传输文件且处于前台,假设第二应用的第一权重因子为KDL2=1,第二应用的第二权重因子为KFG2=5,则第二应用的资源分配权重W2=KDL2×KFG2=5。
(2)资源分配模块227根据当前运行的应用的资源分配权重为至少一个当前运行的应用分配资源。
假设***中没有第三个应用需要进行网络通信了,则只需要在第一应用和第二应用之间分配网络带宽。
根据第一资源分配权重和第二资源分配权重确定第一应用分配的网络带宽比例为:W1/(W1+W2)=10/(10+5)≈67%。
根据第一资源分配权重和第二资源分配权重确定第二应用分配的网络带宽比例为:W2/(W1+W2)=5/(10+5)≈33%。
终端将第一应用的网络带宽由50%增加至67%。
需要说明的是,对于没有传输行为的应用,终端可以为这部分应用增加网络带宽,也可以保持没有传输行为的应用当前使用的带宽,例如终端可以为第二应用增加至33%的网络带宽,也可以保持第二应用当前10%的网络带宽。
终端根据上述计算得到的网络带宽比例分配网络带宽,不仅可以保证前台第二应用的使用体验,避免用户感受到操作上的卡顿,而且为后台第一应用提供了足够的网络带宽资源,从而可以获得稳定的后台传输速度,尽快完成Email邮件的发送。
上述主要从终端的角度对本申请提供的方案进行介绍,可以理解的是,上述终端为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对终端进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
比如,在采用对应各个功能划分各个功能模块的情况下,图13示出了上述实施例中所涉及的终端1300的一种可能的结构示意图。如图13所示,终端1300包括确定模块131和调整模块132。确定模块131用于支持终端1300执行方法实施例中的步骤S101、S101a-S101c、S101a1、S101b1以及101b2;调整模块132用于支持终端1300执行方法实施例中的步骤S102、S102a1、S102a2、S102a3、S102b1、S102b2、S102b3以及W1-W4;其中,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
以采用集成的方式划分各个功能模块的情况下,图14示出了上述实施例中所涉及的终端1400的一种可能的结构示意图。如图14所示,终端1400包括处理模块141。处理模块141用于支持终端1400执行方法实施例的步骤S101-S102、S101a-S101c、S101a1、S101b1、101b2、S102a1、S102a2、S102a3、S102b1、S102b2、S102b3以及W1-W4。其中,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式来实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或者数据中心通过有线(例如,同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如,红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可以用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带),光介质(例如,数字化视频光盘(digital video disk,DVD))、或者半导体介质(例如,固态硬盘(solid statedisk,SSD))等。
尽管在此结合各实施例对本申请进行了描述,然而,在实施所要求保护的本申请过程中,本领域技术人员通过查看所述附图、公开内容、以及所附权利要求书,可理解并实现所述公开实施例的其他变化。在权利要求中,“包括”(comprising)一词不排除其他组成部分或步骤,“一”或“一个”不排除多个的情况。单个处理器或其他单元可以实现权利要求中列举的若干项功能。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组合起来产生良好的效果。
尽管结合具体特征及其实施例对本申请进行了描述,显而易见的,在不脱离本申请的精神和范围的情况下,可对其进行各种修改和组合。相应地,本说明书和附图仅仅是所附权利要求所界定的本申请的示例性说明,且视为已覆盖本申请范围内的任意和所有修改、变化、组合或等同物。显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (22)
1.一种应用的资源管理方法,其特征在于,所述方法包括:
终端确定目标应用,其中,所述目标应用为在所述终端后台运行的,且存在文件传输行为的应用;
所述终端在保证所述目标应用的进程的资源的前提下,减少在所述终端前台运行的应用的资源;或
所述终端在保证所述目标应用的进程的资源的前提下,减少在所述终端前台运行的应用和后台运行的应用的资源。
2.根据权利要求1所述的方法,其特征在于,所述文件传输行为的应用满足以下条件中的任意一个条件:
与服务器建立的连接包括至少一个长连接,且在第一连接时长内所述至少一个长连接中的任意一个长连接上传输的流量超过第一阈值;
通过标准文件传输协议与服务器建立至少一个连接,且在第二连接时长内所述至少一个连接中的任意一个连接上传输的流量超过第二阈值;
通过超文本传输协议HTTP协议或超文本传输安全协议HTTPS协议与服务器建立连接,且传输文件的尺寸超过第三阈值。
3.根据权利要求2所述的方法,其特征在于,所述终端确定所述传输文件的尺寸超过所述第三阈值,包括:
所述终端获取应答消息,其中,所述应答消息为所述终端向服务器发送的应答消息,或服务器向所述终端发送的应答消息;
所述终端根据所述应答消息确定传输文件的尺寸;
所述终端确定所述传输文件的尺寸是否超过所述第三阈值。
4.根据权利要求3所述的方法,其特征在于,所述终端根据所述应答消息确定传输文件的尺寸,包括:
所述终端根据第一指示获取所述应答消息携带的所述传输文件的尺寸;
或者,
所述终端根据所述应答消息携带的第二指示确定所述应答消息中传输的数据块累计的尺寸,其中,所述第二指示用于指示所述应答消息为分块传输模式。
5.根据权利要求4所述的方法,其特征在于,所述终端获取应答消息,包括:
所述终端在传输对象解析点获取并解析所述应答消息;
其中,若应用通过HTTP协议与服务器建立连接,则所述传输对象解析点位于HTTP层和传输控制协议层TCP层之间;
或者,
若应用通过HTTPS协议与服务器建立连接,则所述传输对象解析点位于HTTP层和安全套接层/安全传输层SSL/TLS层之间。
6.根据权利要求2所述的方法,其特征在于,所述标准文件传输协议为文件传输协议FTP协议、对等网络协议P2P协议、简单邮件传输协议SMTP协议、邮局协议第三版POP3协议或者邮件访问协议IMAP协议。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述终端在保证所述目标应用的进程的资源的前提下,减少在所述终端前台运行的应用的资源;或,所述终端在保证所述目标应用的进程的资源的前提下,减少在所述终端前台运行的应用和后台运行的应用的资源包括:
若确定为前台运行的应用分配的资源小于第四阈值时,清理除所述目标应用之外的至少一个后台运行的应用;
或者,
若确定所述终端可分配的资源大于或等于第五阈值时,重新分配所述终端中当前运行的应用的资源。
8.根据权利要求7所述的方法,其特征在于,所述终端在保证所述目标应用的进程的资源的前提下,减少在所述终端前台运行的应用的资源;或,所述终端在保证所述目标应用的进程的资源的前提下,减少在所述终端前台运行的应用和后台运行的应用的资源还包括:
若所述终端检测到用户触发的清理操作指令,响应于所述清理操作指令,所述终端显示是否清理所述目标应用的第一显示界面;
检测到用户在所述第一显示界面触发的第一操作指令,响应于所述第一操作指令,所述终端清理除所述目标应用之外的至少一个后台运行的应用,其中,所述第一操作指令指示不清理所述目标应用。
9.根据权利要求7所述的方法,其特征在于,所述终端在保证所述目标应用的进程的资源的前提下,减少在所述终端前台运行的应用的资源;或,所述终端在保证所述目标应用的进程的资源的前提下,减少在所述终端前台运行的应用和后台运行的应用的资源还包括:
若所述终端检测到用户触发的第二操作指令,响应于所述第二操作指令,所述终端显示第二显示界面,所述第二操作指令 指示重新分配所述终端中当前运行的应用的资源;
检测到用户在所述第二显示界面触发的第三操作指令,所述终端重新分配所述终端中当前运行的应用的资源,所述第三操作指令指示为所述终端中当前运行的应用分配资源。
10.根据权利要求7或9所述的方法,其特征在于,所述重新分配所述终端中当前运行的应用的资源,包括:
根据所述当前运行的应用中是否存在文件传输行为确定所述终端中当前运行的应用的第一权重因子;
根据所述当前运行的应用是否为前台应用确定所述终端中当前运行的应用的第二权重因子;
根据所述当前运行的应用的第一权重因子和所述当前运行的应用的第二权重因子确定所述当前运行的应用的资源分配权重;
根据所述当前运行的应用的资源分配权重为至少一个所述当前运行的应用分配资源。
11.一种终端,其特征在于,所述终端包括确定模块和调整模块;
所述确定模块用于:确定目标应用;其中,所述目标应用为在所述终端后台运行的,且存在文件传输行为的应用;
所述调整模块用于:在保证所述目标应用的进程的资源的前提下,减少在所述终端前台运行的应用的资源;或,所述终端在保证所述目标应用的进程的资源的前提下,减少在所述终端前台运行的应用和后台运行的应用的资源。
12.根据权利要求11所述的终端,其特征在于,所述文件传输行为的应用满足以下条件中的任意一个条件:
与服务器建立的连接包括至少一个长连接,且在第一连接时长内所述至少一个长连接中的任意一个长连接上传输的流量超过第一阈值;
通过标准文件传输协议与服务器建立至少一个连接,且在第二连接时长内所述至少一个连接中的任意一个连接上传输的流量超过第二阈值;
通过超文本传输协议HTTP协议或超文本传输安全协议HTTPS协议与服务器建立连接,且传输文件的尺寸超过第三阈值。
13.根据权利要求12所述的终端,其特征在于,所述确定模块具体用于:
获取应答消息,其中,所述应答消息为所述终端向服务器发送的应答消息,或服务器向所述终端发送的应答消息;
根据所述应答消息确定传输文件的尺寸;
确定所述传输文件的尺寸是否超过所述第三阈值。
14.根据权利要求13所述的终端,其特征在于,所述确定模块具体用于:
根据第一指示获取所述应答消息携带的所述传输文件的尺寸;
或者,
根据所述应答消息携带的第二指示确定所述应答消息中传输的数据块累计的尺寸,其中,所述第二指示用于指示所述应答消息为分块传输模式。
15.根据权利要求14所述的终端,其特征在于,所述确定模块具体用于:
在传输对象解析点获取并解析所述应答消息;
其中,若应用通过HTTP协议与服务器建立连接,则所述传输对象解析点位于HTTP层和传输控制协议层TCP层之间;
或者,
若应用通过HTTPS协议与服务器建立连接,则所述传输对象解析点位于HTTP层和安全套接层/安全传输层SSL/TLS层之间。
16.根据权利要求12所述的终端,其特征在于,所述标准文件传输协议为文件传输协议FTP协议、对等网络协议P2P协议、简单邮件传输协议SMTP协议、邮局协议第三版POP3协议或者邮件访问协议IMAP协议。
17.根据权利要求11-16任一项所述的终端,其特征在于,所述调整模块具体用于:
若确定为前台运行的应用分配的资源小于第四阈值时,清理除所述目标应用之外的至少一个后台运行的应用;
或者,
若确定所述终端可分配的资源大于或等于第五阈值时,重新分配所述终端中当前运行的应用的资源。
18.根据权利要求17所述的终端,其特征在于,所述终端包括显示模块;所述显示模块用于:
若检测到用户触发的清理操作指令,响应于所述操作指令,显示是否清理所述目标应用的第一显示界面;
检测用户在所述第一显示界面触发的第一操作指令;
所述调整模块还用于,在所述显示模块检测到用户在所述第一显示界面触发的第一操作指令后,响应于所述第一操作指令,清理除所述目标应用之外的至少一个后台运行的应用,其中,所述第一操作指令指示不清理所述目标应用。
19.根据权利要求17所述的终端,其特征在于,所述终端包括显示模块;所述显示模块用于:
若检测到用户触发的第二操作指令,响应于所述第二操作指令,显示第二显示界面,所述第二操作指令 指示重新分配所述终端中当前运行的应用的资源;
检测用户在所述第二显示界面触发的第三操作指令;
所述调整模块还用于,在所述显示模块检测到用户在所述第二显示界面触发的第三操作指令后,重新分配所述终端中当前运行的应用的资源,所述第三操作指令指示为所述终端中当前运行的应用分配资源。
20.根据权利要求17或19所述的终端,其特征在于,所述调整模块具体用于:
根据所述当前运行的应用中是否存在文件传输行为确定所述终端中当前运行的应用的第一权重因子;
根据所述当前运行的应用中是否为前台应用确定所述终端中当前运行的应用的第二权重因子;
根据所述当前运行的应用的第一权重因子和所述当前运行的应用的第二权重因子确定所述当前运行的应用的资源分配权重;
根据所述当前运行的应用的资源分配权重为至少一个所述当前运行的应用分配资源。
21.一种终端,其特征在于,包括:处理器、存储器和通信接口;
所述存储器用于存储计算机执行指令,当所述终端运行时,所述处理器执行所述存储器存储的所述计算机执行指令,以使所述终端执行如权利要求1-10中任意一项所述的应用的资源管理方法。
22.一种计算机可读存储介质,其特征在于,包括计算机指令,当其在计算机上运行时,使得计算机执行如权利要求1-10中任意一项所述的应用的资源管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710940872.XA CN109600409B (zh) | 2017-09-30 | 2017-09-30 | 应用的资源管理方法及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710940872.XA CN109600409B (zh) | 2017-09-30 | 2017-09-30 | 应用的资源管理方法及终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109600409A CN109600409A (zh) | 2019-04-09 |
CN109600409B true CN109600409B (zh) | 2022-08-19 |
Family
ID=65956588
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710940872.XA Active CN109600409B (zh) | 2017-09-30 | 2017-09-30 | 应用的资源管理方法及终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109600409B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111954286B (zh) * | 2020-08-06 | 2022-04-22 | 捷开通讯(深圳)有限公司 | 一种功率调节方法、装置、存储介质及终端 |
CN114916017B (zh) * | 2022-07-18 | 2022-10-04 | 荣耀终端有限公司 | 数据传输的方法、电子设备及可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101355590A (zh) * | 2008-09-05 | 2009-01-28 | 深圳市迅雷网络技术有限公司 | 下载提示方法、***及装置 |
CN105468426A (zh) * | 2016-01-05 | 2016-04-06 | 珠海市魅族科技有限公司 | 一种应用冻结的方法及终端 |
CN105701025A (zh) * | 2015-12-31 | 2016-06-22 | 华为技术有限公司 | 一种内存回收方法及装置 |
CN106125882A (zh) * | 2016-06-15 | 2016-11-16 | 深圳市万普拉斯科技有限公司 | 一种应用程序的管理方法以及电子设备 |
CN106919428A (zh) * | 2017-03-21 | 2017-07-04 | 北京奇虎科技有限公司 | 清理移动终端内存的方法、装置及移动终端 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7126467B2 (en) * | 2004-07-23 | 2006-10-24 | Innovalarm Corporation | Enhanced fire, safety, security, and health monitoring and alarm response method, system and device |
CN103024538A (zh) * | 2012-11-12 | 2013-04-03 | 北京奇虎科技有限公司 | 内存管理方法及*** |
CN105677477B (zh) * | 2015-12-30 | 2019-10-15 | 北京金山安全软件有限公司 | 一种优化应用程序资源的方法、装置及电子设备 |
CN105824702A (zh) * | 2016-03-22 | 2016-08-03 | 乐视云计算有限公司 | 一种管理程序内存占用量的方法和终端 |
CN107168791A (zh) * | 2017-04-13 | 2017-09-15 | 北京安云世纪科技有限公司 | 亮屏状态下的终端内存优化方法、装置及移动终端 |
-
2017
- 2017-09-30 CN CN201710940872.XA patent/CN109600409B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101355590A (zh) * | 2008-09-05 | 2009-01-28 | 深圳市迅雷网络技术有限公司 | 下载提示方法、***及装置 |
CN105701025A (zh) * | 2015-12-31 | 2016-06-22 | 华为技术有限公司 | 一种内存回收方法及装置 |
CN105468426A (zh) * | 2016-01-05 | 2016-04-06 | 珠海市魅族科技有限公司 | 一种应用冻结的方法及终端 |
CN106125882A (zh) * | 2016-06-15 | 2016-11-16 | 深圳市万普拉斯科技有限公司 | 一种应用程序的管理方法以及电子设备 |
CN106919428A (zh) * | 2017-03-21 | 2017-07-04 | 北京奇虎科技有限公司 | 清理移动终端内存的方法、装置及移动终端 |
Also Published As
Publication number | Publication date |
---|---|
CN109600409A (zh) | 2019-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3192220B1 (en) | Real-time sharing during a phone call | |
US9432314B2 (en) | Quick navigation of message conversation history | |
US11606458B2 (en) | Favorite-object display method and terminal | |
CN113360238A (zh) | 消息处理方法、装置、电子设备和存储介质 | |
WO2022017107A1 (zh) | 信息处理方法、装置、计算机设备及存储介质 | |
US8577971B2 (en) | Email fetching system and method in a portable electronic device | |
CN111049935B (zh) | 远程控制电子设备的***及其电子设备 | |
US10474507B2 (en) | Terminal application process management method and apparatus | |
KR20170055971A (ko) | 공유 작업 공간을 이용하여 장치들에 걸쳐 작업을 완료하는 기법 | |
CN112947823A (zh) | 会话处理方法、装置、设备及存储介质 | |
EP3103250B1 (en) | Highlighting univiewed video messages | |
CN106131394A (zh) | 一种拍照的方法及装置 | |
CN112751744B (zh) | 一种控制视频播放的方法、装置、计算设备及存储介质 | |
CN109600409B (zh) | 应用的资源管理方法及终端 | |
WO2016049875A1 (en) | Device and method for capturing, sharing and watching video messages | |
JP6441385B2 (ja) | 情報入力方法、装置、プログラム及び記録媒体 | |
US20150015514A1 (en) | Method and apparatus for group communications | |
CN107409327B (zh) | 一种处理操作方法及设备 | |
CN114449095B (zh) | 云手机截图方法、装置、电子设备和存储介质 | |
WO2016049882A1 (en) | Device and method for capturing, sharing and watching video messages | |
CN115185597A (zh) | 处理方法、智能终端及存储介质 | |
CN116170681A (zh) | 媒体内容发送方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 523808 Southern Factory Building (Phase I) Project B2 Production Plant-5, New Town Avenue, Songshan Lake High-tech Industrial Development Zone, Dongguan City, Guangdong Province Applicant after: HUAWEI DEVICE Co.,Ltd. Address before: 523808 Southern Factory Building (Phase I) Project B2 Production Plant-5, New Town Avenue, Songshan Lake High-tech Industrial Development Zone, Dongguan City, Guangdong Province Applicant before: Huawei terminal (Dongguan) Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |