1 2 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> 3 <html><head><title>Python: module telemetry.internal.platform.android_platform_backend</title> 4 <meta charset="utf-8"> 5 </head><body bgcolor="#f0f0f8"> 6 7 <table width="100%" cellspacing=0 cellpadding=2 border=0 summary="heading"> 8 <tr bgcolor="#7799ee"> 9 <td valign=bottom> <br> 10 <font color="#ffffff" face="helvetica, arial"> <br><big><big><strong><a href="telemetry.html"><font color="#ffffff">telemetry</font></a>.<a href="telemetry.internal.html"><font color="#ffffff">internal</font></a>.<a href="telemetry.internal.platform.html"><font color="#ffffff">platform</font></a>.android_platform_backend</strong></big></big></font></td 11 ><td align=right valign=bottom 12 ><font color="#ffffff" face="helvetica, arial"><a href=".">index</a><br><a href="../telemetry/internal/platform/android_platform_backend.py">telemetry/internal/platform/android_platform_backend.py</a></font></td></tr></table> 13 <p><tt># Copyright 2013 The Chromium Authors. All rights reserved.<br> 14 # Use of this source code is governed by a BSD-style license that can be<br> 15 # found in the LICENSE file.</tt></p> 16 <p> 17 <table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section"> 18 <tr bgcolor="#aa55cc"> 19 <td colspan=3 valign=bottom> <br> 20 <font color="#ffffff" face="helvetica, arial"><big><strong>Modules</strong></big></font></td></tr> 21 22 <tr><td bgcolor="#aa55cc"><tt> </tt></td><td> </td> 23 <td width="100%"><table width="100%" summary="list"><tr><td width="25%" valign=top><a href="adb_install_cert.html">adb_install_cert</a><br> 24 <a href="telemetry.internal.platform.android_device.html">telemetry.internal.platform.android_device</a><br> 25 <a href="telemetry.internal.platform.power_monitor.android_dumpsys_power_monitor.html">telemetry.internal.platform.power_monitor.android_dumpsys_power_monitor</a><br> 26 <a href="telemetry.internal.forwarders.android_forwarder.html">telemetry.internal.forwarders.android_forwarder</a><br> 27 <a href="telemetry.internal.platform.power_monitor.android_fuelgauge_power_monitor.html">telemetry.internal.platform.power_monitor.android_fuelgauge_power_monitor</a><br> 28 <a href="telemetry.core.android_platform.html">telemetry.core.android_platform</a><br> 29 <a href="telemetry.internal.platform.profiler.android_prebuilt_profiler_helper.html">telemetry.internal.platform.profiler.android_prebuilt_profiler_helper</a><br> 30 <a href="telemetry.internal.platform.power_monitor.android_temperature_monitor.html">telemetry.internal.platform.power_monitor.android_temperature_monitor</a><br> 31 <a href="devil.android.battery_utils.html">devil.android.battery_utils</a><br> 32 <a href="telemetry.internal.util.binary_manager.html">telemetry.internal.util.binary_manager</a><br> 33 </td><td width="25%" valign=top><a href="devil.android.perf.cache_control.html">devil.android.perf.cache_control</a><br> 34 <a href="certutils.html">certutils</a><br> 35 <a href="pylib.constants.html">pylib.constants</a><br> 36 <a href="telemetry.decorators.html">telemetry.decorators</a><br> 37 <a href="devil.android.device_errors.html">devil.android.device_errors</a><br> 38 <a href="devil.android.device_utils.html">devil.android.device_utils</a><br> 39 <a href="telemetry.internal.util.exception_formatter.html">telemetry.internal.util.exception_formatter</a><br> 40 <a href="telemetry.core.exceptions.html">telemetry.core.exceptions</a><br> 41 <a href="telemetry.internal.util.external_modules.html">telemetry.internal.util.external_modules</a><br> 42 <a href="telemetry.internal.platform.linux_based_platform_backend.html">telemetry.internal.platform.linux_based_platform_backend</a><br> 43 </td><td width="25%" valign=top><a href="logging.html">logging</a><br> 44 <a href="telemetry.internal.platform.power_monitor.monsoon_power_monitor.html">telemetry.internal.platform.power_monitor.monsoon_power_monitor</a><br> 45 <a href="os.html">os</a><br> 46 <a href="devil.android.perf.perf_control.html">devil.android.perf.perf_control</a><br> 47 <a href="telemetry.core.platform.html">telemetry.core.platform</a><br> 48 <a href="platformsettings.html">platformsettings</a><br> 49 <a href="telemetry.internal.platform.power_monitor.power_monitor_controller.html">telemetry.internal.platform.power_monitor.power_monitor_controller</a><br> 50 <a href="psutil.html">psutil</a><br> 51 <a href="re.html">re</a><br> 52 <a href="pylib.screenshot.html">pylib.screenshot</a><br> 53 </td><td width="25%" valign=top><a href="shutil.html">shutil</a><br> 54 <a href="stat.html">stat</a><br> 55 <a href="subprocess.html">subprocess</a><br> 56 <a href="devil.android.perf.surface_stats_collector.html">devil.android.perf.surface_stats_collector</a><br> 57 <a href="telemetry.internal.platform.power_monitor.sysfs_power_monitor.html">telemetry.internal.platform.power_monitor.sysfs_power_monitor</a><br> 58 <a href="tempfile.html">tempfile</a><br> 59 <a href="devil.android.perf.thermal_throttle.html">devil.android.perf.thermal_throttle</a><br> 60 <a href="telemetry.core.util.html">telemetry.core.util</a><br> 61 <a href="devil.android.sdk.version_codes.html">devil.android.sdk.version_codes</a><br> 62 <a href="telemetry.internal.image_processing.video.html">telemetry.internal.image_processing.video</a><br> 63 </td></tr></table></td></tr></table><p> 64 <table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section"> 65 <tr bgcolor="#ee77aa"> 66 <td colspan=3 valign=bottom> <br> 67 <font color="#ffffff" face="helvetica, arial"><big><strong>Classes</strong></big></font></td></tr> 68 69 <tr><td bgcolor="#ee77aa"><tt> </tt></td><td> </td> 70 <td width="100%"><dl> 71 <dt><font face="helvetica, arial"><a href="telemetry.internal.platform.linux_based_platform_backend.html#LinuxBasedPlatformBackend">telemetry.internal.platform.linux_based_platform_backend.LinuxBasedPlatformBackend</a>(<a href="telemetry.internal.platform.platform_backend.html#PlatformBackend">telemetry.internal.platform.platform_backend.PlatformBackend</a>) 72 </font></dt><dd> 73 <dl> 74 <dt><font face="helvetica, arial"><a href="telemetry.internal.platform.android_platform_backend.html#AndroidPlatformBackend">AndroidPlatformBackend</a> 75 </font></dt></dl> 76 </dd> 77 </dl> 78 <p> 79 <table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section"> 80 <tr bgcolor="#ffc8d8"> 81 <td colspan=3 valign=bottom> <br> 82 <font color="#000000" face="helvetica, arial"><a name="AndroidPlatformBackend">class <strong>AndroidPlatformBackend</strong></a>(<a href="telemetry.internal.platform.linux_based_platform_backend.html#LinuxBasedPlatformBackend">telemetry.internal.platform.linux_based_platform_backend.LinuxBasedPlatformBackend</a>)</font></td></tr> 83 84 <tr><td bgcolor="#ffc8d8"><tt> </tt></td><td> </td> 85 <td width="100%"><dl><dt>Method resolution order:</dt> 86 <dd><a href="telemetry.internal.platform.android_platform_backend.html#AndroidPlatformBackend">AndroidPlatformBackend</a></dd> 87 <dd><a href="telemetry.internal.platform.linux_based_platform_backend.html#LinuxBasedPlatformBackend">telemetry.internal.platform.linux_based_platform_backend.LinuxBasedPlatformBackend</a></dd> 88 <dd><a href="telemetry.internal.platform.platform_backend.html#PlatformBackend">telemetry.internal.platform.platform_backend.PlatformBackend</a></dd> 89 <dd><a href="__builtin__.html#object">__builtin__.object</a></dd> 90 </dl> 91 <hr> 92 Methods defined here:<br> 93 <dl><dt><a name="AndroidPlatformBackend-CanCaptureVideo"><strong>CanCaptureVideo</strong></a>(*args, **kwargs)</dt></dl> 94 95 <dl><dt><a name="AndroidPlatformBackend-CanFlushIndividualFilesFromSystemCache"><strong>CanFlushIndividualFilesFromSystemCache</strong></a>(self)</dt></dl> 96 97 <dl><dt><a name="AndroidPlatformBackend-CanLaunchApplication"><strong>CanLaunchApplication</strong></a>(self, application)</dt></dl> 98 99 <dl><dt><a name="AndroidPlatformBackend-CanMonitorNetworkData"><strong>CanMonitorNetworkData</strong></a>(self)</dt></dl> 100 101 <dl><dt><a name="AndroidPlatformBackend-CanMonitorPower"><strong>CanMonitorPower</strong></a>(self)</dt></dl> 102 103 <dl><dt><a name="AndroidPlatformBackend-CanMonitorThermalThrottling"><strong>CanMonitorThermalThrottling</strong></a>(self)</dt></dl> 104 105 <dl><dt><a name="AndroidPlatformBackend-CanTakeScreenshot"><strong>CanTakeScreenshot</strong></a>(self)</dt></dl> 106 107 <dl><dt><a name="AndroidPlatformBackend-DismissCrashDialogIfNeeded"><strong>DismissCrashDialogIfNeeded</strong></a>(self)</dt><dd><tt>Dismiss any error dialogs.<br> 108 <br> 109 Limit the number in case we have an error loop or we are failing to dismiss.</tt></dd></dl> 110 111 <dl><dt><a name="AndroidPlatformBackend-FlushDnsCache"><strong>FlushDnsCache</strong></a>(self)</dt></dl> 112 113 <dl><dt><a name="AndroidPlatformBackend-FlushEntireSystemCache"><strong>FlushEntireSystemCache</strong></a>(self)</dt></dl> 114 115 <dl><dt><a name="AndroidPlatformBackend-FlushSystemCacheForDirectory"><strong>FlushSystemCacheForDirectory</strong></a>(self, directory)</dt></dl> 116 117 <dl><dt><a name="AndroidPlatformBackend-ForwardHostToDevice"><strong>ForwardHostToDevice</strong></a>(self, host_port, device_port)</dt></dl> 118 119 <dl><dt><a name="AndroidPlatformBackend-GetArchName"><strong>GetArchName</strong></a>(*args, **kwargs)</dt></dl> 120 121 <dl><dt><a name="AndroidPlatformBackend-GetChildPids"><strong>GetChildPids</strong></a>(self, pid)</dt></dl> 122 123 <dl><dt><a name="AndroidPlatformBackend-GetCommandLine"><strong>GetCommandLine</strong></a>(*args, **kwargs)</dt></dl> 124 125 <dl><dt><a name="AndroidPlatformBackend-GetCpuStats"><strong>GetCpuStats</strong></a>(self, pid)</dt></dl> 126 127 <dl><dt><a name="AndroidPlatformBackend-GetCpuTimestamp"><strong>GetCpuTimestamp</strong></a>(self)</dt></dl> 128 129 <dl><dt><a name="AndroidPlatformBackend-GetDeviceTypeName"><strong>GetDeviceTypeName</strong></a>(self)</dt></dl> 130 131 <dl><dt><a name="AndroidPlatformBackend-GetFileContents"><strong>GetFileContents</strong></a>(self, fname)</dt></dl> 132 133 <dl><dt><a name="AndroidPlatformBackend-GetMemoryStats"><strong>GetMemoryStats</strong></a>(self, pid)</dt></dl> 134 135 <dl><dt><a name="AndroidPlatformBackend-GetNetworkData"><strong>GetNetworkData</strong></a>(self, browser)</dt></dl> 136 137 <dl><dt><a name="AndroidPlatformBackend-GetOSName"><strong>GetOSName</strong></a>(self)</dt></dl> 138 139 <dl><dt><a name="AndroidPlatformBackend-GetOSVersionName"><strong>GetOSVersionName</strong></a>(*args, **kwargs)</dt></dl> 140 141 <dl><dt><a name="AndroidPlatformBackend-GetPsOutput"><strong>GetPsOutput</strong></a>(self, columns, pid<font color="#909090">=None</font>)</dt></dl> 142 143 <dl><dt><a name="AndroidPlatformBackend-GetStackTrace"><strong>GetStackTrace</strong></a>(self, target_arch)</dt><dd><tt>Returns stack trace.<br> 144 <br> 145 The stack trace consists of raw logcat dump, logcat dump with symbols,<br> 146 and stack info from tomstone files.<br> 147 <br> 148 Args:<br> 149 target_arch: String specifying device architecture (eg. arm, arm64, mips,<br> 150 x86, x86_64)</tt></dd></dl> 151 152 <dl><dt><a name="AndroidPlatformBackend-GetStandardOutput"><strong>GetStandardOutput</strong></a>(self, number_of_lines<font color="#909090">=500</font>)</dt><dd><tt>Returns most recent lines of logcat dump.<br> 153 <br> 154 Args:<br> 155 number_of_lines: Number of lines of log to return.</tt></dd></dl> 156 157 <dl><dt><a name="AndroidPlatformBackend-HasBeenThermallyThrottled"><strong>HasBeenThermallyThrottled</strong></a>(self)</dt></dl> 158 159 <dl><dt><a name="AndroidPlatformBackend-InstallApplication"><strong>InstallApplication</strong></a>(self, application)</dt></dl> 160 161 <dl><dt><a name="AndroidPlatformBackend-InstallTestCa"><strong>InstallTestCa</strong></a>(self)</dt><dd><tt>Install a randomly generated root CA on the android device.<br> 162 <br> 163 This allows transparent HTTPS testing with WPR server without need<br> 164 to tweak application network stack.</tt></dd></dl> 165 166 <dl><dt><a name="AndroidPlatformBackend-IsAppRunning"><strong>IsAppRunning</strong></a>(self, process_name)</dt><dd><tt>Determine if the given process is running.<br> 167 <br> 168 Args:<br> 169 process_name: The full package name string of the process.</tt></dd></dl> 170 171 <dl><dt><a name="AndroidPlatformBackend-IsApplicationRunning"><strong>IsApplicationRunning</strong></a>(self, application)</dt></dl> 172 173 <dl><dt><a name="AndroidPlatformBackend-IsDisplayTracingSupported"><strong>IsDisplayTracingSupported</strong></a>(self)</dt></dl> 174 175 <dl><dt><a name="AndroidPlatformBackend-IsScreenLocked"><strong>IsScreenLocked</strong></a>(self)</dt><dd><tt>Determines if device screen is locked.</tt></dd></dl> 176 177 <dl><dt><a name="AndroidPlatformBackend-IsScreenOn"><strong>IsScreenOn</strong></a>(self)</dt><dd><tt>Determines if device screen is on.</tt></dd></dl> 178 179 <dl><dt><a name="AndroidPlatformBackend-IsThermallyThrottled"><strong>IsThermallyThrottled</strong></a>(self)</dt></dl> 180 181 <dl><dt><a name="AndroidPlatformBackend-KillApplication"><strong>KillApplication</strong></a>(self, application)</dt><dd><tt>Kill the given |application|.<br> 182 <br> 183 Might be used instead of ForceStop for efficiency reasons.<br> 184 <br> 185 Args:<br> 186 application: The full package name string of the application to kill.</tt></dd></dl> 187 188 <dl><dt><a name="AndroidPlatformBackend-LaunchApplication"><strong>LaunchApplication</strong></a>(self, application, parameters<font color="#909090">=None</font>, elevate_privilege<font color="#909090">=False</font>)</dt><dd><tt>Launches the given |application| with a list of |parameters| on the OS.<br> 189 <br> 190 Args:<br> 191 application: The full package name string of the application to launch.<br> 192 parameters: A list of parameters to be passed to the ActivityManager.<br> 193 elevate_privilege: Currently unimplemented on Android.</tt></dd></dl> 194 195 <dl><dt><a name="AndroidPlatformBackend-PathExists"><strong>PathExists</strong></a>(self, device_path, timeout<font color="#909090">=None</font>, retries<font color="#909090">=None</font>)</dt><dd><tt>Return whether the given path exists on the device.<br> 196 This method is the same as<br> 197 devil.android.device_utils.DeviceUtils.PathExists.</tt></dd></dl> 198 199 <dl><dt><a name="AndroidPlatformBackend-PullProfile"><strong>PullProfile</strong></a>(self, package, output_profile_path)</dt><dd><tt>Copy application profile from device to host machine.<br> 200 <br> 201 Args:<br> 202 package: The full package name string of the application for which the<br> 203 profile is to be copied.<br> 204 output_profile_dir: Location where profile to be stored on host machine.</tt></dd></dl> 205 206 <dl><dt><a name="AndroidPlatformBackend-PurgeUnpinnedMemory"><strong>PurgeUnpinnedMemory</strong></a>(self)</dt><dd><tt>Purges the unpinned ashmem memory for the whole system.<br> 207 <br> 208 This can be used to make memory measurements more stable. Requires root.</tt></dd></dl> 209 210 <dl><dt><a name="AndroidPlatformBackend-PushProfile"><strong>PushProfile</strong></a>(self, package, new_profile_dir)</dt><dd><tt>Replace application profile with files found on host machine.<br> 211 <br> 212 Pushing the profile is slow, so we don't want to do it every time.<br> 213 Avoid this by pushing to a safe location using PushChangedFiles, and<br> 214 then copying into the correct location on each test run.<br> 215 <br> 216 Args:<br> 217 package: The full package name string of the application for which the<br> 218 profile is to be updated.<br> 219 new_profile_dir: Location where profile to be pushed is stored on the<br> 220 host machine.</tt></dd></dl> 221 222 <dl><dt><a name="AndroidPlatformBackend-RemoveProfile"><strong>RemoveProfile</strong></a>(self, package, ignore_list)</dt><dd><tt>Delete application profile on device.<br> 223 <br> 224 Args:<br> 225 package: The full package name string of the application for which the<br> 226 profile is to be deleted.<br> 227 ignore_list: List of files to keep.</tt></dd></dl> 228 229 <dl><dt><a name="AndroidPlatformBackend-RemoveTestCa"><strong>RemoveTestCa</strong></a>(self)</dt><dd><tt>Remove root CA generated by previous call to <a href="#AndroidPlatformBackend-InstallTestCa">InstallTestCa</a>().<br> 230 <br> 231 Removes the test root certificate from both the device and host machine.</tt></dd></dl> 232 233 <dl><dt><a name="AndroidPlatformBackend-RunCommand"><strong>RunCommand</strong></a>(self, command)</dt></dl> 234 235 <dl><dt><a name="AndroidPlatformBackend-SetDebugApp"><strong>SetDebugApp</strong></a>(self, package)</dt><dd><tt>Set application to debugging.<br> 236 <br> 237 Args:<br> 238 package: The full package name string of the application.</tt></dd></dl> 239 240 <dl><dt><a name="AndroidPlatformBackend-SetFullPerformanceModeEnabled"><strong>SetFullPerformanceModeEnabled</strong></a>(self, enabled)</dt></dl> 241 242 <dl><dt><a name="AndroidPlatformBackend-SetGraphicsMemoryTrackingEnabled"><strong>SetGraphicsMemoryTrackingEnabled</strong></a>(self, enabled)</dt></dl> 243 244 <dl><dt><a name="AndroidPlatformBackend-SetRelaxSslCheck"><strong>SetRelaxSslCheck</strong></a>(self, value)</dt></dl> 245 246 <dl><dt><a name="AndroidPlatformBackend-StartDisplayTracing"><strong>StartDisplayTracing</strong></a>(self)</dt></dl> 247 248 <dl><dt><a name="AndroidPlatformBackend-StartMonitoringPower"><strong>StartMonitoringPower</strong></a>(self, browser)</dt></dl> 249 250 <dl><dt><a name="AndroidPlatformBackend-StartVideoCapture"><strong>StartVideoCapture</strong></a>(self, min_bitrate_mbps)</dt><dd><tt>Starts the video capture at specified bitrate.</tt></dd></dl> 251 252 <dl><dt><a name="AndroidPlatformBackend-StopApplication"><strong>StopApplication</strong></a>(self, application)</dt><dd><tt>Stop the given |application|.<br> 253 <br> 254 Args:<br> 255 application: The full package name string of the application to stop.</tt></dd></dl> 256 257 <dl><dt><a name="AndroidPlatformBackend-StopDisplayTracing"><strong>StopDisplayTracing</strong></a>(self)</dt></dl> 258 259 <dl><dt><a name="AndroidPlatformBackend-StopForwardingHost"><strong>StopForwardingHost</strong></a>(self, host_port)</dt></dl> 260 261 <dl><dt><a name="AndroidPlatformBackend-StopMonitoringPower"><strong>StopMonitoringPower</strong></a>(self)</dt></dl> 262 263 <dl><dt><a name="AndroidPlatformBackend-StopVideoCapture"><strong>StopVideoCapture</strong></a>(self)</dt></dl> 264 265 <dl><dt><a name="AndroidPlatformBackend-TakeScreenshot"><strong>TakeScreenshot</strong></a>(self, file_path)</dt></dl> 266 267 <dl><dt><a name="AndroidPlatformBackend-__init__"><strong>__init__</strong></a>(self, device, finder_options)</dt></dl> 268 269 <hr> 270 Class methods defined here:<br> 271 <dl><dt><a name="AndroidPlatformBackend-CreatePlatformForDevice"><strong>CreatePlatformForDevice</strong></a>(cls, device, finder_options)<font color="#909090"><font face="helvetica, arial"> from <a href="__builtin__.html#type">__builtin__.type</a></font></font></dt></dl> 272 273 <dl><dt><a name="AndroidPlatformBackend-SupportsDevice"><strong>SupportsDevice</strong></a>(cls, device)<font color="#909090"><font face="helvetica, arial"> from <a href="__builtin__.html#type">__builtin__.type</a></font></font></dt></dl> 274 275 <hr> 276 Static methods defined here:<br> 277 <dl><dt><a name="AndroidPlatformBackend-ParseCStateSample"><strong>ParseCStateSample</strong></a>(sample)</dt></dl> 278 279 <hr> 280 Data descriptors defined here:<br> 281 <dl><dt><strong>device</strong></dt> 282 </dl> 283 <dl><dt><strong>forwarder_factory</strong></dt> 284 </dl> 285 <dl><dt><strong>is_test_ca_installed</strong></dt> 286 </dl> 287 <dl><dt><strong>is_video_capture_running</strong></dt> 288 </dl> 289 <dl><dt><strong>log_file_path</strong></dt> 290 </dl> 291 <dl><dt><strong>use_rndis_forwarder</strong></dt> 292 </dl> 293 <dl><dt><strong>wpr_ca_cert_path</strong></dt> 294 <dd><tt>Path to root certificate installed on browser (or None).<br> 295 <br> 296 If this is set, web page replay will use it to sign HTTPS responses.</tt></dd> 297 </dl> 298 <hr> 299 Methods inherited from <a href="telemetry.internal.platform.linux_based_platform_backend.html#LinuxBasedPlatformBackend">telemetry.internal.platform.linux_based_platform_backend.LinuxBasedPlatformBackend</a>:<br> 300 <dl><dt><a name="AndroidPlatformBackend-GetClockTicks"><strong>GetClockTicks</strong></a>(*args, **kwargs)</dt><dd><tt>Returns the number of clock ticks per second.<br> 301 <br> 302 The proper way is to call os.sysconf('SC_CLK_TCK') but that is not easy to<br> 303 do on Android/CrOS. In practice, nearly all Linux machines have a USER_HZ<br> 304 of 100, so just return that.</tt></dd></dl> 305 306 <dl><dt><a name="AndroidPlatformBackend-GetSystemCommitCharge"><strong>GetSystemCommitCharge</strong></a>(self)</dt><dd><tt># Get the commit charge in kB.</tt></dd></dl> 307 308 <dl><dt><a name="AndroidPlatformBackend-GetSystemTotalPhysicalMemory"><strong>GetSystemTotalPhysicalMemory</strong></a>(*args, **kwargs)</dt></dl> 309 310 <hr> 311 Methods inherited from <a href="telemetry.internal.platform.platform_backend.html#PlatformBackend">telemetry.internal.platform.platform_backend.PlatformBackend</a>:<br> 312 <dl><dt><a name="AndroidPlatformBackend-CanMeasurePerApplicationPower"><strong>CanMeasurePerApplicationPower</strong></a>(self)</dt></dl> 313 314 <dl><dt><a name="AndroidPlatformBackend-CooperativelyShutdown"><strong>CooperativelyShutdown</strong></a>(self, proc, app_name)</dt><dd><tt>Cooperatively shut down the given process from subprocess.Popen.<br> 315 <br> 316 Currently this is only implemented on Windows. See<br> 317 crbug.com/424024 for background on why it was added.<br> 318 <br> 319 Args:<br> 320 proc: a process object returned from subprocess.Popen.<br> 321 app_name: on Windows, is the prefix of the application's window<br> 322 class name that should be searched for. This helps ensure<br> 323 that only the application's windows are closed.<br> 324 <br> 325 Returns True if it is believed the attempt succeeded.</tt></dd></dl> 326 327 <dl><dt><a name="AndroidPlatformBackend-DidCreateBrowser"><strong>DidCreateBrowser</strong></a>(self, browser, browser_backend)</dt></dl> 328 329 <dl><dt><a name="AndroidPlatformBackend-DidStartBrowser"><strong>DidStartBrowser</strong></a>(self, browser, browser_backend)</dt></dl> 330 331 <dl><dt><a name="AndroidPlatformBackend-GetRemotePort"><strong>GetRemotePort</strong></a>(self, port)</dt></dl> 332 333 <dl><dt><a name="AndroidPlatformBackend-InitPlatformBackend"><strong>InitPlatformBackend</strong></a>(self)</dt></dl> 334 335 <dl><dt><a name="AndroidPlatformBackend-IsCooperativeShutdownSupported"><strong>IsCooperativeShutdownSupported</strong></a>(self)</dt><dd><tt>Indicates whether CooperativelyShutdown, below, is supported.<br> 336 It is not necessary to implement it on all platforms.</tt></dd></dl> 337 338 <dl><dt><a name="AndroidPlatformBackend-ReadMsr"><strong>ReadMsr</strong></a>(self, msr_number, start<font color="#909090">=0</font>, length<font color="#909090">=64</font>)</dt><dd><tt>Read a CPU model-specific register (MSR).<br> 339 <br> 340 Which MSRs are available depends on the CPU model.<br> 341 On systems with multiple CPUs, this function may run on any CPU.<br> 342 <br> 343 Args:<br> 344 msr_number: The number of the register to read.<br> 345 start: The least significant bit to read, zero-indexed.<br> 346 (Said another way, the number of bits to right-shift the MSR value.)<br> 347 length: The number of bits to read. MSRs are 64 bits, even on 32-bit CPUs.</tt></dd></dl> 348 349 <dl><dt><a name="AndroidPlatformBackend-SetPlatform"><strong>SetPlatform</strong></a>(self, platform)</dt></dl> 350 351 <dl><dt><a name="AndroidPlatformBackend-WillCloseBrowser"><strong>WillCloseBrowser</strong></a>(self, browser, browser_backend)</dt></dl> 352 353 <hr> 354 Class methods inherited from <a href="telemetry.internal.platform.platform_backend.html#PlatformBackend">telemetry.internal.platform.platform_backend.PlatformBackend</a>:<br> 355 <dl><dt><a name="AndroidPlatformBackend-IsPlatformBackendForHost"><strong>IsPlatformBackendForHost</strong></a>(cls)<font color="#909090"><font face="helvetica, arial"> from <a href="__builtin__.html#type">__builtin__.type</a></font></font></dt><dd><tt>Returns whether this platform backend is the platform backend to be used<br> 356 for the host device which telemetry is running on.</tt></dd></dl> 357 358 <hr> 359 Data descriptors inherited from <a href="telemetry.internal.platform.platform_backend.html#PlatformBackend">telemetry.internal.platform.platform_backend.PlatformBackend</a>:<br> 360 <dl><dt><strong>__dict__</strong></dt> 361 <dd><tt>dictionary for instance variables (if defined)</tt></dd> 362 </dl> 363 <dl><dt><strong>__weakref__</strong></dt> 364 <dd><tt>list of weak references to the object (if defined)</tt></dd> 365 </dl> 366 <dl><dt><strong>is_host_platform</strong></dt> 367 </dl> 368 <dl><dt><strong>network_controller_backend</strong></dt> 369 </dl> 370 <dl><dt><strong>platform</strong></dt> 371 </dl> 372 <dl><dt><strong>running_browser_backends</strong></dt> 373 </dl> 374 <dl><dt><strong>tracing_controller_backend</strong></dt> 375 </dl> 376 <dl><dt><strong>wpr_http_device_port</strong></dt> 377 </dl> 378 <dl><dt><strong>wpr_https_device_port</strong></dt> 379 </dl> 380 </td></tr></table></td></tr></table> 381 </body></html>