| page.title=MonkeyDevice | |
| parent.title=monkeyrunner | |
| parent.link=index.html | |
| @jd:body | |
| <style> | |
| h4.jd-details-title {background-color: #DEE8F1;} | |
| </style> | |
| <p> | |
| A monkeyrunner class that represents a device or emulator accessible by the workstation running | |
| <code><a href="{@docRoot}tools/help/monkeyrunner_concepts.html">monkeyrunner</a></code>. | |
| </p> | |
| <p> | |
| This class is used to control an Android device or emulator. The methods send UI events, | |
| retrieve information, install and remove applications, and run applications. | |
| </p> | |
| <p> | |
| You normally do not have to create an instance of <code>MonkeyDevice</code>. Instead, you | |
| use | |
| <code><a href="{@docRoot}tools/help/MonkeyRunner.html#waitForConnection"> | |
| MonkeyRunner.waitForConnection()</a></code> to create a new object from a connection to a device or | |
| emulator. For example, instead of | |
| using:</p> | |
| <pre> | |
| newdevice = MonkeyDevice() | |
| </pre> | |
| <p> | |
| you would use: | |
| </p> | |
| <pre> | |
| newdevice = MonkeyRunner.waitForConnection() | |
| </pre> | |
| <h2>Summary</h2> | |
| <table id="constants" class="jd-sumtable" style="background-color: white;"> | |
| <tr> | |
| <th colspan="12" style="background-color: #E2E2E2">Constants</th> | |
| </tr> | |
| <tr class="api" style="background-color: white;"> | |
| <td class="jd-typecol"><em>string</em></td> | |
| <td class="jd-linkcol"><a href="#ACTION_DOWN">DOWN</a></td> | |
| <td class="jd-descrcol" width="100%"> | |
| Use this with the <code>type</code> argument of | |
| <code><a href="#press">press()</a></code> or <code><a href="#touch">touch()</a> | |
| </code> | |
| to send a DOWN event. | |
| </td> | |
| </tr> | |
| <tr class="api" style="background-color: white;"> | |
| <td class="jd-typecol"><em>string</em></td> | |
| <td class="jd-linkcol"><a href="#ACTION_UP">UP</a></td> | |
| <td class="jd-descrcol" width="100%"> | |
| Use this with the <code>type</code> argument of | |
| <code><a href="#press">press()</a></code> or <code><a href="#touch">touch()</a> | |
| </code> | |
| to send an UP event. | |
| </td> | |
| </tr> | |
| <tr class="api" style="background-color: white;"> | |
| <td class="jd-typecol"><em>string</em></td> | |
| <td class="jd-linkcol"><a href="#ACTION_DOWN_AND_UP">DOWN_AND_UP</a></td> | |
| <td class="jd-descrcol" width="100%"> | |
| Use this with the <code>type</code> argument of | |
| <code><a href="#press">press()</a></code> or <code><a href="#touch">touch()</a> | |
| </code> | |
| to send a DOWN event immediately followed by an UP event. | |
| </td> | |
| </tr> | |
| </table> | |
| <table id="pubmethods" class="jd-sumtable"> | |
| <tr> | |
| <th colspan="12" style="background-color: #E2E2E2">Methods</th> | |
| </tr> | |
| <tr class="api" > | |
| <td class="jd-typecol"> | |
| <nobr> | |
| void | |
| </nobr> | |
| </td> | |
| <td class="jd-linkcol" width="100%"> | |
| <nobr> | |
| <span class="sympad"> | |
| <a href="#broadcastIntent">broadcastIntent</a> | |
| </span> | |
| (<em>string</em> uri, | |
| <em>string</em> action, | |
| <em>string</em> data, | |
| <em>string</em> mimetype, | |
| <em>iterable</em> categories | |
| <em>dictionary</em> extras, | |
| <em>component</em> component, | |
| <em>iterable</em> flags) | |
| </nobr> | |
| <div class="jd-descrdiv"> | |
| Broadcasts an Intent to this device, as if the Intent were coming from an | |
| application. | |
| </div> | |
| </td> | |
| </tr> | |
| <tr class="api" > | |
| <td class="jd-typecol"> | |
| <nobr> | |
| void | |
| </nobr> | |
| </td> | |
| <td class="jd-linkcol" width="100%"> | |
| <nobr> | |
| <span class="sympad"> | |
| <a href="#drag">drag</a> | |
| </span> | |
| (<em>tuple</em> start, | |
| <em>tuple</em> end, | |
| <em>float</em> duration, | |
| <em>integer</em> steps) | |
| </nobr> | |
| <div class="jd-descrdiv"> | |
| Simulates a drag gesture (touch, hold, and move) on this device's screen. | |
| </div> | |
| </td> | |
| </tr> | |
| <tr class="api" > | |
| <td class="jd-typecol"> | |
| <nobr> | |
| <em>object</em> | |
| </nobr> | |
| </td> | |
| <td class="jd-linkcol" width="100%"> | |
| <nobr> | |
| <span class="sympad"> | |
| <a href="#getProperty">getProperty</a> | |
| </span> | |
| (<em>string</em> key) | |
| </nobr> | |
| <div class="jd-descrdiv"> | |
| Given the name of a system environment variable, returns its value for this device. | |
| The available variable names are listed in the <a href="#getProperty"> | |
| detailed description</a> of this method. | |
| </div> | |
| </td> | |
| </tr> | |
| <tr class="api" > | |
| <td class="jd-typecol"> | |
| <nobr> | |
| <em>object</em> | |
| </nobr> | |
| </td> | |
| <td class="jd-linkcol" width="100%"> | |
| <nobr> | |
| <span class="sympad"> | |
| <a href="#getSystemProperty">getSystemProperty</a> | |
| </span> | |
| (<em>string</em> key) | |
| </nobr> | |
| <div class="jd-descrdiv"> | |
| . The API equivalent of <code>adb shell getprop <key>. This is provided for use | |
| by platform developers. | |
| </div> | |
| </td> | |
| </tr> | |
| <tr class="api" > | |
| <td class="jd-typecol"> | |
| <nobr> | |
| void | |
| </nobr> | |
| </td> | |
| <td class="jd-linkcol" width="100%"> | |
| <nobr> | |
| <span class="sympad"> | |
| <a href="#installPackage">installPackage</a> | |
| </span> | |
| (<em>string</em> path) | |
| </nobr> | |
| <div class="jd-descrdiv"> | |
| Installs the Android application or test package contained in packageFile onto this | |
| device. If the application or test package is already installed, it is replaced. | |
| </div> | |
| </td> | |
| </tr> | |
| <tr class="api" > | |
| <td class="jd-typecol"> | |
| <nobr> | |
| <em>dictionary</em> | |
| </nobr> | |
| </td> | |
| <td class="jd-linkcol" width="100%"> | |
| <nobr> | |
| <span class="sympad"> | |
| <a href="#instrument">instrument</a> | |
| </span> | |
| (<em>string</em> className, | |
| <em>dictionary</em> args) | |
| </nobr> | |
| <div class="jd-descrdiv"> | |
| Runs the specified component under Android instrumentation, and returns the results | |
| in a dictionary whose exact format is dictated by the component being run. The | |
| component must already be present on this device. | |
| </div> | |
| </td> | |
| </tr> | |
| <tr class="api"> | |
| <td class="jd-typecol"> | |
| <nobr> | |
| void | |
| </nobr> | |
| </td> | |
| <td class="jd-linkcol" width="100%"> | |
| <nobr> | |
| <span class="sympad"> | |
| <a href="#press">press</a> | |
| </span> | |
| (<em>string</em> name, | |
| <em>dictionary</em> type) | |
| </nobr> | |
| <div class="jd-descrdiv"> | |
| Sends the key event specified by type to the key specified by | |
| keycode. | |
| </div> | |
| </td> | |
| </tr> | |
| <tr class="api" > | |
| <td class="jd-typecol"> | |
| <nobr> | |
| void | |
| </nobr> | |
| </td> | |
| <td class="jd-linkcol" width="100%"> | |
| <nobr> | |
| <span class="sympad"> | |
| <a href="#reboot">reboot</a> | |
| </span> | |
| (<em>string</em> into) | |
| </nobr> | |
| <div class="jd-descrdiv"> | |
| Reboots this device into the bootloader specified by bootloadType. | |
| </div> | |
| </td> | |
| </tr> | |
| <tr class="api" > | |
| <td class="jd-typecol"> | |
| <nobr> | |
| void | |
| </nobr> | |
| </td> | |
| <td class="jd-linkcol" width="100%"> | |
| <nobr> | |
| <span class="sympad"> | |
| <a href="#removePackage">removePackage</a> | |
| </span> | |
| (<em>string</em> package) | |
| </nobr> | |
| <div class="jd-descrdiv"> | |
| Deletes the specified package from this device, including its data and cache. | |
| </div> | |
| </td> | |
| </tr> | |
| <tr class="api" > | |
| <td class="jd-typecol"> | |
| <nobr> | |
| <em>object</em> | |
| </nobr> | |
| </td> | |
| <td class="jd-linkcol" width="100%"> | |
| <nobr> | |
| <span class="sympad"> | |
| <a href="#shell">shell</a> | |
| </span> | |
| (<em>string</em> cmd) | |
| </nobr> | |
| <div class="jd-descrdiv"> | |
| Executes an <code>adb</code> shell command and returns the result, if any. | |
| </div> | |
| </td> | |
| </tr> | |
| <tr class="api" > | |
| <td class="jd-typecol"> | |
| <nobr> | |
| void | |
| </nobr> | |
| </td> | |
| <td class="jd-linkcol" width="100%"> | |
| <nobr> | |
| <span class="sympad"> | |
| <a href="#startActivity">startActivity</a> | |
| </span> | |
| (<em>string</em> uri, | |
| <em>string</em> action, | |
| <em>string</em> data, | |
| <em>string</em> mimetype, | |
| <em>iterable</em> categories | |
| <em>dictionary</em> extras, | |
| <em>component</em> component, | |
| <em>flags</em>) | |
| </nobr> | |
| <div class="jd-descrdiv"> | |
| Starts an Activity on this device by sending an Intent constructed from the | |
| supplied arguments. | |
| </div> | |
| </td> | |
| </tr> | |
| <tr class="api" > | |
| <td class="jd-typecol"> | |
| <nobr> | |
| <code> | |
| <a href="{@docRoot}tools/help/MonkeyImage.html"> | |
| MonkeyImage | |
| </a> | |
| </code> | |
| </nobr> | |
| </td> | |
| <td class="jd-linkcol" width="100%"> | |
| <nobr> | |
| <span class="sympad"> | |
| <a href="#takeSnapshot">takeSnapshot</a>() | |
| </span> | |
| </nobr> | |
| <div class="jd-descrdiv"> | |
| Captures the entire screen buffer of this device, yielding a | |
| <code> | |
| <a href="{@docRoot}tools/help/MonkeyImage.html"> | |
| MonkeyImage | |
| </a> | |
| </code> object containing a screen capture of the current display. | |
| </div> | |
| </td> | |
| </tr> | |
| <tr class="api" > | |
| <td class="jd-typecol"> | |
| <nobr> | |
| void | |
| </nobr> | |
| </td> | |
| <td class="jd-linkcol" width="100%"> | |
| <nobr> | |
| <span class="sympad"> | |
| <a href="#touch">touch</a> | |
| </span> | |
| (<em>integer</em> x, | |
| <em>integer</em> y, | |
| <em>integer</em> type) | |
| </nobr> | |
| <div class="jd-descrdiv"> | |
| Sends a touch event specified by type to the screen location specified | |
| by x and y. | |
| </div> | |
| </td> | |
| </tr> | |
| <tr class="api" > | |
| <td class="jd-typecol"> | |
| <nobr> | |
| void | |
| </nobr> | |
| </td> | |
| <td class="jd-linkcol" width="100%"> | |
| <nobr> | |
| <span class="sympad"> | |
| <a href="#touch">type</a> | |
| </span> | |
| (<em>string</em> message) | |
| </nobr> | |
| <div class="jd-descrdiv"> | |
| Sends the characters contained in message to this device, as if they | |
| had been typed on the device's keyboard. This is equivalent to calling | |
| <code><a href="#press">press()</a></code> for each keycode in <code>message</code> | |
| using the key event type <code><a href="#ACTION_DOWN_AND_UP"></a>DOWN_AND_UP</code>. | |
| </div> | |
| </td> | |
| </tr> | |
| <tr class="api" > | |
| <td class="jd-typecol"> | |
| <nobr> | |
| void | |
| </nobr> | |
| </td> | |
| <td class="jd-linkcol" width="100%"> | |
| <nobr> | |
| <span class="sympad"> | |
| <a href="#touch">wake</a> | |
| </span> | |
| () | |
| </nobr> | |
| <div class="jd-descrdiv"> | |
| Wakes the screen of this device. | |
| </div> | |
| </td> | |
| </tr> | |
| </table> | |
| <!-- ========= ENUM CONSTANTS DETAIL ======== --> | |
| <h2>Constants</h2> | |
| <A NAME="ACTION_DOWN"></a> | |
| <div class="jd-details api"> | |
| <h4 class="jd-details-title"> | |
| <span class="normal"> | |
| <em>string</em> | |
| </span> | |
| DOWN | |
| </h4> | |
| <div class="jd-details-descr"> | |
| <div class="jd-tagdata jd-tagdescr"> | |
| <p> | |
| <code><a href="#press">press()</a></code> or | |
| <code><a href="#press">touch()</a></code> value. | |
| Specifies that a DOWN event type should be sent to the device, corresponding to | |
| pressing down on a key or touching the screen. | |
| </p> | |
| </div> | |
| </div> | |
| </div> | |
| <A NAME="ACTION_UP"></A> | |
| <div class="jd-details api"> | |
| <h4 class="jd-details-title"> | |
| <span class="normal"> | |
| <em>string</em> | |
| </span> | |
| UP | |
| </h4> | |
| <div class="jd-details-descr"> | |
| <div class="jd-tagdata jd-tagdescr"> | |
| <p> | |
| <code><a href="#press">press()</a></code> or | |
| <code><a href="#press">touch()</a></code> value. | |
| Specifies that an UP event type should be sent to the device, corresponding to | |
| releasing a key or lifting up from the screen. | |
| </p> | |
| </div> | |
| </div> | |
| </div> | |
| <A NAME="ACTION_DOWN_AND_UP"></A> | |
| <div class="jd-details api"> | |
| <h4 class="jd-details-title"> | |
| <span class="normal"> | |
| <em>string</em> | |
| </span> | |
| DOWN_AND_UP | |
| </h4> | |
| <div class="jd-details-descr"> | |
| <div class="jd-tagdata jd-tagdescr"> | |
| <p> | |
| <code><a href="#press">press()</a></code>, | |
| <code><a href="#press">touch()</a></code> or | |
| <code><a href="#type">type()</a></code> value. | |
| Specifies that a DOWN event type followed by an UP event type should be sent to the | |
| device, corresponding to typing a key or clicking the screen. | |
| </p> | |
| </div> | |
| </div> | |
| </div> | |
| <!-- ========= METHOD DETAIL ======== --> | |
| <!-- Public methods --> | |
| <h2>Public Methods</h2> | |
| <A NAME="broadcastIntent"></A> | |
| <div class="jd-details api "> | |
| <h4 class="jd-details-title"> | |
| <span class="normal"> | |
| void | |
| </span> | |
| <span class="sympad">broadcastIntent</span> | |
| <span class="normal"> | |
| ( | |
| <em>string</em> uri, | |
| <em>string</em> action, | |
| <em>string</em> data, | |
| <em>string</em> mimetype, | |
| <em>iterable</em> categories | |
| <em>dictionary</em> extras, | |
| <em>component</em> component, | |
| <em>iterable</em> flags) | |
| </span> | |
| </h4> | |
| <div class="jd-details-descr"> | |
| <div class="jd-tagdata jd-tagdescr"> | |
| <p> | |
| Broadcasts an Intent to this device, as if the Intent were coming from an | |
| application. See {@link android.content.Intent Intent} for more information about the | |
| arguments. | |
| </p> | |
| </div> | |
| <div class="jd-tagdata"> | |
| <h5 class="jd-tagtitle">Arguments</h5> | |
| <table class="jd-tagtable"> | |
| <tr> | |
| <th>uri</th> | |
| <td> | |
| The URI for the Intent. | |
| (see {@link android.content.Intent#setData(android.net.Uri) Intent.setData()}). | |
| </td> | |
| </tr> | |
| <tr> | |
| <th>action</th> | |
| <td> | |
| The action for this Intent | |
| (see {@link android.content.Intent#setAction(java.lang.String) Intent.setAction()}). | |
| </td> | |
| </tr> | |
| <tr> | |
| <th>data</th> | |
| <td> | |
| The data URI for this Intent | |
| (see {@link android.content.Intent#setData(android.net.Uri) Intent.setData()}). | |
| </td> | |
| </tr> | |
| <tr> | |
| <th>mimetype</th> | |
| <td> | |
| The MIME type for the Intent | |
| (see {@link android.content.Intent#setType(java.lang.String) Intent.setType()}). | |
| </td> | |
| </tr> | |
| <tr> | |
| <th>categories</th> | |
| <td> | |
| An iterable data structure containing strings that define categories for this | |
| Intent | |
| (see | |
| {@link android.content.Intent#addCategory(java.lang.String) Intent.addCategory()}). | |
| </td> | |
| </tr> | |
| <tr> | |
| <th>extras</th> | |
| <td> | |
| A dictionary of extra data for this Intent | |
| (see {@link android.content.Intent#putExtra(java.lang.String,java.lang.String) | |
| Intent.putExtra()} | |
| for an example). | |
| <p> | |
| The key for each dictionary item should be a <em>string</em>. The item's value | |
| can be any simple or structured data type. | |
| </p> | |
| </td> | |
| </tr> | |
| <tr> | |
| <th>component</th> | |
| <td> | |
| The component for this Intent (see {@link android.content.ComponentName}). | |
| Using this argument will direct the Intent to a specific class within a specific | |
| Android package. | |
| </td> | |
| </tr> | |
| <tr> | |
| <th>flags</th> | |
| <td> | |
| An iterable data structure containing flags that control how the Intent is handled | |
| (see {@link android.content.Intent#setFlags(int) Intent.setFlags()}). | |
| </td> | |
| </tr> | |
| </table> | |
| </div> | |
| </div> | |
| </div> | |
| <A NAME="drag"></A> | |
| <div class="jd-details api "> | |
| <h4 class="jd-details-title"> | |
| <span class="normal"> | |
| void | |
| </span> | |
| <span class="sympad">drag</span> | |
| <span class="normal"> | |
| ( | |
| <em>tuple</em> start, | |
| <em>tuple</em> end, | |
| <em>float</em> duration, | |
| <em>integer</em> steps) | |
| </span> | |
| </h4> | |
| <div class="jd-details-descr"> | |
| <div class="jd-tagdata jd-tagdescr"> | |
| <p> | |
| Simulates a drag gesture (touch, hold, and move) on this device's screen. | |
| </p> | |
| </div> | |
| <div class="jd-tagdata"> | |
| <h5 class="jd-tagtitle">Arguments</h5> | |
| <table class="jd-tagtable"> | |
| <tr> | |
| <th>start</th> | |
| <td> | |
| The starting point of the drag gesture, in the form of a <em>tuple</em> | |
| (x,y) where x and y are <em>integers</em>. | |
| </td> | |
| </tr> | |
| <tr> | |
| <th>end</th> | |
| <td> | |
| The end point of the drag gesture, in the form of a <em>tuple</em> (x,y) | |
| where x and y are <em>integers</em>. | |
| </td> | |
| </tr> | |
| <tr> | |
| <th>duration</th> | |
| <td>The duration of the drag gesture in seconds. The default is 1.0 seconds.</td> | |
| </tr> | |
| <tr> | |
| <th>steps</th> | |
| <td>The number of steps to take when interpolating points. The default is 10.</td> | |
| </tr> | |
| </table> | |
| </div> | |
| </div> | |
| </div> | |
| <A NAME="getProperty"></A> | |
| <div class="jd-details api "> | |
| <h4 class="jd-details-title"> | |
| <span class="normal"> | |
| <em>object</em> | |
| </span> | |
| <span class="sympad">getProperty</span> | |
| <span class="normal"> | |
| (<em>string</em> key) | |
| </span> | |
| </h4> | |
| <div class="jd-details-descr"> | |
| <div class="jd-tagdata jd-tagdescr"> | |
| <p> | |
| Given the name of a system environment variable, returns its value for this device. | |
| </p> | |
| </div> | |
| <div class="jd-tagdata"> | |
| <h5 class="jd-tagtitle">Arguments</h5> | |
| <table class="jd-tagtable"> | |
| <tr> | |
| <th>key</th> | |
| <td> | |
| The name of the system environment variable. The available variable names are listed in | |
| <a href="#table1">Table 1. Property variable names</a> at the end of this topic. | |
| </td> | |
| </tr> | |
| </table> | |
| </div> | |
| <div class="jd-tagdata"> | |
| <h5 class="jd-tagtitle">Returns</h5> | |
| <ul class="nolist"> | |
| <li> | |
| The value of the variable. The data format varies according to the variable requested. | |
| </li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| <A NAME="getSystemProperty"></A> | |
| <div class="jd-details api "> | |
| <h4 class="jd-details-title"> | |
| <span class="normal"> | |
| <em>object</em> | |
| </span> | |
| <span class="sympad">getSystemProperty</span> | |
| <span class="normal"> | |
| (<em>string</em> key) | |
| </span> | |
| </h4> | |
| <div class="jd-details-descr"> | |
| <div class="jd-tagdata jd-tagdescr"> | |
| <p> | |
| Synonym for <code><a href="#getProperty">getProperty()</a></code>. | |
| </p> | |
| </div> | |
| <div class="jd-tagdata"> | |
| <h5 class="jd-tagtitle">Arguments</h5> | |
| <table class="jd-tagtable"> | |
| <tr> | |
| <th>key</th> | |
| <td> | |
| The name of the system environment variable. The available variable names are listed in | |
| <a href="#table1">Table 1. Property Variable Names</a>. | |
| </td> | |
| </tr> | |
| </table> | |
| </div> | |
| <div class="jd-tagdata"> | |
| <h5 class="jd-tagtitle">Returns</h5> | |
| <ul class="nolist"> | |
| <li> | |
| The value of the variable. The data format varies according to the variable requested. | |
| </li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| <A NAME="installPackage"></A> | |
| <div class="jd-details api "> | |
| <h4 class="jd-details-title"> | |
| <span class="normal"> | |
| void | |
| </span> | |
| <span class="sympad">installPackage</span> | |
| <span class="normal"> | |
| (<em>string</em> path) | |
| </span> | |
| </h4> | |
| <div class="jd-details-descr"> | |
| <div class="jd-tagdata jd-tagdescr"> | |
| <p> | |
| Installs the Android application or test package contained in packageFile | |
| onto this device. If the application or test package is already installed, it is | |
| replaced. | |
| </p> | |
| </div> | |
| <div class="jd-tagdata"> | |
| <h5 class="jd-tagtitle">Arguments</h5> | |
| <table class="jd-tagtable"> | |
| <tr> | |
| <th>path</th> | |
| <td> | |
| The fully-qualified path and filename of the <code>.apk</code> file to install. | |
| </td> | |
| </tr> | |
| </table> | |
| </div> | |
| </div> | |
| </div> | |
| <A NAME="instrument"></A> | |
| <div class="jd-details api "> | |
| <h4 class="jd-details-title"> | |
| <span class="normal"> | |
| <em>dictionary</em> | |
| </span> | |
| <span class="sympad">instrument</span> | |
| <span class="normal"> | |
| ( | |
| <em>string</em> className, | |
| <em>dictionary</em> args) | |
| </span> | |
| </h4> | |
| <div class="jd-details-descr"> | |
| <div class="jd-tagdata jd-tagdescr"> | |
| <p> | |
| Runs the specified component with Android instrumentation, and returns the results | |
| in a dictionary whose exact format is dictated by the component being run. The | |
| component must already be present on this device. | |
| </p> | |
| <p> | |
| Use this method to start a test case that uses one of Android's test case classes. | |
| See <a href="{@docRoot}tools/testing/testing_android.html">Testing | |
| Fundamentals</a> to learn more about unit testing with the Android testing | |
| framework. | |
| </p> | |
| </div> | |
| <div class="jd-tagdata"> | |
| <h5 class="jd-tagtitle">Arguments</h5> | |
| <table class="jd-tagtable"> | |
| <tr> | |
| <th>className</th> | |
| <td> | |
| The name of an Android component that is already installed on this device, in the | |
| standard form packagename/classname, where packagename is the | |
| Android package name of a <code>.apk</code> file on this device, and | |
| classname is the class name of an Android component (Activity, | |
| ContentProvider, Service, or BroadcastReceiver) in that file. Both | |
| packagename and classname must be fully qualified. See | |
| {@link android.content.ComponentName} for more details. | |
| </td> | |
| </tr> | |
| <tr> | |
| <th>args</th> | |
| <td> | |
| A dictionary containing flags and their values. These are passed to the component as it | |
| is started. If the flag does not take a value, set its dictionary value to an empty | |
| string. | |
| </td> | |
| </tr> | |
| </table> | |
| <div class="jd-tagdata"> | |
| <h5 class="jd-tagtitle">Returns</h5> | |
| <ul class="nolist"> | |
| <li> | |
| <p> | |
| A dictionary containing the component's output. The contents of the dictionary | |
| are defined by the component itself. | |
| </p> | |
| <p> | |
| If you use {@link android.test.InstrumentationTestRunner} as the class name in | |
| the componentName argument, then the result dictionary contains | |
| the single key "stream". The value of "stream" is a <em>string</em> containing | |
| the test output, as if <code>InstrumentationTestRunner</code> was run from the | |
| command line. The format of this output is described in | |
| <a href="{@docRoot}tools/testing/testing_otheride.html"> | |
| Testing in Other IDEs</a>. | |
| </p> | |
| </li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <A NAME="press"></A> | |
| <div class="jd-details api "> | |
| <h4 class="jd-details-title"> | |
| <span class="normal"> | |
| void | |
| </span> | |
| <span class="sympad">press</span> | |
| <span class="normal"> | |
| (<em>string</em> name, | |
| <em>integer</em> type) | |
| </span> | |
| </h4> | |
| <div class="jd-details-descr"> | |
| <div class="jd-tagdata jd-tagdescr"> | |
| <p> | |
| Sends the key event specified by <code>type</code> to the key specified by | |
| <code>keycode</code>. | |
| </p> | |
| </div> | |
| <div class="jd-tagdata"> | |
| <h5 class="jd-tagtitle">Arguments</h5> | |
| <table class="jd-tagtable"> | |
| <tr> | |
| <th>name</th> | |
| <td> | |
| The name of the keycode to send. See {@link android.view.KeyEvent} for a list of | |
| keycode names. Use the keycode name, not its integer value. | |
| </td> | |
| </tr> | |
| <tr> | |
| <th>type</th> | |
| <td> | |
| The type of key event to send. The allowed values are <code><a href="#ACTION_DOWN"> | |
| DOWN</a></code>, <code><a href="#ACTION_UP">UP</a></code>, and | |
| <code><a href="#ACTION_DOWN_AND_UP">DOWN_AND_UP</a></code>. | |
| </td> | |
| </tr> | |
| </table> | |
| </div> | |
| </div> | |
| </div> | |
| <A NAME="reboot"></A> | |
| <div class="jd-details api "> | |
| <h4 class="jd-details-title"> | |
| <span class="normal"> | |
| void | |
| </span> | |
| <span class="sympad">reboot</span> | |
| <span class="normal"> | |
| (<em>string</em> bootloadType) | |
| </span> | |
| </h4> | |
| <div class="jd-details-descr"> | |
| <div class="jd-tagdata jd-tagdescr"> | |
| <p> | |
| Reboots this device into the bootloader specified by <code>bootloadType</code>. | |
| </p> | |
| </div> | |
| <div class="jd-tagdata"> | |
| <h5 class="jd-tagtitle">Arguments</h5> | |
| <table class="jd-tagtable"> | |
| <tr> | |
| <th>into</th> | |
| <td> | |
| The type of bootloader to reboot into. The allowed values are | |
| "bootloader", "recovery", or "None". | |
| </td> | |
| </tr> | |
| </table> | |
| </div> | |
| </div> | |
| </div> | |
| <A NAME="removePackage"></A> | |
| <div class="jd-details api "> | |
| <h4 class="jd-details-title"> | |
| <span class="normal"> | |
| void | |
| </span> | |
| <span class="sympad">removePackage</span> | |
| <span class="normal"> | |
| (<em>string</em> package) | |
| </span> | |
| </h4> | |
| <div class="jd-details-descr"> | |
| <div class="jd-tagdata jd-tagdescr"> | |
| <p> | |
| Deletes the specified package from this device, including its data and cache. | |
| </p> | |
| </div> | |
| <div class="jd-tagdata"> | |
| <h5 class="jd-tagtitle">Arguments</h5> | |
| <table class="jd-tagtable"> | |
| <tr> | |
| <th>package</th> | |
| <td> | |
| The Android package name of an <code>.apk</code> file on this device. | |
| </td> | |
| </table> | |
| </div> | |
| </div> | |
| </div> | |
| <A NAME="shell"></A> | |
| <div class="jd-details api "> | |
| <h4 class="jd-details-title"> | |
| <span class="normal"> | |
| <em>object</em> | |
| </span> | |
| <span class="sympad">shell</span> | |
| <span class="normal"> | |
| (<em>string</em> cmd) | |
| </span> | |
| </h4> | |
| <div class="jd-details-descr"> | |
| <div class="jd-tagdata jd-tagdescr"> | |
| <p> | |
| Executes an <code>adb</code> shell command and returns the result, if any. | |
| </p> | |
| </div> | |
| <div class="jd-tagdata"> | |
| <h5 class="jd-tagtitle">Arguments</h5> | |
| <table class="jd-tagtable"> | |
| <tr> | |
| <th>cmd</th> | |
| <td> | |
| The command to execute in the <code>adb</code> shell. The form of these commands is | |
| described in the topic <a href="{@docRoot}tools/help/adb.html">Android | |
| Debug Bridge</a>. | |
| </td> | |
| </tr> | |
| </table> | |
| </div> | |
| <div class="jd-tagdata"> | |
| <h5 class="jd-tagtitle">Returns</h5> | |
| <ul class="nolist"> | |
| <li> | |
| The results of the command, if any. The format of the results is determined by the | |
| command. | |
| </li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| <A NAME="startActivity"></A> | |
| <div class="jd-details api "> | |
| <h4 class="jd-details-title"> | |
| <span class="normal"> | |
| void | |
| </span> | |
| <span class="sympad">startActivity</span> | |
| <span class="normal"> | |
| ( | |
| <em>string</em> uri, | |
| <em>string</em> action, | |
| <em>string</em> data, | |
| <em>string</em> mimetype, | |
| <em>iterable</em> categories | |
| <em>dictionary</em> extras, | |
| <em>component</em> component, | |
| <em>iterable</em> flags) | |
| </span> | |
| </h4> | |
| <div class="jd-details-descr"> | |
| <div class="jd-tagdata jd-tagdescr"> | |
| <p> | |
| Starts an Activity on this device by sending an Intent constructed from the | |
| supplied arguments. | |
| </p> | |
| </div> | |
| <div class="jd-tagdata"> | |
| <h5 class="jd-tagtitle">Arguments</h5> | |
| <table class="jd-tagtable"> | |
| <tr> | |
| <th>uri</th> | |
| <td> | |
| The URI for the Intent. | |
| (see {@link android.content.Intent#setData(android.net.Uri) Intent.setData()}). | |
| </td> | |
| </tr> | |
| <tr> | |
| <th>action</th> | |
| <td> | |
| The action for the Intent | |
| (see {@link android.content.Intent#setAction(java.lang.String) Intent.setAction()}). | |
| </td> | |
| </tr> | |
| <tr> | |
| <th>data</th> | |
| <td> | |
| The data URI for the Intent | |
| (see {@link android.content.Intent#setData(android.net.Uri) Intent.setData()}). | |
| </td> | |
| </tr> | |
| <tr> | |
| <th>mimetype</th> | |
| <td> | |
| The MIME type for the Intent | |
| (see {@link android.content.Intent#setType(java.lang.String) Intent.setType()}). | |
| </td> | |
| </tr> | |
| <tr> | |
| <th>categories</th> | |
| <td> | |
| An iterable data structure containing strings that define categories for the | |
| Intent | |
| (see | |
| {@link android.content.Intent#addCategory(java.lang.String) Intent.addCategory()}). | |
| </td> | |
| </tr> | |
| <tr> | |
| <th>extras</th> | |
| <td> | |
| A dictionary of extra data for the Intent | |
| (see | |
| {@link android.content.Intent#putExtra(java.lang.String,java.lang.String) | |
| Intent.putExtra()} | |
| for an example). | |
| <p> | |
| The key for each dictionary item should be a <em>string</em>. The item's value | |
| can be any simple or structured data type. | |
| </p> | |
| </td> | |
| </tr> | |
| <tr> | |
| <th>component</th> | |
| <td> | |
| The component for the Intent | |
| (see {@link android.content.ComponentName}). Using this argument will direct the | |
| Intent to a specific class within a specific Android package. | |
| </td> | |
| </tr> | |
| <tr> | |
| <th>flags</th> | |
| <td> | |
| An iterable data structure containing flags that control how the Intent is handled | |
| (see {@link android.content.Intent#setFlags(int) Intent.setFlags()}). | |
| </td> | |
| </tr> | |
| </table> | |
| </div> | |
| </div> | |
| </div> | |
| <A NAME="takeSnapshot"></A> | |
| <div class="jd-details api "> | |
| <h4 class="jd-details-title"> | |
| <span class="normal"> | |
| <code> | |
| <a href="{@docRoot}tools/help/MonkeyImage.html"> | |
| MonkeyImage | |
| </a> | |
| </code> | |
| </span> | |
| <span class="sympad">takeSnapshot</span> | |
| <span class="normal"> | |
| () | |
| </span> | |
| </h4> | |
| <div class="jd-details-descr"> | |
| <div class="jd-tagdata jd-tagdescr"> | |
| <p> | |
| Captures the entire screen buffer of this device, yielding a | |
| screen capture of the current display. | |
| </p> | |
| </div> | |
| <div class="jd-tagdata"> | |
| <h5 class="jd-tagtitle">Returns</h5> | |
| <ul class="nolist"> | |
| <li> | |
| A <a href="{@docRoot}tools/help/MonkeyImage.html"> | |
| MonkeyImage</a> object containing the image of the current display. | |
| </li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| <A NAME="touch"></A> | |
| <div class="jd-details api "> | |
| <h4 class="jd-details-title"> | |
| <span class="normal"> | |
| void | |
| </span> | |
| <span class="sympad">touch</span> | |
| <span class="normal"> | |
| ( | |
| <em>integer</em> x, | |
| <em>integer</em> y, | |
| <em>string</em> type) | |
| </span> | |
| </h4> | |
| <div class="jd-details-descr"> | |
| <div class="jd-tagdata jd-tagdescr"> | |
| <p> | |
| Sends a touch event specified by type to the screen location specified | |
| by x and y. | |
| </p> | |
| </div> | |
| <div class="jd-tagdata"> | |
| <h5 class="jd-tagtitle">Arguments</h5> | |
| <table class="jd-tagtable"> | |
| <tr> | |
| <th>x</th> | |
| <td> | |
| The horizontal position of the touch in actual device pixels, starting from the left of | |
| the screen in its current orientation. | |
| </td> | |
| </tr> | |
| <tr> | |
| <th>y</th> | |
| <td> | |
| The vertical position of the touch in actual device pixels, starting from the top of | |
| the screen in its current orientation. | |
| </td> | |
| </tr> | |
| <tr> | |
| <th>type</th> | |
| <td> | |
| The type of key event to send. The allowed values are <code><a href="#ACTION_DOWN"> | |
| DOWN</a></code>, <code><a href="#ACTION_UP">UP</a></code>, and | |
| <code><a href="#ACTION_DOWN_AND_UP">DOWN_AND_UP</a></code>. | |
| </td> | |
| </tr> | |
| </table> | |
| </div> | |
| </div> | |
| </div> | |
| <A NAME="type"></A> | |
| <div class="jd-details api "> | |
| <h4 class="jd-details-title"> | |
| <span class="normal"> | |
| void | |
| </span> | |
| <span class="sympad">type</span> | |
| <span class="normal"> | |
| (<em>string</em> message) | |
| </span> | |
| </h4> | |
| <div class="jd-details-descr"> | |
| <div class="jd-tagdata jd-tagdescr"> | |
| <p> | |
| Sends the characters contained in message to this device, as if they | |
| had been typed on the device's keyboard. This is equivalent to calling | |
| <code><a href="#press">press()</a></code> for each keycode in <code>message</code> | |
| using the key event type <code><a href="#ACTION_DOWN_AND_UP">DOWN_AND_UP</a></code>. | |
| </p> | |
| </div> | |
| <div class="jd-tagdata"> | |
| <h5 class="jd-tagtitle">Arguments</h5> | |
| <table class="jd-tagtable"> | |
| <tr> | |
| <th>message</th> | |
| <td> | |
| A string containing the characters to send. | |
| </td> | |
| </tr> | |
| </table> | |
| </div> | |
| </div> | |
| </div> | |
| <A NAME="wake"></A> | |
| <div class="jd-details api"> | |
| <h4 class="jd-details-title"> | |
| <span class="normal"> | |
| void | |
| </span> | |
| <span class="sympad">wake</span> | |
| <span class="normal"> | |
| () | |
| </span> | |
| </h4> | |
| <div class="jd-details-descr"> | |
| <div class="jd-tagdata jd-tagdescr"> | |
| <p> | |
| Wakes the screen of this device. | |
| </p> | |
| </div> | |
| </div> | |
| </div> | |
| <hr></hr> | |
| <h2>Appendix</h2> | |
| <p class="table-caption" id="table1"> | |
| <strong>Table 1.</strong>Property variable names used with | |
| <span class="sympad"><a href="#getProperty">getProperty()</a></span> and | |
| <span class="sympad"><a href="#getSystemProperty">getSystemProperty()</a></span>. | |
| </p> | |
| <table> | |
| <tr> | |
| <th> | |
| Property Group | |
| </th> | |
| <th> | |
| Property | |
| </th> | |
| <th> | |
| Description | |
| </th> | |
| <th> | |
| Notes | |
| </th> | |
| </tr> | |
| <tr> | |
| <td rowspan="17"><code>build</code></td> | |
| <td><code>board</code></td> | |
| <td>Code name for the device's system board</td> | |
| <td rowspan="17"> | |
| See {@link android.os.Build} | |
| </td> | |
| </tr> | |
| <tr> | |
| <td><code>brand</code></td> | |
| <td>The carrier or provider for which the OS is customized.</td> | |
| </tr> | |
| <tr> | |
| <td><code>device</code></td> | |
| <td>The device design name.</td> | |
| </tr> | |
| <tr> | |
| <td><code>fingerprint</code></td> | |
| <td>A unique identifier for the currently-running build.</td> | |
| </tr> | |
| <tr> | |
| <td><code>host</code></td> | |
| <td></td> | |
| </tr> | |
| <tr> | |
| <td><code>ID</code></td> | |
| <td>A changelist number or label.</td> | |
| </tr> | |
| <tr> | |
| <td><code>model</code></td> | |
| <td>The end-user-visible name for the device.</td> | |
| </tr> | |
| <tr> | |
| <td><code>product</code></td> | |
| <td>The overall product name.</td> | |
| </tr> | |
| <tr> | |
| <td><code>tags</code></td> | |
| <td>Comma-separated tags that describe the build, such as "unsigned" and "debug".</td> | |
| </tr> | |
| <tr> | |
| <td><code>type</code></td> | |
| <td>The build type, such as "user" or "eng".</td> | |
| </tr> | |
| <tr> | |
| <td><code>user</code></td> | |
| <td></td> | |
| </tr> | |
| <tr> | |
| <td><code>CPU_ABI</code></td> | |
| <td> | |
| The name of the native code instruction set, in the form CPU type plus | |
| ABI convention. | |
| </td> | |
| </tr> | |
| <tr> | |
| <td><code>manufacturer</code></td> | |
| <td>The product/hardware manufacturer.</td> | |
| </tr> | |
| <tr> | |
| <td><code>version.incremental</code></td> | |
| <td> | |
| The internal code used by the source control system to represent this version | |
| of the software. | |
| </td> | |
| </tr> | |
| <tr> | |
| <td><code>version.release</code></td> | |
| <td>The user-visible name of this version of the software.</td> | |
| </tr> | |
| <tr> | |
| <td><code>version.sdk</code></td> | |
| <td>The user-visible SDK version associated with this version of the OS.</td> | |
| </tr> | |
| <tr> | |
| <td><code>version.codename</code></td> | |
| <td> | |
| The current development codename, or "REL" if this version of the software has been | |
| released. | |
| </td> | |
| </tr> | |
| <tr> | |
| <td rowspan="3"><code>display</code></td> | |
| <td><code>width</code></td> | |
| <td>The device's display width in pixels.</td> | |
| <td rowspan="3"> | |
| See | |
| {@link android.util.DisplayMetrics} for details. | |
| </td> | |
| </tr> | |
| <tr> | |
| <td><code>height</code></td> | |
| <td>The device's display height in pixels.</td> | |
| </tr> | |
| <tr> | |
| <td><code>density</code></td> | |
| <td> | |
| The logical density of the display. This is a factor that scales | |
| DIP (Density-Independent Pixel) units to the device's resolution. DIP is adjusted so | |
| that 1 DIP is equivalent to one pixel on a 160 pixel-per-inch display. For example, | |
| on a 160-dpi screen, density = 1.0, while on a 120-dpi screen, density = .75. | |
| <p> | |
| The value does not exactly follow the real screen size, but is adjusted to | |
| conform to large changes in the display DPI. See | |
| {@link android.util.DisplayMetrics#density} for more details. | |
| </p> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td rowspan="6"><code>am.current</code></td> | |
| <td><code>package</code></td> | |
| <td>The Android package name of the currently running package.</td> | |
| <td rowspan="6"> | |
| The <code>am.current</code> keys return information about the currently-running | |
| Activity. | |
| </td> | |
| </tr> | |
| <tr> | |
| <td><code>action</code></td> | |
| <td> | |
| The current activity's action. This has the same format as the <code>name</code> | |
| attribute of the <code>action</code> element in a package manifest. | |
| </td> | |
| </tr> | |
| <tr> | |
| <td><code>comp.class</code></td> | |
| <td> | |
| The class name of the component that started the current Activity. See | |
| <code><a href="#comppackage">comp.package</a></code> for more details.</td> | |
| </tr> | |
| <tr> | |
| <td><a name="comppackage"><code>comp.package</code></a></td> | |
| <td> | |
| The package name of the component that started the current Activity. A component | |
| is specified by a package name and the name of class that the package contains. | |
| </td> | |
| </tr> | |
| <tr> | |
| <td><code>data</code></td> | |
| <td>The data (if any) contained in the Intent that started the current Activity.</td> | |
| </tr> | |
| <tr> | |
| <td><code>categories</code></td> | |
| <td>The categories specified by the Intent that started the current Activity.</td> | |
| </tr> | |
| <tr> | |
| <td rowspan="3"><code>clock</code></td> | |
| <td><code>realtime</code></td> | |
| <td> | |
| The number of milliseconds since the device rebooted, including deep-sleep | |
| time. | |
| </td> | |
| <td rowspan="3"> | |
| See {@link android.os.SystemClock} for more information. | |
| </td> | |
| </tr> | |
| <tr> | |
| <td><code>uptime</code></td> | |
| <td> | |
| The number of milliseconds since the device rebooted, <em>not</em> including | |
| deep-sleep time | |
| </td> | |
| </tr> | |
| <tr> | |
| <td><code>millis</code></td> | |
| <td>current time since the UNIX epoch, in milliseconds.</td> | |
| </tr> | |
| </table> |