Android Monitor Tool Window
In this tool window, you can view and analyze the system debug output when running or debugging Android applications.
The tool window consists of a toolbar and the following nested tabs:
Select a physical or a virtual device from the devices drop-down list, and a process running on the selected device from the processes drop-down list. The information in each tab is filtered in accordance with your selection.
The toolbar that is common for both nested tabs, provides quick access to the following actions:
|Screen Capture||Click this button to make a screenshot of the virtual or the connected physical device where the application is running. You can rotate the screenshot and add some visual effects in the dialog that opens, and save the capture.|
|Screen Record||Click this button to start video recording of the application output on a physical device. This button only becomes available when you connect a physical Android device to your computer.|
|System Information|| Click this button to view system information on the selected process provided by the Dumpsys tool. Logs open as text files in separate editor tabs. Select which type of information you want to view from the popup menu that opens: |
|Terminate Application||Click this icon to stop the application execution.|
|Android Monitor Help||Click this icon to open the Android Monitor help page.|
This tab shows all system debug output messages related to the selected process on the selected device.
Use the toolbar controls and buttons to configure the scope and the presentation of log data, and to navigate through the log.
|Item||Tooltip and shortcut||Description|
|Log Level||N/A||From this drop-down list, select the priority of log messages to be displayed. The available options are:|
|Find||Use this text box to search through the list of messages. As you type a search string, the messages that match the search pattern are displayed with the matching character strings highlighted. To finalize the search, press Enter. Search patterns are stored in the search history list. To clear the search history, click the button.|
|Regex||N/A||Select this option if you want to use a regular expression search pattern.|
|Filters||N/A|| From this list, select an existing filter configuration, or create a new one. |
A filter configuration is a set of filtering parameters. The use of filter configurations provides more flexible control over the type and amount of log data displayed than just specifying the information type by choosing a message priority in the Log level drop-down list.
|Clear logcat||Click this button to remove log data from previous sessions on the selected device.|
|Scroll to the end||Click this button to move the caret to the last line of the console output.|
|Up the Stack Trace|
|Click this button to navigate up in the stack trace and have the cursor jump to the corresponding location in the source code.|
|Down the Stack Trace|
|Click this button to navigate down in the stack trace and have the cursor jump to the corresponding location in the source code.|
|Use Soft Wraps||Click this button to toggle the soft wrap mode of the output.|
|Click this button to print the logs.|
|Restart||Click this button to restart logging.|
|Logcat Header||Click this icon to configure the Logcat header. You can select the followng options in the dialog that opens:|
|Logcat Help||Click this icon to open the Logcat help page.|
The Monitors tab displays different Android performance monitors.
The Memory monitor shows in real-time how your application allocates memory. It displays available and used memory in a graph, which is good for testing purposes and helps detect whether performance issues are related to garbage collection events:
Memory Monitor Toolbar
|Enabled/Disabled||Click this icon to enable/disable the Android memory monitor.|
|Initiate GC||Click this button to start garbage collection, whereupon you can examine the amount of heap memory the selected process uses (see Viewing heap usage).|
|Dump Java Heap||Click this button to dump the contents of the Java heap memory to a file.|
|Start Allocation Tracking|| Click this button to start recording your application's memory allocations. Then interact with your application and click the same button to stop allocation tracking. A pane with the recorded data will open as a separate editor tab. |
Allocation tracking is helpful to identify where similar object types are allocated and deallocated over a short period of time, and to detect places in your code that may cause inefficient memory usage.
|Help||Click this icon to open the Memory Monitor help page.|
|Move Memory Monitor Up||Click this icon to move the Memory Monitor pane up.|
|Move Memory Monitor Down||Click this icon to move the Memory Monitor pane down.|
| ||Minimize/Maximize Memory Monitor||Click this icon to minimize/maximize the Memory Monitor pane.|
The CPU monitor shows in real time how much CPU is being used in a graph:
CPU Monitor Toolbar
|Enabled/Disabled||Click this icon to enable/disable the CPU monitor.|
|Start Method Tracing|| Click this button to invoke profiling of a method, see Starting method profiling. Interact with the application, and then click the same button to stop method tracing. A pane with the recorded data will open as a separate editor tab. |
Method tracking is useful to track down performance issues.
|Help||Click this icon to open the CPU Monitor help page.|
|Move CPU Monitor Up||Click this icon to move the CPU Monitor pane up.|
|Move CPU Monitor Down||Click this icon to move the CPU Monitor pane down.|
| ||Minimize/Maximize CPU Monitor||Click this icon to minimize/maximize the CPU Monitor pane.|
The Network monitor enables you to track your application network requests:
The Network Monitor is only available if you are running your application on a physical device, as it does not monitor emulators.
Network Monitor Toolbar
The GPU monitor displays how much time it takes to render the frames of a UI window:
Note that to use the GPU Monitor, you need to install the GPU Debugging Tools through the SDK Manager (for detailed instructions, see GPU Debugger).