</li>
<li>Application status monitoring
<p>You can monitor the installed applications and <a href="#status_listening">be notified when their status changes</a>.</p>
- </li>
+ </li>
</ul>
<h2 id="controls" name="controls">Application Control Request</h2>
<li>Retrieve information about running applications with the <code>getAppContext()</code> and <code>getAppsContext()</code> methods of the <code>ApplicationManager</code> interface.
<p>These methods can be used to access the <code>ApplicationContext</code> interface (in <a href="../../../../org.tizen.web.apireference/html/device_api/mobile/tizen/application.html#ApplicationContext">mobile</a>, <a href="../../../../org.tizen.web.apireference/html/device_api/wearable/tizen/application.html#ApplicationContext">wearable</a>, and <a href="../../../../org.tizen.web.apireference/html/device_api/tv/tizen/application.html#ApplicationContext">TV</a> applications) to retrieve the application ID and context ID of the running application.</p>
<p>The application ID can be used to retrieve application information, or to launch an application. The context ID is a unique identifier given by the platform to a running application.</p></li>
+ <li>Retrieve information about battery usage per application with the <code>getBatteryUsageInfo()</code> method of the <code>ApplicationManager</code> interface <strong>in mobile applications only</strong>.
+ <p>You can retrieve battery usage information starting from a specific number of days ago, or since the battery was last fully charged. You can also select the number of applications included in the returned <a href="../../../../org.tizen.web.apireference/html/device_api/mobile/tizen/application.html#ApplicationBatteryUsage">ApplicationBatteryUsage</a> data array.</p></li>
</ul>
<p>Learning how to retrieve information about installed and running applications allows you to manage all the device applications from your application: </p>
var appContext = tizen.application.getAppContext();
console.log("Application context retrieved for app " + appContext.id);
</pre></li>
+ <li><p>To retrieve application battery usage information, use the <code>getBatteryUsageInfo()</code> method of the <code>ApplicationManager</code> interface.</p>
+ <p>In the first parameter, specify the time period you want to include in the battery usage information, starting from a specific number of days ago. If you set the parameter to <code>null</code>, the time period since the battery was last fully charged is used.</p>
+<pre class="prettyprint">
+var batteryUsageInfoArray = tizen.application.getBatteryUsageInfo(null, 5);
+batteryUsageInfoArray.forEach(function(abuinfo)
+ {
+ console.log("ApplicationID: " + abuinfo.appId + ", usage: " + abuinfo.batteryUsage);
+ });
+</pre>
+<p>You can expand the obtained data by calling the <code>getAppInfo()</code> method with the <code>ApplicationId</code> parameter you have received from the returned array.</p></li>
</ol>
<h2 id="manage" name="manage">Managing Applications</h2>
}
</pre>
</li>
-<li>When notifications are no longer needed, remove the listener using the watch ID retrieved by the <code>addAppStatusChangeListener()</code> method:</p>
+<li>When notifications are no longer needed, remove the listener using the watch ID retrieved by the <code>addAppStatusChangeListener()</code> method:
<pre class="prettyprint">
try
{
</li>
<li>2.5. <a href="#ApplicationContext">ApplicationContext</a>
</li>
-<li>2.6. <a href="#ApplicationControlData">ApplicationControlData</a>
+<li>2.6. <a href="#ApplicationBatteryUsage">ApplicationBatteryUsage</a>
</li>
-<li>2.7. <a href="#ApplicationControl">ApplicationControl</a>
+<li>2.7. <a href="#ApplicationControlData">ApplicationControlData</a>
</li>
-<li>2.8. <a href="#RequestedApplicationControl">RequestedApplicationControl</a>
+<li>2.8. <a href="#ApplicationControl">ApplicationControl</a>
</li>
-<li>2.9. <a href="#ApplicationCertificate">ApplicationCertificate</a>
+<li>2.9. <a href="#RequestedApplicationControl">RequestedApplicationControl</a>
</li>
-<li>2.10. <a href="#ApplicationMetaData">ApplicationMetaData</a>
+<li>2.10. <a href="#ApplicationCertificate">ApplicationCertificate</a>
</li>
-<li>2.11. <a href="#ApplicationInformationArraySuccessCallback">ApplicationInformationArraySuccessCallback</a>
+<li>2.11. <a href="#ApplicationMetaData">ApplicationMetaData</a>
</li>
-<li>2.12. <a href="#FindAppControlSuccessCallback">FindAppControlSuccessCallback</a>
+<li>2.12. <a href="#ApplicationInformationArraySuccessCallback">ApplicationInformationArraySuccessCallback</a>
</li>
-<li>2.13. <a href="#ApplicationContextArraySuccessCallback">ApplicationContextArraySuccessCallback</a>
+<li>2.13. <a href="#FindAppControlSuccessCallback">FindAppControlSuccessCallback</a>
</li>
-<li>2.14. <a href="#ApplicationControlDataArrayReplyCallback">ApplicationControlDataArrayReplyCallback</a>
+<li>2.14. <a href="#ApplicationContextArraySuccessCallback">ApplicationContextArraySuccessCallback</a>
</li>
-<li>2.15. <a href="#ApplicationInformationEventCallback">ApplicationInformationEventCallback</a>
+<li>2.15. <a href="#ApplicationControlDataArrayReplyCallback">ApplicationControlDataArrayReplyCallback</a>
</li>
-<li>2.16. <a href="#SystemEventData">SystemEventData</a>
+<li>2.16. <a href="#ApplicationInformationEventCallback">ApplicationInformationEventCallback</a>
</li>
-<li>2.17. <a href="#EventCallback">EventCallback</a>
+<li>2.17. <a href="#SystemEventData">SystemEventData</a>
</li>
-<li>2.18. <a href="#StatusEventCallback">StatusEventCallback</a>
+<li>2.18. <a href="#EventCallback">EventCallback</a>
</li>
-<li>2.19. <a href="#EventInfo">EventInfo</a>
+<li>2.19. <a href="#StatusEventCallback">StatusEventCallback</a>
+</li>
+<li>2.20. <a href="#EventInfo">EventInfo</a>
</li>
</ul>
</li>
<div>DOMString <a href="#ApplicationManager::getAppSharedURI">getAppSharedURI</a> (optional <a href="#ApplicationId">ApplicationId</a>? id)</div>
<div>
<a href="#ApplicationMetaData">ApplicationMetaData</a>[] <a href="#ApplicationManager::getAppMetaData">getAppMetaData</a> (optional <a href="#ApplicationId">ApplicationId</a>? id)</div>
+<div>
+<a href="#ApplicationBatteryUsage">ApplicationBatteryUsage</a>[] <a href="#ApplicationManager::getBatteryUsageInfo">getBatteryUsageInfo</a> (optional long? days, optional long? limit)</div>
<div>long <a href="#ApplicationManager::addAppStatusChangeListener">addAppStatusChangeListener</a> (<a href="#StatusEventCallback">StatusEventCallback</a> eventCallback, optional <a href="#ApplicationId">ApplicationId</a>? appId)</div>
<div>void <a href="#ApplicationManager::removeAppStatusChangeListener">removeAppStatusChangeListener</a> (long watchId)</div>
</td>
<td></td>
</tr>
<tr>
+<td><a href="#ApplicationBatteryUsage">ApplicationBatteryUsage</a></td>
+<td></td>
+</tr>
+<tr>
<td><a href="#ApplicationControlData">ApplicationControlData</a></td>
<td></td>
</tr>
<a href="#ApplicationMetaData">ApplicationMetaData</a>[] getAppMetaData(optional <a href="#ApplicationId">ApplicationId</a>? id) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
+ <a href="#ApplicationBatteryUsage">ApplicationBatteryUsage</a>[] getBatteryUsageInfo(optional long? days, optional long? limit) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
+
long addAppStatusChangeListener(<a href="#StatusEventCallback">StatusEventCallback</a> eventCallback, optional <a href="#ApplicationId">ApplicationId</a>? appId) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
void removeAppStatusChangeListener(long watchId) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
</pre>
</div>
</dd>
+<dt class="method" id="ApplicationManager::getBatteryUsageInfo">
+<a class="backward-compatibility-anchor" name="::Application::ApplicationManager::getBatteryUsageInfo"></a><code><b><span class="methodName">getBatteryUsageInfo</span></b></code>
+</dt>
+<dd>
+<div class="brief">
+ Returns information about battery usage per application.
+ </div>
+<div class="synopsis"><pre class="signature prettyprint"><a href="#ApplicationBatteryUsage">ApplicationBatteryUsage</a>[] getBatteryUsageInfo(optional long? days, optional long? limit);
+ </pre></div>
+<p><span class="version">
+ Since: </span>
+ 4.0
+ </p>
+<div class="description">
+ <p>
+This method returns information about battery usage collected in last <var>days</var> days.
+ </p>
+ <p>
+If the first parameter wasn't given, this method will return information about battery usage since last charge. Last charge means the time when device was unplugged, after reaching full charge.
+ </p>
+ <p>
+You can also determine number of returned objects.
+ </p>
+ </div>
+<p><span class="privilegelevel">
+ Privilege level: </span>
+ public
+ </p>
+<p><span class="privilege">
+ Privilege: </span>
+ http://tizen.org/privilege/apphistory.read
+ </p>
+<p><span class="remark"> Remark : </span>
+ This method is available only on mobile devices. An attempt to call this method on other profile will result in throwing <em>NotSupportedError</em> exception.
+ </p>
+<div class="parameters">
+<p><span class="param">Parameters:</span></p>
+<ul>
+ <li class="param">
+<span class="name">days</span><span class="optional"> [optional]</span><span class="optional"> [nullable]</span>:
+ Number of days. If parameter wasn't given, method will behave as described above.
+ </li>
+ <li class="param">
+<span class="name">limit</span><span class="optional"> [optional]</span><span class="optional"> [nullable]</span>:
+ This parameter defines maximum count of objects <em>ApplicationBatteryUsage</em> in returned array. If parameter wasn't given, it is set to <var>30</var>.
+ </li>
+ </ul>
+</div>
+<div class="returntype">
+<p><span class="return">Return value:</span></p>
+ ApplicationBatteryUsage[] Array of data containing information about battery usage per application.
+ </div>
+<div class="exceptionlist">
+<p><span class="except">Exceptions:</span></p>
+ <ul class="exception"><li>WebAPIException<ul>
+<li class="list"><p>
+ with error type NotSupportedError, if this feature is not supported.
+ </p></li>
+<li class="list"><p>
+ with error type InvalidValuesError, if any of the input parameters contain an invalid value.
+ </p></li>
+<li class="list"><p>
+ with error type SecurityError, if the application does not have the privilege to call this method.
+ </p></li>
+<li class="list"><p>
+ with error type AbortError, if any system error occurred.
+ </p></li>
+</ul>
+</li></ul>
+ </div>
+<div class="example">
+<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint">
+var batteryUsageInfoArray = tizen.application.getBatteryUsageInfo();
+batteryUsageInfoArray.forEach(function(abuinfo) {
+ console.log("ApplicationID: " + abuinfo.appId + ", usage: " + abuinfo.batteryUsage);
+});
+</pre>
+</div>
+<div class="output">
+<span class="title"><p>Output example:</p></span><pre> ApplicationID: 3gWRkEPXz5.BasicUI3, usage: 51.78
+ ApplicationID: org.tizen.homescreen-efl, usage: 19.98
+ ApplicationID: org.tizen.lockscreen, usage: 6.05
+ ApplicationID: org.tizen.quickpanel, usage: 4.83
+ ApplicationID: org.tizen.crash-syspopup, usage: 4.46
+ ApplicationID: ise-default, usage: 4.28
+ ApplicationID: org.tizen.indicator, usage: 3.69
+ ApplicationID: org.tizen.calendar.widget, usage: 1.79
+ ApplicationID: org.tizen.volume, usage: 1.34
+ ApplicationID: org.tizen.powerkey-syspopup, usage: 0.98
+ ApplicationID: org.tizen.task-mgr, usage: 0.46
+ ApplicationID: org.tizen.msg-manager, usage: 0.36
+ </pre>
+</div>
+</dd>
<dt class="deprecated method" id="ApplicationManager::addAppInfoEventListener">
<a class="backward-compatibility-anchor" name="::Application::ApplicationManager::addAppInfoEventListener"></a><code><b><span class="methodName">addAppInfoEventListener</span></b></code>
</dt>
</ul>
</div>
</div>
+<div class="interface" id="ApplicationBatteryUsage">
+<a class="backward-compatibility-anchor" name="::Application::ApplicationBatteryUsage"></a><h3>2.6. ApplicationBatteryUsage</h3>
+<div class="brief">
+ This interface defines information about battery usage of application.
+ </div>
+<pre class="webidl prettyprint"> [NoInterfaceObject] interface ApplicationBatteryUsage {
+
+ readonly attribute <a href="#ApplicationId">ApplicationId</a> appId;
+
+ readonly attribute double batteryUsage;
+ };</pre>
+<p><span class="version">
+ Since: </span>
+ 4.0
+ </p>
+<div class="attributes">
+<h4>Attributes</h4>
+<ul>
+<li class="attribute" id="ApplicationBatteryUsage::appId">
+<span class="attrName"><span class="readonly"> readonly
+</span><span class="type">ApplicationId </span><span class="name">appId</span></span><div class="brief">
+ An attribute storing ID of an installed application.
+ </div>
+<p><span class="version">
+ Since: </span>
+ 4.0
+ </p>
+</li>
+<li class="attribute" id="ApplicationBatteryUsage::batteryUsage">
+<span class="attrName"><span class="readonly"> readonly
+</span><span class="type">double </span><span class="name">batteryUsage</span></span><div class="brief">
+ An attribute which stores information about battery usage of an application with ApplicationId <em>appId</em>, in percentage. Battery usage is calculated based on CPU usage per application.
+ </div>
+<p><span class="version">
+ Since: </span>
+ 4.0
+ </p>
+</li>
+</ul>
+</div>
+</div>
<div class="interface" id="ApplicationControlData">
-<a class="backward-compatibility-anchor" name="::Application::ApplicationControlData"></a><h3>2.6. ApplicationControlData</h3>
+<a class="backward-compatibility-anchor" name="::Application::ApplicationControlData"></a><h3>2.7. ApplicationControlData</h3>
<div class="brief">
This interface defines a key/value pair used to pass data
between applications through the <em>ApplicationControl </em>interface.
</div>
</div>
<div class="interface" id="ApplicationControl">
-<a class="backward-compatibility-anchor" name="::Application::ApplicationControl"></a><h3>2.7. ApplicationControl</h3>
+<a class="backward-compatibility-anchor" name="::Application::ApplicationControl"></a><h3>2.8. ApplicationControl</h3>
<div class="brief">
This interface consists of an operation, URI, MIME type,
and data. It describes an action to be performed by other applications
</div>
</div>
<div class="interface" id="RequestedApplicationControl">
-<a class="backward-compatibility-anchor" name="::Application::RequestedApplicationControl"></a><h3>2.8. RequestedApplicationControl</h3>
+<a class="backward-compatibility-anchor" name="::Application::RequestedApplicationControl"></a><h3>2.9. RequestedApplicationControl</h3>
<div class="brief">
This interface has an application control information requested and passed
from another application and is passed to launch other applications. The newly
</div>
</div>
<div class="interface" id="ApplicationCertificate">
-<a class="backward-compatibility-anchor" name="::Application::ApplicationCertificate"></a><h3>2.9. ApplicationCertificate</h3>
+<a class="backward-compatibility-anchor" name="::Application::ApplicationCertificate"></a><h3>2.10. ApplicationCertificate</h3>
<div class="brief">
This interface defines the certificate information of an installed application.
</div>
</div>
</div>
<div class="interface" id="ApplicationMetaData">
-<a class="backward-compatibility-anchor" name="::Application::ApplicationMetaData"></a><h3>2.10. ApplicationMetaData</h3>
+<a class="backward-compatibility-anchor" name="::Application::ApplicationMetaData"></a><h3>2.11. ApplicationMetaData</h3>
<div class="brief">
This interface defines the meta data of an installed application
</div>
</div>
</div>
<div class="interface" id="ApplicationInformationArraySuccessCallback">
-<a class="backward-compatibility-anchor" name="::Application::ApplicationInformationArraySuccessCallback"></a><h3>2.11. ApplicationInformationArraySuccessCallback</h3>
+<a class="backward-compatibility-anchor" name="::Application::ApplicationInformationArraySuccessCallback"></a><h3>2.12. ApplicationInformationArraySuccessCallback</h3>
<div class="brief">
This callback interface specifies a success callback that is invoked when the installed application list is retrieved.
</div>
</div>
</div>
<div class="interface" id="FindAppControlSuccessCallback">
-<a class="backward-compatibility-anchor" name="::Application::FindAppControlSuccessCallback"></a><h3>2.12. FindAppControlSuccessCallback</h3>
+<a class="backward-compatibility-anchor" name="::Application::FindAppControlSuccessCallback"></a><h3>2.13. FindAppControlSuccessCallback</h3>
<div class="brief">
This callback interface specifies a success callback that is invoked when the system has finished searching applications that match a specific application control .
</div>
</div>
</div>
<div class="interface" id="ApplicationContextArraySuccessCallback">
-<a class="backward-compatibility-anchor" name="::Application::ApplicationContextArraySuccessCallback"></a><h3>2.13. ApplicationContextArraySuccessCallback</h3>
+<a class="backward-compatibility-anchor" name="::Application::ApplicationContextArraySuccessCallback"></a><h3>2.14. ApplicationContextArraySuccessCallback</h3>
<div class="brief">
This callback interface specifies a success callback that is invoked when the list of running applications is retrieved.
</div>
</div>
</div>
<div class="interface" id="ApplicationControlDataArrayReplyCallback">
-<a class="backward-compatibility-anchor" name="::Application::ApplicationControlDataArrayReplyCallback"></a><h3>2.14. ApplicationControlDataArrayReplyCallback</h3>
+<a class="backward-compatibility-anchor" name="::Application::ApplicationControlDataArrayReplyCallback"></a><h3>2.15. ApplicationControlDataArrayReplyCallback</h3>
<div class="brief">
The ApplicationControlDataArrayReplyCallback callback specifies success callbacks that are invoked as a reply from the requested application control within the application control requester.
</div>
</div>
</div>
<div class="interface" id="ApplicationInformationEventCallback">
-<a class="backward-compatibility-anchor" name="::Application::ApplicationInformationEventCallback"></a><h3>2.15. ApplicationInformationEventCallback</h3>
+<a class="backward-compatibility-anchor" name="::Application::ApplicationInformationEventCallback"></a><h3>2.16. ApplicationInformationEventCallback</h3>
<div class="brief">
The ApplicationInformationEventCallback specifies listener for subscribing for notifications of changes in the list of installed
applications on a device.
</div>
</div>
<div class="interface" id="SystemEventData">
-<a class="backward-compatibility-anchor" name="::Application::SystemEventData"></a><h3>2.16. SystemEventData</h3>
+<a class="backward-compatibility-anchor" name="::Application::SystemEventData"></a><h3>2.17. SystemEventData</h3>
<div class="brief">
The SystemEventData interface defines what is retrieved from the event listener.
</div>
</div>
</div>
<div class="interface" id="EventCallback">
-<a class="backward-compatibility-anchor" name="::Application::EventCallback"></a><h3>2.17. EventCallback</h3>
+<a class="backward-compatibility-anchor" name="::Application::EventCallback"></a><h3>2.18. EventCallback</h3>
<div class="brief">
The EventCallback interface specifies a callback for getting notified when a specified event occurs.
</div>
</div>
</div>
<div class="interface" id="StatusEventCallback">
-<a class="backward-compatibility-anchor" name="::Application::StatusEventCallback"></a><h3>2.18. StatusEventCallback</h3>
+<a class="backward-compatibility-anchor" name="::Application::StatusEventCallback"></a><h3>2.19. StatusEventCallback</h3>
<div class="brief">
The StatusEventCallback interface specifies a callback for getting notified when status of the installed application has been changed.
</div>
</div>
</div>
<div class="dictionary" id="EventInfo">
-<a class="backward-compatibility-anchor" name="::Application::EventInfo"></a><h3>2.19. EventInfo</h3>
+<a class="backward-compatibility-anchor" name="::Application::EventInfo"></a><h3>2.20. EventInfo</h3>
<div class="brief">
The EventInfo dictionary identifies an event with information such as event name. If it is an user event, the broadasting application's identifier is also specified.
</div>
<a href="#ApplicationMetaData">ApplicationMetaData</a>[] getAppMetaData(optional <a href="#ApplicationId">ApplicationId</a>? id) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
+ <a href="#ApplicationBatteryUsage">ApplicationBatteryUsage</a>[] getBatteryUsageInfo(optional long? days, optional long? limit) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
+
long addAppStatusChangeListener(<a href="#StatusEventCallback">StatusEventCallback</a> eventCallback, optional <a href="#ApplicationId">ApplicationId</a>? appId) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
void removeAppStatusChangeListener(long watchId) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
readonly attribute <a href="#ApplicationId">ApplicationId</a> appId;
};
+ [NoInterfaceObject] interface ApplicationBatteryUsage {
+
+ readonly attribute <a href="#ApplicationId">ApplicationId</a> appId;
+
+ readonly attribute double batteryUsage;
+ };
+
[Constructor(DOMString key, DOMString[] value)]
interface ApplicationControlData {
</li>
<li>2.5. <a href="#ApplicationContext">ApplicationContext</a>
</li>
-<li>2.6. <a href="#ApplicationControlData">ApplicationControlData</a>
+<li>2.6. <a href="#ApplicationBatteryUsage">ApplicationBatteryUsage</a>
</li>
-<li>2.7. <a href="#ApplicationControl">ApplicationControl</a>
+<li>2.7. <a href="#ApplicationControlData">ApplicationControlData</a>
</li>
-<li>2.8. <a href="#RequestedApplicationControl">RequestedApplicationControl</a>
+<li>2.8. <a href="#ApplicationControl">ApplicationControl</a>
</li>
-<li>2.9. <a href="#ApplicationCertificate">ApplicationCertificate</a>
+<li>2.9. <a href="#RequestedApplicationControl">RequestedApplicationControl</a>
</li>
-<li>2.10. <a href="#ApplicationMetaData">ApplicationMetaData</a>
+<li>2.10. <a href="#ApplicationCertificate">ApplicationCertificate</a>
</li>
-<li>2.11. <a href="#ApplicationInformationArraySuccessCallback">ApplicationInformationArraySuccessCallback</a>
+<li>2.11. <a href="#ApplicationMetaData">ApplicationMetaData</a>
</li>
-<li>2.12. <a href="#FindAppControlSuccessCallback">FindAppControlSuccessCallback</a>
+<li>2.12. <a href="#ApplicationInformationArraySuccessCallback">ApplicationInformationArraySuccessCallback</a>
</li>
-<li>2.13. <a href="#ApplicationContextArraySuccessCallback">ApplicationContextArraySuccessCallback</a>
+<li>2.13. <a href="#FindAppControlSuccessCallback">FindAppControlSuccessCallback</a>
</li>
-<li>2.14. <a href="#ApplicationControlDataArrayReplyCallback">ApplicationControlDataArrayReplyCallback</a>
+<li>2.14. <a href="#ApplicationContextArraySuccessCallback">ApplicationContextArraySuccessCallback</a>
</li>
-<li>2.15. <a href="#ApplicationInformationEventCallback">ApplicationInformationEventCallback</a>
+<li>2.15. <a href="#ApplicationControlDataArrayReplyCallback">ApplicationControlDataArrayReplyCallback</a>
</li>
-<li>2.16. <a href="#SystemEventData">SystemEventData</a>
+<li>2.16. <a href="#ApplicationInformationEventCallback">ApplicationInformationEventCallback</a>
</li>
-<li>2.17. <a href="#EventCallback">EventCallback</a>
+<li>2.17. <a href="#SystemEventData">SystemEventData</a>
</li>
-<li>2.18. <a href="#StatusEventCallback">StatusEventCallback</a>
+<li>2.18. <a href="#EventCallback">EventCallback</a>
</li>
-<li>2.19. <a href="#EventInfo">EventInfo</a>
+<li>2.19. <a href="#StatusEventCallback">StatusEventCallback</a>
+</li>
+<li>2.20. <a href="#EventInfo">EventInfo</a>
</li>
</ul>
</li>
<div>DOMString <a href="#ApplicationManager::getAppSharedURI">getAppSharedURI</a> (optional <a href="#ApplicationId">ApplicationId</a>? id)</div>
<div>
<a href="#ApplicationMetaData">ApplicationMetaData</a>[] <a href="#ApplicationManager::getAppMetaData">getAppMetaData</a> (optional <a href="#ApplicationId">ApplicationId</a>? id)</div>
+<div>
+<a href="#ApplicationBatteryUsage">ApplicationBatteryUsage</a>[] <a href="#ApplicationManager::getBatteryUsageInfo">getBatteryUsageInfo</a> (optional long? days, optional long? limit)</div>
<div>long <a href="#ApplicationManager::addAppStatusChangeListener">addAppStatusChangeListener</a> (<a href="#StatusEventCallback">StatusEventCallback</a> eventCallback, optional <a href="#ApplicationId">ApplicationId</a>? appId)</div>
<div>void <a href="#ApplicationManager::removeAppStatusChangeListener">removeAppStatusChangeListener</a> (long watchId)</div>
</td>
<a href="#ApplicationMetaData">ApplicationMetaData</a>[] getAppMetaData(optional <a href="#ApplicationId">ApplicationId</a>? id) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
+ <a href="#ApplicationBatteryUsage">ApplicationBatteryUsage</a>[] getBatteryUsageInfo(optional long? days, optional long? limit) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
+
long addAppStatusChangeListener(<a href="#StatusEventCallback">StatusEventCallback</a> eventCallback, optional <a href="#ApplicationId">ApplicationId</a>? appId) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
void removeAppStatusChangeListener(long watchId) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
</pre>
</div>
</dd>
+<dt class="method" id="ApplicationManager::getBatteryUsageInfo">
+<a class="backward-compatibility-anchor" name="::Application::ApplicationManager::getBatteryUsageInfo"></a><code><b><span class="methodName">getBatteryUsageInfo</span></b></code>
+</dt>
+<dd>
+<div class="brief">
+ Returns information about battery usage per application.
+ </div>
+<div class="synopsis"><pre class="signature prettyprint"><a href="#ApplicationBatteryUsage">ApplicationBatteryUsage</a>[] getBatteryUsageInfo(optional long? days, optional long? limit);
+ </pre></div>
+<p><span class="version">
+ Since: </span>
+ 4.0
+ </p>
+<div class="description">
+ <p>
+This method returns information about battery usage collected in last <var>days</var> days.
+ </p>
+ <p>
+If the first parameter wasn't given, this method will return information about battery usage since last charge. Last charge means the time when device was unplugged, after reaching full charge.
+ </p>
+ <p>
+You can also determine number of returned objects.
+ </p>
+ </div>
+<p><span class="privilegelevel">
+ Privilege level: </span>
+ public
+ </p>
+<p><span class="privilege">
+ Privilege: </span>
+ http://tizen.org/privilege/apphistory.read
+ </p>
+<p><span class="remark"> Remark : </span>
+ This method is available only on mobile devices. An attempt to call this method on other profile will result in throwing <em>NotSupportedError</em> exception.
+ </p>
+<div class="parameters">
+<p><span class="param">Parameters:</span></p>
+<ul>
+ <li class="param">
+<span class="name">days</span><span class="optional"> [optional]</span><span class="optional"> [nullable]</span>:
+ Number of days. If parameter wasn't given, method will behave as described above.
+ </li>
+ <li class="param">
+<span class="name">limit</span><span class="optional"> [optional]</span><span class="optional"> [nullable]</span>:
+ This parameter defines maximum count of objects <em>ApplicationBatteryUsage</em> in returned array. If parameter wasn't given, it is set to <var>30</var>.
+ </li>
+ </ul>
+</div>
+<div class="returntype">
+<p><span class="return">Return value:</span></p>
+ ApplicationBatteryUsage[] Array of data containing information about battery usage per application.
+ </div>
+<div class="exceptionlist">
+<p><span class="except">Exceptions:</span></p>
+ <ul class="exception"><li>WebAPIException<ul>
+<li class="list"><p>
+ with error type NotSupportedError, if this feature is not supported.
+ </p></li>
+<li class="list"><p>
+ with error type InvalidValuesError, if any of the input parameters contain an invalid value.
+ </p></li>
+<li class="list"><p>
+ with error type SecurityError, if the application does not have the privilege to call this method.
+ </p></li>
+<li class="list"><p>
+ with error type AbortError, if any system error occurred.
+ </p></li>
+</ul>
+</li></ul>
+ </div>
+<div class="example">
+<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint">
+var batteryUsageInfoArray = tizen.application.getBatteryUsageInfo();
+batteryUsageInfoArray.forEach(function(abuinfo) {
+ console.log("ApplicationID: " + abuinfo.appId + ", usage: " + abuinfo.batteryUsage);
+});
+</pre>
+</div>
+<div class="output">
+<span class="title"><p>Output example:</p></span><pre> ApplicationID: 3gWRkEPXz5.BasicUI3, usage: 51.78
+ ApplicationID: org.tizen.homescreen-efl, usage: 19.98
+ ApplicationID: org.tizen.lockscreen, usage: 6.05
+ ApplicationID: org.tizen.quickpanel, usage: 4.83
+ ApplicationID: org.tizen.crash-syspopup, usage: 4.46
+ ApplicationID: ise-default, usage: 4.28
+ ApplicationID: org.tizen.indicator, usage: 3.69
+ ApplicationID: org.tizen.calendar.widget, usage: 1.79
+ ApplicationID: org.tizen.volume, usage: 1.34
+ ApplicationID: org.tizen.powerkey-syspopup, usage: 0.98
+ ApplicationID: org.tizen.task-mgr, usage: 0.46
+ ApplicationID: org.tizen.msg-manager, usage: 0.36
+ </pre>
+</div>
+</dd>
<dt class="deprecated method" id="ApplicationManager::addAppInfoEventListener">
<a class="backward-compatibility-anchor" name="::Application::ApplicationManager::addAppInfoEventListener"></a><code><b><span class="methodName">addAppInfoEventListener</span></b></code>
</dt>
</ul>
</div>
</div>
+<div class="interface" id="ApplicationBatteryUsage">
+<a class="backward-compatibility-anchor" name="::Application::ApplicationBatteryUsage"></a><h3>2.6. ApplicationBatteryUsage</h3>
+<div class="brief">
+ This interface defines information about battery usage of application.
+ </div>
+<pre class="webidl prettyprint"> [NoInterfaceObject] interface ApplicationBatteryUsage {
+
+ readonly attribute <a href="#ApplicationId">ApplicationId</a> appId;
+
+ readonly attribute double batteryUsage;
+ };</pre>
+<p><span class="version">
+ Since: </span>
+ 4.0
+ </p>
+<div class="attributes">
+<h4>Attributes</h4>
+<ul>
+<li class="attribute" id="ApplicationBatteryUsage::appId">
+<span class="attrName"><span class="readonly"> readonly
+</span><span class="type">ApplicationId </span><span class="name">appId</span></span><div class="brief">
+ An attribute storing ID of an installed application.
+ </div>
+<p><span class="version">
+ Since: </span>
+ 4.0
+ </p>
+</li>
+<li class="attribute" id="ApplicationBatteryUsage::batteryUsage">
+<span class="attrName"><span class="readonly"> readonly
+</span><span class="type">double </span><span class="name">batteryUsage</span></span><div class="brief">
+ An attribute which stores information about battery usage of an application with ApplicationId <em>appId</em>, in percentage. Battery usage is calculated based on CPU usage per application.
+ </div>
+<p><span class="version">
+ Since: </span>
+ 4.0
+ </p>
+</li>
+</ul>
+</div>
+</div>
<div class="interface" id="ApplicationControlData">
-<a class="backward-compatibility-anchor" name="::Application::ApplicationControlData"></a><h3>2.6. ApplicationControlData</h3>
+<a class="backward-compatibility-anchor" name="::Application::ApplicationControlData"></a><h3>2.7. ApplicationControlData</h3>
<div class="brief">
This interface defines a key/value pair used to pass data
between applications through the <em>ApplicationControl </em>interface.
</div>
</div>
<div class="interface" id="ApplicationControl">
-<a class="backward-compatibility-anchor" name="::Application::ApplicationControl"></a><h3>2.7. ApplicationControl</h3>
+<a class="backward-compatibility-anchor" name="::Application::ApplicationControl"></a><h3>2.8. ApplicationControl</h3>
<div class="brief">
This interface consists of an operation, URI, MIME type,
and data. It describes an action to be performed by other applications
</div>
</div>
<div class="interface" id="RequestedApplicationControl">
-<a class="backward-compatibility-anchor" name="::Application::RequestedApplicationControl"></a><h3>2.8. RequestedApplicationControl</h3>
+<a class="backward-compatibility-anchor" name="::Application::RequestedApplicationControl"></a><h3>2.9. RequestedApplicationControl</h3>
<div class="brief">
This interface has an application control information requested and passed
from another application and is passed to launch other applications. The newly
</div>
</div>
<div class="interface" id="ApplicationCertificate">
-<a class="backward-compatibility-anchor" name="::Application::ApplicationCertificate"></a><h3>2.9. ApplicationCertificate</h3>
+<a class="backward-compatibility-anchor" name="::Application::ApplicationCertificate"></a><h3>2.10. ApplicationCertificate</h3>
<div class="brief">
This interface defines the certificate information of an installed application.
</div>
</div>
</div>
<div class="interface" id="ApplicationMetaData">
-<a class="backward-compatibility-anchor" name="::Application::ApplicationMetaData"></a><h3>2.10. ApplicationMetaData</h3>
+<a class="backward-compatibility-anchor" name="::Application::ApplicationMetaData"></a><h3>2.11. ApplicationMetaData</h3>
<div class="brief">
This interface defines the meta data of an installed application
</div>
</div>
</div>
<div class="interface" id="ApplicationInformationArraySuccessCallback">
-<a class="backward-compatibility-anchor" name="::Application::ApplicationInformationArraySuccessCallback"></a><h3>2.11. ApplicationInformationArraySuccessCallback</h3>
+<a class="backward-compatibility-anchor" name="::Application::ApplicationInformationArraySuccessCallback"></a><h3>2.12. ApplicationInformationArraySuccessCallback</h3>
<div class="brief">
This callback interface specifies a success callback that is invoked when the installed application list is retrieved.
</div>
</div>
</div>
<div class="interface" id="FindAppControlSuccessCallback">
-<a class="backward-compatibility-anchor" name="::Application::FindAppControlSuccessCallback"></a><h3>2.12. FindAppControlSuccessCallback</h3>
+<a class="backward-compatibility-anchor" name="::Application::FindAppControlSuccessCallback"></a><h3>2.13. FindAppControlSuccessCallback</h3>
<div class="brief">
This callback interface specifies a success callback that is invoked when the system has finished searching applications that match a specific application control .
</div>
</div>
</div>
<div class="interface" id="ApplicationContextArraySuccessCallback">
-<a class="backward-compatibility-anchor" name="::Application::ApplicationContextArraySuccessCallback"></a><h3>2.13. ApplicationContextArraySuccessCallback</h3>
+<a class="backward-compatibility-anchor" name="::Application::ApplicationContextArraySuccessCallback"></a><h3>2.14. ApplicationContextArraySuccessCallback</h3>
<div class="brief">
This callback interface specifies a success callback that is invoked when the list of running applications is retrieved.
</div>
</div>
</div>
<div class="interface" id="ApplicationControlDataArrayReplyCallback">
-<a class="backward-compatibility-anchor" name="::Application::ApplicationControlDataArrayReplyCallback"></a><h3>2.14. ApplicationControlDataArrayReplyCallback</h3>
+<a class="backward-compatibility-anchor" name="::Application::ApplicationControlDataArrayReplyCallback"></a><h3>2.15. ApplicationControlDataArrayReplyCallback</h3>
<div class="brief">
The ApplicationControlDataArrayReplyCallback callback specifies success callbacks that are invoked as a reply from the requested application control within the application control requester.
</div>
</div>
</div>
<div class="interface" id="ApplicationInformationEventCallback">
-<a class="backward-compatibility-anchor" name="::Application::ApplicationInformationEventCallback"></a><h3>2.15. ApplicationInformationEventCallback</h3>
+<a class="backward-compatibility-anchor" name="::Application::ApplicationInformationEventCallback"></a><h3>2.16. ApplicationInformationEventCallback</h3>
<div class="brief">
The ApplicationInformationEventCallback specifies listener for subscribing for notifications of changes in the list of installed
applications on a device.
</div>
</div>
<div class="interface" id="SystemEventData">
-<a class="backward-compatibility-anchor" name="::Application::SystemEventData"></a><h3>2.16. SystemEventData</h3>
+<a class="backward-compatibility-anchor" name="::Application::SystemEventData"></a><h3>2.17. SystemEventData</h3>
<div class="brief">
The SystemEventData interface defines what is retrieved from the event listener.
</div>
</div>
</div>
<div class="interface" id="EventCallback">
-<a class="backward-compatibility-anchor" name="::Application::EventCallback"></a><h3>2.17. EventCallback</h3>
+<a class="backward-compatibility-anchor" name="::Application::EventCallback"></a><h3>2.18. EventCallback</h3>
<div class="brief">
The EventCallback interface specifies a callback for getting notified when a specified event occurs.
</div>
</div>
</div>
<div class="interface" id="StatusEventCallback">
-<a class="backward-compatibility-anchor" name="::Application::StatusEventCallback"></a><h3>2.18. StatusEventCallback</h3>
+<a class="backward-compatibility-anchor" name="::Application::StatusEventCallback"></a><h3>2.19. StatusEventCallback</h3>
<div class="brief">
The StatusEventCallback interface specifies a callback for getting notified when status of the installed application has been changed.
</div>
</div>
</div>
<div class="dictionary" id="EventInfo">
-<a class="backward-compatibility-anchor" name="::Application::EventInfo"></a><h3>2.19. EventInfo</h3>
+<a class="backward-compatibility-anchor" name="::Application::EventInfo"></a><h3>2.20. EventInfo</h3>
<div class="brief">
The EventInfo dictionary identifies an event with information such as event name. If it is an user event, the broadasting application's identifier is also specified.
</div>
<a href="#ApplicationMetaData">ApplicationMetaData</a>[] getAppMetaData(optional <a href="#ApplicationId">ApplicationId</a>? id) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
+ <a href="#ApplicationBatteryUsage">ApplicationBatteryUsage</a>[] getBatteryUsageInfo(optional long? days, optional long? limit) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
+
long addAppStatusChangeListener(<a href="#StatusEventCallback">StatusEventCallback</a> eventCallback, optional <a href="#ApplicationId">ApplicationId</a>? appId) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
void removeAppStatusChangeListener(long watchId) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
readonly attribute <a href="#ApplicationId">ApplicationId</a> appId;
};
+ [NoInterfaceObject] interface ApplicationBatteryUsage {
+
+ readonly attribute <a href="#ApplicationId">ApplicationId</a> appId;
+
+ readonly attribute double batteryUsage;
+ };
+
[Constructor(DOMString key, DOMString[] value)]
interface ApplicationControlData {
</li>
<li>2.5. <a href="#ApplicationContext">ApplicationContext</a>
</li>
-<li>2.6. <a href="#ApplicationControlData">ApplicationControlData</a>
+<li>2.6. <a href="#ApplicationBatteryUsage">ApplicationBatteryUsage</a>
</li>
-<li>2.7. <a href="#ApplicationControl">ApplicationControl</a>
+<li>2.7. <a href="#ApplicationControlData">ApplicationControlData</a>
</li>
-<li>2.8. <a href="#RequestedApplicationControl">RequestedApplicationControl</a>
+<li>2.8. <a href="#ApplicationControl">ApplicationControl</a>
</li>
-<li>2.9. <a href="#ApplicationCertificate">ApplicationCertificate</a>
+<li>2.9. <a href="#RequestedApplicationControl">RequestedApplicationControl</a>
</li>
-<li>2.10. <a href="#ApplicationMetaData">ApplicationMetaData</a>
+<li>2.10. <a href="#ApplicationCertificate">ApplicationCertificate</a>
</li>
-<li>2.11. <a href="#ApplicationInformationArraySuccessCallback">ApplicationInformationArraySuccessCallback</a>
+<li>2.11. <a href="#ApplicationMetaData">ApplicationMetaData</a>
</li>
-<li>2.12. <a href="#FindAppControlSuccessCallback">FindAppControlSuccessCallback</a>
+<li>2.12. <a href="#ApplicationInformationArraySuccessCallback">ApplicationInformationArraySuccessCallback</a>
</li>
-<li>2.13. <a href="#ApplicationContextArraySuccessCallback">ApplicationContextArraySuccessCallback</a>
+<li>2.13. <a href="#FindAppControlSuccessCallback">FindAppControlSuccessCallback</a>
</li>
-<li>2.14. <a href="#ApplicationControlDataArrayReplyCallback">ApplicationControlDataArrayReplyCallback</a>
+<li>2.14. <a href="#ApplicationContextArraySuccessCallback">ApplicationContextArraySuccessCallback</a>
</li>
-<li>2.15. <a href="#ApplicationInformationEventCallback">ApplicationInformationEventCallback</a>
+<li>2.15. <a href="#ApplicationControlDataArrayReplyCallback">ApplicationControlDataArrayReplyCallback</a>
</li>
-<li>2.16. <a href="#SystemEventData">SystemEventData</a>
+<li>2.16. <a href="#ApplicationInformationEventCallback">ApplicationInformationEventCallback</a>
</li>
-<li>2.17. <a href="#EventCallback">EventCallback</a>
+<li>2.17. <a href="#SystemEventData">SystemEventData</a>
</li>
-<li>2.18. <a href="#StatusEventCallback">StatusEventCallback</a>
+<li>2.18. <a href="#EventCallback">EventCallback</a>
</li>
-<li>2.19. <a href="#EventInfo">EventInfo</a>
+<li>2.19. <a href="#StatusEventCallback">StatusEventCallback</a>
+</li>
+<li>2.20. <a href="#EventInfo">EventInfo</a>
</li>
</ul>
</li>
<div>DOMString <a href="#ApplicationManager::getAppSharedURI">getAppSharedURI</a> (optional <a href="#ApplicationId">ApplicationId</a>? id)</div>
<div>
<a href="#ApplicationMetaData">ApplicationMetaData</a>[] <a href="#ApplicationManager::getAppMetaData">getAppMetaData</a> (optional <a href="#ApplicationId">ApplicationId</a>? id)</div>
+<div>
+<a href="#ApplicationBatteryUsage">ApplicationBatteryUsage</a>[] <a href="#ApplicationManager::getBatteryUsageInfo">getBatteryUsageInfo</a> (optional long? days, optional long? limit)</div>
<div>long <a href="#ApplicationManager::addAppStatusChangeListener">addAppStatusChangeListener</a> (<a href="#StatusEventCallback">StatusEventCallback</a> eventCallback, optional <a href="#ApplicationId">ApplicationId</a>? appId)</div>
<div>void <a href="#ApplicationManager::removeAppStatusChangeListener">removeAppStatusChangeListener</a> (long watchId)</div>
</td>
<td></td>
</tr>
<tr>
+<td><a href="#ApplicationBatteryUsage">ApplicationBatteryUsage</a></td>
+<td></td>
+</tr>
+<tr>
<td><a href="#ApplicationControlData">ApplicationControlData</a></td>
<td></td>
</tr>
<a href="#ApplicationMetaData">ApplicationMetaData</a>[] getAppMetaData(optional <a href="#ApplicationId">ApplicationId</a>? id) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
+ <a href="#ApplicationBatteryUsage">ApplicationBatteryUsage</a>[] getBatteryUsageInfo(optional long? days, optional long? limit) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
+
long addAppStatusChangeListener(<a href="#StatusEventCallback">StatusEventCallback</a> eventCallback, optional <a href="#ApplicationId">ApplicationId</a>? appId) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
void removeAppStatusChangeListener(long watchId) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
</pre>
</div>
</dd>
+<dt class="method" id="ApplicationManager::getBatteryUsageInfo">
+<a class="backward-compatibility-anchor" name="::Application::ApplicationManager::getBatteryUsageInfo"></a><code><b><span class="methodName">getBatteryUsageInfo</span></b></code>
+</dt>
+<dd>
+<div class="brief">
+ Returns information about battery usage per application.
+ </div>
+<div class="synopsis"><pre class="signature prettyprint"><a href="#ApplicationBatteryUsage">ApplicationBatteryUsage</a>[] getBatteryUsageInfo(optional long? days, optional long? limit);
+ </pre></div>
+<p><span class="version">
+ Since: </span>
+ 4.0
+ </p>
+<div class="description">
+ <p>
+This method returns information about battery usage collected in last <var>days</var> days.
+ </p>
+ <p>
+If the first parameter wasn't given, this method will return information about battery usage since last charge. Last charge means the time when device was unplugged, after reaching full charge.
+ </p>
+ <p>
+You can also determine number of returned objects.
+ </p>
+ </div>
+<p><span class="privilegelevel">
+ Privilege level: </span>
+ public
+ </p>
+<p><span class="privilege">
+ Privilege: </span>
+ http://tizen.org/privilege/apphistory.read
+ </p>
+<p><span class="remark"> Remark : </span>
+ This method is available only on mobile devices. An attempt to call this method on other profile will result in throwing <em>NotSupportedError</em> exception.
+ </p>
+<div class="parameters">
+<p><span class="param">Parameters:</span></p>
+<ul>
+ <li class="param">
+<span class="name">days</span><span class="optional"> [optional]</span><span class="optional"> [nullable]</span>:
+ Number of days. If parameter wasn't given, method will behave as described above.
+ </li>
+ <li class="param">
+<span class="name">limit</span><span class="optional"> [optional]</span><span class="optional"> [nullable]</span>:
+ This parameter defines maximum count of objects <em>ApplicationBatteryUsage</em> in returned array. If parameter wasn't given, it is set to <var>30</var>.
+ </li>
+ </ul>
+</div>
+<div class="returntype">
+<p><span class="return">Return value:</span></p>
+ ApplicationBatteryUsage[] Array of data containing information about battery usage per application.
+ </div>
+<div class="exceptionlist">
+<p><span class="except">Exceptions:</span></p>
+ <ul class="exception"><li>WebAPIException<ul>
+<li class="list"><p>
+ with error type NotSupportedError, if this feature is not supported.
+ </p></li>
+<li class="list"><p>
+ with error type InvalidValuesError, if any of the input parameters contain an invalid value.
+ </p></li>
+<li class="list"><p>
+ with error type SecurityError, if the application does not have the privilege to call this method.
+ </p></li>
+<li class="list"><p>
+ with error type AbortError, if any system error occurred.
+ </p></li>
+</ul>
+</li></ul>
+ </div>
+<div class="example">
+<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint">
+var batteryUsageInfoArray = tizen.application.getBatteryUsageInfo();
+batteryUsageInfoArray.forEach(function(abuinfo) {
+ console.log("ApplicationID: " + abuinfo.appId + ", usage: " + abuinfo.batteryUsage);
+});
+</pre>
+</div>
+<div class="output">
+<span class="title"><p>Output example:</p></span><pre> ApplicationID: 3gWRkEPXz5.BasicUI3, usage: 51.78
+ ApplicationID: org.tizen.homescreen-efl, usage: 19.98
+ ApplicationID: org.tizen.lockscreen, usage: 6.05
+ ApplicationID: org.tizen.quickpanel, usage: 4.83
+ ApplicationID: org.tizen.crash-syspopup, usage: 4.46
+ ApplicationID: ise-default, usage: 4.28
+ ApplicationID: org.tizen.indicator, usage: 3.69
+ ApplicationID: org.tizen.calendar.widget, usage: 1.79
+ ApplicationID: org.tizen.volume, usage: 1.34
+ ApplicationID: org.tizen.powerkey-syspopup, usage: 0.98
+ ApplicationID: org.tizen.task-mgr, usage: 0.46
+ ApplicationID: org.tizen.msg-manager, usage: 0.36
+ </pre>
+</div>
+</dd>
<dt class="deprecated method" id="ApplicationManager::addAppInfoEventListener">
<a class="backward-compatibility-anchor" name="::Application::ApplicationManager::addAppInfoEventListener"></a><code><b><span class="methodName">addAppInfoEventListener</span></b></code>
</dt>
</ul>
</div>
</div>
+<div class="interface" id="ApplicationBatteryUsage">
+<a class="backward-compatibility-anchor" name="::Application::ApplicationBatteryUsage"></a><h3>2.6. ApplicationBatteryUsage</h3>
+<div class="brief">
+ This interface defines information about battery usage of application.
+ </div>
+<pre class="webidl prettyprint"> [NoInterfaceObject] interface ApplicationBatteryUsage {
+
+ readonly attribute <a href="#ApplicationId">ApplicationId</a> appId;
+
+ readonly attribute double batteryUsage;
+ };</pre>
+<p><span class="version">
+ Since: </span>
+ 4.0
+ </p>
+<div class="attributes">
+<h4>Attributes</h4>
+<ul>
+<li class="attribute" id="ApplicationBatteryUsage::appId">
+<span class="attrName"><span class="readonly"> readonly
+</span><span class="type">ApplicationId </span><span class="name">appId</span></span><div class="brief">
+ An attribute storing ID of an installed application.
+ </div>
+<p><span class="version">
+ Since: </span>
+ 4.0
+ </p>
+</li>
+<li class="attribute" id="ApplicationBatteryUsage::batteryUsage">
+<span class="attrName"><span class="readonly"> readonly
+</span><span class="type">double </span><span class="name">batteryUsage</span></span><div class="brief">
+ An attribute which stores information about battery usage of an application with ApplicationId <em>appId</em>, in percentage. Battery usage is calculated based on CPU usage per application.
+ </div>
+<p><span class="version">
+ Since: </span>
+ 4.0
+ </p>
+</li>
+</ul>
+</div>
+</div>
<div class="interface" id="ApplicationControlData">
-<a class="backward-compatibility-anchor" name="::Application::ApplicationControlData"></a><h3>2.6. ApplicationControlData</h3>
+<a class="backward-compatibility-anchor" name="::Application::ApplicationControlData"></a><h3>2.7. ApplicationControlData</h3>
<div class="brief">
This interface defines a key/value pair used to pass data
between applications through the <em>ApplicationControl </em>interface.
</div>
</div>
<div class="interface" id="ApplicationControl">
-<a class="backward-compatibility-anchor" name="::Application::ApplicationControl"></a><h3>2.7. ApplicationControl</h3>
+<a class="backward-compatibility-anchor" name="::Application::ApplicationControl"></a><h3>2.8. ApplicationControl</h3>
<div class="brief">
This interface consists of an operation, URI, MIME type,
and data. It describes an action to be performed by other applications
</div>
</div>
<div class="interface" id="RequestedApplicationControl">
-<a class="backward-compatibility-anchor" name="::Application::RequestedApplicationControl"></a><h3>2.8. RequestedApplicationControl</h3>
+<a class="backward-compatibility-anchor" name="::Application::RequestedApplicationControl"></a><h3>2.9. RequestedApplicationControl</h3>
<div class="brief">
This interface has an application control information requested and passed
from another application and is passed to launch other applications. The newly
</div>
</div>
<div class="interface" id="ApplicationCertificate">
-<a class="backward-compatibility-anchor" name="::Application::ApplicationCertificate"></a><h3>2.9. ApplicationCertificate</h3>
+<a class="backward-compatibility-anchor" name="::Application::ApplicationCertificate"></a><h3>2.10. ApplicationCertificate</h3>
<div class="brief">
This interface defines the certificate information of an installed application.
</div>
</div>
</div>
<div class="interface" id="ApplicationMetaData">
-<a class="backward-compatibility-anchor" name="::Application::ApplicationMetaData"></a><h3>2.10. ApplicationMetaData</h3>
+<a class="backward-compatibility-anchor" name="::Application::ApplicationMetaData"></a><h3>2.11. ApplicationMetaData</h3>
<div class="brief">
This interface defines the meta data of an installed application
</div>
</div>
</div>
<div class="interface" id="ApplicationInformationArraySuccessCallback">
-<a class="backward-compatibility-anchor" name="::Application::ApplicationInformationArraySuccessCallback"></a><h3>2.11. ApplicationInformationArraySuccessCallback</h3>
+<a class="backward-compatibility-anchor" name="::Application::ApplicationInformationArraySuccessCallback"></a><h3>2.12. ApplicationInformationArraySuccessCallback</h3>
<div class="brief">
This callback interface specifies a success callback that is invoked when the installed application list is retrieved.
</div>
</div>
</div>
<div class="interface" id="FindAppControlSuccessCallback">
-<a class="backward-compatibility-anchor" name="::Application::FindAppControlSuccessCallback"></a><h3>2.12. FindAppControlSuccessCallback</h3>
+<a class="backward-compatibility-anchor" name="::Application::FindAppControlSuccessCallback"></a><h3>2.13. FindAppControlSuccessCallback</h3>
<div class="brief">
This callback interface specifies a success callback that is invoked when the system has finished searching applications that match a specific application control .
</div>
</div>
</div>
<div class="interface" id="ApplicationContextArraySuccessCallback">
-<a class="backward-compatibility-anchor" name="::Application::ApplicationContextArraySuccessCallback"></a><h3>2.13. ApplicationContextArraySuccessCallback</h3>
+<a class="backward-compatibility-anchor" name="::Application::ApplicationContextArraySuccessCallback"></a><h3>2.14. ApplicationContextArraySuccessCallback</h3>
<div class="brief">
This callback interface specifies a success callback that is invoked when the list of running applications is retrieved.
</div>
</div>
</div>
<div class="interface" id="ApplicationControlDataArrayReplyCallback">
-<a class="backward-compatibility-anchor" name="::Application::ApplicationControlDataArrayReplyCallback"></a><h3>2.14. ApplicationControlDataArrayReplyCallback</h3>
+<a class="backward-compatibility-anchor" name="::Application::ApplicationControlDataArrayReplyCallback"></a><h3>2.15. ApplicationControlDataArrayReplyCallback</h3>
<div class="brief">
The ApplicationControlDataArrayReplyCallback callback specifies success callbacks that are invoked as a reply from the requested application control within the application control requester.
</div>
</div>
</div>
<div class="interface" id="ApplicationInformationEventCallback">
-<a class="backward-compatibility-anchor" name="::Application::ApplicationInformationEventCallback"></a><h3>2.15. ApplicationInformationEventCallback</h3>
+<a class="backward-compatibility-anchor" name="::Application::ApplicationInformationEventCallback"></a><h3>2.16. ApplicationInformationEventCallback</h3>
<div class="brief">
The ApplicationInformationEventCallback specifies listener for subscribing for notifications of changes in the list of installed
applications on a device.
</div>
</div>
<div class="interface" id="SystemEventData">
-<a class="backward-compatibility-anchor" name="::Application::SystemEventData"></a><h3>2.16. SystemEventData</h3>
+<a class="backward-compatibility-anchor" name="::Application::SystemEventData"></a><h3>2.17. SystemEventData</h3>
<div class="brief">
The SystemEventData interface defines what is retrieved from the event listener.
</div>
</div>
</div>
<div class="interface" id="EventCallback">
-<a class="backward-compatibility-anchor" name="::Application::EventCallback"></a><h3>2.17. EventCallback</h3>
+<a class="backward-compatibility-anchor" name="::Application::EventCallback"></a><h3>2.18. EventCallback</h3>
<div class="brief">
The EventCallback interface specifies a callback for getting notified when a specified event occurs.
</div>
</div>
</div>
<div class="interface" id="StatusEventCallback">
-<a class="backward-compatibility-anchor" name="::Application::StatusEventCallback"></a><h3>2.18. StatusEventCallback</h3>
+<a class="backward-compatibility-anchor" name="::Application::StatusEventCallback"></a><h3>2.19. StatusEventCallback</h3>
<div class="brief">
The StatusEventCallback interface specifies a callback for getting notified when status of the installed application has been changed.
</div>
</div>
</div>
<div class="dictionary" id="EventInfo">
-<a class="backward-compatibility-anchor" name="::Application::EventInfo"></a><h3>2.19. EventInfo</h3>
+<a class="backward-compatibility-anchor" name="::Application::EventInfo"></a><h3>2.20. EventInfo</h3>
<div class="brief">
The EventInfo dictionary identifies an event with information such as event name. If it is an user event, the broadasting application's identifier is also specified.
</div>
<a href="#ApplicationMetaData">ApplicationMetaData</a>[] getAppMetaData(optional <a href="#ApplicationId">ApplicationId</a>? id) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
+ <a href="#ApplicationBatteryUsage">ApplicationBatteryUsage</a>[] getBatteryUsageInfo(optional long? days, optional long? limit) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
+
long addAppStatusChangeListener(<a href="#StatusEventCallback">StatusEventCallback</a> eventCallback, optional <a href="#ApplicationId">ApplicationId</a>? appId) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
void removeAppStatusChangeListener(long watchId) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
readonly attribute <a href="#ApplicationId">ApplicationId</a> appId;
};
+ [NoInterfaceObject] interface ApplicationBatteryUsage {
+
+ readonly attribute <a href="#ApplicationId">ApplicationId</a> appId;
+
+ readonly attribute double batteryUsage;
+ };
+
[Constructor(DOMString key, DOMString[] value)]
interface ApplicationControlData {