WO2013029355A1 - Android终端应用程序功耗监控的方法和装置 - Google Patents

Android终端应用程序功耗监控的方法和装置 Download PDF

Info

Publication number
WO2013029355A1
WO2013029355A1 PCT/CN2012/071530 CN2012071530W WO2013029355A1 WO 2013029355 A1 WO2013029355 A1 WO 2013029355A1 CN 2012071530 W CN2012071530 W CN 2012071530W WO 2013029355 A1 WO2013029355 A1 WO 2013029355A1
Authority
WO
WIPO (PCT)
Prior art keywords
power consumption
application
data
behavior
android terminal
Prior art date
Application number
PCT/CN2012/071530
Other languages
English (en)
French (fr)
Inventor
曾慧鹏
Original Assignee
中兴通讯股份有限公司
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 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Priority to EP12827860.3A priority Critical patent/EP2741211B1/en
Priority to US14/241,077 priority patent/US9778721B2/en
Publication of WO2013029355A1 publication Critical patent/WO2013029355A1/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3013Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is an embedded system, i.e. a combination of hardware and software dedicated to perform a certain function in mobile devices, printers, automotive or aircraft systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • G06F11/3062Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations where the monitored property is the power consumption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/865Monitoring of software
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Definitions

  • the present invention relates to terminal technologies, and in particular, to a method and apparatus for power consumption monitoring of an Android terminal application. Background technique
  • Power consumption has always been a key technical indicator of intelligent mobile devices.
  • the power consumption directly determines the core competitiveness of a smart mobile product.
  • Power consumption can be optimized from hardware, drivers, system software, and applications.
  • the device manufacturer Before the Android terminal products are shipped from the factory, the device manufacturer will optimize the power consumption at the hardware, driver and system software layers to achieve the optimal balance of performance and power consumption. However, the power consumption of the application cannot be controlled. Users often find that the Android terminal is After installing a large number of applications, the standby time drops dramatically.
  • the execution efficiency of many free game codes is very low.
  • the CPU resources are running at 100% for a long time, and they cannot enter the idle energy saving state.
  • Wireless networks such as BT (Bluetooth) and 3G make high-frequency RF modules frequently in a high-load state. All of the above situations will dramatically deteriorate the power consumption of Android terminals, thus shortening the whole machine. Battery standby time. Summary of the invention
  • the main object of the present invention is to provide a method and apparatus for monitoring power consumption of an Android terminal application, which solves the problem that the Android terminal increases power consumption due to the behavior of the application program.
  • the invention provides a method for monitoring power consumption of an Android terminal application, comprising: capturing an application behavior by a preset monitoring point;
  • the power consumption of the application is analyzed according to the power consumption data, and the analysis result is displayed on an Android terminal.
  • the method further includes: issuing an alarm to the application that meets the preset alarm rule.
  • the method before performing the capturing of the application by the preset monitoring point, the method further includes:
  • the analyzing the power consumption of the application according to the power consumption data includes:
  • the power consumption data after the sorting and retrieval is counted.
  • the statistically sorted and retrieved power consumption data is specifically:
  • the invention also provides an apparatus for monitoring power consumption of an Android terminal application, comprising: a capture module, configured to capture an application behavior by using a preset monitoring point;
  • a collection module configured to collect power consumption data of behavior of the application
  • the analyzing module is configured to analyze power consumption of the application according to the power consumption data, and display the analysis result on the Android terminal.
  • the device further includes:
  • An alarm module is configured to issue an alarm to an application that meets a preset alarm rule.
  • the device further includes:
  • a setup module that sets the monitoring point for capturing application behavior.
  • the analysis module comprises:
  • a data mining unit configured to sort and retrieve the power consumption data
  • the UI unit is configured to count the power consumption data after the sorting and retrieval.
  • the UI unit comprises:
  • the UI setting subunit is configured to accept setting of application power consumption statistics through the user interface; and a statistical subunit for performing statistical logic calculation according to the setting.
  • the invention provides a method and device for monitoring power consumption of an Android terminal application, which monitors the behavior of an application in an Android terminal by setting a monitoring point, and analyzes and processes the monitored data, so that the Android behavior is deteriorated due to the application behavior.
  • the problem of terminal power consumption is effectively controlled, which improves the user experience.
  • FIG. 1 is a schematic flowchart of a method for monitoring power consumption of an Android terminal application according to the present invention
  • FIG. 2 is a schematic diagram of application behavior capture in a method for monitoring power consumption of an Android terminal application according to the present invention
  • FIG. 3 is a schematic diagram of a data collection service in a method for monitoring power consumption of an Android terminal application according to the present invention
  • FIG. 4 is a schematic diagram of a UI in a method for monitoring power consumption of an Android terminal application according to the present invention
  • FIG. 5 is a schematic structural diagram of an apparatus for monitoring power consumption of an Android terminal application according to the present invention
  • FIG. 6 is a schematic diagram of power consumption monitoring of an Android terminal application according to the present invention
  • Schematic diagram of the analysis module in the device
  • FIG. 7 is a structural diagram of a UI unit in an apparatus for monitoring power consumption of an Android terminal application according to the present invention. Schematic. detailed description
  • an embodiment of a method for monitoring power consumption of an Android terminal application of the present invention including:
  • a monitoring point is the underlying data source for power consumption monitoring of an application. Each monitoring point needs to know the behavior of the currently monitored application, PID (process number), and duration.
  • monitoring points mainly include CPU usage, no release of sleep lock, telephone service (mobile phone), interface topping, network use, open screen, use WIFI, use BT, use APN (access point) and/or use GPS (global GPS). Since the behavior monitored by the monitoring point is the core business logic of the system, it needs to be implemented by modifying the code of the framework of the Android system.
  • Each monitoring point can be defined by the relevant R&D personnel.
  • the weight is determined by the increase or decrease of the current caused by the behavior of each monitoring point. For example, the CPU is in idle ( idle) or 100% running for a certain period of time. The increase in power consumption, as well as the increase in power consumption caused by the system not sleeping for a long time, compares with each other, which power consumption increases more, the weight is even greater.
  • PowerManagerService Captures the point in time when any application holds and releases the sleep lock. It is the power management service of the Android system. Here, the monitoring point can be set to capture the time each application gets and releases the sleep lock.
  • Monitor the various key services located in the systemserver process :
  • WifiService Captures the behavior of turning WIFI on or off.
  • ConnectivityService Captures the behavior of APN network connections and disconnections.
  • BluetoothService Captures the behavior of turning BT on and off.
  • OSNetworkSystemjava The base class that the application TCP (Transmission Control Protocol) connection needs to monitor the network traffic of the application.
  • Activity.java The base class of all Acitivity interfaces of the application, which can monitor the display hiding of the application, so that the foreground usage frequency of the application can be obtained.
  • the other monitoring point can be the proc interface exposed by the Linux operating system.
  • the main functions of data collection services and databases are data preservation and data mining. After setting up the monitoring points and obtaining the required key data, a unified data reporting interface is needed to help each monitoring point send the monitored data to the data collection service and database. Since the implementation code of the monitoring point is scattered in the java file in each corner of the system, in order to allow all data to access the data reporting interface, the java code of the data reporting interface needs to be implemented in the source code of the framework. As shown in Figure 2, pcvalue.java is the location where the data reporting interface is located, mainly implementing the following function interface:
  • TID the TID of the monitored application Long timeinms, the duration of the behavior being monitored
  • the data reporting interface In addition to providing a standard interface to connect various monitoring points and data collection services, the data reporting interface also needs to be responsible for some performance optimization. The typical requirement is to put the reporting requests of each monitoring point into another thread to perform queuing, so that the monitoring points Request to return immediately, to avoid
  • the fluency of the UI has an adverse effect.
  • the data collection service can be designed as a Data Provider. This is one of the basic functions of the Android system.
  • a Data Provider can run on Any process that provides a set of data access interfaces, other clients accessing data through the binder mechanism to achieve cross-process access to these interfaces.
  • the data collection service and database design run on the Systemserver process so that the data collection service and database are not limited by the memory manager when running in other common applications.
  • the data collection service and database consist of the following sub-modules:
  • ( a ) Data Provider interface Android Data Provider works through a series of standard interfaces. These standard interfaces can be worked with specific implementation code. The most important one is the insert interface, which accepts data from the data reporting interface.
  • the initialValues include the name, behavior, and operation time of the application.
  • the public Uri insert (Uri uri, ContentValues initialValues) function implementation is to convert the data in initialValues into the relevant table of the sql instruction insert data of the database operation mentioned below.
  • (b) Database The built-in database of Android system is sqlite. sqlite is a lightweight but fully functional database. It supports standard SQL (Structured Query Language) syntax. It is used to store data reported by applications. Each monitoring point establishes a data table, and the data reported by each monitoring point automatically enters the corresponding data table, which is convenient for retrieval. The entire database exists as a db file, supporting backup and offline access.
  • (C) Backup service The database is backed up every time during the charge and discharge cycle. The backup file is a db file, which is convenient for historical record query.
  • UI Classes uses DataDigHelper to index data from sqlite data. By adding various conditions, various statistics can be obtained according to the UI settings, such as counting monitoring points or applications with large power consumption for a period of time. Calculate logic and export simple interfaces. DataDigHelper implements data mining functions, and the mined data is encapsulated in the AppUsageinfo class.
  • the UI parses the data obtained by data mining to the graphical interface. By analyzing the data of multiple mining, the data can be displayed to the user intuitively.
  • the UI provides a visual interface that enables statistics, detailed analysis, and alarm settings for individual application power consumption.
  • the UI needs to support a convenient retrieval view, which is convenient for the user to find programs and services that need to be forcibly stopped or uninstalled from the list of all programs.
  • this module supports the user's alarm settings. The user can set an alarm when an application does not release the sleep lock for more than a period of time.
  • FIG. 4 illustrates the logical structure of data statistics, which can be used to discover power anomalies from multiple perspectives, application mode and module mode.
  • the alarm system is a service running in the background, independent of the UI, monitoring system events and application behavior.
  • the user can set alarm options through the UI.
  • the alarm server in the background monitors the behavior of each application in real time according to the user's alarm settings. Once there is a behavior that exceeds the threshold, the alarm is sent. Send a warning message to remind the user to close or uninstall the relevant application to avoid accidental battery drain.
  • Android system service It mainly provides a monitoring thread, which determines the conditions set by the user through the UI to monitor different conditions. When the abnormal behavior is found to meet the alarm setting, the alarm information can be reported to the UI in the manner of the intent.
  • the UI is responsible for feeding back to the user in the form of a dialog box.
  • the alarm system will monitor the user's button, touch screen stop and screen off events, and trigger the alarm program 10 minutes after these actions occur.
  • the alarm system counts the CPU usage time every time, and finds that the application that takes more than 50% of the time is reported to the UI.
  • an embodiment of an apparatus for monitoring power consumption of an Android terminal application of the present invention including: a capture module 20, a collection module 30, and an analysis module 40, further comprising: a setting module 10 and/or an alarm module 50. among them,
  • Setting module 10 configured to set a monitoring point for capturing application behavior
  • the capturing module 20 is configured to capture an application behavior by using a preset monitoring point
  • the collecting module 30 is configured to collect power consumption data of the behavior of the application
  • the analyzing module 40 is configured to analyze power consumption of the application according to the power consumption data, and display the analysis result on the Android terminal;
  • the alarm module 50 is configured to issue an alarm to an application that meets a preset alarm rule.
  • the analysis module 40 includes: The data mining unit 41 is configured to sort and retrieve the power consumption data, and the UI unit 42 is configured to collect the power consumption data after the sorting and the retrieval.
  • UI unit 42 includes:
  • the UI setting subunit 421 is configured to accept setting of application power consumption statistics through the UI; and the statistics subunit 422 is configured to perform statistical logic calculation according to the setting.
  • the device for monitoring power consumption of the Android terminal application of this embodiment may be an Android terminal or a device connected to the Android terminal.
  • the monitoring point is the basic data source for power consumption monitoring of the application.
  • Each monitoring point needs to know the behavior, PID and duration of the currently monitored application.
  • the types of monitoring points mainly include CPU usage, no sleep lock release, telephone service (mobile), interface topping, network usage, screen opening, use of WIFI, use of BT, use of APN and / or use of GPS. Since the behavior monitored by the monitoring point is the core business logic of the system, it needs to be implemented by modifying the code of the framework of the Android system.
  • the setting module 10 simultaneously receives the weights of the respective monitoring points defined by the relevant R&D personnel.
  • the weights are different from the currents caused by the behaviors of the respective monitoring points, for example, the CPU is in idle or 100% running for a certain period of time.
  • the capture module 20 needs to insert some behavior capture codes in the Android system framework for various different behaviors, as shown in FIG. 2, the specific monitoring points function as follows:
  • PowerManagerService Captures the point in time at which any application holds and releases the sleep lock. It is the power management service of the Android system, where the monitoring point is set to capture the time each application acquires and releases the sleep lock.
  • MediaPlayer Service 4 Weng's behavior of playing media.
  • WifiService Capture 4 turns of WIFI on or off.
  • ConnectivityService Captures the behavior of APN network connections and disconnections.
  • BluetoothService Captures the behavior of turning BT on and off.
  • OSNetworkSystemjava The base class that the application TCP connection needs to use to monitor the application's network traffic.
  • Activity.java The base class of all Acitivity interfaces of the application, which can monitor the display hiding of the application, so that the foreground usage frequency of the application can be obtained.
  • the other monitoring point can be the proc interface exposed by the Linux operating system.
  • the collection module 30 performs data collection services, and the main functions are data storage and data mining. After setting up the monitoring points and obtaining the required key data, a unified data reporting interface is needed to help each monitoring point send the monitored data to the collection module 30. Since the implementation code of the monitoring point is scattered in the java file in each corner of the system, in order to allow all data to access the data reporting interface, the java code of the data reporting interface needs to be implemented in the source code of the framework. As shown in Figure 2, pcvalue.java is the location where the data reporting interface is located, mainly implementing the following function interface:
  • the data reporting interface provides a standard interface for connecting the various monitoring points and the collecting module 30. It is also responsible for handling some optimizations of performance. The typical requirement is to put the reporting requests of each monitoring point into another thread to perform queuing, so that the monitoring point request is immediately returned to avoid adversely affecting the smoothness of the UI.
  • the collecting module 30 can be designed as a Data Provider, which is one of the basic functions of the Android system, and a Data Provider can run on any one.
  • the process provides a set of data access interfaces. Clients of other data access implement cross-process access to these interfaces through the binder mechanism.
  • the collection module 30 is designed to run on a Systemserver process such that the collection module 30 is not limited by the memory management program when running in other general applications.
  • the collection module 30 consists of the following sub-modules:
  • ( a ) Data Provider interface Android Data Provider works through a series of standard interfaces. These standard interfaces can be worked with specific implementation code. The most important one is the insert interface, which accepts data from the data reporting interface.
  • the initialValues include the name, behavior, and operation time of the application.
  • the public Uri insert (Uri uri, Content Values initialValues) function implementation is to convert the data in initialValues into the relevant table of the sql instruction insert data of the database operation mentioned below.
  • (b) Database The built-in database of Android system is sqlite. sqlite is a lightweight but fully functional database. It supports standard SQL syntax. It is used to store data reported by applications. The database establishes data tables for each monitoring point. The data reported by each monitoring point automatically enters the corresponding data table for easy retrieval. The entire database exists as a db file, supporting backup and offline access.
  • (c) Backup service The database is backed up every time during the charge and discharge cycle.
  • the backup file is a db file, which is convenient for historical record query.
  • the analysis module 40 analyzes the power consumption of the application according to the foregoing power consumption data, including:
  • the data mining unit 41 performs data mining.
  • the function of sorting data and complex retrieval is realized, which simplifies the complexity of data analysis on the user side.
  • the UI unites UI Classes
  • various statistical data can be obtained according to the UI settings, such as counting monitoring points with large power consumption for a period of time.
  • an application that implements computational logic and exports a simple interface.
  • DataDigHelper implements data mining functions, and the mined data is encapsulated in the AppUsageinfo class.
  • the UI unit 42 parses the data obtained by the data mining unit 41 and displays it on a graphical interface.
  • the UI Settings sub-unit 421 provides a visual interface that enables statistics, detail analysis, and alarm settings for individual application power consumption.
  • the UI unit 42 needs to support a convenient retrieval view, so that the user can find programs and services that need to be forcibly stopped or uninstalled from the list of all programs.
  • this module supports the user's alarm settings. The user can set an alarm when an application does not release the sleep lock for more than a period of time.
  • the user can also set An application generates an alarm after the total power consumption exceeds a preset threshold for a period of time.
  • the above settings allow the user to filter some applications that are less commonly used but seriously affect power consumption according to actual requirements.
  • the statistical sub-unit 422 can display the data to the user intuitively by analyzing the data of multiple mining.
  • Figure 4 illustrates the logical structure of data statistics, which can be used to discover power anomalies from multiple perspectives, application mode and module mode.
  • the alarm module 50 is a service running in the background, independent of the UI unit 42, monitoring system events and application behavior.
  • the UI unit 42 can set an alarm option, and the alarm module 50 monitors the behavior of each application in real time according to the user's alarm setting. When there is a behavior exceeding the threshold, a warning message is sent to remind the user to close or uninstall the related application to avoid accidental consumption of the battery.
  • the alarm module 50 and the data mobile phone service can be bundled together, or can be independently made into an Android system service. It mainly provides a monitoring thread, and judges the conditions set by the user through the UI setting sub-unit 421 in the thread to realize monitoring of different conditions. when When the abnormal behavior is found to meet the alarm setting, the alarm information can be reported to the UI unit 42 by means of an intend, and the UI unit 42 is responsible for feeding back to the user in the form of a dialog box.
  • the alarm module 50 monitors the user's button, the stop action of the touch screen, and the screen off event, and triggers the alarm program 10 minutes after the occurrence of these actions. .
  • the alarm module 50 counts the CPU occupation time every time, and finds that the application that takes more than 50% of the time is reported to the UI unit 42.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Telephone Function (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

提供了一种Android终端应用程序功耗监控的方法,包括:通过预设的监控点捕获应用程序的行为;收集该应用程序的行为的功耗数据;根据该功耗数据,分析该应用程序的功耗,并将分析结果显示于Android终端。还提供了对应的装置。该Android终端应用程序功耗监控的方法和装置,解决Android终端由于应用程序的行为而增大功耗的问题。

Description

Android终端应用程序功耗监控的方法和装置 技术领域
本发明涉及终端技术,特别涉及到一种 Android终端应用程序功耗监控 的方法和装置。 背景技术
功耗一直是智能移动设备所重点关心的关键技术指标, 功耗的好坏直 接决定了一款智能移动产品的核心竟争力。
功耗的优化可以从硬件、 驱动、 系统软件和应用程序等方面进行。
Android终端产品出厂前, 设备制造商会在硬件、 驱动和系统软件层面对功 耗进行优化, 做到性能和功率消耗的最优平衡, 但对于应用程序的功耗无 法控制, 用户经常发现 Android终端在安装大量应用程序后,待机时间急剧 下降。
最新的数据显示 Android的免费应用数量已经达到 13.4万。 免费应用 程序的增长虽然可以让用户的体验得到极大的丰富和扩展, 但同时, 由于 某些不被监督和管理的免费软件在编程开发过程中 , 只考虑其功能而不考 虑对软硬件资源的节约利用, 使得这些免费应用程序在运行时造成用户的 Android终端功耗急剧恶化,
比如很多免费游戏代码的执行效率很低, 用户在玩这些游戏时, CPU 资源长期处于 100%运转, 无法进入 idle节能状态。 还有一些应用程序为了 防止掉线,会长期持有 Android系统的睡眠锁,导致系统无法在系统闲置时 进入睡眠模式,或者还有一些应用程序在用户并不知情的时候访问 WIFK无 线保真)、 BT (蓝牙)和 3G等无线网络, 使功耗较高的射频模块频繁处于 高负荷状态。上述各种情况都会急剧恶化 Android终端功耗,从而缩短整机 的电池待机时间。 发明内容
本发明的主要目的为提供一种 Android终端应用程序功耗监控的方法 和装置, 解决 Android终端由于应用程序的行为而增大功耗的问题。
本发明提出一种 Android终端应用程序功耗监控的方法, 包括: 通过预设的监控点捕获应用程序的行为;
收集所述应用程序的行为的功耗数据;
根据所述功耗数据, 分析所述应用程序的功耗, 并将分析结果显示于 Android终端。
优选地, 在执行所述将分析结果显示于 Android终端之后, 还包括: 对满足预设的告警规则的应用程序, 发出告警。
优选地, 在执行所述通过预设的监控点捕获应用程序的行为之前, 还 包括:
设置捕获应用程序行为的监控点。
优选地, 所述根据功耗数据, 分析应用程序的功耗, 包括:
对所述功耗数据进行排序和检索;
统计所述排序和检索后的功耗数据。
优选地, 所述统计排序和检索后的功耗数据具体为:
通过用户界面接受应用程序功耗统计的设置;
根据所述设置进行统计逻辑计算。
本发明还提出一种 Android终端应用程序功耗监控的装置, 包括: 捕获模块, 用于通过预设的监控点捕获应用程序的行为;
收集模块, 用于收集所述应用程序的行为的功耗数据;
分析模块, 用于根据所述功耗数据, 分析所述应用程序的功耗, 并将 分析结果显示于 Android终端。 优选地, 所述装置还包括:
告警模块, 用于对满足预设的告警规则的应用程序, 发出告警。
优选地, 所述装置还包括:
设置模块, 用于设置捕获应用程序行为的监控点。
优选地, 所述分析模块包括:
数据挖掘单元, 用于对所述功耗数据进行排序和检索;
UI单元, 用于统计所述排序和检索后的功耗数据。
优选地, 所述 UI单元包括:
UI设置子单元, 用于通过用户界面接受应用程序功耗统计的设置; 统计子单元, 用于根据所述设置进行统计逻辑计算。
本发明提出的一种 Android终端应用程序功耗监控的方法和装置,通过 设置监控点,监控 Android终端内应用程序的行为,并对监控后的数据进行 分析处理,使得因应用程序行为而恶化 Android终端功耗的问题得到有效控 制, 提高了用户体验度。 附图说明
图 1 为本发明 Android终端应用程序功耗监控的方法的流程示意图; 图 2 为本发明 Android终端应用程序功耗监控的方法中应用程序行为 捕获的示意图;
图 3 为本发明 Android终端应用程序功耗监控的方法中数据收集服务 的示意图;
图 4 为本发明 Android终端应用程序功耗监控的方法中 UI的示意图; 图 5 为本发明 Android终端应用程序功耗监控的装置的结构示意图; 图 6 为本发明 Android终端应用程序功耗监控的装置中分析模块的结 构示意图;
图 7 为本发明 Android终端应用程序功耗监控的装置中 UI单元的结构 示意图。 具体实施方式
本发明目的的实现、 功能特点及优点将结合实施例, 参照附图做进一 步说明。 应当理解, 此处所描述的具体实施例仅仅用以解释本发明, 并不 用于限定本发明。
参照图 1 ,提出本发明 Android终端应用程序功耗监控的方法一实施例, 包括:
5101、 设置捕获应用程序行为的监控点。
监控点是对应用程序进行功耗监控的基础数据源 , 每个监控点都需要 知道当前所监控的应用程序的行为、 PID (进程编号)和持续的时间。
监控点的类型主要有 CPU占用率、 不释放睡眠锁、 电话服务(手机)、 界面置顶、 网络使用、 开屏幕、 使用 WIFI、 使用 BT、 使用 APN (接入点) 和 /或使用 GPS (全球定位系统)。 由于监控点所监控的行为都是系统核心的 业务逻辑, 所以需要通过修改 Android系统的 framework的代码来实现。
各个监控点可由相关的研发人员定义权重, 根据实际开发过程中, 权 重由各个监控点的行为所造成电流的增减情况来决定,例如, CPU处于 idle (闲置)或 100%运转一定时间的功耗增加, 以及系统长时间不睡眠导致的 功耗增加, 相互比较, 哪一个功耗增加更多, 则权重就更大。
5102、 通过预设的监控点捕获应用程序的行为;
为了监控应用程序的各种功率消耗的行为, 要针对各种不同的行为在
Android系统 framework内安插一些行为捕捉代码, 如图 2所示, 具体监控 点的作用如下:
( 1 ) PowerManagerService: 可捕获任何应用程序持有和释放睡眠锁的 时间点,是 Android系统的电源管理服务,在此处设置监控点可捕获每个应 用程序获得和释放睡眠锁的时间。 ( 2 )监控位于 systemserver进程的各个关键服务:
MediaPlayerService: 4翁获播放媒体的行为。
WifiService: 捕获打开或关闭 WIFI的行为。
SettingProvider: 捕获打开或关闭 GPS的行为。
ConnectivityService: 捕获 APN网络连接和断开的行为。
BluetoothService: 捕获打开和关闭 BT的行为。
( 3 )在应用程序所使用的基类中加入监控。
OSNetworkSystemjava: 应用程序 TCP (传输控制协议 )连接所需要使 用的基类, 监控应用的网络流量。
Activity.java: 应用程序所有 Acitivity界面的基类, 可以监控应用程序 的显示隐藏, 从而可以得到该应用程序的前台使用频率。
( 4 ) 另外的监控点可以是 linux操作系统暴露出来的 proc接口
/proc/<pid>/stat: 可以获取每个应用程序对 CPU的占用时间。
S103、 收集所述应用程序的行为的功耗数据;
数据收集服务和数据库的主要功能是数据保存和数据挖掘。 当设置好 监控点并获得所需的关键数据后, 需要一个统一的数据上报接口帮助各个 监控点将监控的数据发送到数据收集服务和数据库中。 由于监控点的实现 代码散落在系统的各个角落的 java文件中, 为了让所有的数据都能访问数 据上报接口, 需要把数据上报接口的 java代码实现在 framework的源代码 中。 如图 2所示, pcvalue.java即数据上报接口所处的位置, 主要实现如下 函数接口:
public static boolean InsertPowerConsumptionRecored(Context mRemoteContext, String ComponentName,〃所监控应用程序的名称、
String PkgName,〃所监控应用的包名
int PID,〃所监控应用的 PID
int TID,〃所监控应用的 TID long timeinms,〃所监控的行为的持续时间
String Action,int args)〃所监控行为和参数
数据上报接口除了提供一个标准接口连接各个监控点和数据收集服 务, 还需要负责处理一些对性能的优化, 典型的需求即把各监控点的上报 请求放入另一个线程去排队执行, 使得监控点的请求立刻返回, 以避免对
UI (用户界面) 的流畅度产生不良影响。
为了跨进程接收各个监控点从各个应用程序进程中通过数据上报接口 上才艮的数据, 数据收集服务可以被设计为一个 Data Provider, 这是 Android 系统的基本功能之一, 一个 Data Provider可以运行在任何一个进程, 提供 一套数据访问接口, 其他数据访问的客户端通过 binder机制实现对这些接 口的跨进程访问。 在具体实施方案中, 数据收集服务和数据库设计运行于 Systemserver进程,如此在其他普通应用中运行时该数据收集服务和数据库 不会被内存管理程序限制。
数据收集服务和数据库由如下子模块组成:
( a ) Data Provider接口: Android的 Data Provider通过一系列的标准 接口进行工作, 这些标准接口添加具体的实现代码即可工作, 其中最主要 的是 insert接口, 其接受从数据上报接口传来的数据, initialValues中包括 应用程序的名称、行为和操作时间等。 public Uri insert(Uri uri, ContentValues initialValues)函数实现就是要把 initialValues 中的数据转换为下面所提到的 数据库操作的 sql指令插入数据的相关表中。
( b )数据库: Android系统内置的数据库是 sqlite, sqlite是一个轻量 但功能完善的数据库, 支持标准的 SQL (结构化查询语言)语法, 在此用 于存储应用程序上报的数据, 该数据库为各个监控点建立数据表, 每个监 控点上报的数据自动进入对应的数据表, 便于检索。 整个数据库以 db文件 的形式存在, 支持备份和离线访问。 ( C )备份服务: 数据库在每次充放电周期都做一次备份, 备份的文件 为一个 db文件, 方便作为历史记录查询。
5104、 根据所述功耗数据, 分析所述应用程序的功耗, 并将分析结果 显示于 Android终端;
首先进行数据挖掘。 实现对数据进行排序和复杂的检索的功能, 简化 用户端的数据分析的复杂度。 如图 3所示, UI Classes通过 DataDigHelper 从 sqlite数据中索引数据, 通过添加各种条件可以按照 UI的设置得到各种 统计数据, 比如统计一段时间内功率消耗较大的监控点或应用程序, 实现 计算逻辑并导出简单的接口。 DataDigHelper实现了数据挖掘功能, 挖掘的 数据封装在 AppUsageinfo类中。
其次, UI解析数据挖掘获得的数据到图形界面, 通过对多次挖掘的数 据进行分析, 可以把数据很直观的显示给用户。 UI提供一个可视化界面, 实现各个应用程序功耗的统计、 细节分析和告警设置等功能。 为了方便用 户能简单分析出 Android终端功耗的问题, UI需要支持方便的检索视图, 方便用户从所有程序列表中找到需要强制停止或卸载的程序和服务。 为了 能让用户在电池消耗完之前及时发现功耗过大的应用程序, 此模块支持用 户的告警设置, 用户可以设置当某个应用程序持续不释放睡眠锁超过一段 时间后告警, 用户也可以设置某应用程序一段时间内总功耗超过一预设阀 值后告警, 上述设置可以使用户按照实际要求过滤一些不太常用却严重影 响功耗的应用程序。 图 4说明了数据统计的逻辑结构, 可以从应用程序模 式和模块模式多个角度来发现功率异常的应用程序。
5105、 对满足预设的告警规则的应用程序, 发出告警。
告警系统是一个运行于后台的服务, 独立于 UI, 监视系统的事件和应 用程序的行为。 用户可以通过 UI设置告警选项, 后台的告警服务器根据用 户的告警设置实时监视各个应用程序的行为, 一旦有超过阀值的行为, 发 送警告消息提醒用户关闭或卸载相关的应用程序以免电池意外耗光。
实现时, 可以将其和数据手机服务捆绑在一起, 也可以独立做成一个
Android系统的 service。 其主要提供一个监视线程, 在线程中判断用户通过 UI设置的条件从而实现对不同状况的监控。 当发现异常的行为满足告警设 置时, 可以通过 intend的方式将告警信息上报给 UI, UI负责向用户以对话 框的形式反馈。
例如用户设置一旦发现手机闲置后 10分钟后阻止系统睡眠的应用, 那 么告警系统会时刻监视用户的按键、 触屏动作停止和屏幕灭的事件, 并在 这些行为发生后 10分钟后触发告警程序。
又例如用户设置了监视长期占用 CPU比例 50%以上的应用程序, 那么 告警系统每一段时间统计 CPU的占用时间, 找出占用时间超过 50%的应用 上报给 UI。
本实施例中, 通过设置监控点, 监控 Android终端内应用程序的行为, 并对监控后的数据进行分析处理,使得因应用程序行为而恶化 Android终端 功耗的问题得到有效控制, 提高了用户体验度。
参照图 5,提出本发明 Android终端应用程序功耗监控的装置一实施例, 包括: 捕获模块 20、 收集模块 30和分析模块 40, 进一步包括: 设置模块 10和 /或告警模块 50。 其中,
设置模块 10, 用于设置捕获应用程序行为的监控点;
捕获模块 20, 用于通过预设的监控点捕获应用程序的行为;
收集模块 30, 用于收集所述应用程序的行为的功耗数据;
分析模块 40, 用于根据所述功耗数据, 分析所述应用程序的功耗, 并 将分析结果显示于 Android终端;
告警模块 50, 用于对满足预设的告警规则的应用程序, 发出告警。 参照图 6, 分析模块 40包括: 数据挖掘单元 41 , 用于对所述功耗数据进行排序和检索; UI单元 42, 用于统计所述排序和检索后的功耗数据。
参照图 7, UI单元 42包括:
UI设置子单元 421 , 用于通过 UI接受应用程序功耗统计的设置; 统计子单元 422 , 用于根据所述设置进行统计逻辑计算。
本实施例的 Android终端应用程序功耗监控的装置可以是 Android终 端, 或与 Android终端相连的装置。
设置模块 10设置各监控点, 监控点是对应用程序进行功耗监控的基础 数据源,每个监控点都需要知道当前所监控的应用程序的行为、 PID和持续 的时间。 监控点的类型主要有 CPU占用率、 不释放睡眠锁、 电话服务(手 机)、 界面置顶、 网络使用、 开屏幕、 使用 WIFI、 使用 BT、 使用 APN和 / 或使用 GPS。 由于监控点所监控的行为都是系统核心的业务逻辑, 所以需 要通过修改 Android系统的 framework的代码来实现。
设置模块 10同时接收相关的研发人员定义的各个监控点的权重, 在实 际开发过程中, 权重由各个监控点的行为所造成电流的增减情况不同, 例 如 CPU处于 idle或 100%运转一定时间的功耗增加, 以及系统长时间不睡 眠导致的功耗增加, 相互比较, 哪一个功耗增加更多, 则权重就更大。
捕获模块 20为了监控应用程序的各种功率消耗的行为, 要针对各种不 同的行为在 Android系统 framework内安插一些行为捕捉代码,如图 2所示, 具体监控点的作用如下:
( 1 ) PowerManagerService: 可捕获任何应用程序持有和释放睡眠锁的 时间点,是 Android系统的电源管理服务,在此处设置监控点可捕获每个应 用程序获得和释放睡眠锁的时间。
( 2 )监控位于 systemserver进程的各个关键服务:
MediaPlayer Service: 4翁获播放媒体的行为。 WifiService: 捕获打开或关闭 WIFI的 4亍为。
SettingProvider: 捕获打开或关闭 GPS的行为。
ConnectivityService: 捕获 APN网络连接和断开的行为。
BluetoothService: 捕获打开和关闭 BT的行为。
( 3 )在应用程序所使用的基类中加入监控。
OSNetworkSystemjava: 应用程序 TCP连接所需要使用的基类, 监控 应用的网络流量。
Activity.java: 应用程序所有 Acitivity界面的基类, 可以监控应用程序 的显示隐藏, 从而可以得到该应用程序的前台使用频率。
( 4 ) 另外的监控点可以是 linux操作系统暴露出来的 proc接口
/proc/<pid>/stat: 可以获取每个应用程序对 CPU的占用时间。
收集模块 30进行数据收集服务, 主要功能是数据保存和数据挖掘。 当 设置好监控点并获得所需的关键数据后, 需要一个统一的数据上报接口帮 助各个监控点将监控的数据发送到收集模块 30中。 由于监控点的实现代码 散落在系统的各个角落的 java文件中, 为了让所有的数据都能访问数据上 报接口, 需要把数据上报接口的 java代码实现在 framework的源代码中。 如图 2所示, pcvalue.java即数据上报接口所处的位置, 主要实现如下函数 接口:
public static boolean InsertPowerConsumptionRecored(Context mRemoteContext, String ComponentName),〃所监控应用程序的名称、
String PkgName, //所监控应用的包名
int PID,〃所监控应用的 PID
int TID, //所监控应用的 TID
long timeinms,〃所监控的行为的持续时间
String Action nt args)〃所监控行为和参数
数据上报接口除了提供一个标准接口连接各个监控点和收集模块 30, 还需要负责处理一些对性能的优化, 典型的需求即把各监控点的上报请求 放入另一个线程去排队执行, 使得监控点的请求立刻返回, 以避免对 UI的 流畅度产生不良影响。
为了跨进程接收各个监控点从各个应用程序进程中通过数据上报接口 上报的数据, 收集模块 30可以被设计为一个 Data Provider, 这是 Android 系统的基本功能之一, 一个 Data Provider可以运行在任何一个进程, 提供 一套数据访问接口, 其他数据访问的客户端通过 binder机制实现对这些接 口的跨进程访问。在具体实施方案中,收集模块 30设计运行于 Systemserver 进程, 如此在其他普通应用中运行时该收集模块 30不会被内存管理程序限 制。
收集模块 30由如下子模块组成:
( a ) Data Provider接口: Android的 Data Provider通过一系列的标准 接口进行工作, 这些标准接口添加具体的实现代码即可工作, 其中最主要 的是 insert接口, 其接受从数据上报接口传来的数据, initialValues中包括 应用程序的名称、行为和操作时间等。 public Uri insert(Uri uri, Content Values initialValues)函数实现就是要把 initialValues 中的数据转换为下面所提到的 数据库操作的 sql指令插入数据的相关表中。
( b )数据库: Android系统内置的数据库是 sqlite, sqlite是一个轻量 但功能完善的数据库, 支持标准的 SQL语法, 在此用于存储应用程序上报 的数据, 该数据库为各个监控点建立数据表, 每个监控点上报的数据自动 进入对应的数据表, 便于检索。 整个数据库以 db文件的形式存在, 支持备 份和离线访问。
( c )备份服务: 数据库在每次充放电周期都做一次备份, 备份的文件 为一个 db文件, 方便作为历史记录查询。
分析模块 40根据上述功耗数据, 分析应用程序的功耗, 包括: 数据挖掘单元 41进行数据挖掘。 实现对数据进行排序和复杂的检索的 功能,简化用户端的数据分析的复杂度。如图 3所示, UI单元 42( UI Classes ) 通过 DataDigHelper从 sqlite数据中索引数据, 通过添加各种条件可以按照 UI的设置得到各种统计数据, 比如统计一段时间内功率消耗较大的监控点 或应用程序, 实现计算逻辑并导出简单的接口。 DataDigHelper实现了数据 挖掘功能, 挖掘的数据封装在 AppUsageinfo类中。
UI单元 42解析数据挖掘单元 41获得的数据, 并在图形界面上显示。 UI设置子单元 421提供一个可视化界面, 实现各个应用程序功耗的统计、 细节分析和告警设置等功能。为了方便用户能简单分析出 Android终端功耗 的问题, UI单元 42需要支持方便的检索视图, 方便用户从所有程序列表中 找到需要强制停止或卸载的程序和服务。 为了能让用户在电池消耗完之前 及时发现功耗过大的应用程序, 此模块支持用户的告警设置, 用户可以设 置当某个应用程序持续不释放睡眠锁超过一段时间后告警, 用户也可以设 置某应用程序一段时间内总功耗超过一预设阀值后告警, 上述设置可以使 用户按照实际要求过滤一些不太常用却严重影响功耗的应用程序。 统计子 单元 422通过对多次挖掘的数据进行分析, 可以把数据很直观的显示给用 户。 图 4说明了数据统计的逻辑结构, 可以从应用程序模式和模块模式多 个角度来发现功率异常的应用程序。
告警模块 50是一个运行于后台的服务, 独立于 UI单元 42, 监视系统 的事件和应用程序的行为。 UI单元 42可以设置告警选项, 告警模块 50根 据用户的告警设置实时监视各个应用程序的行为, 一旦有超过阀值的行为, 发送警告消息提醒用户关闭或卸载相关的应用程序以免电池意外耗光。
实现时, 可以将告警模块 50和数据手机服务捆绑在一起, 也可以独立 做成一个 Android 系统的 service。 其主要提供一个监视线程, 在线程中判 断用户通过 UI设置子单元 421设置的条件从而实现对不同状况的监控。 当 发现异常的行为满足告警设置时, 可以通过 intend的方式将告警信息上报 给 UI单元 42, UI单元 42负责向用户以对话框的形式反馈。
例如用户设置一旦发现手机闲置后 10分钟后阻止系统睡眠的应用, 那 么告警模块 50会时刻监视用户的按键、 触屏动作停止和屏幕灭的事件, 并 在这些行为发生后 10分钟后触发告警程序。
又例如用户设置了监视长期占用 CPU比例 50%以上的应用程序, 那么 告警模块 50每一段时间统计 CPU的占用时间, 找出占用时间超过 50%的 应用上报给 UI单元 42。
本实施例中, 通过设置监控点, 监控 Android终端内应用程序的行为, 并对监控后的数据进行分析处理,使得因应用程序行为而恶化 Android终端 功耗的问题得到有效控制, 提高了用户体验度。
以上所述仅为本发明的优选实施例, 并非因此限制本发明的专利范围 , 凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换, 或直 接或间接运用在其他相关的技术领域, 均同理包括在本发明的专利保护范 围内。

Claims

权利要求书
1、 一种 Android终端应用程序功耗监控的方法, 其特征在于, 包括: 通过预设的监控点捕获应用程序的行为;
收集所述应用程序的行为的功耗数据;
根据所述功耗数据, 分析所述应用程序的功耗, 并将分析结果显示于 Android终端。
2、 如权利要求 1所述的方法, 其特征在于, 在执行所述将分析结果显 示于 Android终端之后, 还包括:
对满足预设的告警规则的应用程序, 发出告警。
3、 如权利要求 1或 2所述的方法, 其特征在于, 在执行所述通过预设 的监控点捕获应用程序的行为之前, 还包括:
设置捕获应用程序行为的监控点。
4、 如权利要求 1或 2所述的方法, 其特征在于, 所述根据功耗数据分 析应用程序的功耗, 包括:
对所述功耗数据进行排序和检索;
统计所述排序和检索后的功耗数据。
5、 如权利要求 4所述的方法, 其特征在于, 所述统计排序和检索后的 功耗数据具体为:
通过用户界面接受应用程序功耗统计的设置;
根据所述设置进行统计逻辑计算。
6、 一种 Android终端应用程序功耗监控的装置, 其特征在于, 包括: 捕获模块, 用于通过预设的监控点捕获应用程序的行为;
收集模块, 用于收集所述应用程序的行为的功耗数据;
分析模块, 用于根据所述功耗数据, 分析所述应用程序的功耗, 并将 分析结果显示于 Android终端。
7、 如权利要求 6所述的装置, 其特征在于, 还包括: 告警模块, 用于对满足预设的告警规则的应用程序, 发出告警。
8、 如权利要求 6或 7所述的装置, 其特征在于, 还包括:
设置模块, 用于设置捕获应用程序行为的监控点。
9、 如权利要求 6或 7所述的装置, 其特征在于, 所述分析模块包括: 数据挖掘单元, 用于对所述功耗数据进行排序和检索;
UI单元, 用于统计所述排序和检索后的功耗数据。
10、 如权利要求 9所述的装置, 其特征在于, 所述 UI单元包括: UI设置子单元, 用于通过用户界面接受应用程序功耗统计的设置; 统计子单元, 用于根据所述设置进行统计逻辑计算。
PCT/CN2012/071530 2011-08-31 2012-02-23 Android终端应用程序功耗监控的方法和装置 WO2013029355A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP12827860.3A EP2741211B1 (en) 2011-08-31 2012-02-23 Method and device for monitoring power consumption of android terminal application
US14/241,077 US9778721B2 (en) 2011-08-31 2012-02-23 Method and device for monitoring power consumption of application in android terminal

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201110255572.0 2011-08-31
CN201110255572A CN102306118A (zh) 2011-08-31 2011-08-31 Android终端应用程序功耗监控的方法和装置

Publications (1)

Publication Number Publication Date
WO2013029355A1 true WO2013029355A1 (zh) 2013-03-07

Family

ID=45379983

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2012/071530 WO2013029355A1 (zh) 2011-08-31 2012-02-23 Android终端应用程序功耗监控的方法和装置

Country Status (4)

Country Link
US (1) US9778721B2 (zh)
EP (1) EP2741211B1 (zh)
CN (1) CN102306118A (zh)
WO (1) WO2013029355A1 (zh)

Families Citing this family (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10474213B1 (en) * 2005-05-30 2019-11-12 Invent.Ly, Llc Predictive power management in a wireless sensor network using scheduling data
CN102306118A (zh) 2011-08-31 2012-01-04 中兴通讯股份有限公司 Android终端应用程序功耗监控的方法和装置
CN103198256B (zh) 2012-01-10 2016-05-25 凹凸电子(武汉)有限公司 用于检测应用程序状态的检测系统及方法
CN103425577B (zh) * 2012-05-25 2018-06-26 腾讯科技(深圳)有限公司 一种测试方法和装置
CN103455127B (zh) * 2012-05-29 2016-02-03 国基电子(上海)有限公司 电源监控装置、电子装置及其电源监控方法
US9588568B2 (en) 2012-11-16 2017-03-07 Samsung Electronics Co., Ltd. Monitoring and managing processor activity in power save mode of portable electronic device
CN102946486A (zh) * 2012-11-20 2013-02-27 惠州Tcl移动通信有限公司 一种基于手机的后台应用自动清理方法及手机
CN104007805A (zh) * 2013-02-22 2014-08-27 中兴通讯股份有限公司 实现移动终端节电的方法及装置及移动终端
CN103294166B (zh) * 2013-05-15 2016-03-30 小米科技有限责任公司 服务管理方法、装置和终端
CN104166542B (zh) * 2013-05-17 2018-01-05 腾讯科技(深圳)有限公司 检测应用耗电的方法和装置
US9986450B2 (en) * 2013-07-02 2018-05-29 Carrier Iq, Inc. Resource consumption estimation with out of norm determination in mobile devices
KR101477179B1 (ko) * 2013-07-19 2014-12-29 삼성전자주식회사 어플리케이션의 전력 효율을 결정하고 표시하는 방법 및 단말기
CN104298584A (zh) * 2013-07-19 2015-01-21 贝壳网际(北京)安全技术有限公司 耗电异常的应用程序获取方法、装置和移动终端
CN103365544B (zh) * 2013-07-25 2016-12-28 贝壳网际(北京)安全技术有限公司 移动电子设备使用状态的检测方法、装置及电子设备
CN104375851B (zh) * 2013-08-15 2019-05-31 腾讯科技(深圳)有限公司 一种智能终端的节能方法及智能终端
CN103500002B (zh) * 2013-09-17 2016-08-03 小米科技有限责任公司 应用程序管理的方法、装置及终端设备
CN103729052A (zh) * 2013-12-31 2014-04-16 贝壳网际(北京)安全技术有限公司 一种应用程序耗电的处理方法、处理系统及移动终端
US9465711B2 (en) * 2014-01-31 2016-10-11 Verizon Patent And Licensing Inc. Providing power utilization information for operational states of an application across different operating systems
CN105204981A (zh) * 2014-05-28 2015-12-30 北京奇虎科技有限公司 应用性能测试方法和装置
CN105323216A (zh) * 2014-06-20 2016-02-10 中兴通讯股份有限公司 通信链路的发送方法、装置及终端
CN104102540B (zh) * 2014-06-30 2017-08-25 上海卓悠网络科技有限公司 一种运行进程的管理方法及移动终端
CN105335134A (zh) 2014-06-30 2016-02-17 北京金山安全软件有限公司 处理app的cpu占用率异常的方法、装置及移动终端
CN104092804B (zh) * 2014-07-17 2017-06-23 广东欧珀移动通信有限公司 一种移动终端功耗测试方法及系统
CN105335146B (zh) * 2014-08-07 2018-10-02 昆山纬绩资通有限公司 管理软件数据流量的方法及便携式电子装置
CN105467202B (zh) * 2014-08-22 2020-07-10 深圳市中兴微电子技术有限公司 一种电量检测方法及装置、终端
CN105468506A (zh) * 2014-09-02 2016-04-06 腾讯科技(深圳)有限公司 一种应用管理方法、装置及终端
CN104317649B (zh) * 2014-09-30 2018-03-06 北京金山安全软件有限公司 终端应用程序app的处理方法、装置及终端
CN104346201B (zh) * 2014-09-30 2018-10-16 北京金山安全软件有限公司 获取应用程序消耗系统资源的方法、装置及终端
CN105830016B (zh) * 2014-11-25 2020-01-17 华为技术有限公司 用户设备的电源管理方法和电源管理装置
CN105700656B (zh) * 2014-11-26 2020-02-28 深圳富泰宏精密工业有限公司 待机异常耗电侦测系统及方法
US9565218B2 (en) * 2015-01-23 2017-02-07 Oracle International Corporation Resource management for WebRTC
US10433268B2 (en) * 2015-02-02 2019-10-01 Telefonaktiebolaget Lm Ericsson (Publ) Calculating timing offset in wireless communications
KR102311817B1 (ko) * 2015-02-26 2021-10-13 삼성전자주식회사 전자 장치 및 전자 장치의 전원관리 방법
CN104657273A (zh) * 2015-03-05 2015-05-27 浪潮电子信息产业股份有限公司 一种软件占用系统资源的测试方法
CN106256116B (zh) * 2015-04-14 2019-08-13 华为技术有限公司 一种控制应用程序的方法及终端
CN105159816B (zh) * 2015-08-04 2018-11-16 广东欧珀移动通信有限公司 一种降低设备功耗的方法、移动终端及系统
JP6771149B2 (ja) * 2015-10-06 2020-10-21 パナソニックIpマネジメント株式会社 情報端末の制御方法、および、情報システム
CN105867578A (zh) * 2015-12-07 2016-08-17 乐视移动智能信息技术(北京)有限公司 一种耗电应用的监测方法、装置及用户终端
CN105573472B (zh) * 2015-12-15 2019-04-16 小米科技有限责任公司 一种关闭应用程序的方法和装置
CN105653459A (zh) * 2016-01-13 2016-06-08 中国石油集团东方地球物理勘探有限责任公司 应用功耗测量方法及装置
US10826310B2 (en) 2016-03-29 2020-11-03 Huawei Technologies Co., Ltd. Resource statistics collection method and apparatus and terminal
CN105955441B (zh) * 2016-04-21 2019-08-06 北京小米移动软件有限公司 应用管理方法及装置
US10114439B2 (en) 2016-05-26 2018-10-30 Microsoft Technology Licensing, Llc Achieving a consistent computing device battery drain rate
CN106020426B (zh) * 2016-05-31 2018-12-11 广东欧珀移动通信有限公司 一种唤醒锁的释放方法和装置
CN107506342B (zh) * 2016-06-14 2021-11-12 鼎桥通信技术有限公司 一种射频单元的离线做表方法
US10262157B2 (en) * 2016-09-28 2019-04-16 International Business Machines Corporation Application recommendation based on permissions
CN107145214A (zh) * 2017-04-28 2017-09-08 努比亚技术有限公司 应用程序耗电管理的方法及移动终端
CN107315673A (zh) * 2017-06-29 2017-11-03 努比亚技术有限公司 功耗监测方法、移动终端及计算机可读存储介质
CN107590057B (zh) * 2017-09-28 2021-06-15 努比亚技术有限公司 冻屏监测与解决方法、移动终端及计算机可读存储介质
CN108255676A (zh) * 2018-01-15 2018-07-06 南京市城市规划编制研究中心 一种软件系统客户端健康度的监控方法
CN110120964B (zh) * 2018-02-07 2022-07-08 北京三快在线科技有限公司 用户行为监控方法和装置以及计算设备
CN108415816A (zh) * 2018-02-27 2018-08-17 苏州万特锐仪器有限公司 一种基于Android系统的功耗计算方法
US11662796B2 (en) * 2018-06-01 2023-05-30 Apple Inc. User interfaces for indicating battery information on an electronic device
CN109117279B (zh) * 2018-06-29 2020-10-02 Oppo(重庆)智能科技有限公司 电子装置及其限制进程间通信的方法、存储介质
US10873594B2 (en) * 2018-08-02 2020-12-22 Rohde & Schwarz Gmbh & Co. Kg Test system and method for identifying security vulnerabilities of a device under test
CN109274804B (zh) * 2018-09-27 2021-09-14 英望科技(深圳)有限公司 一种手机功耗分析系统及方法
CN109445667B (zh) * 2018-10-30 2021-01-08 维沃移动通信有限公司 一种屏幕模式切换方法及装置
CN112579438B (zh) * 2020-12-01 2022-07-08 河南芯盾网安科技发展有限公司 多功能自动化测试工具及测试方法
CN115878432B (zh) * 2023-02-16 2023-05-12 支付宝(杭州)信息技术有限公司 一种计算系统中的进程监控方法及相关设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1975692A (zh) * 2005-11-29 2007-06-06 国际商业机器公司 用于功率测量和管理的方法和系统
CN101916220A (zh) * 2010-08-27 2010-12-15 上海交通大学 集群内中央处理器功耗的监测系统
CN102306118A (zh) * 2011-08-31 2012-01-04 中兴通讯股份有限公司 Android终端应用程序功耗监控的方法和装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7337433B2 (en) * 2002-04-04 2008-02-26 Texas Instruments Incorporated System and method for power profiling of tasks
US20080200220A1 (en) * 2007-02-16 2008-08-21 Jackson Bruce K Methods and devices for limiting battery power consumption in a wireless communication device
CN101727172B (zh) * 2008-10-27 2012-12-19 联想(北京)有限公司 一种计算机进程功耗的测量方法及测量装置、计算机系统
US9047084B2 (en) * 2009-09-22 2015-06-02 Microsoft Technology Licensing, Llc Power management of a mobile communications device
NL2003915C2 (en) * 2009-12-07 2011-06-09 Yggdra Solutions Improved power usage management.

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1975692A (zh) * 2005-11-29 2007-06-06 国际商业机器公司 用于功率测量和管理的方法和系统
CN101916220A (zh) * 2010-08-27 2010-12-15 上海交通大学 集群内中央处理器功耗的监测系统
CN102306118A (zh) * 2011-08-31 2012-01-04 中兴通讯股份有限公司 Android终端应用程序功耗监控的方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2741211A4 *

Also Published As

Publication number Publication date
US20140173319A1 (en) 2014-06-19
US9778721B2 (en) 2017-10-03
CN102306118A (zh) 2012-01-04
EP2741211B1 (en) 2017-04-05
EP2741211A1 (en) 2014-06-11
EP2741211A4 (en) 2015-07-29

Similar Documents

Publication Publication Date Title
WO2013029355A1 (zh) Android终端应用程序功耗监控的方法和装置
US9092465B2 (en) Collection of data associated with storage systems
WO2021017301A1 (zh) 基于Kubernetes集群的管理方法、装置及计算机可读存储介质
US8819701B2 (en) Cloud computing monitoring and management system
CN108365985A (zh) 一种集群管理方法、装置、终端设备及存储介质
CN104360878B (zh) 一种应用软件部署的方法及装置
CN106612199B (zh) 一种网络监控数据收集与分析系统及方法
CN105677477B (zh) 一种优化应用程序资源的方法、装置及电子设备
CN103617038B (zh) 一种分布式应用系统的服务监控方法及装置
US20150170070A1 (en) Method, apparatus, and system for monitoring website
WO2021169268A1 (zh) 数据处理方法、装置、设备和存储介质
CN105610648B (zh) 一种运维监控数据的采集方法及服务器
US20120297393A1 (en) Data Collecting Method, Data Collecting Apparatus and Network Management Device
US20110160923A1 (en) Method and apparatus for monitoring the performance of a power delivery control system
CN112256542B (zh) 基于eBPF的微服务系统性能检测方法、装置和系统
CN110995497A (zh) 一种云计算环境下统一运维的方法、终端设备及存储介质
CN109783311A (zh) 断点行为的监控处理方法、装置、设备及可读存储介质
TW201814609A (zh) 一種資訊推送的方法和系統及用戶端和伺服器
JP2006260056A (ja) 統合運用管理サーバ、統合的な運用管理のためのメッセージの抽出方法、及び、プログラム
CN102354296A (zh) 一种可扩展监控资源的监控系统和方法
CN109597837A (zh) 时序数据的存储方法、查询方法及相关设备
WO2024164730A1 (zh) 一种混合云管的异常实时上报方法、系统、设备和介质
WO2013166784A1 (zh) 一种按策略自动执行配置管理的装置及方法
CN112506154A (zh) 一种生活污水处理站物联网监控系统
CN110633191B (zh) 实时监控软件系统业务健康度的方法和系统

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12827860

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 14241077

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

REEP Request for entry into the european phase

Ref document number: 2012827860

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2012827860

Country of ref document: EP