telemetry.internal.platform.android_platform_backend | index telemetry/internal/platform/android_platform_backend.py

`# Copyright 2013 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.`

Modules
`` |  |
adb_install_cert telemetry.internal.platform.android_device telemetry.internal.platform.power_monitor.android_dumpsys_power_monitor telemetry.internal.forwarders.android_forwarder telemetry.internal.platform.power_monitor.android_fuelgauge_power_monitor telemetry.core.android_platform telemetry.internal.platform.profiler.android_prebuilt_profiler_helper telemetry.internal.platform.power_monitor.android_temperature_monitor devil.android.battery_utils telemetry.internal.util.binary_manager | devil.android.perf.cache_control certutils pylib.constants telemetry.decorators devil.android.device_errors devil.android.device_utils telemetry.internal.util.exception_formatter telemetry.core.exceptions telemetry.internal.util.external_modules telemetry.internal.platform.linux_based_platform_backend | logging telemetry.internal.platform.power_monitor.monsoon_power_monitor os devil.android.perf.perf_control telemetry.core.platform platformsettings telemetry.internal.platform.power_monitor.power_monitor_controller psutil re pylib.screenshot | shutil stat subprocess devil.android.perf.surface_stats_collector telemetry.internal.platform.power_monitor.sysfs_power_monitor tempfile devil.android.perf.thermal_throttle telemetry.core.util devil.android.sdk.version_codes telemetry.internal.image_processing.video

Classes
`` |  | telemetry.internal.platform.linux_based_platform_backend.LinuxBasedPlatformBackend(telemetry.internal.platform.platform_backend.PlatformBackend) AndroidPlatformBackend
class AndroidPlatformBackend(telemetry.internal.platform.linux_based_platform_backend.LinuxBasedPlatformBackend)
`` |  | Method resolution order: AndroidPlatformBackend telemetry.internal.platform.linux_based_platform_backend.LinuxBasedPlatformBackend telemetry.internal.platform.platform_backend.PlatformBackend __builtin__.object Methods defined here: CanCaptureVideo(*args, **kwargs) CanFlushIndividualFilesFromSystemCache(self) CanLaunchApplication(self, application) CanMonitorNetworkData(self) CanMonitorPower(self) CanMonitorThermalThrottling(self) CanTakeScreenshot(self) DismissCrashDialogIfNeeded(self) `Dismiss any error dialogs. Limit the number in case we have an error loop or we are failing to dismiss.` FlushDnsCache(self) FlushEntireSystemCache(self) FlushSystemCacheForDirectory(self, directory) ForwardHostToDevice(self, host_port, device_port) GetArchName(*args, **kwargs) GetChildPids(self, pid) GetCommandLine(*args, **kwargs) GetCpuStats(self, pid) GetCpuTimestamp(self) GetDeviceTypeName(self) GetFileContents(self, fname) GetMemoryStats(self, pid) GetNetworkData(self, browser) GetOSName(self) GetOSVersionName(*args, **kwargs) GetPsOutput(self, columns, pid=None) GetStackTrace(self, target_arch) `Returns stack trace. The stack trace consists of raw logcat dump, logcat dump with symbols, and stack info from tomstone files. Args: target_arch: String specifying device architecture (eg. arm, arm64, mips, x86, x86_64)` GetStandardOutput(self, number_of_lines=500) `Returns most recent lines of logcat dump. Args: number_of_lines: Number of lines of log to return.` HasBeenThermallyThrottled(self) InstallApplication(self, application) InstallTestCa(self) `Install a randomly generated root CA on the android device. This allows transparent HTTPS testing with WPR server without need to tweak application network stack.` IsAppRunning(self, process_name) `Determine if the given process is running. Args: process_name: The full package name string of the process.` IsApplicationRunning(self, application) IsDisplayTracingSupported(self) IsScreenLocked(self) `Determines if device screen is locked.` IsScreenOn(self) `Determines if device screen is on.` IsThermallyThrottled(self) KillApplication(self, application) `Kill the given |application|. Might be used instead of ForceStop for efficiency reasons. Args: application: The full package name string of the application to kill.` LaunchApplication(self, application, parameters=None, elevate_privilege=False) `Launches the given |application| with a list of |parameters| on the OS. Args: application: The full package name string of the application to launch. parameters: A list of parameters to be passed to the ActivityManager. elevate_privilege: Currently unimplemented on Android.` PathExists(self, device_path, timeout=None, retries=None) `Return whether the given path exists on the device. This method is the same as devil.android.device_utils.DeviceUtils.PathExists.` PullProfile(self, package, output_profile_path) `Copy application profile from device to host machine. Args: package: The full package name string of the application for which the profile is to be copied. output_profile_dir: Location where profile to be stored on host machine.` PurgeUnpinnedMemory(self) `Purges the unpinned ashmem memory for the whole system. This can be used to make memory measurements more stable. Requires root.` PushProfile(self, package, new_profile_dir) `Replace application profile with files found on host machine. Pushing the profile is slow, so we don't want to do it every time. Avoid this by pushing to a safe location using PushChangedFiles, and then copying into the correct location on each test run. Args: package: The full package name string of the application for which the profile is to be updated. new_profile_dir: Location where profile to be pushed is stored on the host machine.` RemoveProfile(self, package, ignore_list) `Delete application profile on device. Args: package: The full package name string of the application for which the profile is to be deleted. ignore_list: List of files to keep.` RemoveTestCa(self) `Remove root CA generated by previous call to InstallTestCa(). Removes the test root certificate from both the device and host machine.` RunCommand(self, command) SetDebugApp(self, package) `Set application to debugging. Args: package: The full package name string of the application.` SetFullPerformanceModeEnabled(self, enabled) SetGraphicsMemoryTrackingEnabled(self, enabled) SetRelaxSslCheck(self, value) StartDisplayTracing(self) StartMonitoringPower(self, browser) StartVideoCapture(self, min_bitrate_mbps) `Starts the video capture at specified bitrate.` StopApplication(self, application) `Stop the given |application|. Args: application: The full package name string of the application to stop.` StopDisplayTracing(self) StopForwardingHost(self, host_port) StopMonitoringPower(self) StopVideoCapture(self) TakeScreenshot(self, file_path) __init__(self, device, finder_options) Class methods defined here: CreatePlatformForDevice(cls, device, finder_options) from __builtin__.type SupportsDevice(cls, device) from __builtin__.type Static methods defined here: ParseCStateSample(sample) Data descriptors defined here: device forwarder_factory is_test_ca_installed is_video_capture_running log_file_path use_rndis_forwarder wpr_ca_cert_path `Path to root certificate installed on browser (or None). If this is set, web page replay will use it to sign HTTPS responses.` Methods inherited from telemetry.internal.platform.linux_based_platform_backend.LinuxBasedPlatformBackend: GetClockTicks(*args, **kwargs) `Returns the number of clock ticks per second. The proper way is to call os.sysconf('SC_CLK_TCK') but that is not easy to do on Android/CrOS. In practice, nearly all Linux machines have a USER_HZ of 100, so just return that.` GetSystemCommitCharge(self) `# Get the commit charge in kB.` GetSystemTotalPhysicalMemory(*args, **kwargs) Methods inherited from telemetry.internal.platform.platform_backend.PlatformBackend: CanMeasurePerApplicationPower(self) CooperativelyShutdown(self, proc, app_name) `Cooperatively shut down the given process from subprocess.Popen. Currently this is only implemented on Windows. See crbug.com/424024 for background on why it was added. Args: proc: a process object returned from subprocess.Popen. app_name: on Windows, is the prefix of the application's window class name that should be searched for. This helps ensure that only the application's windows are closed. Returns True if it is believed the attempt succeeded.` DidCreateBrowser(self, browser, browser_backend) DidStartBrowser(self, browser, browser_backend) GetRemotePort(self, port) InitPlatformBackend(self) IsCooperativeShutdownSupported(self) `Indicates whether CooperativelyShutdown, below, is supported. It is not necessary to implement it on all platforms.` ReadMsr(self, msr_number, start=0, length=64) `Read a CPU model-specific register (MSR). Which MSRs are available depends on the CPU model. On systems with multiple CPUs, this function may run on any CPU. Args: msr_number: The number of the register to read. start: The least significant bit to read, zero-indexed. (Said another way, the number of bits to right-shift the MSR value.) length: The number of bits to read. MSRs are 64 bits, even on 32-bit CPUs.` SetPlatform(self, platform) WillCloseBrowser(self, browser, browser_backend) Class methods inherited from telemetry.internal.platform.platform_backend.PlatformBackend: IsPlatformBackendForHost(cls) from __builtin__.type `Returns whether this platform backend is the platform backend to be used for the host device which telemetry is running on.` Data descriptors inherited from telemetry.internal.platform.platform_backend.PlatformBackend: __dict__ `dictionary for instance variables (if defined)` __weakref__ `list of weak references to the object (if defined)` is_host_platform network_controller_backend platform running_browser_backends tracing_controller_backend wpr_http_device_port wpr_https_device_port