OSDN Git Service

docs: Polish Android Monitor pages
authorCheryl Potter <cherylpotter@google.com>
Wed, 6 Jan 2016 03:32:30 +0000 (19:32 -0800)
committerCheryl Potter <cherylpotter@google.com>
Tue, 26 Apr 2016 22:36:41 +0000 (15:36 -0700)
b/26279420

Change-Id: Ic2ccf9510f51adeb843f7aff9197d59e7a532fe2

56 files changed:
docs/html/images/tools/am-androidmon2.png [new file with mode: 0644]
docs/html/images/tools/am-cpumon2.png [new file with mode: 0644]
docs/html/images/tools/am-dumpalloc2.png [new file with mode: 0644]
docs/html/images/tools/am-gc2.png [new file with mode: 0644]
docs/html/images/tools/am-gpumon2.png [new file with mode: 0644]
docs/html/images/tools/am-icaptures.png [new file with mode: 0644]
docs/html/images/tools/am-igraphic.png [new file with mode: 0644]
docs/html/images/tools/am-imaximize.png [new file with mode: 0644]
docs/html/images/tools/am-imaxlogcat.png [new file with mode: 0644]
docs/html/images/tools/am-iminimize.png [new file with mode: 0644]
docs/html/images/tools/am-imovedown.png [new file with mode: 0644]
docs/html/images/tools/am-imoveup.png [new file with mode: 0644]
docs/html/images/tools/am-logcatmon2.png [new file with mode: 0644]
docs/html/images/tools/am-networkmon.png
docs/html/images/tools/am-networkmon2.png [new file with mode: 0644]
docs/html/images/tools/am-screenshot.png [new file with mode: 0644]
docs/html/images/tools/am-sysinfo.png [new file with mode: 0644]
docs/html/images/tools/am-video.png [new file with mode: 0644]
docs/html/jd_collections.js
docs/html/tools/help/am-allocation.jd [new file with mode: 0644]
docs/html/tools/help/am-basics.jd [new file with mode: 0644]
docs/html/tools/help/am-cpu.jd
docs/html/tools/help/am-gpu.jd
docs/html/tools/help/am-hprof.jd [new file with mode: 0644]
docs/html/tools/help/am-logcat.jd
docs/html/tools/help/am-memory.jd
docs/html/tools/help/am-methodtrace.jd [new file with mode: 0644]
docs/html/tools/help/am-network.jd
docs/html/tools/help/am-screenshot.jd [new file with mode: 0644]
docs/html/tools/help/am-sysinfo.jd [new file with mode: 0644]
docs/html/tools/help/am-video.jd [new file with mode: 0644]
docs/html/tools/help/android-monitor.jd
docs/html/tools/help/thumbnails/am-androidmon2.png [new file with mode: 0644]
docs/html/tools/help/thumbnails/am-cpumon.png [new file with mode: 0644]
docs/html/tools/help/thumbnails/am-cpumon2.png [new file with mode: 0644]
docs/html/tools/help/thumbnails/am-gc2.png [new file with mode: 0644]
docs/html/tools/help/thumbnails/am-gpumon.png [new file with mode: 0644]
docs/html/tools/help/thumbnails/am-gpumon2.png [new file with mode: 0644]
docs/html/tools/help/thumbnails/am-logcatmon2.png [new file with mode: 0644]
docs/html/tools/help/thumbnails/am-memorymon.png [new file with mode: 0644]
docs/html/tools/help/thumbnails/am-networkmon.png [new file with mode: 0644]
docs/html/tools/help/thumbnails/am_alloctracker.png [new file with mode: 0644]
docs/html/tools/help/thumbnails/am_androidmon.png [new file with mode: 0644]
docs/html/tools/help/thumbnails/am_cpumon.png [new file with mode: 0644]
docs/html/tools/help/thumbnails/am_gpumon.png [new file with mode: 0644]
docs/html/tools/help/thumbnails/am_hprofviewer.png [new file with mode: 0644]
docs/html/tools/help/thumbnails/am_iscreencapture.png [new file with mode: 0644]
docs/html/tools/help/thumbnails/am_isysteminfo.png [new file with mode: 0644]
docs/html/tools/help/thumbnails/am_ivideo.png [new file with mode: 0644]
docs/html/tools/help/thumbnails/am_logcatmon.png [new file with mode: 0644]
docs/html/tools/help/thumbnails/am_methodtrace.png [new file with mode: 0644]
docs/html/tools/help/thumbnails/am_networkmon2.png [new file with mode: 0644]
docs/html/tools/help/thumbnails/am_screenshot.png [new file with mode: 0644]
docs/html/tools/help/thumbnails/am_sysinfo.png [new file with mode: 0644]
docs/html/tools/help/thumbnails/am_video.png [new file with mode: 0644]
docs/html/tools/tools_toc.cs

diff --git a/docs/html/images/tools/am-androidmon2.png b/docs/html/images/tools/am-androidmon2.png
new file mode 100644 (file)
index 0000000..a4a7571
Binary files /dev/null and b/docs/html/images/tools/am-androidmon2.png differ
diff --git a/docs/html/images/tools/am-cpumon2.png b/docs/html/images/tools/am-cpumon2.png
new file mode 100644 (file)
index 0000000..6ac6e02
Binary files /dev/null and b/docs/html/images/tools/am-cpumon2.png differ
diff --git a/docs/html/images/tools/am-dumpalloc2.png b/docs/html/images/tools/am-dumpalloc2.png
new file mode 100644 (file)
index 0000000..d936aa8
Binary files /dev/null and b/docs/html/images/tools/am-dumpalloc2.png differ
diff --git a/docs/html/images/tools/am-gc2.png b/docs/html/images/tools/am-gc2.png
new file mode 100644 (file)
index 0000000..a5e8b6e
Binary files /dev/null and b/docs/html/images/tools/am-gc2.png differ
diff --git a/docs/html/images/tools/am-gpumon2.png b/docs/html/images/tools/am-gpumon2.png
new file mode 100644 (file)
index 0000000..5cf51d9
Binary files /dev/null and b/docs/html/images/tools/am-gpumon2.png differ
diff --git a/docs/html/images/tools/am-icaptures.png b/docs/html/images/tools/am-icaptures.png
new file mode 100644 (file)
index 0000000..cf288d6
Binary files /dev/null and b/docs/html/images/tools/am-icaptures.png differ
diff --git a/docs/html/images/tools/am-igraphic.png b/docs/html/images/tools/am-igraphic.png
new file mode 100644 (file)
index 0000000..a3c43fa
Binary files /dev/null and b/docs/html/images/tools/am-igraphic.png differ
diff --git a/docs/html/images/tools/am-imaximize.png b/docs/html/images/tools/am-imaximize.png
new file mode 100644 (file)
index 0000000..38a6c6c
Binary files /dev/null and b/docs/html/images/tools/am-imaximize.png differ
diff --git a/docs/html/images/tools/am-imaxlogcat.png b/docs/html/images/tools/am-imaxlogcat.png
new file mode 100644 (file)
index 0000000..4522bd4
Binary files /dev/null and b/docs/html/images/tools/am-imaxlogcat.png differ
diff --git a/docs/html/images/tools/am-iminimize.png b/docs/html/images/tools/am-iminimize.png
new file mode 100644 (file)
index 0000000..d0bbe4c
Binary files /dev/null and b/docs/html/images/tools/am-iminimize.png differ
diff --git a/docs/html/images/tools/am-imovedown.png b/docs/html/images/tools/am-imovedown.png
new file mode 100644 (file)
index 0000000..802c13b
Binary files /dev/null and b/docs/html/images/tools/am-imovedown.png differ
diff --git a/docs/html/images/tools/am-imoveup.png b/docs/html/images/tools/am-imoveup.png
new file mode 100644 (file)
index 0000000..95f6ef3
Binary files /dev/null and b/docs/html/images/tools/am-imoveup.png differ
diff --git a/docs/html/images/tools/am-logcatmon2.png b/docs/html/images/tools/am-logcatmon2.png
new file mode 100644 (file)
index 0000000..5635935
Binary files /dev/null and b/docs/html/images/tools/am-logcatmon2.png differ
index 95b3a5b..f55f853 100644 (file)
Binary files a/docs/html/images/tools/am-networkmon.png and b/docs/html/images/tools/am-networkmon.png differ
diff --git a/docs/html/images/tools/am-networkmon2.png b/docs/html/images/tools/am-networkmon2.png
new file mode 100644 (file)
index 0000000..d05fcd4
Binary files /dev/null and b/docs/html/images/tools/am-networkmon2.png differ
diff --git a/docs/html/images/tools/am-screenshot.png b/docs/html/images/tools/am-screenshot.png
new file mode 100644 (file)
index 0000000..5c27617
Binary files /dev/null and b/docs/html/images/tools/am-screenshot.png differ
diff --git a/docs/html/images/tools/am-sysinfo.png b/docs/html/images/tools/am-sysinfo.png
new file mode 100644 (file)
index 0000000..9b5cd17
Binary files /dev/null and b/docs/html/images/tools/am-sysinfo.png differ
diff --git a/docs/html/images/tools/am-video.png b/docs/html/images/tools/am-video.png
new file mode 100644 (file)
index 0000000..9787ef8
Binary files /dev/null and b/docs/html/images/tools/am-video.png differ
index a8411cd..de2c4c8 100644 (file)
@@ -1700,6 +1700,37 @@ var RESOURCE_COLLECTIONS = {
       "https://www.youtube.com/watch?v=j3QC6hcpy90"
     ]
   },
+"tools/help/log": {
+    "title": "",
+    "resources": [
+       "tools/help/am-logcat.html"
+    ]
+  },
+"tools/help/monitor": {
+    "title": "",
+    "resources": [
+       "tools/help/am-memory.html",
+       "tools/help/am-cpu.html",
+       "tools/help/am-gpu.html",
+       "tools/help/am-network.html"
+    ]
+  },
+ "tools/help/data": {
+    "title": "",
+    "resources": [
+       "tools/help/am-hprof.html",
+       "tools/help/am-allocation.html",
+       "tools/help/am-methodtrace.html",
+       "tools/help/am-sysinfo.html"
+    ]
+  },
+  "tools/help/shot": {
+    "title": "",
+    "resources": [
+       "tools/help/am-screenshot.html",
+       "tools/help/am-video.html"
+    ]
+  },
   "tools/performance/rendering": {
     "title": "",
     "resources": [
diff --git a/docs/html/tools/help/am-allocation.jd b/docs/html/tools/help/am-allocation.jd
new file mode 100644 (file)
index 0000000..20570c3
--- /dev/null
@@ -0,0 +1,220 @@
+page.title=Allocation Tracker
+parent.title=Android Monitor
+parent.link=android-monitor.html
+meta.tags="android, performance, profiling, tools, monitor"
+page.tags="android", "performance", "profiling", "tools", "monitor"
+page.metaDescription=Use the Memory Monitor to capture allocation data about your app. The Allocation Tracker displays each method responsible for an allocation, as well as the allocation size and number of instances.
+page.image=tools/help/thumbnails/am_alloctracker.png
+page.article=true
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>In this document</h2>
+<ol>
+      <li><a href="#display">Understanding the Allocation Tracker Display</a></li>
+      <li><a href="#alloc-snapshot">Taking and Displaying a Snapshot of Allocation Data</a></li>
+      <li><a href="#alloc-viewing">Viewing a Saved Allocation Tracking File</a></li>
+      <li><a href="#alloc-sorting">Sorting Allocation Data</a></li>
+      <li><a href="#alloc-source">Displaying Java Source</a></li>
+      <li><a href="#alloc-files">Working with Allocation Tracking Files</a></li>
+</ol>
+
+ <h2>See also</h2>
+  <ol>
+    <li><a href="{@docRoot}training/articles/memory.html">Managing Your App's Memory</a></li>
+    <li><a href="{@docRoot}guide/practices/verifying-apps-art.html#GC_Migration">Addressing Garbage Collection Issues</a></li>
+    <li><a href="{@docRoot}tools/debugging/debugging-memory.html">Investigating Your RAM Usage</a></li>
+  </ol>
+
+</div>
+</div>
+
+
+
+
+<p>Android Studio allows you to track memory allocation as it monitors memory use. Tracking memory
+  allocation allows you to monitor where objects are being allocated when you perform certain
+  actions. Knowing these allocations enables you to adjust the method calls related to those actions
+  to optimize app performance and memory use.</p>
+
+<p>The Allocation Tracker does the following:</p>
+<ul>
+<li>Shows when and where your code allocates object types, their size, allocating thread, and stack
+  traces.</li>
+<li>Helps recognize memory churn through recurring allocation/deallocation patterns.</li>
+<li>Helps you track down memory leaks when used in combination with the HPROF Viewer. For example,
+  if you see a bitmap object resident on the heap, you can find its allocation location with
+  Allocation Tracker.</li>
+</ul>
+
+
+<p>However, it takes time and experience to learn to interpret the output from this tool.</p>
+
+<h2 id="display">
+  Understanding the Allocation Tracker Display
+</h2>
+
+<p>
+  The Allocation Tracker looks similar to the following figure:
+</p>
+<img src="{@docRoot}images/tools/am-alloctracker.png" />
+<p>
+
+
+<p>The tool displays the following information: </p>
+
+<table>
+  <tr>
+    <th scope="col">Column</th>
+    <th scope="col">Description</th>
+  </tr>
+
+  <tr>
+    <td><strong>Method</strong></td>
+    <td>The Java method responsible for the allocation.</td>
+  </tr>
+  <tr>
+    <td><strong>Count</strong></td>
+    <td>Total number of instances allocated.</td>
+  </tr>
+  <tr>
+    <td><strong>Size</strong></td>
+    <td>The total amount of allocated memory in bytes.</td>
+  </tr>
+
+</table>
+
+<h2 id="alloc-snapshot">Taking and Displaying a Snapshot of Allocation Data</h2>
+
+<p>To examine allocation data:</p>
+<ol>
+  <li><a href="{@docRoot}tools/help/am-memory.html#displaying">Display a running app in the Memory
+    Monitor</a>.</li>
+<li>Click Start Allocation Tracking
+  <img src="{@docRoot}images/tools/am-ialloctracking.png"
+  style="vertical-align:sub;margin:0;height:17px" alt="Start Allocation Tracking icon" />. </li>
+<li>Click Start Allocation Tracking
+  <img src="{@docRoot}images/tools/am-ialloctracking.png"
+  style="vertical-align:sub;margin:0;height:17px" alt="Start Allocation Tracking icon" /> again to
+  deselect it and end the snapshot. </li>
+
+  <p>The Memory Monitor displays the period when it took the snapshot. In the following
+    figure, you can see the snapshot period, as shown on the left. By comparison, when you dump the
+    Java heap, the Memory Monitor displays just the point where the heap snapshot was taken, as
+    shown on the right.</p>
+    <img src="{@docRoot}images/tools/am-dumpalloc2.png" />
+
+<p>Android Studio creates the heap snapshot file with the
+  filename <code><em>package_yyyy.mm.dd_hh.mm.ss</em>.alloc</code> using the activity package (or
+  project) name, year, month, day,
+  hour, minute, and second of the capture, for example,
+  <code>com.android.calc_2015.11.17_14.58.48.alloc</code>.</p>
+
+  The Allocation Tracker appears.
+</p>
+
+<li>Optionally click the graphic icon <img src="{@docRoot}images/tools/am-igraphic.png"
+style="vertical-align:sub;margin:0;height:17px"
+  alt="graphic icon" /> to display a visual representation of the data.
+  </li>
+
+
+
+
+<li>Select the Group By menu option you want to display: </li>
+<ul>
+<li><strong>Group by Allocator</strong> </li>
+<li><strong>Group by Method</strong></li>
+</ul>
+
+</ol>
+
+
+<h2 id="alloc-viewing">Viewing a Saved Allocation Tracking File</h2>
+<p>After you capture allocation data, Android Studio automatically stores it so
+you can view it again.</p>
+<p>To view an allocation tracking file in the Allocation Tracker:</p>
+
+
+<ol>
+<li>Click
+<img src="{@docRoot}images/tools/am-icaptures.png"
+style="vertical-align:sub;margin:0;height:17px"
+  alt="Captures icon" /> in the main window.</li>
+
+<p>Or select <strong>View</strong> > <strong>Tools Windows</strong> >
+<strong>Captures</strong>.</p>
+<p>The <em>Captures</em> window appears.</p>
+<li>Open the <strong>Allocation Tracking</strong> folder.</li>
+<li>Double-click the file to view it.</li>
+</ol>
+
+<h2 id="alloc-sorting">Sorting Allocation Data</h2>
+
+<p>To sort allocation data:</p>
+<ul>
+<li>In the Allocation Tracker, click a column heading to sort the table by ascending or
+  descending order. </li>
+</ul>
+
+
+<h2 id="alloc-source">Displaying Java Source</h2>
+<p>For some items displayed in the Allocation Tracker, you can view the Java source.</p>
+<p>To display Java source:</p>
+<ul>
+<li>In the Allocation Tracker, right-click a method and then select <strong>Jump to Source</strong>.
+</li>
+<li>In the Allocation Tracker, select a method and then click Jump to Source
+  <img src="{@docRoot}images/tools/am-ijumptosource.png"
+  style="vertical-align:sub;margin:0;height:17px" alt="Jump to Source icon" />. </li>
+</ul>
+
+<p>The source code appears in the Code Editor.</p>
+
+
+<h2 id="alloc-files">Working with Allocation Tracking Files</h2>
+<p>You can rename, locate, and delete an allocation tracking file from within
+Android Studio.</p>
+
+<h3 id="alloc-renaming">Renaming an allocation tracking file</h3>
+
+<p>If you rename a file from within Android Studio, it continues to appear in the <em>Captures</em>
+  window.</p>
+<p>To rename an allocation tracking file:</p>
+<ol>
+<li>In the <em>Captures</em> window, right-click the file and select <strong>Rename</strong>.</li>
+<li>In the <em>Rename</em> dialog, specify the name of the file and click <strong>OK</strong>.</li>
+</ol>
+
+
+<h3 id="alloc-locating">Locating an allocation tracking file</h3>
+<p>You can quickly discover where Android Studio stored allocation tracking files on disk.</p>
+
+
+<p>To locate an allocation tracking file from Android Studio: </p>
+<ul>
+<li>In the <em>Captures</em> window, right-click allocation file and select
+  <strong>Show</strong> or <strong>Reveal</strong>.</li>
+
+<p>Android Studio opens an operating system file browser displaying the location where the file
+  resides.</p>
+</ul>
+
+<p class="note"><strong>Note:</strong> If you move an allocation tracking file, Android Studio
+  no longer displays it in the <em>Captures</em> window. To display the file, use
+  <strong>File</strong>
+  &gt; <strong>Open</strong>. Also, rename the file from the <em>Captures</em>
+  window and not in the operating system file browser. </p>
+
+<h3 id="alloc-deleting">Deleting an allocation tracking file</h3>
+
+
+<p>To delete an allocation tracking file: </p>
+<ul>
+<li>In the <em>Captures</em> window, right-click an allocation tracking file and select
+  <strong>Delete</strong>.</li>
+
+<p>Android Studio deletes the file from the <em>Captures</em> dialog and from disk. </p>
+</ul>
diff --git a/docs/html/tools/help/am-basics.jd b/docs/html/tools/help/am-basics.jd
new file mode 100644 (file)
index 0000000..4bacecf
--- /dev/null
@@ -0,0 +1,329 @@
+page.title=Android Monitor Basics
+parent.title=Android Monitor
+parent.link=index.html
+page.tags=monitor
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>In this document</h2>
+<ol>
+  <li><a href="#byb">Prerequisites and Dependencies</a></li>
+  <li><a href="#displaying">Displaying Android Monitor</a></li>
+  <li><a href="#profiling">Profiling a Running App in Android Monitor</a></li>
+  <li><a href="#switching">Switching between Devices and Apps</a></li>
+  <li><a href="#rearranging">Rearranging Android Monitor Windows</a></li>
+  <li><a href="#terminating">Terminating an App</a></li>
+  <li><a href="#removing">Removing an App from a Device</a></li>
+  <li><a href="#other">Using Other Main Window Features</a></li>
+</ol>
+
+
+
+
+
+</div>
+</div>
+
+<p>
+  Android Monitor has a main window that contains the logcat, Memory, CPU, GPU, and Network
+  Monitors. From this window, you can select a device and app process to work with, terminate an
+  app, collect <code>dumpsys</code> system information, and create screenshots and videos of the
+  running app.
+</p>
+
+
+<h2 id="byb">
+   Prerequisites and Dependencies
+</h2>
+
+<p>
+   Before you start using Android Monitor, you need to set up your environment, as well as the
+   hardware device or emulator. All of the monitors require the following:
+</p>
+    <ul>
+      <li>If you want to run your app on a hardware device (as opposed to the emulator), connect it
+        to the USB port. Make sure your development computer
+        <a href="{@docRoot}tools/device.html#setting-up">detects your device</a>, which often
+        happens automatically when you connect it.
+  </li>
+      <li>Enable ADB integration by selecting <strong>Tools</strong> &gt; <strong>Android</strong>
+        &gt; <strong>Enable ADB Integration</strong>. <strong>Enable ADB Integration</strong>
+        should have a check mark next to it in the menu to indicate it's enabled.
+      </li>
+  <li>
+    <a href="{@docRoot}tools/help/monitor.html">Android Device Monitor</a> can’t be running.
+  </li>
+    </ul>
+
+  <p>
+   All but the logcat Monitor have these additional requirements:
+</p>
+<ul>
+  <li>
+    <a href="{@docRoot}tools/device.html#device-developer-options">Enable</a> <strong><a href=
+    "{@docRoot}tools/device.html#device-developer-options">USB debugging</a></strong> in
+    <strong>Developer Options</strong> on the device or emulator.
+  </li>
+
+  <li>In your app, set the <code>debuggable</code> property to <code>true</code> in the manifest or
+  <code>build.gradle</code> file (it’s initially set by default).
+  </li>
+</ul>
+
+
+<p>
+   The GPU Monitor has this requirement as well:
+</p>
+<ul>
+  <li>For Android 5.0 (API level 21) and Android 5.1 (API level 22), in <strong>Developer
+  Options</strong> on the device or emulator, set <strong>Profile GPU rendering</strong> to
+  <strong>In adb shell dumpsys gfxinfo</strong>.
+  </li>
+</ul>
+<p>
+   The Network Monitor and the Video Capture tool work with a hardware device
+   only, not the emulator.
+</p>
+
+
+
+<h2 id="displaying">
+  Displaying Android Monitor
+</h2>
+
+<p>
+  Android Monitor is integrated into the Android Studio main window:
+</p>
+
+<ul>
+  <li>To display Android Monitor, click <img src="{@docRoot}images/tools/am-icon.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="Android Monitor icon" />,
+    which by default is at the bottom of the main window.
+  </li>
+
+  <li>To hide Android Monitor, click <img src="{@docRoot}images/tools/am-icon.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="Android Monitor icon" /> again.
+  </li>
+  <li>Or select <strong>View</strong> > <strong>Tool Windows</strong> >
+  <strong>Android Monitor</strong>.</li>
+</ul>
+ <p class="note">
+      <strong>Note:</strong> If you don't see the sidebar buttons, you can
+      display them by selecting <strong>View</strong> >
+      <strong>Tool Buttons</strong>.
+    </p>
+<p>
+  Android Monitor looks like the following figure:
+</p>
+<img src="{@docRoot}images/tools/am-androidmon2.png" style="vertical-align:sub;margin:0" />
+
+<h2 id="profiling">
+  Profiling a Running App in Android Monitor
+</h2>
+
+<p>
+  After you've met the prerequisites and optionally connected a hardware device, you're ready
+  to profile an app in Android Monitor:
+</p>
+
+<ol>
+
+  <li>Open an app project and <a href=
+  "{@docRoot}tools/building/building-studio.html#RunningApp">run the app</a> on a device or
+  emulator.
+  </li>
+
+  <li>Display Android Monitor and click the tab for the monitor you want to view.
+  </li>
+  <li>Follow the instructions about using the monitor:
+  </li>
+    <ul>
+      <li><a href="{@docRoot}tools/help/am-logcat.html">logcat Monitor</a>
+      </li>
+
+      <li><a href="{@docRoot}tools/help/am-memory.html">Memory Monitor</a>
+      </li>
+
+      <li><a href="{@docRoot}tools/help/am-cpu.html">CPU Monitor</a>
+      </li>
+
+      <li><a href="{@docRoot}tools/help/am-gpu.html">GPU Monitor</a>
+      </li>
+
+      <li>
+        <a href="{@docRoot}tools/help/am-network.html">Network Monitor</a>
+      </li>
+    </ul>
+</ol>
+    <h2 id="switching">
+      Switching between Devices and Apps
+    </h2>
+
+    <p>
+      By default, Android Monitor displays data for your most recently run app. You can switch to
+      another device and app as needed. In addition to currently running apps, you can view
+      information about apps that are no longer running so you can continue to see any information
+      about them that you gathered previously.
+    </p>
+
+    <p>
+      At the top of the Android Monitor main window are two menus listing devices and processes. To
+      switch to another device, process, or both:
+    </p>
+
+    <ol>
+      <li>Select the device or emulator.
+      </li>
+
+    <p>
+      The Device menu lists the devices and emulators that are running or have run during your
+      current session. There are various status messages that can appear in the Device menu:
+    </p>
+
+    <ul>
+      <li>
+        <strong>DISCONNECTED</strong> - You closed an emulator or unplugged a device from the
+        computer.
+      </li>
+
+      <li>
+        <strong>UNAUTHORIZED</strong> - A device needs you to accept the incoming computer
+        connection. For example, if the connected device displays an <em>Allow USB Debugging</em>
+        dialog, click <strong>OK</strong> to allow the connection.
+      </li>
+
+      <li>
+        <strong>OFFLINE</strong> - Android Monitor can’t communicate with a device, even though it
+        has detected that device.
+      </li>
+    </ul>
+
+  <li>Select the process.
+  </li>
+  <p>
+  The Process menu lists the processes that are running or have run during your current session. If
+  a process is no longer running, the menu displays a status of <strong>DEAD</strong>.
+</p>
+</ol>
+
+
+
+
+<h2 id="rearranging">
+  Rearranging Android Monitor Windows
+</h2>
+
+<p>
+  You can rearrange the Android Monitor windows for optimal viewing during your
+  tests:
+</p>
+<ul>
+  <li>To move a monitor up or down, click Move Monitor Up
+  <img src="{@docRoot}images/tools/am-imoveup.png" style="vertical-align:sub;margin:0;height:17px"
+    alt="Move Monitor Up icon" /> or Move Monitor Down
+    <img src="{@docRoot}images/tools/am-imovedown.png" style="vertical-align:sub;margin:0;height:17px"
+    alt="Move Monitor Down icon" />.
+  </li>
+  <li>To minimize or maximize a monitor, click Minimize Monitor
+  <img src="{@docRoot}images/tools/am-iminimize.png" style="vertical-align:sub;margin:0;height:17px"
+    alt="Minimize Monitor icon" />
+    or Maximize Monitor
+    <img src="{@docRoot}images/tools/am-imaximize.png" style="vertical-align:sub;margin:0;height:17px"
+    alt="Maximize Monitor icon" />.
+  </li>
+</ul>
+
+<p>
+  To rearrange the <strong>logcat</strong> and <strong>Monitors</strong> tabs:
+</p>
+<ul>
+  <li>To reorder the logcat or monitor group, move the tabs back and forth.
+  </li>
+
+  <li>To move the logcat or monitor group to a standalone window, drag a tab
+  to a different location on the screen. Or, select
+  <img src="{@docRoot}images/tools/am-igear.png" style="vertical-align:sub;margin:0;height:17px"
+  alt="Gear menu icon" /> &gt; <strong>Floating Mode</strong>.
+  </li>
+
+
+  <li>To dock a standalone window, drag it to the Android Monitor
+  tab area.</li>
+
+
+  <li>To combine the logcat and monitor group displays together, drag a tab and
+  move it onto another monitor.
+  </li>
+
+  <li>To hide a tab, click the
+    <img src="{@docRoot}images/tools/am-ihide.png" style="vertical-align:sub;margin:0;height:17px"
+    alt="Hide icon" /> icon. To make it reappear, click Restore Monitors View
+    <img src="{@docRoot}images/tools/am-imaximize.png" style="vertical-align:sub;margin:0;height:17px"
+    alt="Restore Monitors View icon" />
+    or the Restore logcat View
+    <img src="{@docRoot}images/tools/am-imaxlogcat.png" style="vertical-align:sub;margin:0;height:17px"
+    alt="Restore logcat View icon" />
+    on the far right of the row of tabs.
+  </li>
+</ul>
+
+<h2 id="terminating">
+  Terminating an App
+</h2>
+
+<p>
+  To stop an app you’ve run from Android Studio:
+</p>
+
+<ol>
+  <li>
+    <a href="#switching">Select the device and the process</a> in the Android Monitor
+    menus, if needed.
+  </li>
+
+  <li>Click Terminate Application <img src="{@docRoot}images/tools/am-iterminate.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="Terminate App icon" />.
+  </li>
+
+
+<p>
+  The process status changes to <strong>DEAD</strong> in the Processes menu. The emulator or device
+  continues to run, but the app closes. Any running monitors in Android Monitor stop.
+</p>
+</ol>
+
+<h2 id="removing">
+  Removing an App from a Device
+</h2>
+
+<p>
+  To remove an app from a device you use for development, use the normal uninstall procedure on the
+  device.
+</p>
+
+<p>
+  If you run a new version of an app from Android Studio that’s been already installed on a
+  hardware device, the device displays an <em>Application Installation Failed</em> dialog. Click
+  <strong>OK</strong> to install the new version of the app.
+</p>
+
+<h2 id="other">
+  Using Other Main Window Features
+</h2>
+<p>
+  From the Android Monitor main window, you can also do the following:
+</p>
+
+<ul>
+  <li>
+    <a href="{@docRoot}tools/help/am-sysinfo.html">Examine <code>dumpsys</code> system information</a>.
+  </li>
+  <li>
+    <a href="{@docRoot}tools/help/am-screenshot.html">Take a screen capture of the device</a>.
+  </li>
+  <li>
+    <a href="{@docRoot}tools/help/am-video.html">Record a video from the screen</a>.
+  </li>
+</ul>
+
index 62b3590..420d6f8 100644 (file)
@@ -1,7 +1,12 @@
 page.title=CPU Monitor
 parent.title=Android Monitor
 parent.link=android-monitor.html
-page.tags=monitor
+meta.tags="android, performance, profiling, tools, monitor"
+page.tags="android", "performance", "profiling", "tools", "monitor"
+page.metaDescription=Use the CPU Monitor to display CPU usage in real time and the percentage of total CPU time (including all cores) used in user and kernel mode.
+page.image=tools/help/thumbnails/am-cpumon.png
+page.article=true
+
 @jd:body
 
 <div id="qv-wrapper">
@@ -9,63 +14,9 @@ page.tags=monitor
   <h2>In this document</h2>
 <ol>
   <li><a href="#running">Displaying a Running App in the CPU Monitor</a></li>
-  <li><a href="#trace">Performing a Method Trace in the CPU Monitor</a></li>
-  <li><a href="#viewtrace">Viewing a Saved Method Trace</a></li>
-  <li><a href="#sorttrace">Sorting Method Trace Data</a></li>
-  <li><a href="#renametrace">Renaming a Method Trace File</a></li>
-  <li><a href="#locatetrace">Locating a Method Trace File on Disk</a></li>
-  <li><a href="#deletetrace">Deleting a Method Trace File</a></li>
+  <li><a href="#snapshot">Recording Call Stack Changes</a></li>
 </ol>
 
- <h2>See also</h2>
-  <ol>
-    <li>
-        <a href="{@docRoot}tools/help/android-monitor.html">Android Monitor</a>
-      </li>
-    <li><a href="{@docRoot}tools/help/am-logcat.html">logcat Monitor</a>
-      </li>
-
-      <li><a href="{@docRoot}tools/help/am-memory.html">Memory Monitor</a>
-      </li>
-
-      <li><a href="{@docRoot}tools/help/am-gpu.html">GPU Monitor</a>
-      </li>
-
-      <li>
-        <a href="{@docRoot}tools/help/am-network.html">Network Monitor</a>
-      </li>
-  </ol>
-
-
-<h2>
-  Dependencies and Prerequisites
-</h2>
-
-<ul>
-  <li>Make sure your development computer detects your hardware device, which often happens
-  automatically when you connect it to a USB port.
-  </li>
-
-  <li>
-    <a href="{@docRoot}tools/device.html#device-developer-options">Enable</a> <strong><a href=
-    "{@docRoot}tools/device.html#device-developer-options">USB debugging</a></strong> in
-    <strong>Developer Options</strong> on the device or emulator.
-  </li>
-
-  <li>In your app, set the <code>debuggable</code> property to <code>true</code> in the manifest or
-  <code>build.gradle</code> file (it’s initially set by default).
-  </li>
-
-<li>Enable ADB integration through <strong>Tools</strong> &gt; <strong>Android</strong> &gt;
-  <strong>Enable ADB Integration</strong>.
-  </li>
-
-  <li>
-    <a href="{@docRoot}tools/help/monitor.html">Android Device Monitor</a> can’t be running.
-  </li>
-
-</ul>
-
 </div>
 </div>
 
@@ -73,253 +24,66 @@ page.tags=monitor
 <p>
   The CPU Monitor lets you easily monitor the central processing unit (CPU) usage of your app. It
   displays CPU usage in real time and displays the percentage of total CPU time (including all cores)
-  used by user and kernel mode. In user mode, the code must use system APIs to access hardware or
-  memory, and crashes are usually recoverable. In kernel mode, the code can directly access
-  hardware, including memory addresses; crashes halt the device.
+  used in user and kernel mode. In user mode, the code must use system APIs to access hardware or
+  memory, has access to virtual memory addresses only, and crashes are usually
+  recoverable. In kernel mode, the code can directly access
+  hardware, including physical memory addresses; crashes halt the device.
 </p>
 
+
 <h2 id="running">
   Displaying a Running App in the CPU Monitor
 </h2>
 
 <p>
-  Follow these steps:
+  To display an app running on a particular device or emulator in the CPU Monitor:
 </p>
 
 <ol>
-  <li>Optionally connect a hardware device.
+  <li>Meet the <a href=
+  "{@docRoot}tools/help/am-basics.html#byb">prerequisites and dependencies</a>.
+  </li>
+ <li>Open an app project.
+  </li>
+  <li><a href=
+  "{@docRoot}tools/building/building-studio.html#RunningApp">Run the app</a> on a hardware device or
+  emulator.
   </li>
-
   <li>
-    <a href="{@docRoot}tools/help/android-monitor.html#displaying">Display Android Monitor</a>.
+    <a href="{@docRoot}tools/help/am-basics.html#displaying">Display Android Monitor</a>.
   </li>
-
-  <li>Click the <strong>CPU</strong> tab.
+  <li>Click the <strong>Monitors</strong> tab and <a href=
+  "{@docRoot}tools/help/am-basics.html#rearranging">display the CPU Monitor</a>.
   </li>
 
-  <li>Open an app project and <a href=
-  "{@docRoot}tools/building/building-studio.html#RunningApp">run it</a> on a hardware device or
-  emulator.
-  </li>
 
   <li>Enable the CPU Monitor by clicking Pause <img src="{@docRoot}images/tools/am-ipause.png"
-    style="vertical-align:sub;margin:0;height:17px" alt="Pause icon" /> to deselect
-  it.
+    style="vertical-align:sub;margin:0;height:17px" alt="Pause icon" /> to deselect it.
   </li>
 
+
 <p>
   The CPU Monitor starts to display any CPU usage.
   In the graph, the y-axis displays the percentage of CPU used. The x-axis records the time elapsed
   and starts with seconds, and then minutes and seconds, and so on.
 </p>
-<img src="{@docRoot}images/tools/am-cpumon.png" style="vertical-align:sub;margin:0;width:450px" />
+<img src="{@docRoot}images/tools/am-cpumon2.png" style="vertical-align:sub;margin:0" />
   <li>To stop the CPU Monitor, click Pause <img src="{@docRoot}images/tools/am-ipause.png"
     style="vertical-align:sub;margin:0;height:17px" alt="Pause icon" /> again to select
   it.
   </li>
 </ol>
 
-
-<h2 id="trace">
-  Performing a Method Trace in the CPU Monitor
-</h2>
-
-<p>
-  Follow these steps:
-</p>
-
-<ol>
-  <li>
-    <a href="{@docRoot}tools/help/android-monitor.html#displaying">Display a running app in the CPU
-    Monitor</a>.
-  </li>
-
-  <li>Start a trace by clicking Start Method Tracing <img src="{@docRoot}images/tools/am-imethodtrace.png"
-    style="vertical-align:sub;margin:0;height:17px" alt="Start Method Tracing icon" /> to
-  select it.
-  </li>
-
-  <li>To stop the trace, click Stop Method Tracing <img src="{@docRoot}images/tools/am-imethodtrace.png"
-    style="vertical-align:sub;margin:0;height:17px" alt="Stop Method Tracing icon" /> to
-  deselect it.
-  </li>
-
-<p>
-  The method trace appears in the Code Editor area:
-</p>
-<img src="{@docRoot}images/tools/am-methodtrace.png" alt="Method Trace" />
-<p>
-  Android Studio creates the method trace file
-  with the filename <code>Trace_<em>yyyy.mm.dd_hh.mm.ss</em>.trace</code>
-  using the year, month, day, hour, minute, and second of the capture, for example,
-  <code>Trace_2015.11.17_14.58.48.trace</code>.
-</p>
-  <li>Specify display options:
-    <ul>
-      <li>Select a <strong>Thread</strong>.
-      </li>
-
-      <li>Select an <strong>x-axis</strong> time for the graphic and the method list:
-      </li>
-
-        <ul>
-          <li>
-            <strong>Wall Clock Time</strong> - Total CPU time elapsed between the method call and
-            return.
-          </li>
-
-          <li>
-            <strong>Thread Time</strong> - Total time during which the JRE scheduled the
-            thread during call processing. It’s less than or equal to the Wall Clock Time: less if
-            the JRE interrupted the thread, and equal if it didn’t.
-            The thread might not run continuously; when it’s not executing, that time is excluded.
-            If threads are interrupted often and it’s not by design, the interruptions affect app
-            performance. However, an example of a by-design use is synchronous operations that take
-            a long time, such as file transfers and reads from disk, where the method could be the
-            asynchronous wrapper for the synchronous reader.
-          </li>
-       </ul>
-
-        <li>
-          Optionally select <strong>Color by inclusive time</strong>.
-        </li>
-        </ul>
-
-        <p>
-          The display shows the following information:
-        </p>
-<table>
-  <tr>
-    <th scope="col">Field</th>
-    <th scope="col">Description</th>
-  </tr>
-
-  <tr>
-    <td><strong>Name</strong></td>
-    <td>The name of the method.</td>
-  </tr>
-
-  <tr>
-    <td><strong>Invocation Count</strong></td>
-    <td>How many times the method was called.</td>
-  </tr>
-
-  <tr>
-    <td><strong>Inclusive Time (microseconds)</strong></td>
-    <td>Time spent in the method and all of its children, either wall clock or thread time,
-          depending on your selection in the <strong>x-axis</strong> menu.</td>
-  </tr>
-
-  <tr>
-    <td><strong>Exclusive Time (microseconds)</strong></td>
-    <td>Time spent just in the method (excluding time spent in its children), either wall clock
-          or thread time, depending on your selection in the <strong>x-axis</strong> menu.</td>
-  </tr>
-</table>
-<p class="note"><strong>Note:</strong> Running the method trace significantly affects CPU timings.
-  Use the method trace to understand the flow of the program, but not for performance timings.</p>
-        <p>
-          The graphic represents the wall clock or thread time for each method. Hover the cursor
-          over the display to receive information about the method. This information also appears
-          in the table.
-        </p>
-</ol>
-        <h2 id="viewtrace">
-          Viewing a Saved Method Trace
-        </h2>
-
-        <p>
-          After you do a method trace, Android Studio automatically stores it so you can view it
-          again. To examine the trace, follow these steps:
-        </p>
-
-        <ol>
-          <li>Click <strong>Captures</strong> in the main window.
-          </li>
-
-        <p>
-          The <em>Captures</em> window appears.
-        </p>
-
-      <li>Open the <strong>Methods Tracing</strong> folder.
-      </li>
-
-      <li>Double-click the file to view it.
-      </li>
-</ol>
-
-<h2 id="sorttrace">
-  Sorting Method Trace Data
-</h2>
-
-<p>
-  You can sort the data by method name, count, inclusive time, and exclusive time. Follow this step:
-</p>
-
-
-<ul>
-  <li>Click a column heading to sort the table by ascending or descending order.
-  </li>
-</ul>
-
-<h2 id="renametrace">
-  Renaming a Method Trace File
-</h2>
-
-<p>
-  Rename a method trace file from within Android Studio so it
-  continues to appear in the <em>Captures</em> window. Follow these steps:
-</p>
-
-<ol>
-  <li>In the <em>Captures</em> window, right-click the file and select <strong>Rename</strong>.
-  </li>
-
-  <li>In the dialog, specify the name of the file and click <strong>OK</strong>.
-  </li>
-</ol>
-
-<h2 id="locatetrace">
-  Locating a Method Trace File on Disk
+<h2 id="snapshot">
+  Recording Call Stack Changes
 </h2>
 
 <p>
-  You can quickly discover where Android Studio stored method trace files on disk. Follow this step:
-</p>
-
-
-
-<ul>
-  <li>In the <em>Captures</em> window, right-click a method trace file and select <strong>Show in
-  files</strong>.
-  </li>
-
-<p>
-  Android Studio opens an operating system file browser displaying the location where the file
-  resides.
-</p>
-</ul>
-<p class="note">
-  <strong>Note:</strong> If you move a method trace file, Android Studio no longer displays the file
-  in the <em>Captures</em> window. To display it, use <strong>File</strong> &gt;
-  <strong>Open</strong>. Also, rename a file from the <em>Captures</em>
-  window and not in the operating system file browser.
+  You can capture a record of the changes on the call stack during a particular
+  time period while the CPU Monitor is running. For more information, see
+  <a href="{@docRoot}tools/help/am-methodtrace.html">Method Trace</a>.
 </p>
 
-<h2 id="deletetrace">
-  Deleting a Method Trace File
-</h2>
 
-<p>
-  Follow this step in Android Studio:
-</p>
 
-<ul>
-  <li>In the <em>Captures</em> window, right-click a method trace file and select
-  <strong>Delete</strong>.
-  </li>
-</ul>
 
-<p>
-  Android Studio deletes the file from the <em>Captures</em> dialog and from disk.
-</p>
\ No newline at end of file
index a244b22..fb140ad 100644 (file)
@@ -1,7 +1,12 @@
 page.title=GPU Monitor
 parent.title=Android Monitor
 parent.link=android-monitor.html
-page.tags=monitor
+meta.tags="android, performance, profiling, tools, monitor"
+page.tags="android", "performance", "profiling", "tools", "monitor"
+page.metaDescription=Use the GPU Monitor for a visual representation of how much time it takes to render the frames of a UI window. Use this information to optimize the code that displays graphics and conserve memory.
+page.image=tools/help/thumbnails/am-gpumon.png
+page.article=true
+
 @jd:body
 
 <div id="qv-wrapper">
@@ -11,59 +16,6 @@ page.tags=monitor
   <li><a href="#running">Displaying a Running App in the GPU Monitor</a></li>
 </ol>
 
- <h2>See also</h2>
-  <ol>
-    <li>
-        <a href="{@docRoot}tools/help/android-monitor.html">Android Monitor</a>
-      </li>
-    <li><a href="{@docRoot}tools/help/am-logcat.html">logcat Monitor</a>
-      </li>
-
-      <li><a href="{@docRoot}tools/help/am-memory.html">Memory Monitor</a>
-      </li>
-
-      <li><a href="{@docRoot}tools/help/am-cpu.html">CPU Monitor</a>
-      </li>
-
-      <li>
-        <a href="{@docRoot}tools/help/am-network.html">Network Monitor</a>
-      </li>
-  </ol>
-
-<h2>
-  Dependencies and Prerequisites
-</h2>
-
-<ul>
-  <li>Make sure your development computer detects your hardware device, which often happens
-  automatically when you connect it to a USB port.
-  </li>
-
-  <li>
-    <a href="{@docRoot}tools/device.html#device-developer-options">Enable</a> <strong><a href=
-    "{@docRoot}tools/device.html#device-developer-options">USB debugging</a></strong> in
-    <strong>Developer Options</strong> on the device or emulator.
-  </li>
-
-  <li>For Android 5.0 (API level 21) and Android 5.1 (API level 22), in <strong>Developer
-  Options</strong> on the device or emulator, set <strong>Profile GPU rendering</strong> to
-  <strong>In adb shell dumpsys gfxinfo</strong>.
-  </li>
-
-  <li>In your app, set the <code>debuggable</code> property to <code>true</code> in the manifest or
-  <code>build.gradle</code> file (it’s initially set by default).
-  </li>
-
-
-  <li>Enable ADB integration through <strong>Tools</strong> &gt; <strong>Android</strong> &gt;
-  <strong>Enable ADB Integration</strong>.
-  </li>
-
-   <li>
-    <a href="{@docRoot}tools/help/monitor.html">Android Device Monitor</a> can’t be running.
-  </li>
-</ul>
-
 </div>
 </div>
 
@@ -96,33 +48,34 @@ page.tags=monitor
 </h2>
 
 <p>
-  Follow these steps:
+  To display an app running on a particular device or emulator in the GPU Monitor:
 </p>
 
 <ol>
-  <li>Optionally connect a hardware device.
-  </li>
-
-  <li>
-    <a href="{@docRoot}tools/help/android-monitor.html#displaying">Display Android Monitor</a>.
+  <li>Meet the <a href=
+  "{@docRoot}tools/help/am-basics.html#byb">prerequisites and dependencies</a>.
   </li>
-
-  <li>Click the <strong>GPU</strong> tab.
+ <li>Open an app project.
   </li>
-
-  <li>Open an app project and <a href=
-  "{@docRoot}tools/building/building-studio.html#RunningApp">run it</a> on a hardware device or
+  <li><a href=
+  "{@docRoot}tools/building/building-studio.html#RunningApp">Run the app</a> on a hardware device or
   emulator.
   </li>
+  <li>
+    <a href="{@docRoot}tools/help/am-basics.html#displaying">Display Android Monitor</a>.
+  </li>
+  <li>Click the <strong>Monitors</strong> tab and <a href=
+  "{@docRoot}tools/help/am-basics.html#rearranging">display the GPU Monitor</a>.
+  </li>
 
-  <li>Enable the GPU Monitor by clicking Pause <img src="{@docRoot}images/tools/am-ipause.png" style="vertical-align:sub;margin:0;height:17px" alt="Pause icon" /> to deselect
-  it.
+  <li>Enable the GPU Monitor by clicking Pause <img src="{@docRoot}images/tools/am-ipause.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="Pause icon" /> to deselect it.
   </li>
 
   <p>
   Any GPU usage begins to appear in the GPU Monitor:
 </p>
-  <img src="{@docRoot}images/tools/am-gpumon.png" style="vertical-align:sub;margin:0;width:450px" />
+  <img src="{@docRoot}images/tools/am-gpumon2.png" style="vertical-align:sub;margin:0" />
 
 <p>
   The y-axis is the amount of time it takes the GPU to execute, process, prepare, and draw frames,
diff --git a/docs/html/tools/help/am-hprof.jd b/docs/html/tools/help/am-hprof.jd
new file mode 100644 (file)
index 0000000..1eef6ab
--- /dev/null
@@ -0,0 +1,355 @@
+page.title=HPROF Viewer and Analyzer
+parent.title=Android Monitor
+parent.link=android-monitor.html
+meta.tags="android, performance, profiling, tools, monitor"
+page.tags="android", "performance", "profiling", "tools", "monitor"
+page.metaDescription=Use the Memory Monitor to dump the Java heap to an HPROF file. The HPROF Viewer displays classes, instances of each class, and a reference tree to help you track memory usage and find memory leaks.
+page.image=tools/help/thumbnails/am_hprofviewer.png
+page.article=true
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>In this document</h2>
+<ol>
+      <li><a href="#why">Why Look at the Java Heap?</a></li>
+      <li><a href="#display">Understanding the HPROF Viewer Display</a></li>
+      <li><a href="#hprof-snapshot">Taking a Snapshot of the Java Heap</a></li>
+      <li><a href="#hprof-viewing">Viewing a Saved HPROF File</a></li>
+      <li><a href="#hprof-diving">Diving into Heap Dump Data in the HPROF Viewer</a></li>
+      <li><a href="#hprof-analyzing">Analyzing Heap Dump Data in the HPROF Analyzer</a></li>
+      <li><a href="#hprof-sorting">Sorting Heap Dump Data</a></li>
+      <li><a href="#hprof-source">Displaying Java Source</a></li>
+      <li><a href="#hprof-files">Working with HPROF Files</a></li>
+
+</ol>
+
+ <h2>See also</h2>
+  <ol>
+    <li><a href="{@docRoot}training/articles/memory.html">Managing Your App's Memory</a></li>
+    <li><a href="{@docRoot}guide/practices/verifying-apps-art.html#GC_Migration">Addressing Garbage Collection Issues</a></li>
+    <li><a href="{@docRoot}tools/debugging/debugging-memory.html">Investigating Your RAM Usage</a></li>
+  </ol>
+
+</div>
+</div>
+
+
+<p>
+  When you're monitoring memory usage in the Memory Monitor you can, at the same time, dump a
+  snapshot of the Java heap to an Android-specific Heap/CPU Profiling (HPROF) file. The HPROF Viewer
+  displays classes, instances of each class, and a reference tree to help you track memory usage
+  and find memory leaks. HPROF is a binary heap dump format originally supported by J2SE.
+</p>
+<h2 id="why">
+  Why Look at the Java Heap?
+</h2>
+<p>The Java heap display does the following:</p>
+
+<ul>
+  <li>Shows snapshots of a number of objects allocated by type.
+  </li>
+
+  <li>Samples data every time a garbage collection event occurs naturally or is triggered by you.
+  </li>
+
+  <li>Helps identify which object types might be involved in memory leaks.
+  </li>
+</ul>
+
+<p>
+  However, you have to look for changes over time yourself by tracking what's happening in the
+  graph.
+</p>
+
+<p>
+  The HPROF Analyzer finds the following potential issues:
+</p>
+
+<ul>
+  <li>All destroyed activity instances that are reachable from garbage collection roots.
+  </li>
+
+  <li>Where the target program has strings that repeat values.
+  </li>
+</ul>
+
+<p>
+  A dominator is at the top of a tree. If you remove it, you also remove the branches of the tree
+  it dominates, so it’s a potential way to free memory.
+</p>
+
+<h2 id="display">
+  Understanding the HPROF Viewer Display
+</h2>
+
+<p>
+  The HPROF Viewer looks similar to the following figure:
+</p>
+<img src="{@docRoot}images/tools/am-hprofviewer.png" />
+<p>
+  The tool displays the following information:
+</p>
+
+<table>
+  <tr>
+    <th scope="col">Column</th>
+    <th scope="col">Description</th>
+  </tr>
+
+  <tr>
+    <td><strong>Class Name</strong></td>
+    <td>The Java class responsible for the memory.</td>
+  </tr>
+
+  <tr>
+    <td><strong>Total Count</strong></td>
+    <td>Total number of instances outstanding.</td>
+  </tr>
+  <tr>
+    <td><strong>Heap Count</strong></td>
+    <td>Number of instances in the selected heap.</td>
+  </tr>
+  <tr>
+    <td><strong>Sizeof</strong></td>
+    <td>Size of the instances (currently, 0 if the size is variable).</td>
+  </tr>
+  <tr>
+    <td><strong>Shallow Size</strong></td>
+    <td>Total size of all instances in this heap.</td>
+  </tr>
+  <tr>
+    <td><strong>Retained Size</strong></td>
+    <td>Size of memory that all instances of this class is dominating.</td>
+  </tr>
+  <tr>
+    <td><strong>Instance</strong></td>
+    <td>A specific instance of the class.</td>
+  </tr>
+  <tr>
+    <td><strong>Reference Tree</strong></td>
+    <td>References that point to the selected instance, as well as references pointing to the
+      references.</td>
+  </tr>
+  <tr>
+    <td><strong>Depth</strong></td>
+    <td>The shortest number of hops from any GC root to the selected instance.</td>
+  </tr>
+  <tr>
+    <td><strong>Shallow Size</strong></td>
+    <td>Size of this instance.</td>
+  </tr>
+  <tr>
+    <td><strong>Dominating Size</strong></td>
+    <td>Size of memory that this instance is dominating.</td>
+  </tr>
+</table>
+
+<p>If you click <strong>Capture Analysis</strong>, the HPROF Analyzer appears: </p>
+<img src="{@docRoot}images/tools/am-hprofanalyzer.png" />
+<p>You can detect leaked activities and find duplicate strings with the HPROF Analyzer.</p>
+
+<h2 id="hprof-snapshot">
+  Taking and Displaying a Snapshot of the Java Heap
+</h2>
+
+<p>
+  To examine a snapshot of the Java heap:
+</p>
+
+<ol>
+  <li><a href="{@docRoot}tools/help/am-memory.html#displaying">Display a running app in the Memory
+    Monitor</a>.</li>
+  <li>Click Dump Java Heap
+    <img src="{@docRoot}images/tools/am-idump.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="Dump Java Heap icon" />.
+  </li>
+
+
+<p>
+  When the icon on the Memory Monitor display changes from
+  <img src="{@docRoot}images/tools/am-idumpstart.png"
+  style="vertical-align:sub;margin:0;height:17px" alt="Dump Java Heap Start icon" /> to
+  <img src="{@docRoot}images/tools/am-idumpend.png" style="vertical-align:sub;margin:0;height:17px"
+  alt="Dump Java Heap End icon" />, the file is ready. Android Studio creates the heap snapshot
+  file with the
+  filename <code><em>package_yyyy.mm.dd_hh.mm.ss</em>.hprof</code> using
+  the activity package (or project) name, year, month, day, hour, minute, and second of the
+  capture, for example,
+  <code>com.android.calc_2015.11.17_14.58.48.hprof</code>.
+</p>
+<p>
+  The HPROF Viewer appears.
+</p>
+</ol>
+
+<h2 id="hprof-viewing">Viewing a Saved HPROF File</h2>
+<p>After you do a heap dump, Android Studio automatically stores it so you can view it again.
+ </p>
+ <p>To view an HPROF file in the HPROF Viewer:</p>
+
+<ol>
+<li>Click
+<img src="{@docRoot}images/tools/am-icaptures.png"
+style="vertical-align:sub;margin:0;height:17px"
+  alt="Captures icon" /> in the main window.</li>
+<p>Or select <strong>View</strong> > <strong>Tools Windows</strong> >
+<strong>Captures</strong>.</p>
+<p>The <em>Captures</em> window appears.</p>
+<li>Open the <strong>Heap Snapshot</strong> folder.</li>
+
+
+  <li>Double-click the file to view it in the HPROF Viewer.
+  </li>
+<p>
+  The HPROF Viewer appears.
+</p>
+
+
+  <li>Select the Heap menu option you want to display:
+    <ul>
+      <li>
+        <strong>App heap</strong> - The heap used by the current app.
+      </li>
+
+      <li><strong>Image heap</strong> - The memory mapped copy of the
+      current app on disk.
+      </li>
+
+
+  <li>
+    <strong>Zygote heap</strong> - The common set of libraries and runtime classes and data that
+    all apps are forked
+    from. The zygote space is created during device startup and is never allocated into.
+  </li>
+
+    </ul>
+
+      <li>Select the View menu option you want to display:
+        <ul>
+          <li>
+            <strong>Class List View</strong>
+          </li>
+
+              <li>
+                <strong>Package Tree View</strong>
+              </li>
+            </ul>
+    </ol>
+
+
+<h2 id="hprof-diving">
+  Diving into Heap Dump Data in the HPROF Viewer
+</h2>
+<p>The following steps outline the typical workflow:</p>
+<ol>
+<li>In the HPROF Viewer, select a class name. </li>
+<li>Select an instance of that class.</li>
+<li>Examine the reference tree.</li>
+<li>Right-click an item to <strong>Jump to source</strong> or <strong>Go to instance</strong>,
+  as needed.</li>
+</ol>
+
+
+
+<h2 id="hprof-analyzing">Analyzing Heap Dump Data in the HPROF Analyzer</h2>
+<p>You can detect leaked activities and find duplicate strings with the HPROF Analyzer.
+ </p>
+ <p>To use the HPROF Analyzer:</p>
+<ol>
+<li>In the <em>Captures</em> window, double-click an <code>.hprof</code> file to display it in the
+  HPROF Viewer. </li>
+<li>Click <strong>Capture Analysis</strong> on the right side of the main Android Studio window.</li>
+
+
+<p>The HPROF Analyzer appears to the right of the HPROF Analyzer, by default.</p>
+
+
+
+<li>In the <strong>Analyzer Tasks</strong> list, select the items you want to find.</li>
+<li>Click Perform Analysis <img src="{@docRoot}images/tools/am-iperformanalysis.png"
+  style="vertical-align:sub;margin:0;height:17px" alt="Perform Analysis icon" />.</li>
+<li>Examine the items in <strong>Analysis Results</strong>. Click an item to display it in the
+  HPROF Viewer.</li>
+</ol>
+
+
+
+<h2 id="hprof-sorting">Sorting Heap Dump Data</h2>
+<p>To sort heap dump data:</p>
+<ul>
+<li>In the HPROF Viewer, click a column heading to sort the table by ascending or descending
+  order. </li>
+</ul>
+
+
+<h2 id="hprof-source">Displaying Java Source</h2>
+<p>For some items displayed in the HPROF Viewer, you can go straight to its
+source code.
+</p>
+<p>To display Java source:</p>
+<ul>
+<li>In the HPROF Viewer, right-click a class, instance, or item in the reference tree, and then
+  select <strong>Jump to Source</strong>. </li>
+
+
+<p>The source code appears in the Code Editor.</p>
+</ul>
+
+<h2 id="hprof-files">Working with HPROF Files</h2>
+<p>You can rename, locate, and delete an HPROF file from within Android Studio.
+You can also convert it to standard HPROF format to use with other analysis
+tools.</p>
+
+<h3 id="hprof-renaming">Renaming an HPROF file</h3>
+
+<p>If you rename a file from within Android Studio, it continues to appear in
+the <em>Captures</em> window.</p>
+<p>To rename an HPROF file:</p>
+<ol>
+<li>In the <em>Captures</em> window, right-click the file and select <strong>Rename</strong>. </li>
+<li>In the dialog, specify the name of the file and click <strong>OK</strong>.</li>
+</ol>
+
+
+<h3 id="hprof-locating">Locating a heap dump file on disk</h3>
+<p>You can quickly discover where Android Studio stored HPROF files on disk.</p>
+
+
+<p>To locate an HPROF file on disk: </p>
+<ul>
+<li>In the <em>Captures</em> window, right-click a heap snapshot file and select
+  <strong>Show</strong> or <strong>Reveal</strong>.</li>
+
+<p>Android Studio opens an operating system file browser displaying the location where the file
+  resides.</p>
+</ul>
+<p class="note"><strong>Note:</strong> If you move an HPROF file, Android Studio no longer
+  displays it in the <em>Captures</em> window. To display it, use
+  <strong>File</strong> &gt; <strong>Open</strong>. Also, if you want to rename the file, do it
+  from the <em>Captures</em> window and not in the operating system file browser. </p>
+
+<h3 id="hprof-deleting">Deleting a heap dump file</h3>
+
+<p>To delete a heap dump file: </p>
+<ul>
+<li>In the <em>Captures</em> window, right-click a heap snapshot file and select
+  <strong>Delete</strong>.</li>
+
+<p>Android Studio deletes the file from the <em>Captures</em> dialog and from disk. </p>
+</ul>
+
+<h3 id="hprof-converting">Converting a heap dump file to standard HPROF format</h3>
+<p>You can convert an HPROF file to standard format so you can use it outside of Android Studio with
+  other analysis tools. </p>
+  <p>To convert an HPROF file:</p>
+<ol>
+<li>In the <em>Captures</em> window, right-click a heap snapshot file and select <strong>Export to
+  standard .hprof</strong>.</li>
+<li>In the <em>Convert Android Java Heap Dump</em> dialog, specify a filename and click
+  <strong>OK</strong>.</li>
+
+
+<p>Android Studio creates a binary HPROF file in the location you specified.</p>
+</ol>
index 57da848..9e26bca 100644 (file)
@@ -1,7 +1,12 @@
 page.title=logcat Monitor
 parent.title=Android Monitor
 parent.link=android-monitor.html
-page.tags=monitor
+meta.tags="android, performance, profiling, tools, monitor"
+page.tags="android", "performance", "profiling", "tools", "monitor"
+page.metaDescription=Use the logcat Monitor to view system and user-defined log messages. You can filter the messages to display just the items that interest you.
+page.image=tools/help/thumbnails/am-logcatmon2.png
+page.article=true
+
 @jd:body
 <div id="qv-wrapper">
   <div id="qv">
@@ -43,16 +48,13 @@ page.tags=monitor
       </li>
 
       <li>
-        <a href="#printing">Printing the Log</a>
+        <a href="#printing">Printing and Writing to a File</a>
       </li>
 
       <li>
-        <a href="#clearing">Clearing the Log</a>
+        <a href="#clearing">Clearing and Restarting the Log</a>
       </li>
 
-      <li>
-        <a href="#restarting">Restarting the Log</a>
-      </li>
     </ol>
 
     <h2>
@@ -63,58 +65,31 @@ page.tags=monitor
       <li>
         <a href="{@docRoot}tools/debugging/debugging-log.html">Reading and Writing Logs</a>
       </li>
-      <li>
-        <a href="{@docRoot}tools/help/android-monitor.html">Android Monitor</a>
-      </li>
-
-      <li><a href="{@docRoot}tools/help/am-memory.html">Memory Monitor</a>
-      </li>
-
-      <li><a href="{@docRoot}tools/help/am-cpu.html">CPU Monitor</a>
-      </li>
-
-      <li><a href="{@docRoot}tools/help/am-gpu.html">GPU Monitor</a>
-      </li>
-
-      <li>
-        <a href="{@docRoot}tools/help/am-network.html">Network Monitor</a>
-      </li>
     </ol>
 
-    <h2>
-      Dependencies and Prerequisites
-    </h2>
-
-    <ul>
-      <li>Enable ADB integration through <strong>Tools</strong> &gt; <strong>Android</strong> &gt;
-      <strong>Enable ADB Integration</strong>.
-      </li>
-  <li>
-    <a href="{@docRoot}tools/help/monitor.html">Android Device Monitor</a> can’t be running.
-  </li>
-    </ul>
   </div>
 </div>
 
 <p>
   The Android logging system provides a mechanism for collecting and viewing system debug output.
-  logcat Monitor displays messages that you added to your app by using the <a href=
-  "{@docRoot}reference/android/util/Log.html">Log</a> class, as well as system
-  messages, such as stack traces when the emulator throws an error or a garbage collection occurs.
-  The monitor displays messages in real time and also keeps a history so you can view older
+  The logcat Monitor displays system messages, such as when a garbage collection occurs, as well as
+  messages that you added to your app by using the <a href=
+  "{@docRoot}reference/android/util/Log.html">Log</a> class.
+  It displays messages in real time and also keeps a history so you can view older
   messages.
 </p>
 
 <p>
   To display just the information of interest, you can create filters, modify how much information
   is displayed in messages, set priority levels, display messages produced by app code
-  only, and search the log. By default, logcat Monitor shows the log output related to the running
-  application only.
+  only, and search the log. By default, the logcat Monitor shows the log output related to the
+  most recently run app only.
 </p>
 
 <p>
-  You can traverse the stack trace when your app throws an exception, as well as view the
-  associated code. This feature can help you fix exceptions and improve app operation.
+  When an app throws an exception, the logcat Monitor shows a message followed by the associated
+  stack trace containing links to
+  the code. This feature can help you fix errors and improve app operation.
 </p>
 
 <h2 id="format">
@@ -125,9 +100,9 @@ page.tags=monitor
   Every Android log message has a tag and a priority associated with it. The tag of a system
   log message
   is a short string indicating the system component from which the message originates (for example,
-  <code>ActivityManager</code>). A user-defined tag can be any string that you find helpful, such
-  as the name of the current class (the recommended tag). You define it in a <code>Log</code>
-  method call, for example:
+  {@link android.app.ActivityManager}). A user-defined tag can be any string that you find helpful,
+  such as the name of the current class (the recommended tag). You define it in a
+  {@link android.util.Log} method call, for example:
 </p>
 
 <pre>
@@ -189,31 +164,38 @@ Log.d(tag, message);
 </h2>
 
 <p>
-  Follow these steps:
+  To display the log messages for a particular app:
 </p>
 
 <ol>
-  <li>Optionally connect a hardware device.
+  <li>Meet the <a href=
+  "{@docRoot}tools/help/am-basics.html#byb">prerequisites and dependencies</a>.
+  </li>
+ <li>Open an app project.
+  </li>
+  <li><a href=
+  "{@docRoot}tools/building/building-studio.html#RunningApp">Run the app</a> on a hardware device or
+  emulator.
   </li>
-
   <li>
-    <a href="{@docRoot}tools/help/android-monitor.html#displaying">Display Android Monitor</a>.
+    <a href="{@docRoot}tools/help/am-basics.html#displaying">Display Android Monitor</a>.
   </li>
 
   <li>Click the <strong>logcat</strong> tab.
   </li>
 
-  <li>Open an app project and <a href=
-  "{@docRoot}tools/building/building-studio.html#RunningApp">run it</a> on a hardware device or
-  emulator.
-  </li>
+
 <p>
-  By default, the logcat Monitor displays messages for the app running on the device or emulator:
+  By default, the logcat Monitor displays just the log messages for your app running on the
+  device or emulator:
 </p>
-<img src="{@docRoot}images/tools/am-logcatmon.png" />
+<img src="{@docRoot}images/tools/am-logcatmon2.png" />
 <p>
   To change this default, see <a href="#filtering">Filtering logcat Messages</a>.
 </p>
+<li>Optionally <a href=
+  "{@docRoot}tools/help/am-basics.html#switching">select a different device, emulator, or process</a>.
+  </li>
 </ol>
 
 <h2 id="level">
@@ -221,17 +203,17 @@ Log.d(tag, message);
 </h2>
 
 <p>
-  You can control how many messages appear in logcat Monitor by setting the log level. You can
+  You can control how many messages appear in the logcat Monitor by setting the log level. You can
   display all messages, or just the messages indicating the most severe conditions.
 </p>
 
 <p>
-  Remember that logcat Monitor continues to collect all messages regardless of the log level setting.
-  The setting just determines what logcat Monitor displays.
+  Remember that the logcat Monitor continues to collect all messages regardless of the log level setting.
+  The setting just determines what the logcat Monitor displays.
 </p>
 
 <p>
-  Follow this step:
+  To set the log level:
 </p>
 
 <ul>
@@ -259,7 +241,7 @@ Log.d(tag, message);
       </li>
 
       <li>
-        <strong>Error</strong> - Show issues that have caused errors, as well as the message levels
+        <strong>Error</strong> - Show issues that have caused errors, as well as the message level
         lower in this list.
       </li>
 
@@ -275,7 +257,7 @@ Log.d(tag, message);
     </h2>
 
     <p>
-      You can search the messages currently displayed in logcat Monitor. Follow these steps:
+      To search the messages currently displayed in the logcat Monitor:
     </p>
 
     <ol>
@@ -292,7 +274,7 @@ Log.d(tag, message);
     </p>
   </li>
 
-  <li>Press <strong>Enter</strong> to store the sequence in the menu during this session.
+  <li>Press Enter to store the search string in the menu during this session.
   </li>
 
   <li>To repeat a search, choose it from the search menu. Select or deselect
@@ -310,12 +292,12 @@ Log.d(tag, message);
 
     <p class="note">
       <strong>Note:</strong> The filter applies to your full logcat history, not just those messages
-      currently displayed in logcat Monitor. Make sure your other display options are set
+      currently displayed in the logcat Monitor. Make sure your other display options are set
       appropriately so you can see the filter output you want to examine.
     </p>
 
     <p>
-      To define and apply a filter, follow these steps:
+      To define and apply a filter:
     </p>
 
     <ol>
@@ -323,15 +305,18 @@ Log.d(tag, message);
         <ul>
           <li>
             <strong>Show only selected application</strong> - Display the messages produced by the
-            app code only.
+            app code only (the default). The logcat Monitor filters the log messages using the PID
+            of the active app.
           </li>
 
           <li>
-            <strong>No Filters</strong> - Apply no filters (the default).
+            <strong>No Filters</strong> - Apply no filters. The logcat Monitor
+            displays all log messages from the device, regardless of which process you selected.
           </li>
 
           <li>
-            <strong>Edit Filter Configuration</strong> - Create or modify a custom filter.
+            <strong>Edit Filter Configuration</strong> - Create or modify a custom filter. For
+            example, you could create a filter to view log messages from two apps at the same time.
           </li>
         </ul>
 
@@ -386,7 +371,7 @@ Log.d(tag, message);
             </ul>
 
             <li>
-              Click <strong>+</strong> to add it to the left pane.
+              Click <strong>+</strong> to add the filter definition to the left pane.
             </li>
 
             <p>
@@ -398,6 +383,14 @@ Log.d(tag, message);
               <strong>Cancel</strong>, any filter additions or modifications are lost.
             </li>
             </ol>
+            <li>
+              Make sure you see the log messages you want to examine.
+            </li>
+             <p>
+              If you don't think you see the log messages you want, try selecting
+              <strong>No filters</strong> and <a href="#searching">searching</a> for particular
+              log messages.
+            </p>
             </ol>
 
             <h2 id="logheader">
@@ -405,7 +398,7 @@ Log.d(tag, message);
             </h2>
 
             <p>
-              You can customize the header display to show just the information you’re interested
+              To customize the header display to show just the information you’re interested
               in:
             </p>
 
@@ -440,7 +433,9 @@ Log.d(tag, message);
               in the Code Editor. If needed (and possible), the decompiler derives source code that
               you can view.
             </p>
-
+             <p>
+              To move up and down the stack trace, and view the associated code in the Code Editor:
+            </p>
             <ul>
               <li>Click Up the Stack Trace <img src="{@docRoot}images/tools/am-iupstack.png"
                 style="vertical-align:sub;margin:0;height:17px" alt="Up the Stack Trace icon" />
@@ -460,8 +455,11 @@ Log.d(tag, message);
             </h2>
 
             <p>
-              Clicking a particular message stops the display of messages. You can quickly move to
-              the end of the log to see the real-time message flow.
+              Clicking a particular message stops the display of messages.
+            </p>
+            <p>
+              To quickly move to
+              the end of the log to see the real-time message flow:
             </p>
 
 <ul>
@@ -477,25 +475,48 @@ Log.d(tag, message);
 </ul>
 
 <h2 id="printing">
-  Printing the Log
+  Printing and Writing to a File
 </h2>
 <p>
-  Follow these steps:
+  To preserve log information, you can send the log to a printer, write the log to a PDF file, or
+  copy and paste the log into a text file.
+</p>
+<p>
+  To print the log or write it to a PDF file:
 </p>
 <ol>
   <li>Click Print <img src="{@docRoot}images/tools/am-iprint.png"
     style="vertical-align:sub;margin:0;height:17px" alt="Print icon" />.
   </li>
   <li>
-    In the <em>Print</em> dialog, optionally change print parameters, and then click
+    In the Android Studio <em>Print</em> dialog, optionally change print parameters, and then click
     <strong>Print</strong>.
+  </li>
+  <li>
+    In the operating system <em>Print</em> dialog, optionally change print parameters, and then click
+    <strong>Print</strong>.
+  </li>
+  <p>
+  You can set the parameters to send the log to a printer or write it to a PDF file.
+</p>
+</ol>
+<p>
+  To copy the log to a text file:
+</p>
+<ol>
+  <li>In the logcat Monitor, select and then copy log text.
+  </li>
+  <p>Press Ctrl+A (⌘A) to select all.</p>
+  <li>
+    Open a text editor and paste the text into a file.
+  </li>
 </ol>
 
 <h2 id="clearing">
-  Clearing the Log
+  Clearing and Restarting the Log
 </h2>
 <p>
-  To clear (flush) the entire log, follow this step:
+  To clear (flush) the entire log:
 </p>
 <ul>
   <li>Click Clear logcat <img src="{@docRoot}images/tools/am-iclear.png"
@@ -504,14 +525,8 @@ Log.d(tag, message);
 </ul>
 
 
-
-<h2 id="restarting">
-  Restarting the Log
-</h2>
-
 <p>
-  If there is a problem and the log is no longer progressing, you can restart the log. Follow this
-  step:
+  If there's a problem and the log is no longer progressing, you can restart the log:
 </p>
 
 <ul>
index 24006cd..20c6934 100644 (file)
@@ -1,7 +1,12 @@
 page.title=Memory Monitor
 parent.title=Android Monitor
 parent.link=android-monitor.html
-page.tags=monitor
+meta.tags="android, performance, profiling, tools, monitor"
+page.tags="android", "performance", "profiling", "tools", "monitor"
+page.metaDescription=Use the Memory Monitor to evaluate memory usage and find deallocated objects, locate memory leaks, and track the amount of memory the connected device is using.
+page.image=tools/help/thumbnails/am-memorymon.png
+page.article=true
+
 @jd:body
 
 <div id="qv-wrapper">
@@ -17,31 +22,7 @@ page.tags=monitor
   </li>
   <li><a href="#displaying">Displaying a Running App in the Memory Monitor</a></li>
   <li><a href="#forcing">Forcing a Garbage Collection Event</a></li>
-  <li><a href="#dumping">Dumping and Analyzing the Java Heap</a>
-    <ol>
-      <li><a href="#hprof-snapshot">Taking and displaying a snapshot of the Java heap</a></li>
-      <li><a href="#hprof-diving">Diving into heap dump data in the HPROF Viewer</a></li>
-      <li><a href="#hprof-analyzing">Analyzing heap dump data in the HPROF Analyzer</a></li>
-      <li><a href="#hprof-sorting">Sorting heap dump data</a></li>
-      <li><a href="#hprof-source">Displaying Java source</a></li>
-      <li><a href="#hprof-viewing">Viewing a saved HPROF file</a></li>
-      <li><a href="#hprof-renaming">Renaming an HPROF file</a></li>
-      <li><a href="#hprof-locating">Locating a heap dump file on disk</a></li>
-      <li><a href="#hprof-deleting">Deleting a heap dump file</a></li>
-      <li><a href="#hprof-converting">Converting a heap dump file to standard HPROF format</a></li>
-    </ol>
-    </li>
-  <li><a href="#tracking">Tracking and Analyzing Memory Allocation</a>
-      <ol>
-      <li><a href="#alloc-snapshot">Taking and displaying a snapshot of allocation data</a></li>
-      <li><a href="#alloc-sorting">Sorting allocation data</a></li>
-      <li><a href="#alloc-source">Displaying Java source</a></li>
-      <li><a href="#alloc-viewing">Viewing a saved allocation tracking file</a></li>
-      <li><a href="#alloc-renaming">Renaming an allocation tracking file</a></li>
-      <li><a href="#alloc-locating">Locating an allocation tracking file</a></li>
-      <li><a href="#alloc-deleting">Deleting an allocation tracking file</a></li>
-    </ol>
-    </li>
+  <li><a href="#snapshot">Taking a Snapshot of the Java Heap and Memory Allocation</a></li>
 </ol>
 
  <h2>See also</h2>
@@ -49,53 +30,8 @@ page.tags=monitor
     <li><a href="{@docRoot}training/articles/memory.html">Managing Your App's Memory</a></li>
     <li><a href="{@docRoot}guide/practices/verifying-apps-art.html#GC_Migration">Addressing Garbage Collection Issues</a></li>
     <li><a href="{@docRoot}tools/debugging/debugging-memory.html">Investigating Your RAM Usage</a></li>
-
-    <li>
-        <a href="{@docRoot}tools/help/android-monitor.html">Android Monitor</a>
-      </li>
-    <li><a href="{@docRoot}tools/help/am-logcat.html">logcat Monitor</a>
-      </li>
-
-      <li><a href="{@docRoot}tools/help/am-cpu.html">CPU Monitor</a>
-      </li>
-
-      <li><a href="{@docRoot}tools/help/am-gpu.html">GPU Monitor</a>
-      </li>
-
-      <li>
-        <a href="{@docRoot}tools/help/am-network.html">Network Monitor</a>
-      </li>
   </ol>
 
-
-<h2>
-  Dependencies and Prerequisites
-</h2>
-
-<ul>
-  <li>
-    Make sure your development computer detects your hardware device, which often happens
-  automatically when you connect it to a USB port.
-  </li>
-<li>
-    <a href="{@docRoot}tools/device.html#device-developer-options">Enable</a> <strong><a href=
-    "{@docRoot}tools/device.html#device-developer-options">USB debugging</a></strong> in
-    <strong>Developer Options</strong> on the device or emulator.
-  </li>
-
-  <li>In your app, set the <code>debuggable</code> property to <code>true</code> in the manifest or
-  <code>build.gradle</code> file (it’s initially set by default).
-  </li>
-
-  <li>Enable ADB integration through <strong>Tools</strong> &gt; <strong>Android</strong> &gt;
-  <strong>Enable ADB Integration</strong>.
-  </li>
-
-   <li>
-    <a href="{@docRoot}tools/help/monitor.html">Android Device Monitor</a> can’t be running.
-  </li>
-</ul>
-
 </div>
 </div>
 
@@ -107,7 +43,7 @@ page.tags=monitor
 </p>
 
 <ul>
-  <li>Show a graph of available and allocated memory over time.
+  <li>Show a graph of available and allocated Java memory over time.
   </li>
 <li>Show garbage collection (GC) events
   over time.
@@ -227,10 +163,7 @@ page.tags=monitor
 
 <p>
   One way to optimize memory usage is to analyze large arrays. For example, can you reduce the size
-  of individual elements in the array to save memory? Does a dominator object point to
-  an element in the array, preventing it from being garbage-collected? If the dominator object
-  directly points to an element in the array, the dominator is either the contiguous memory
-  representing the underlying data of the array, some part of the array, or the array itself.
+  of individual elements in the array to save memory?
 </p>
 
 <p>
@@ -347,25 +280,26 @@ page.tags=monitor
 </h2>
 
 <p>
-  Follow these steps:
+  To display an app running on a particular device or emulator in the Memory Monitor:
 </p>
 
 <ol>
-  <li>Optionally connect a hardware device.
+  <li>Meet the <a href=
+  "{@docRoot}tools/help/am-basics.html#byb">prerequisites and dependencies</a>.
+  </li>
+ <li>Open an app project.
+  </li>
+  <li><a href=
+  "{@docRoot}tools/building/building-studio.html#RunningApp">Run the app</a> on a hardware device or
+  emulator.
   </li>
-
   <li>
-    <a href=
-    "{@docRoot}tools/help/android-monitor.html#displaying">Display Android Monitor</a>.
+    <a href="{@docRoot}tools/help/am-basics.html#displaying">Display Android Monitor</a>.
   </li>
-
-  <li>Click the <strong>Memory</strong> tab.
+  <li>Click the <strong>Monitors</strong> tab and <a href=
+  "{@docRoot}tools/help/am-basics.html#rearranging">display the Memory Monitor</a>.
   </li>
 
-  <li>Open an app project and <a href=
-  "{@docRoot}tools/building/building-studio.html#RunningApp">run it</a> on a
-  hardware device or emulator.
-  </li>
 
   <li>Enable the Memory Monitor by clicking Pause <img src="{@docRoot}images/tools/am-ipause.png"
     style="vertical-align:sub;margin:0;height:17px" alt="Pause icon" /> to deselect it.
@@ -389,10 +323,10 @@ page.tags=monitor
   <p>In the following figure, the VM initiated the first garbage collection event, while the
     developer forced the second.
 </p>
-<img src="{@docRoot}images/tools/am-gc.png" />
+<img src="{@docRoot}images/tools/am-gc2.png" />
 
   <li>Interact with your app and watch how it affects memory usage in the Memory Monitor. You can
-  identify garbage collection patterns for your app and determine whether they are healthy and what
+  identify garbage collection patterns for your app and determine whether they're healthy and what
   you expect.
   </li>
 
@@ -452,465 +386,20 @@ page.tags=monitor
   </li>
 </ul>
 
-<h2 id="dumping">
-  Dumping and Analyzing the Java Heap
+<h2 id="snapshot">
+  Taking a Snapshot of the Java Heap and Memory Allocation
 </h2>
 
 <p>
-  When you're monitoring memory usage in Android Studio you can, at the same time, dump the Java
-  heap to a heap snapshot in an Android-specific HPROF binary format file. The HPROF Viewer
-  displays classes, instances of each class, and a reference tree to help you track memory usage
-  and find memory leaks. HPROF is a heap dump format originally supported by J2SE.
-</p>
-<p>The Java heap display does the following:</p>
-
-<ul>
-  <li>Shows snapshots of a number of objects allocated by type.
-  </li>
-
-  <li>Samples data every time a garbage collection event occurs naturally or is triggered by you.
-  </li>
-
-  <li>Helps identify which object types might be involved in memory leaks.
-  </li>
-</ul>
-
-<p>
-  However, you have to look for changes over time yourself by tracking what's happening in the
-  graph.
-</p>
-
-<p>
-  The HPROF Analyzer finds the following potential issues:
+  You can take snapshots while the Memory Monitor is running or paused:
 </p>
 
 <ul>
-  <li>All destroyed activity instances that are reachable from garbage collection roots.
+  <li>To take and display a snapshot of the Java heap, see <a href=
+  "{@docRoot}tools/help/am-hprof.html">HPROF Viewer and Analyzer</a>.
   </li>
-
-  <li>Where the target program has strings that repeat values.
+  <li>To take and display a snapshot of memory allocation, see <a href=
+  "{@docRoot}tools/help/am-allocation.html">Allocation Tracker</a>.
   </li>
 </ul>
 
-<p>
-  A dominator is at the top of a tree. If you remove it, you also remove the branches of the tree
-  it dominates, so it’s a potential way to free memory.
-</p>
-
-<h3 id="hprof-snapshot">
-  Taking and displaying a snapshot of the Java heap
-</h3>
-
-<p>
-  To see a snapshot of the Java heap, follow these steps:
-</p>
-
-<ol>
-  <li>While the Memory Monitor is running, click Dump Java Heap
-    <img src="{@docRoot}images/tools/am-idump.png"
-    style="vertical-align:sub;margin:0;height:17px" alt="Dump Java Heap icon" />.
-  </li>
-
-
-<p>
-  When the icon on the Memory Monitor display changes from
-  <img src="{@docRoot}images/tools/am-idumpstart.png"
-  style="vertical-align:sub;margin:0;height:17px" alt="Dump Java Heap Start icon" /> to
-  <img src="{@docRoot}images/tools/am-idumpend.png" style="vertical-align:sub;margin:0;height:17px"
-  alt="Dump Java Heap End icon" />, the file is ready. Android Studio creates the heap snapshot
-  file with the
-  filename <code>Snapshot_<em>yyyy.mm.dd_hh.mm.ss</em>.hprof</code> using
-  the year, month, day, hour, minute, and second of the capture, for example,
-  <code>Snapshot_2015.11.17_14.58.48.hprof</code>.
-</p>
-
-  <li>Click <strong>Captures</strong> in the main window.
-  </li>
-
-<p>
-  The <em>Captures</em> window appears.
-</p>
-
-  <li>Double-click the file to view it in the HPROF Viewer.
-  </li>
-
-<p>
-  The HPROF Viewer appears:
-</p>
-<img src="{@docRoot}images/tools/am-hprofviewer.png" />
-<p>
-  The tool displays the following information:
-</p>
-
-<table>
-  <tr>
-    <th scope="col">Column</th>
-    <th scope="col">Description</th>
-  </tr>
-
-  <tr>
-    <td><strong>Class Name</strong></td>
-    <td>The Java class responsible for the memory.</td>
-  </tr>
-
-  <tr>
-    <td><strong>Total Count</strong></td>
-    <td>Total number of instances outstanding.</td>
-  </tr>
-  <tr>
-    <td><strong>Heap Count</strong></td>
-    <td>Number of instances in the selected heap.</td>
-  </tr>
-  <tr>
-    <td><strong>Sizeof</strong></td>
-    <td>Size of the instances (currently, 0 if the size is variable).</td>
-  </tr>
-  <tr>
-    <td><strong>Shallow Size</strong></td>
-    <td>Total size of all instances in this heap.</td>
-  </tr>
-  <tr>
-    <td><strong>Retained Size</strong></td>
-    <td>Size of memory that all instances of this class is dominating.</td>
-  </tr>
-  <tr>
-    <td><strong>Instance</strong></td>
-    <td>A specific instance of the class.</td>
-  </tr>
-  <tr>
-    <td><strong>Reference Tree</strong></td>
-    <td>References that point to the selected instance, as well as references pointing to the
-      references.</td>
-  </tr>
-  <tr>
-    <td><strong>Depth</strong></td>
-    <td>The shortest number of hops from any GC root to the selected instance.</td>
-  </tr>
-  <tr>
-    <td><strong>Shallow Size</strong></td>
-    <td>Size of this instance.</td>
-  </tr>
-  <tr>
-    <td><strong>Dominating Size</strong></td>
-    <td>Size of memory that this instance is dominating.</td>
-  </tr>
-</table>
-
-  <li>Select the Heap menu option you want to display:
-    <ul>
-      <li>
-        <strong>App heap</strong> - The heap used by the current app.
-      </li>
-
-      <li><strong>Image heap</strong> - The memory mapped copy of the
-      current app on disk.
-      </li>
-
-
-  <li>
-    <strong>Zygote heap</strong> - The common set of libraries and runtime classes and data that
-    all apps are forked
-    from. The zygote space is created during device startup and is never allocated into.
-  </li>
-
-    </ul>
-
-      <li>Select the View menu option you want to display:
-        <ul>
-          <li>
-            <strong>Class List View</strong>
-          </li>
-
-              <li>
-                <strong>Package Tree View</strong>
-              </li>
-            </ul>
-    </ol>
-
-
-<h3 id="hprof-diving">
-  Diving into heap dump data in the HPROF Viewer
-</h3>
-<p>The following steps outline the typical workflow:</p>
-<ol>
-<li>In the HPROF viewer, select a class name. </li>
-<li>Select an instance of that class.</li>
-<li>Examine the reference tree.</li>
-<li>Right-click an item to <strong>Jump to source</strong> or <strong>Go to instance</strong>,
-  as needed.</li>
-</ol>
-
-
-
-<h3 id="hprof-analyzing">Analyzing heap dump data in the HPROF Analyzer</h3>
-<p>You can detect leaked activities and find duplicate strings with the HPROF Analyzer.
-  Follow these steps: </p>
-<ol>
-<li>In the <em>Captures</em> window, double-click an <code>.hprof</code> file to display it in the
-  HPROF Viewer. </li>
-<li>Click <strong>Capture Analysis</strong> on the right side of the main Android Studio window.</li>
-
-
-<p>The HPROF Analyzer appears to the right of the HPROF Analyzer, by default: </p>
-
-<img src="{@docRoot}images/tools/am-hprofanalyzer.png" />
-
-<li>In the <strong>Analyzer Tasks</strong> list, select the items you want to find.</li>
-<li>Click Perform Analysis <img src="{@docRoot}images/tools/am-iperformanalysis.png"
-  style="vertical-align:sub;margin:0;height:17px" alt="Perform Analysis icon" />.</li>
-<li>Examine the items in <strong>Analysis Results</strong>. Click an item to display it in the
-  HPROF Viewer.</li>
-</ol>
-
-
-
-<h3 id="hprof-sorting">Sorting heap dump data</h3>
-<p>Follow this step:</p>
-<ul>
-<li>In the HPROF Viewer, click a column heading to sort the table by ascending or descending
-  order. </li>
-</ul>
-
-
-<h3 id="hprof-source">Displaying Java source</h3>
-<p>For some items displayed in the HPROF Viewer, you can go straight to its source code.
-  Follow this step:</p>
-<ul>
-<li>In the HPROF Viewer, right-click a class, instance, or item in the reference tree, and then
-  select <strong>Jump to Source</strong>. </li>
-
-
-<p>The source code appears in the Code Editor.</p>
-</ul>
-
-<h3 id="hprof-viewing">Viewing a saved HPROF file</h3>
-<p>After you do a heap dump, Android Studio automatically stores it so you can view it again.
-  Follow these steps:</p>
-
-<ol>
-<li>Click <strong>Captures</strong> in the main window.</li>
-
-<p>The <em>Captures</em> window appears.</p>
-<li>Open the <strong>Heap Snapshot</strong> folder.</li>
-<li>Double-click the file to view it.</li>
-</ol>
-
-
-<h3 id="hprof-renaming">Renaming an HPROF file</h3>
-
-<p>If you rename a file from within Android Studio, it continues to appear in <em>Captures</em>
-  window. Follow these steps:</p>
-<ol>
-<li>In the <em>Captures</em> window, right-click the file and select <strong>Rename</strong>. </li>
-<li>In the dialog, specify the name of the file and click <strong>OK</strong>.</li>
-</ol>
-
-
-<h3 id="hprof-locating">Locating a heap dump file on disk</h3>
-<p>You can quickly discover where Android Studio stored HPROF files on disk.</p>
-
-
-<p>Follow this step in Android Studio: </p>
-<ul>
-<li>In the <em>Captures</em> window, right-click a heap snapshot file and select
-  <strong>Show in files</strong>.</li>
-
-<p>Android Studio opens an operating system file browser displaying the location where the file
-  resides.</p>
-</ul>
-<p class="note"><strong>Note:</strong> If you move an HPROF file, Android Studio no longer
-  displays it in the <em>Captures</em> window. To display it, use
-  <strong>File</strong> &gt; <strong>Open</strong>. Also, if you want to rename the file, do it
-  from the <em>Captures</em> window and not in the operating system file browser. </p>
-
-<h3 id="hprof-deleting">Deleting a heap dump file</h3>
-
-<p>To delete a heap dump file, follow this step: </p>
-<ul>
-<li>In the <em>Captures</em> window, right-click a heap snapshot file and select
-  <strong>Delete</strong>.</li>
-
-<p>Android Studio deletes the file from the <em>Captures</em> dialog and from disk. </p>
-</ul>
-
-<h3 id="hprof-converting">Converting a heap dump file to standard HPROF format</h3>
-<p>You can convert an HPROF file to standard format so you can use it outside of Android Studio with
-  other analysis tools. Follow these steps: </p>
-<ol>
-<li>In the <em>Captures</em> window, right-click a heap snapshot file and select <strong>Export to
-  standard .hprof</strong>.</li>
-<li>In the <em>Convert Android Java Heap Dump</em> dialog, specify a filename and click
-  <strong>OK</strong>.</li>
-
-
-<p>Android Studio creates a binary HPROF file in the location you specified.</p>
-</ol>
-
-<h2 id="tracking">
-  Tracking and Analyzing Memory Allocation
-</h2>
-
-<p>Android Studio allows you to track memory allocation as it monitors memory use. Tracking memory
-  allocation allows you to monitor where objects are being allocated when you perform certain
-  actions. Knowing these allocations enables you to adjust the method calls related to those actions
-  to optimize app performance and memory use.</p>
-
-<p>The Allocation Tracker does the following:</p>
-<ul>
-<li>Shows when and where your code allocates object types, their size, allocating thread, and stack
-  traces.</li>
-<li>Helps recognize memory churn through recurring allocation/deallocation patterns.</li>
-<li>Help you track down memory leaks when used in combination with the HPROF Viewer. For example,
-  if you see a bitmap object resident on the heap, you can find its allocation location with
-  Allocation Tracker.</li>
-</ul>
-
-
-<p>However, it takes time and experience to learn to interpret the output from this tool.</p>
-
-<h3 id="alloc-snapshot">Taking and displaying a snapshot of allocation data</h3>
-
-<p>Follow these steps:</p>
-<ol>
-<li>While the Memory Monitor is running, click Start Allocation Tracking
-  <img src="{@docRoot}images/tools/am-ialloctracking.png"
-  style="vertical-align:sub;margin:0;height:17px" alt="Start Allocation Tracking icon" />. </li>
-<li>Click Start Allocation Tracking
-  <img src="{@docRoot}images/tools/am-ialloctracking.png"
-  style="vertical-align:sub;margin:0;height:17px" alt="Start Allocation Tracking icon" /> again to
-  deselect it and end the snapshot. </li>
-
-  <p>The Memory Monitor displays the period when it took the snapshot. In the following
-    figure, you can see the snapshot period, as shown on the left. By comparison, when you dump the
-    Java heap, the Memory Monitor displays just the point where the heap snapshot was taken, as
-    shown on the right.</p>
-    <img src="{@docRoot}images/tools/am-dumpalloc.png" />
-
-<p>Android Studio creates the heap snapshot file with the
-  filename <code>Allocations_<em>yyyy.mm.dd_hh.mm.ss</em>.alloc</code> using the year, month, day,
-  hour, minute, and second of the capture, for example,
-  <code>Allocations_2015.11.17_14.58.48.alloc</code>.</p>
-<li>Click <strong>Captures</strong> in the main window.</li>
-
-
-<p>The <em>Captures</em> window appears.</p>
-<li>Double-click the file to view it in the Allocation Tracker. </li>
-<li>Optionally click the graphic icon to display a visual representation of the data.
-  </li>
-<p>
-  The Allocation Tracker appears:
-</p>
-<img src="{@docRoot}images/tools/am-alloctracker.png" />
-<p>
-
-
-<p>The tool displays the following information: </p>
-
-<table>
-  <tr>
-    <th scope="col">Column</th>
-    <th scope="col">Description</th>
-  </tr>
-
-  <tr>
-    <td><strong>Method</strong></td>
-    <td>The Java method responsible for the allocation.</td>
-  </tr>
-  <tr>
-    <td><strong>Count</strong></td>
-    <td>Total number of instances allocated.</td>
-  </tr>
-  <tr>
-    <td><strong>Size</strong></td>
-    <td>The total amount of allocated memory in bytes.</td>
-  </tr>
-
-</table>
-
-
-<li>Select the Group By menu option you want to display: </li>
-<ul>
-<li><strong>Group by Allocator</strong> </li>
-<li><strong>Group by Method</strong></li>
-</ul>
-
-</ol>
-
-
-
-<h3 id="alloc-sorting">Sorting allocation data</h3>
-
-<p>Follow this step:</p>
-<ul>
-<li>In the Allocation Tracker, click a column heading to sort the table by ascending or
-  descending order. </li>
-</ul>
-
-
-<h3 id="alloc-source">Displaying Java source</h3>
-<p>For some items displayed in the Allocation Tracker, you can view the Java source. Follow one of
-  these steps:</p>
-<ul>
-<li>In the Allocation Tracker, right-click a method and then select <strong>Jump to Source</strong>.
-</li>
-<li>In the Allocation Tracker, select a method and then click Jump to Source
-  <img src="{@docRoot}images/tools/am-ijumptosource.png"
-  style="vertical-align:sub;margin:0;height:17px" alt="Jump to Source icon" />. </li>
-</ul>
-
-<p>The source code appears in the Code Editor.</p>
-
-<h3 id="alloc-viewing">Viewing a saved allocation tracking file</h3>
-<p>After you monitor allocation tracking, Android Studio automatically stores it so you can view it
-  again. Follow these steps:</p>
-
-
-<ol>
-<li>Click <strong>Captures</strong> in the main window.</li>
-
-
-<p>The <em>Captures</em> window appears.</p>
-<li>Open the <strong>Allocation Tracking</strong> folder.</li>
-<li>Double-click the file to view it.</li>
-</ol>
-
-
-<h3 id="alloc-renaming">Renaming an allocation tracking file</h3>
-
-<p>If you rename a file from within Android Studio, it continues to appear in the <em>Captures</em>
-  window. Follow these steps:</p>
-<ol>
-<li>In the <em>Captures</em> window, right-click the file and select <strong>Rename</strong>.</li>
-<li>In the <em>Rename</em> dialog, specify the name of the file and click <strong>OK</strong>.</li>
-</ol>
-
-
-<h3 id="alloc-locating">Locating an allocation tracking file</h3>
-<p>You can quickly discover where Android Studio stored allocation tracking files on disk.</p>
-
-
-<p>Follow this step in Android Studio: </p>
-<ul>
-<li>In the <em>Captures</em> window, right-click allocation file and select
-  <strong>Show in Files</strong>.</li>
-
-<p>Android Studio opens an operating system file browser displaying the location where the file
-  resides.</p>
-</ul>
-
-<p class="note"><strong>Note:</strong> If you move an allocation tracking file, Android Studio
-  no longer displays it in the <em>Captures</em> window. To display the file, use
-  <strong>File</strong>
-  &gt; <strong>Open</strong>. Also, rename the file from the <em>Captures</em>
-  window and not in the operating system file browser. </p>
-
-<h3 id="alloc-deleting">Deleting an allocation tracking file</h3>
-
-
-<p>Follow this step: </p>
-<ul>
-<li>In the <em>Captures</em> window, right-click an allocation tracking file and select
-  <strong>Delete</strong>.</li>
-
-<p>Android Studio deletes the file from the <em>Captures</em> dialog and from disk. </p>
-</ul>
diff --git a/docs/html/tools/help/am-methodtrace.jd b/docs/html/tools/help/am-methodtrace.jd
new file mode 100644 (file)
index 0000000..7d5f070
--- /dev/null
@@ -0,0 +1,266 @@
+page.title=Method Trace
+parent.title=Android Monitor
+parent.link=android-monitor.html
+meta.tags="android, performance, profiling, tools, monitor"
+page.tags="android", "performance", "profiling", "tools", "monitor"
+page.metaDescription=Use the CPU Monitor to perform a method trace on your app. View call stack and timing information in the method trace display.
+page.image=tools/help/thumbnails/am_methodtrace.png
+page.article=true
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>In this document</h2>
+<ol>
+<li><a href="#display">Understanding the Method Trace Display</a></li>
+  <li><a href="#trace">Performing a Method Trace in the CPU Monitor</a></li>
+  <li><a href="#viewtrace">Viewing a Saved Method Trace</a></li>
+  <li><a href="#sorttrace">Sorting Method Trace Data</a></li>
+  <li><a href="#trace-files">Working with Method Trace Files</a></li>
+</ol>
+
+</div>
+</div>
+
+
+<p>
+  You can start a method trace from the CPU Monitor. It lets you view the call stack and timing
+  information for your app. This information can help you optimize and debug your app.
+</p>
+
+<h2 id="display">
+  Understanding the Method Trace Display
+</h2>
+
+<p>
+  The method trace looks similar to the following figure:
+</p>
+<img src="{@docRoot}images/tools/am-methodtrace.png" alt="Method Trace" />
+<p></p>
+
+<p>The display shows the following information:</p>
+
+<table>
+  <tr>
+    <th scope="col">Field</th>
+    <th scope="col">Description</th>
+  </tr>
+
+  <tr>
+    <td><strong>Name</strong></td>
+    <td>The name of the method.</td>
+  </tr>
+
+  <tr>
+    <td><strong>Invocation Count</strong></td>
+    <td>How many times the method was called.</td>
+  </tr>
+
+  <tr>
+    <td><strong>Inclusive Time (microseconds)</strong></td>
+    <td>Time spent in the method and all of its children, either wall clock or thread time,
+          depending on your selection in the <strong>x-axis</strong> menu.</td>
+  </tr>
+
+  <tr>
+    <td><strong>Exclusive Time (microseconds)</strong></td>
+    <td>Time spent just in the method (excluding time spent in its children), either wall clock
+          or thread time, depending on your selection in the <strong>x-axis</strong> menu.</td>
+  </tr>
+</table>
+
+<p class="note"><strong>Note:</strong> Running the method trace significantly affects CPU timings.
+  Use the method trace to understand the flow of the program, but not for performance timings.</p>
+
+<h2 id="trace">
+  Performing a Method Trace in the CPU Monitor
+</h2>
+
+<p>
+  To perform a method trace:
+</p>
+
+<ol>
+  <li>
+    <a href="{@docRoot}tools/help/am-cpu.html#running">Display a running app in the CPU
+    Monitor</a>.
+  </li>
+
+  <li>Start a trace by clicking Start Method Tracing <img src="{@docRoot}images/tools/am-imethodtrace.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="Start Method Tracing icon" /> to
+  select it.
+  </li>
+
+  <li>To stop the trace, click Stop Method Tracing <img src="{@docRoot}images/tools/am-imethodtrace.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="Stop Method Tracing icon" /> to
+  deselect it.
+  </li>
+
+<p>
+  The method trace appears in the Code Editor area.
+</p>
+
+<p>
+  Android Studio creates the method trace file
+  with the filename <code><em>package_yyyy.mm.dd_hh.mm.ss</em>.trace</code>
+  using the activity package (or project) name, year, month, day, hour, minute, and second of
+  the capture, for example,
+  <code>com.android.calc_2015.11.17_14.58.48.trace</code>.
+</p>
+  <li>Specify display options:
+    <ul>
+      <li>Select a <strong>Thread</strong>.
+      </li>
+
+      <li>Select an <strong>x-axis</strong> time for the graphic and the method list:
+      </li>
+
+        <ul>
+          <li>
+            <strong>Wall Clock Time</strong> - Total CPU time elapsed between the method call and
+            return.
+          </li>
+
+          <li>
+            <strong>Thread Time</strong> - Total time during which the JRE scheduled the
+            thread during call processing. It’s less than or equal to the Wall Clock Time: less if
+            the JRE interrupted the thread, and equal if it didn’t.
+            The thread might not run continuously; when it’s not executing, that time is excluded.
+            If threads are interrupted often and it’s not by design, the interruptions affect app
+            performance. However, an example of a by-design use is synchronous operations that take
+            a long time, such as file transfers and reads from disk, where the method could be the
+            asynchronous wrapper for the synchronous reader.
+          </li>
+       </ul>
+
+        <li>
+          Optionally select <strong>Color by inclusive time</strong>.
+        </li>
+        </ul>
+
+
+
+        <p>
+          The graphic represents the wall clock or thread time for each method. Hover the cursor
+          over the display to receive information about the method. This information also appears
+          in the table.
+        </p>
+</ol>
+        <h2 id="viewtrace">
+          Viewing a Saved Method Trace
+        </h2>
+
+        <p>
+          After you do a method trace, Android Studio automatically stores it so you can view it
+          again.</p>
+
+          <p>To examine a saved method trace:
+        </p>
+
+        <ol>
+          <li>Click
+          <img src="{@docRoot}images/tools/am-icaptures.png"
+          style="vertical-align:sub;margin:0;height:17px"
+          alt="Captures icon" /> in the main window.
+          </li>
+          <p>Or select <strong>View</strong> > <strong>Tools Windows</strong> >
+          <strong>Captures</strong>.</p>
+
+        <p>
+          The <em>Captures</em> window appears.
+        </p>
+
+      <li>Open the <strong>Methods Tracing</strong> folder.
+      </li>
+
+      <li>Double-click the file to view it.
+      </li>
+</ol>
+
+<h2 id="sorttrace">
+  Sorting Method Trace Data
+</h2>
+
+<p>
+  You can sort the data by method name, count, inclusive time, and exclusive
+  time.</p>
+
+  <p>To sort method trace data:</p>
+
+
+<ul>
+  <li>Click a column heading to sort the table by ascending or descending order.
+  </li>
+</ul>
+
+<h2 id="trace-files">Working with Method Trace Files</h2>
+<p>You can rename, locate, and delete a method trace file from within Android
+Studio.</p>
+
+<h3 id="renametrace">
+  Renaming a method trace file
+</h3>
+
+<p>
+  Rename a method trace file from within Android Studio so it
+  continues to appear in the <em>Captures</em> window.</p>
+
+  <p>To rename a method trace file:
+</p>
+
+<ol>
+  <li>In the <em>Captures</em> window, right-click the file and select <strong>Rename</strong>.
+  </li>
+
+  <li>In the dialog, specify the name of the file and click <strong>OK</strong>.
+  </li>
+</ol>
+
+<h3 id="locatetrace">
+  Locating a method trace file on disk
+</h3>
+
+<p>
+  You can quickly discover where Android Studio stored method trace files on
+  disk.</p>
+
+  <p>To locate a method trace file on disk:
+</p>
+
+
+
+<ul>
+  <li>In the <em>Captures</em> window, right-click a method trace file and
+  select <strong>Show</strong> or <strong>Reveal</strong>.
+  </li>
+
+<p>
+  Android Studio opens an operating system file browser displaying the location where the file
+  resides.
+</p>
+</ul>
+<p class="note">
+  <strong>Note:</strong> If you move a method trace file, Android Studio no longer displays the file
+  in the <em>Captures</em> window. To display it, use <strong>File</strong> &gt;
+  <strong>Open</strong>. Also, rename a file from the <em>Captures</em>
+  window and not in the operating system file browser.
+</p>
+
+<h3 id="deletetrace">
+  Deleting a method trace file
+</h3>
+
+<p>
+  To delete a method trace file:
+</p>
+
+<ul>
+  <li>In the <em>Captures</em> window, right-click a method trace file and select
+  <strong>Delete</strong>.
+  </li>
+</ul>
+
+<p>
+  Android Studio deletes the file from the <em>Captures</em> dialog and from disk.
+</p>
\ No newline at end of file
index ae116ac..8129992 100644 (file)
@@ -1,7 +1,12 @@
 page.title=Network Monitor
 parent.title=Android Monitor
 parent.link=android-monitor.html
-page.tags=monitor
+meta.tags="android, performance, profiling, tools, monitor"
+page.tags="android", "performance", "profiling", "tools", "monitor"
+page.metaDescription=Use the Network Monitor to analyze network requests, including how and when your app transfers data. Preserve battery life by optimizing network use.
+page.image=tools/help/thumbnails/am-networkmon.png
+page.article=true
+
 @jd:body
 
 <div id="qv-wrapper">
@@ -11,63 +16,12 @@ page.tags=monitor
   <li><a href="#running">Displaying a Running App in the Network Monitor</a></li>
 </ol>
 
- <h2>See also</h2>
-  <ol>
-    <li>
-        <a href="{@docRoot}tools/help/android-monitor.html">Android Monitor</a>
-      </li>
-    <li><a href="{@docRoot}tools/help/am-logcat.html">logcat Monitor</a>
-      </li>
-
-      <li><a href="{@docRoot}tools/help/am-memory.html">Memory Monitor</a>
-      </li>
-
-      <li><a href="{@docRoot}tools/help/am-cpu.html">CPU Monitor</a>
-      </li>
-
-      <li><a href="{@docRoot}tools/help/am-gpu.html">GPU Monitor</a>
-      </li>
-  </ol>
-
 <h2>Video</h2>
   <ol>
     <li><a href="https://www.youtube.com/watch?v=fEEulSk1kNY"
       class="external-link">Battery Drain and Networking</a></li>
   </ol>
 
-<h2>
-  Dependencies and Prerequisites
-</h2>
-
-<ul>
-  <li>
-    <a href="{@docRoot}tools/building/building-studio.html#RunningOnDeviceStudio">Connect a
-    hardware device</a> to your development computer.
-  </li>
-
-  <li>Make sure your development computer detects your hardware device, which often happens
-  automatically when you connect it to a USB port.
-  </li>
-
-  <li>
-    <a href="{@docRoot}tools/device.html#device-developer-options">Enable</a> <strong><a href=
-    "{@docRoot}tools/device.html#device-developer-options">USB debugging</a></strong> in
-    <strong>Developer Options</strong> on the device.
-  </li>
-
-  <li>In your app, set the <code>debuggable</code> property to <code>true</code> in the manifest or
-  <code>build.gradle</code> file (it’s initially set by default).
-  </li>
-
-  <li>Enable ADB integration through <strong>Tools</strong> &gt; <strong>Android</strong> &gt;
-  <strong>Enable ADB Integration</strong>.
-  </li>
-
-  <li>
-    <a href="{@docRoot}tools/help/monitor.html">Android Device Monitor</a> can’t be running.
-  </li>
-</ul>
-
 </div>
 </div>
 
@@ -91,32 +45,35 @@ page.tags=monitor
 </h2>
 
 <p>
-  Follow these steps:
+  To display an app running on a particular device in the Network Monitor:
 </p>
 
 <ol>
-  <li>Connect a hardware device.
+  <li>Meet the <a href=
+  "{@docRoot}tools/help/am-basics.html#byb">prerequisites and dependencies</a>.
+  </li>
+  <p>Connect a hardware device; the Network Monitor doesn't monitor an emulator.
+  </p>
+ <li>Open an app project.
+  </li>
+  <li><a href=
+  "{@docRoot}tools/building/building-studio.html#RunningApp">Run the app</a> on the hardware device.
   </li>
-
   <li>
-    <a href="{@docRoot}tools/help/android-monitor.html#displaying">Display Android Monitor</a>.
+    <a href="{@docRoot}tools/help/am-basics.html#displaying">Display Android Monitor</a>.
   </li>
-
-  <li>Click the <strong>Network</strong> tab.
+  <li>Click the <strong>Monitors</strong> tab and <a href=
+  "{@docRoot}tools/help/am-basics.html#rearranging">display the Network Monitor</a>.
   </li>
 
-  <li>Open an app project and <a href=
-  "{@docRoot}tools/building/building-studio.html#RunningApp">run it</a> on the hardware device.
+  <li>Enable the Network Monitor by clicking Pause <img src="{@docRoot}images/tools/am-ipause.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="Pause icon" /> to deselect it.
   </li>
 
-  <li>To start the Network Monitor, click Pause <img src="{@docRoot}images/tools/am-ipause.png"
-    style="vertical-align:sub;margin:0;height:17px" alt="Pause icon" /> to
-  deselect it.
-  </li>
 <p>
   Any network traffic begins to appear in the Network Monitor:
 </p>
-  <img src="{@docRoot}images/tools/am-networkmon.png" style="vertical-align:sub;margin:0;width:450px" />
+  <img src="{@docRoot}images/tools/am-networkmon2.png" style="vertical-align:sub;margin:0" />
 <p>
   The Network Monitor adds up the amount of time it takes for the device to transmit and receive
   kilobytes of data.
diff --git a/docs/html/tools/help/am-screenshot.jd b/docs/html/tools/help/am-screenshot.jd
new file mode 100644 (file)
index 0000000..322616e
--- /dev/null
@@ -0,0 +1,89 @@
+page.title=Screen Capture
+parent.title=Android Monitor
+parent.link=android-monitor.html
+meta.tags="android, performance, profiling, tools, monitor"
+page.tags="android", "performance", "profiling", "tools", "monitor"
+page.metaDescription=Use the Screen Capture tool to take a screenshot of the display on a hardware device or the emulator. Optionally display the screenshot within a graphic of a device.
+page.image=tools/help/thumbnails/am_screenshot.png
+page.article=true
+@jd:body
+
+
+<p>
+  You can take a PNG screenshot of the display on a connected device or the emulator. You can use
+  the images for your marketing materials as well as for debugging, for example.
+</p>
+
+
+<h2 id="screencapture">
+  Taking a Screen Capture of the Device
+</h2>
+
+
+<p>
+  To take a screen capture:
+</p>
+<ol>
+  <li>Meet the <a href=
+  "{@docRoot}tools/help/am-basics.html#byb">prerequisites and dependencies</a>.
+  </li>
+ <li>Open an app project.
+  </li>
+  <li><a href=
+  "{@docRoot}tools/building/building-studio.html#RunningApp">Run the app</a> on
+  a hardware device or emulator.
+  </li>
+  <li>
+    <a href="{@docRoot}tools/help/am-basics.html#displaying">Display Android Monitor</a>.
+  </li>
+
+  <li>Interact with the display on the device or emulator to stage the image you want.
+  </li>
+
+  <li>Click Screen Capture <img src="{@docRoot}images/tools/am-iscreencapture.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="Screen Capture icon" /> in the
+    Android Monitor toolbar.
+  </li>
+  <p>The screenshot appears in a <em>Screenshot Editor</em> window.</p>
+
+<img src="{@docRoot}images/tools/am-screenshot.png" alt="Screen Capture" />
+
+  <li>Optionally change the image:
+    <ul>
+      <li>
+        <strong>Recapture</strong> - Click to take a new screenshot.
+      </li>
+
+      <li>
+        <strong>Rotate</strong> - Click to rotate the image 90 degrees clockwise.
+      </li>
+
+      <li>
+        <strong>Frame Screenshot</strong> - Select this option and choose a device to add an image
+        of the device to the outside of the screenshot. Select <strong>Drop Shadow</strong>,
+        <strong>Screen Glare</strong>, or both to add these effects to your image.
+      </li>
+
+      <li>
+        <strong>Chessboard</strong> and <strong>Grid</strong> - Select an option to display these
+        behind your image.
+      </li>
+
+      <li>
+        <strong>Zoom In</strong>, <strong>Zoom Out</strong>, or <strong>Actual Size</strong> -
+        Click these options to get different perspectives of your image without changing the image
+        itself.
+      </li>
+    </ul>
+    </li>
+      <li>Click <strong>Save</strong> to save the image.
+      </li>
+      </li>
+      <li>In the <em>Save as PNG</em> dialog, specify the location and filename,
+      and then click <strong>OK</strong>.
+      </li>
+      <p>The screenshot file appears in the Code Editor area.</p>
+</ol>
+
+
+
diff --git a/docs/html/tools/help/am-sysinfo.jd b/docs/html/tools/help/am-sysinfo.jd
new file mode 100644 (file)
index 0000000..166cc08
--- /dev/null
@@ -0,0 +1,205 @@
+page.title=System Information
+parent.title=Android Monitor
+parent.link=android-monitor.html
+meta.tags="android, performance, profiling, tools, monitor"
+page.tags="android", "performance", "profiling", "tools", "monitor"
+page.metaDescription=Use the System Information tool to capture <code>dumpsys</code> information about your app. View activity manager, package, memory usage, and graphics state information.
+page.image=tools/help/thumbnails/am_sysinfo.png
+page.article=true
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>In this document</h2>
+<ol>
+  <li><a href="#sysinfo">Examining System Information for a Running App</a></li>
+  <li><a href="#viewsysinfo">Viewing Saved System Information</a></li>
+  <li><a href="#sysinfo-files">Working with System Information Files</a></li>
+</ol>
+
+</div>
+</div>
+
+<p>
+  You can capture <code>dumpsys</code> output from within Android Monitor and
+  display the file in the Code Editor. The <em>Captures</em> window lists the
+  system information files so you can retrieve the information later for
+  analysis.
+</p>
+
+
+
+<h2 id="sysinfo">
+  Examining System Information for a Running App
+</h2>
+<p>
+  To capture and view a snapshot of system information:
+</p>
+
+<ol>
+  <li>Meet the <a href=
+  "{@docRoot}tools/help/am-basics.html#byb">prerequisites and dependencies</a>.
+  </li>
+ <li>Open an app project.
+  </li>
+  <li><a href=
+  "{@docRoot}tools/building/building-studio.html#RunningApp">Run the app</a> on
+  a hardware device or emulator.
+  </li>
+  <li>
+    <a href="{@docRoot}tools/help/am-basics.html#displaying">Display Android Monitor</a>.
+  </li>
+
+  <li>In the toolbar of the Android Monitor main window, click System Information
+    <img src="{@docRoot}images/tools/am-isysteminfo.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="System Information icon" />
+    and then select a menu item.
+  </li>
+
+<p>
+  The menu items display different types of <code><a href=
+  "https://source.android.com/devices/tech/debug/dumpsys.html">dumpsys</a></code>
+  output:
+</p>
+
+<ul>
+  <li>
+    <strong>Activity Manager State</strong> - <code>dumpsys activity</code>
+  </li>
+
+  <li>
+    <strong>Package Information</strong> - <code>dumpsys package</code>
+  </li>
+
+  <li>
+    <strong>Memory Usage</strong> - <code><a href=
+    "{@docRoot}tools/debugging/debugging-memory.html#ViewingAllocations">dumpsys
+    meminfo</a></code>
+  </li>
+
+  <li>
+    <strong>Memory Use Over Time</strong> - <code><a href=
+    "http://android-developers.blogspot.com/2014/01/process-stats-understanding-how-your.html">dumpsys
+    procstats</a></code>
+  </li>
+
+  <li>
+    <strong>Graphics State</strong> - <code><a href=
+    "{@docRoot}training/testing/performance.html">dumpsys gfxinfo</a></code>
+  </li>
+</ul>
+
+<p>
+  The information appears in an editable text file in the Code Editor.
+</p>
+<img src="{@docRoot}images/tools/am-sysinfo.png" alt="System Information" />
+<p>Android Studio creates the system information file with the
+  filename <code><em>package_yyyy.mm.dd_hh.mm.ss</em>.txt</code> using the
+  activity package (or project) name, year, month, day,
+  hour, minute, and second of the capture, for example,
+  <code>com.android.calc_2015.11.17_14.58.48.txt</code>.</p>
+</ol>
+
+<h2 id="viewsysinfo">
+Viewing Saved System Information
+</h2>
+
+<p>
+After you take a snapshot of system information, Android Studio automatically
+stores it so you can view it again.</p>
+
+<p>To examine a saved system information file:</p>
+
+<ol>
+          <li>Click
+          <img src="{@docRoot}images/tools/am-icaptures.png"
+          style="vertical-align:sub;margin:0;height:17px"
+          alt="Captures icon" /> in the main window.
+          </li>
+          <p>Or select <strong>View</strong> > <strong>Tools Windows</strong> >
+          <strong>Captures</strong>.</p>
+
+        <p>
+          The <em>Captures</em> window appears.
+        </p>
+
+      <li>Open the <strong>System Information</strong> folder.
+      </li>
+
+      <li>Double-click the file to view it.
+      </li>
+</ol>
+
+
+<h2 id="sysinfo-files">Working with System Information Files</h2>
+<p>You can rename, locate, and delete a system information file from within
+Android Studio.</p>
+
+<h3 id="renamesysinfo">
+  Renaming a system information file
+</h3>
+
+<p>
+  Rename a system information file from within Android Studio so it
+  continues to appear in the <em>Captures</em> window.</p>
+
+  <p>To rename a system information file:
+</p>
+
+<ol>
+  <li>In the <em>Captures</em> window, right-click the file and select
+  <strong>Rename</strong>.
+  </li>
+
+  <li>In the dialog, specify the name of the file and click <strong>OK</strong>.
+  </li>
+</ol>
+
+<h3 id="locatesysinfo">
+  Locating a system information file on disk
+</h3>
+
+<p>
+  You can quickly discover where Android Studio stored system information files
+  on disk.</p>
+
+  <p>To locate a system information file on disk:
+</p>
+
+
+
+<ul>
+  <li>In the <em>Captures</em> window, right-click a system information file and
+  select <strong>Show</strong> or <strong>Reveal</strong>.
+  </li>
+
+<p>
+  Android Studio opens an operating system file browser displaying the location
+  where the file resides.
+</p>
+</ul>
+<p class="note">
+  <strong>Note:</strong> If you move a system information file, Android Studio
+  no longer displays the file
+  in the <em>Captures</em> window. To display it, use <strong>File</strong> &gt;
+  <strong>Open</strong>. Also, rename a file from the <em>Captures</em>
+  window and not in the operating system file browser.
+</p>
+
+<h3 id="deletesysinfo">
+  Deleting a system information file
+</h3>
+
+<p>
+  To delete a system information file:
+</p>
+
+<ul>
+  <li>In the <em>Captures</em> window, right-click a system information file
+  and select <strong>Delete</strong>.
+  </li>
+</ul>
+
+<p>
+  Android Studio deletes the file from the <em>Captures</em> dialog and from
+  disk.
+</p>
diff --git a/docs/html/tools/help/am-video.jd b/docs/html/tools/help/am-video.jd
new file mode 100644 (file)
index 0000000..5ecdd11
--- /dev/null
@@ -0,0 +1,78 @@
+page.title=Video Capture
+parent.title=Android Monitor
+parent.link=android-monitor.html
+meta.tags="android, performance, profiling, tools, monitor"
+page.tags="android", "performance", "profiling", "tools", "monitor"
+page.metaDescription=Use the Video tool to make a video of the display on a hardware device.
+page.image=tools/help/thumbnails/am_video.png
+page.article=true
+@jd:body
+
+
+<p>
+  Android Studio lets you record an MP4 video from your hardware device for a maximum of three
+  minutes. You can use the video for your marketing materials as well as for debugging, for
+  example.
+</p>
+<img src="{@docRoot}images/tools/am-video.png" width="230" alt="Device Video" />
+
+
+
+<h2 id="video">
+  Recording a Video from the Screen
+</h2>
+
+<p>
+  To record a video from a hardware device:
+</p>
+<ol>
+  <li>Meet the <a href=
+  "{@docRoot}tools/help/am-basics.html#byb">prerequisites and dependencies</a>.
+  </li>
+ <li>Open an app project.
+  </li>
+  <li><a href=
+  "{@docRoot}tools/building/building-studio.html#RunningApp">Run the app</a> on
+  a hardware device.
+  </li>
+  <li>
+    <a href="{@docRoot}tools/help/am-basics.html#displaying">Display Android Monitor</a>.
+  </li>
+
+  <li>Interact with the display on the hardware device to stage the start of the video.
+  </li>
+
+  <li>Click Screen Record <img src="{@docRoot}images/tools/am-ivideo.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="Screen Record icon" /> in the
+    Android Monitor toolbar.
+  </li>
+  <p>The screenshot appears in a Screenshot Editor window.</p>
+
+  <li>In the <em>Screen Recorder Options</em> dialog, optionally change the recording options:
+  </li>
+<ul>
+  <li>
+    <strong>Bit Rate</strong> - Type a bit rate. The default is 4 Mbps.
+  </li>
+
+  <li>
+    <strong>Resolution</strong> - Type a width and height value in pixels. The value must be a
+    multiple of 16. The default is the resolution of the device.
+  </li>
+</ul>
+  <li>Click <strong>Start Recording</strong> to start the recording.
+  </li>
+
+  <li>Click <strong>Stop Recording</strong> to stop the recording.
+  </li>
+
+  <li>In the <em>Save As</em> dialog, save the MP4 file.
+  </li>
+
+  <li>In the <em>Screen Recorder</em> dialog, click one of the buttons to show the file location,
+  open the recording in a player, or to dismiss the dialog.
+  </li>
+</ol>
+
+
+
index 4c9f80f..2820db8 100644 (file)
@@ -8,63 +8,16 @@ page.tags=monitor
 <div id="qv">
   <h2>In this document</h2>
 <ol>
-  <li><a href="#displaying">Displaying Android Monitor</a></li>
-  <li><a href="#profiling">Profiling a Running App in Android Monitor</a></li>
-  <li><a href="#switching">Switching between Devices and Apps</a></li>
-  <li><a href="#screencapture">Taking a Screen Capture of the Device</a></li>
-  <li><a href="#video">Recording a Video from the Screen</a></li>
-  <li><a href="#sysinfo">Examining System Information</a></li>
-  <li><a href="#terminating">Terminating the App</a></li>
-  <li><a href="#rearranging">Rearranging Android Monitor Windows</a></li>
-  <li><a href="#removing">Removing an App from a Device</a></li>
+  <li><a href="#logcat">Log Messages</a></li>
+  <li><a href="#monitors">Performance Monitors</a></li>
+  <li><a href="#data">Data Analysis</a></li>
+  <li><a href="#shots">Screen and Video Captures</a></li>
+  <li><a href="#getstarted">Get Started</a></li>
 </ol>
 
- <h2>See also</h2>
-  <ol>
-    <li><a href="{@docRoot}tools/help/am-logcat.html">logcat Monitor</a>
-      </li>
 
-      <li><a href="{@docRoot}tools/help/am-memory.html">Memory Monitor</a>
-      </li>
 
-      <li><a href="{@docRoot}tools/help/am-cpu.html">CPU Monitor</a>
-      </li>
 
-      <li><a href="{@docRoot}tools/help/am-gpu.html">GPU Monitor</a>
-      </li>
-
-      <li>
-        <a href="{@docRoot}tools/help/am-network.html">Network Monitor</a>
-      </li>
-  </ol>
-
-
-<h2>
-  Dependencies and Prerequisites
-</h2>
-
-<ul>
-  <li>In your app, set the <code>debuggable</code> property to <code>true</code> in the manifest or
-  <code>build.gradle</code> file (it’s initially set by default).
-  </li>
-
-    <li>Enable ADB integration through <strong>Tools</strong> &gt; <strong>Android</strong> &gt;
-  <strong>Enable ADB Integration</strong>.
-    </li>
-
-  <li>Make sure your development computer detects your hardware device, which often happens
-  automatically when you connect it to a USB port.
-  </li>
- <li>
-    <a href="{@docRoot}tools/device.html#device-developer-options">Enable</a> <strong><a href=
-    "{@docRoot}tools/device.html#device-developer-options">USB debugging</a></strong> in
-    <strong>Developer Options</strong> on the device or emulator.
-  </li>
-
-  <li>
-    <a href="{@docRoot}tools/help/monitor.html">Android Device Monitor</a> can’t be running.
-  </li>
-</ul>
 
 </div>
 </div>
@@ -72,7 +25,7 @@ page.tags=monitor
 <p>
   Android Monitor helps you to profile the performance of your apps so you can optimize, debug, and
   improve them. It lets you monitor the following aspects of your apps from a hardware device or
-  the Android Studio emulator:
+  the <a href="{@docRoot}tools/devices/emulator.html">Android Emulator</a>:
 </p>
 
 <ul>
@@ -88,375 +41,66 @@ page.tags=monitor
   </li>
 </ul>
 
-<p>
-  Android Monitor contains the logcat, Memory, CPU, GPU, and Network Monitors that you can use
-  separately to examine these aspects of your apps.
-</p>
-
-
-<h2 id="displaying">
-  Displaying Android Monitor
-</h2>
-
-<p>
-  Android Monitor is integrated into the Android Studio main window:
-</p>
-
-<ul>
-  <li>To display Android Monitor, click <img src="{@docRoot}images/tools/am-icon.png"
-    style="vertical-align:sub;margin:0;height:17px" alt="Android Monitor icon" />, which by default
-  is at the bottom of the main window.
-  </li>
-
-  <li>To hide Android Monitor, click <img src="{@docRoot}images/tools/am-icon.png"
-    style="vertical-align:sub;margin:0;height:17px" alt="Android Monitor icon" /> again.
-  </li>
-</ul>
-<img src="{@docRoot}images/tools/am-androidmon.png" style="vertical-align:sub;margin:0;width:480px" />
-
-<h2 id="profiling">
-  Profiling a Running App in Android Monitor
-</h2>
-
-<p>
-  Follow these steps:
-</p>
-
-<ol>
-  <li>Optionally connect a hardware device.
-  </li>
-
-  <li>
-    <a href="#displaying">Display Android Monitor</a>.
-  </li>
-
-  <li>Open an app project and <a href=
-  "{@docRoot}tools/building/building-studio.html#RunningApp">run the app</a> on a device or
-  emulator.
-  </li>
-
-  <li>Click the tab for the monitor you want to view and start the monitor, if needed:
-    <ul>
-      <li><a href="{@docRoot}tools/help/am-logcat.html">logcat Monitor</a>
-      </li>
-
-      <li><a href="{@docRoot}tools/help/am-memory.html">Memory Monitor</a>
-      </li>
-
-      <li><a href="{@docRoot}tools/help/am-cpu.html">CPU Monitor</a>
-      </li>
-
-      <li><a href="{@docRoot}tools/help/am-gpu.html">GPU Monitor</a>
-      </li>
-
-      <li>
-        <a href="{@docRoot}tools/help/am-network.html">Network Monitor</a>
-      </li>
-    </ul>
-</ol>
-    <h2 id="switching">
-      Switching between Devices and Apps
-    </h2>
-
-    <p>
-      By default, Android Monitor displays data for your most recently run app. You can switch to
-      another device and app as needed. In addition to currently running apps, you can view
-      information about apps that are no longer running so you can continue to view any information
-      about them that you gathered previously.
-    </p>
-
-    <p>
-      At the top of the Android Monitor main window are two menus listing devices and processes. To
-      switch to another device, process, or both, follow these steps:
-    </p>
-
-    <ol>
-      <li>Select the device or emulator.
-      </li>
-
-    <p>
-      The Device menu lists the devices and emulators that are running or have run during your
-      current session. There are various status messages that can appear in the Device menu:
-    </p>
-
-    <ul>
-      <li>
-        <strong>DISCONNECTED</strong> - You closed an emulator or unplugged a device from the
-        computer.
-      </li>
-
-      <li>
-        <strong>UNAUTHORIZED</strong> - A device needs you to accept the incoming computer
-        connection. For example, if the connected device displays an <em>Allow USB Debugging</em>
-        dialog, click <strong>OK</strong> to allow the connection.
-      </li>
-
-      <li>
-        <strong>OFFLINE</strong> - Android Monitor can’t communicate with a device, even though it
-        has detected that device.
-      </li>
-    </ul>
-
-  <li>Select the process.
-  </li>
-</ol>
-
-<p>
-  The Process menu lists the processes that are running or have run during your current session. If
-  a process is no longer running, the menu displays a status of <strong>DEAD</strong>.
-</p>
-
-<h2 id="screencapture">
-  Taking a Screen Capture of the Device
-</h2>
-
-<p>
-  You can take a PNG screenshot of the display on a connected device or the emulator. You can use
-  the images for your marketing materials as well as for debugging, for example.
-</p>
-<p>
-  Follow these steps:
-</p>
-<ol>
-  <li>
-    <a href="{@docRoot}training/basics/firstapp/running-app.html">Run your
-    app</a> from within Android Studio.
-  </li>
-
-  <li>
-    <a href="#switching">Select the device and the process</a> in the Android Monitor
-    menus, if needed.
-  </li>
-
-  <li>Interact with the display on the device or emulator to stage the image you want.
-  </li>
-
-  <li>Click Screen Capture <img src="{@docRoot}images/tools/am-iscreencapture.png"
-    style="vertical-align:sub;margin:0;height:17px" alt="Screen Capture icon" /> in the
-    Android Monitor toolbar.
-  </li>
-  <p>The screenshot appears in a <em>Screenshot Editor</em> window.</p>
-
-  <li>Optionally change the image:
-    <ul>
-      <li>
-        <strong>Reload</strong> - Click to take a new screenshot.
-      </li>
-
-      <li>
-        <strong>Rotate</strong> - Click to rotate the image 90 degrees clockwise.
-      </li>
-
-      <li>
-        <strong>Frame Screenshot</strong> - Select this option and choose a device to add an image
-        of the device to the outside of the screenshot. Select <strong>Drop Shadow</strong>,
-        <strong>Screen Glare</strong>, or both to add these effects to your image.
-      </li>
-
-      <li>
-        <strong>Chessboard</strong> and <strong>Grid</strong> - Select an option to display these
-        behind your image.
-      </li>
-
-      <li>
-        <strong>Zoom In</strong>, <strong>Zoom Out</strong>, or <strong>Actual Size</strong> -
-        Click these options to get different perspectives of your image without changing the image
-        itself.
-      </li>
-    </ul>
-    </li>
-      <li>Click <strong>Save</strong> to save the image.
-      </li>
-</ol>
-
-<h2 id="video">
-  Recording a Video from the Screen
-</h2>
-
-<p>
-  Android Studio lets you record an MP4 video from your hardware device for a maximum of three
-  minutes. You can use the video for your marketing materials as well as for debugging, for
-  example.
-</p>
-<p>
-  Follow these steps:
-</p>
-<ol>
-  <li>
-    <a href="{@docRoot}training/basics/firstapp/running-app.html">Run your
-    app</a> from within Android Studio.
-  </li>
-
-  <li>
-    <a href="#switching">Select the device and the process</a> in the Android Monitor
-    menus, if needed.
-  </li>
-
-  <li>Interact with the display on the device or emulator to stage the start of the video.
-  </li>
-
-  <li>Click Screen Record <img src="{@docRoot}images/tools/am-ivideo.png" style="vertical-align:sub;margin:0;height:17px" alt="Screen Record icon" /> in the Android Monitor toolbar.
-  </li>
-  <p>The screenshot appears in a Screenshot Editor window.</p>
-
-  <li>In the <em>Screen Recorder Options</em> dialog, optionally change the recording options:
-  </li>
-<ul>
-  <li>
-    <strong>Bit Rate</strong> - Type a bit rate. The default is 4 Mbps.
-  </li>
-
-  <li>
-    <strong>Resolution</strong> - Type a width and height value in pixels. The value must be a
-    multiple of 16. The default is the resolution of the device.
-  </li>
-</ul>
-  <li>Click <strong>Start Recording</strong> to start the recording.
-  </li>
-
-  <li>Click <strong>Stop Recording</strong> to stop the recording.
-  </li>
-
-  <li>In the <em>Save As</em> dialog, save the MP4 file.
-  </li>
-
-  <li>In the <em>Screen Recorder</em> dialog, click one of the buttons to show the file location,
-  open the recording in a player, or to dismiss the dialog.
-  </li>
-</ol>
-
-<h2 id="sysinfo">
-  Examining System Information
-</h2>
-<p>
-  You can view <code>dumpsys</code> output from within Android Monitor. Follow these steps:
-</p>
-
-<ol>
-  <li>
-    <a href="{@docRoot}training/basics/firstapp/running-app.html">Run your
-    app</a> from within Android Studio.
-  </li>
-
-  <li>
-    <a href="#switching">Select the device and the process</a> in the Android Monitor
-    menus, if needed.
-  </li>
-
-  <li>Click System Information <img src="{@docRoot}images/tools/am-isysteminfo.png"
-    style="vertical-align:sub;margin:0;height:17px" alt="System Information icon" /> and then a
-    menu item in the Android Monitor
-  toolbar.
-  </li>
-
-<p>
-  The menu items display different types of <code><a href=
-  "https://source.android.com/devices/tech/debug/dumpsys.html">dumpsys</a></code> output:
-</p>
-
-<ul>
-  <li>
-    <strong>Activity Manager State</strong> - <code>dumpsys activity</code>
-  </li>
-
-  <li>
-    <strong>Package Information</strong> - <code>dumpsys package</code>
-  </li>
-
-  <li>
-    <strong>Memory Usage</strong> - <code><a href=
-    "{@docRoot}tools/debugging/debugging-memory.html#ViewingAllocations">dumpsys
-    meminfo</a></code>
-  </li>
-
-  <li>
-    <strong>Memory Use Over Time</strong> - <code><a href=
-    "http://android-developers.blogspot.com/2014/01/process-stats-understanding-how-your.html">dumpsys
-    procstats</a></code>
-  </li>
-
-  <li>
-    <strong>Graphics State</strong> - <code><a href=
-    "{@docRoot}training/testing/performance.html">dumpsys gfxinfo</a></code>
-  </li>
-</ul>
-
-<p>
-  The information appears in an editable text file in the Code Editor.
-</p>
-</ol>
 
-<h2 id="terminating">
-  Terminating the App
-</h2>
+<p>Android Monitor provides various tools that provide real-time information about your app. It
+  lets you capture data as your app runs and stores it in a file that you can analyze in various
+  viewers. You can also capture screen shots and videos of your app as it runs.</p>
 
-<p>
-  If you want to stop an app you’ve run from Android Studio, follow these steps:
-</p>
+<h2 id="logcat">Log Messages</h2>
 
-<ol>
-  <li>
-    <a href="#switching">Select the device and the process</a> in the Android Monitor
-    menus, if needed.
-  </li>
-
-  <li>Click Terminate Application <img src="{@docRoot}images/tools/am-iterminate.png"
-    style="vertical-align:sub;margin:0;height:17px" alt="Terminate App icon" />.
-  </li>
+<p>View log messages — in real time and historically — which is useful for debugging.</p>
 
+<div class="dynamic-grid">
+  <div class="resource-widget resource-flow-layout landing col-12"
+    data-query="collection:tools/help/log"
+    data-cardSizes="12x6"
+    data-maxResults="6">
+  </div>
+</div>
 
-<p>
-  The process status changes to <strong>DEAD</strong> in the Processes menu. The emulator or device
-  continues to run, but the app closes. Any running monitors in Android Monitor stop.
-</p>
-</ol>
-
-<h2 id="rearranging">
-  Rearranging Android Monitor Windows
-</h2>
-
-<p>
-  You can rearrange the Android Monitor windows for optimal viewing during your tests:
-</p>
-
-<ul>
-  <li>To reorder the monitors, move the tabs back and forth.
-  </li>
-
-  <li>To move a monitor to a standalone window, grab a tab and move it to a different location on
-  the screen. Or, select <img src="{@docRoot}images/tools/am-igear.png" style="vertical-align:sub;margin:0;height:17px" alt="Gear menu icon" /> &gt; <strong>Floating Mode</strong>.
-  </li>
 
+<h2 id="monitors">Performance Monitors</h2>
 
-  <li>To dock a standalone window, grab it and move it to the Android Monitor area. Or, select
-  <img src="{@docRoot}images/tools/am-igear.png" style="vertical-align:sub;margin:0;height:17px"
-  alt="Gear menu icon"> &gt; <strong>Floating Mode</strong> to deselect it.
-  </li>
+<p>Visualize the behavior and performance of your app.</p>
 
+<div class="dynamic-grid">
+  <div class="resource-widget resource-flow-layout landing col-12"
+    data-query="collection:tools/help/monitor"
+    data-cardSizes="9x6"
+    data-maxResults="6">
+  </div>
+</div>
 
-  <li>To combine two monitor displays together, grab a tab and move it onto another monitor.
-  </li>
+<h2 id="data">Data Analysis</h2>
 
-  <li>To hide a monitor, click the <img src="{@docRoot}images/tools/am-ihide.png" style="vertical-align:sub;margin:0;height:17px" alt="Hide icon" /> icon. To make it reappear, click the icon of
-  the monitor on the far right of the row of tabs.
-  </li>
-</ul>
+<p>Android Monitor lets you capture various types of data about your app while it's running and
+  stores it in a file, which you can access whenever is convenient.
+  It lists these files in the <em>Captures</em> window.</p>
 
-<h2 id="removing">
-  Removing an App from a Device
-</h2>
+<div class="dynamic-grid">
+  <div class="resource-widget resource-flow-layout landing col-12"
+    data-query="collection:tools/help/data"
+    data-cardSizes="9x6"
+    data-maxResults="6">
+  </div>
+</div>
 
-<p>
-  To remove an app from a device you use for development, use the normal uninstall procedure on the
-  device.
-</p>
+<h2 id="shots">Screen and Video Captures</h2>
 
-<p>
-  If you run a new version of an app from Android Studio that’s been already installed on a
-  hardware device, the device displays an <em>Application Installation Failed</em> dialog. Click
-  <strong>OK</strong> to install the new version of the app.
-</p>
+<p>Create screen captures and videos of your app to help with marketing and debugging.
+  </p>
 
+<div class="dynamic-grid">
+  <div class="resource-widget resource-flow-layout landing col-12"
+    data-query="collection:tools/help/shot"
+    data-cardSizes="9x3"
+    data-maxResults="2">
+  </div>
+</div>
 
+<h2 id="getstarted">Get Started</h2>
+<p>To begin using Android Monitor, start with <a href=
+  "{@docRoot}tools/help/am-basics.html">Android Monitor Basics</a>.
+  </p>
 
 
diff --git a/docs/html/tools/help/thumbnails/am-androidmon2.png b/docs/html/tools/help/thumbnails/am-androidmon2.png
new file mode 100644 (file)
index 0000000..a4a7571
Binary files /dev/null and b/docs/html/tools/help/thumbnails/am-androidmon2.png differ
diff --git a/docs/html/tools/help/thumbnails/am-cpumon.png b/docs/html/tools/help/thumbnails/am-cpumon.png
new file mode 100644 (file)
index 0000000..59908c8
Binary files /dev/null and b/docs/html/tools/help/thumbnails/am-cpumon.png differ
diff --git a/docs/html/tools/help/thumbnails/am-cpumon2.png b/docs/html/tools/help/thumbnails/am-cpumon2.png
new file mode 100644 (file)
index 0000000..6ac6e02
Binary files /dev/null and b/docs/html/tools/help/thumbnails/am-cpumon2.png differ
diff --git a/docs/html/tools/help/thumbnails/am-gc2.png b/docs/html/tools/help/thumbnails/am-gc2.png
new file mode 100644 (file)
index 0000000..a5e8b6e
Binary files /dev/null and b/docs/html/tools/help/thumbnails/am-gc2.png differ
diff --git a/docs/html/tools/help/thumbnails/am-gpumon.png b/docs/html/tools/help/thumbnails/am-gpumon.png
new file mode 100644 (file)
index 0000000..a414fe5
Binary files /dev/null and b/docs/html/tools/help/thumbnails/am-gpumon.png differ
diff --git a/docs/html/tools/help/thumbnails/am-gpumon2.png b/docs/html/tools/help/thumbnails/am-gpumon2.png
new file mode 100644 (file)
index 0000000..5cf51d9
Binary files /dev/null and b/docs/html/tools/help/thumbnails/am-gpumon2.png differ
diff --git a/docs/html/tools/help/thumbnails/am-logcatmon2.png b/docs/html/tools/help/thumbnails/am-logcatmon2.png
new file mode 100644 (file)
index 0000000..5635935
Binary files /dev/null and b/docs/html/tools/help/thumbnails/am-logcatmon2.png differ
diff --git a/docs/html/tools/help/thumbnails/am-memorymon.png b/docs/html/tools/help/thumbnails/am-memorymon.png
new file mode 100644 (file)
index 0000000..0fefb27
Binary files /dev/null and b/docs/html/tools/help/thumbnails/am-memorymon.png differ
diff --git a/docs/html/tools/help/thumbnails/am-networkmon.png b/docs/html/tools/help/thumbnails/am-networkmon.png
new file mode 100644 (file)
index 0000000..db9c647
Binary files /dev/null and b/docs/html/tools/help/thumbnails/am-networkmon.png differ
diff --git a/docs/html/tools/help/thumbnails/am_alloctracker.png b/docs/html/tools/help/thumbnails/am_alloctracker.png
new file mode 100644 (file)
index 0000000..b94713d
Binary files /dev/null and b/docs/html/tools/help/thumbnails/am_alloctracker.png differ
diff --git a/docs/html/tools/help/thumbnails/am_androidmon.png b/docs/html/tools/help/thumbnails/am_androidmon.png
new file mode 100644 (file)
index 0000000..6b05230
Binary files /dev/null and b/docs/html/tools/help/thumbnails/am_androidmon.png differ
diff --git a/docs/html/tools/help/thumbnails/am_cpumon.png b/docs/html/tools/help/thumbnails/am_cpumon.png
new file mode 100644 (file)
index 0000000..c8c0415
Binary files /dev/null and b/docs/html/tools/help/thumbnails/am_cpumon.png differ
diff --git a/docs/html/tools/help/thumbnails/am_gpumon.png b/docs/html/tools/help/thumbnails/am_gpumon.png
new file mode 100644 (file)
index 0000000..e453e7d
Binary files /dev/null and b/docs/html/tools/help/thumbnails/am_gpumon.png differ
diff --git a/docs/html/tools/help/thumbnails/am_hprofviewer.png b/docs/html/tools/help/thumbnails/am_hprofviewer.png
new file mode 100644 (file)
index 0000000..342590f
Binary files /dev/null and b/docs/html/tools/help/thumbnails/am_hprofviewer.png differ
diff --git a/docs/html/tools/help/thumbnails/am_iscreencapture.png b/docs/html/tools/help/thumbnails/am_iscreencapture.png
new file mode 100644 (file)
index 0000000..68135a7
Binary files /dev/null and b/docs/html/tools/help/thumbnails/am_iscreencapture.png differ
diff --git a/docs/html/tools/help/thumbnails/am_isysteminfo.png b/docs/html/tools/help/thumbnails/am_isysteminfo.png
new file mode 100644 (file)
index 0000000..37d77db
Binary files /dev/null and b/docs/html/tools/help/thumbnails/am_isysteminfo.png differ
diff --git a/docs/html/tools/help/thumbnails/am_ivideo.png b/docs/html/tools/help/thumbnails/am_ivideo.png
new file mode 100644 (file)
index 0000000..901eaf1
Binary files /dev/null and b/docs/html/tools/help/thumbnails/am_ivideo.png differ
diff --git a/docs/html/tools/help/thumbnails/am_logcatmon.png b/docs/html/tools/help/thumbnails/am_logcatmon.png
new file mode 100644 (file)
index 0000000..ca7063c
Binary files /dev/null and b/docs/html/tools/help/thumbnails/am_logcatmon.png differ
diff --git a/docs/html/tools/help/thumbnails/am_methodtrace.png b/docs/html/tools/help/thumbnails/am_methodtrace.png
new file mode 100644 (file)
index 0000000..8d5ca4e
Binary files /dev/null and b/docs/html/tools/help/thumbnails/am_methodtrace.png differ
diff --git a/docs/html/tools/help/thumbnails/am_networkmon2.png b/docs/html/tools/help/thumbnails/am_networkmon2.png
new file mode 100644 (file)
index 0000000..f55f853
Binary files /dev/null and b/docs/html/tools/help/thumbnails/am_networkmon2.png differ
diff --git a/docs/html/tools/help/thumbnails/am_screenshot.png b/docs/html/tools/help/thumbnails/am_screenshot.png
new file mode 100644 (file)
index 0000000..66afff9
Binary files /dev/null and b/docs/html/tools/help/thumbnails/am_screenshot.png differ
diff --git a/docs/html/tools/help/thumbnails/am_sysinfo.png b/docs/html/tools/help/thumbnails/am_sysinfo.png
new file mode 100644 (file)
index 0000000..9b5cd17
Binary files /dev/null and b/docs/html/tools/help/thumbnails/am_sysinfo.png differ
diff --git a/docs/html/tools/help/thumbnails/am_video.png b/docs/html/tools/help/thumbnails/am_video.png
new file mode 100644 (file)
index 0000000..209cb0c
Binary files /dev/null and b/docs/html/tools/help/thumbnails/am_video.png differ
index c390523..73d4ff3 100644 (file)
         <div class="nav-section-header">
           <a href="<?cs var:toroot ?>tools/help/android-monitor.html">Android Monitor</a></div>
         <ul>
+          <li><a href="<?cs var:toroot ?>tools/help/am-basics.html"><span
+            class="en">Android Monitor Basics</span></a>
+          </li>
           <li><a href="<?cs var:toroot ?>tools/help/am-logcat.html"><span
             class="en">logcat Monitor</span></a>
           </li>
           <li><a href="<?cs var:toroot ?>tools/help/am-network.html"><span
             class="en">Network Monitor</span></a>
           </li>
+            <li><a href="<?cs var:toroot ?>tools/help/am-hprof.html"><span
+            class="en">HPROF Viewer and Analyzer</span></a>
+           </li>
+            <li><a href="<?cs var:toroot ?>tools/help/am-allocation.html"><span
+            class="en">Allocation Tracker</span></a>
+             </li>
+            <li><a href="<?cs var:toroot ?>tools/help/am-methodtrace.html"><span
+            class="en">Method Trace</span></a>
+            </li>
+            <li><a href="<?cs var:toroot ?>tools/help/am-sysinfo.html"><span
+            class="en">System Information</span></a>
+            </li>
+            <li><a href="<?cs var:toroot ?>tools/help/am-screenshot.html"><span
+            class="en">Screen Capture</span></a>
+            </li>
+            <li><a href="<?cs var:toroot ?>tools/help/am-video.html"><span
+            class="en">Video Capture</span></a>
+            </li>
+          </li>
         </ul>
       </li>
 
@@ -217,6 +239,7 @@ class="en">Tools Help</span></a></div>
       </li>
 
       <li><a href="<?cs var:toroot ?>tools/help/hprof-conv.html">hprof-conv</a></li>
+      <li><a href="<?cs var:toroot ?>tools/help/image-asset-studio.html">Image Asset Studio</a></li>
       <li><a href="<?cs var:toroot ?>tools/help/jobb.html">jobb</a></li>
       <li><a href="<?cs var:toroot ?>tools/help/lint.html">lint</span></a></li>
       <li class="nav-section">