Index: telemetry/telemetry/internal/platform/android_platform_backend.py |
diff --git a/telemetry/telemetry/internal/platform/android_platform_backend.py b/telemetry/telemetry/internal/platform/android_platform_backend.py |
index 7399ead31b6a3ec4634e10e2bdb2fca0a3772151..ca89405107158a484594c92237c9c172f230a009 100644 |
--- a/telemetry/telemetry/internal/platform/android_platform_backend.py |
+++ b/telemetry/telemetry/internal/platform/android_platform_backend.py |
@@ -94,7 +94,7 @@ class AndroidPlatformBackend( |
self._perf_tests_setup = perf_control.PerfControl(self._device) |
self._thermal_throttle = thermal_throttle.ThermalThrottle(self._device) |
self._raw_display_frame_rate_measurements = [] |
- self._can_access_protected_file_contents = ( |
+ self._can_elevate_privilege = ( |
self._device.HasRoot() or self._device.NeedsSU()) |
self._device_copy_script = None |
self._power_monitor = ( |
@@ -214,13 +214,13 @@ class AndroidPlatformBackend( |
return self._thermal_throttle.HasBeenThrottled() |
def GetCpuStats(self, pid): |
- if not self._can_access_protected_file_contents: |
+ if not self._can_elevate_privilege: |
logging.warning('CPU stats cannot be retrieved on non-rooted device.') |
return {} |
return super(AndroidPlatformBackend, self).GetCpuStats(pid) |
def GetCpuTimestamp(self): |
- if not self._can_access_protected_file_contents: |
+ if not self._can_elevate_privilege: |
logging.warning('CPU timestamp cannot be retrieved on non-rooted device.') |
return {} |
return super(AndroidPlatformBackend, self).GetCpuTimestamp() |
@@ -242,7 +242,7 @@ class AndroidPlatformBackend( |
This can be used to make memory measurements more stable. Requires root. |
""" |
- if not self._can_access_protected_file_contents: |
+ if not self._can_elevate_privilege: |
logging.warning('Cannot run purge_ashmem. Requires a rooted device.') |
return |
@@ -300,6 +300,9 @@ class AndroidPlatformBackend( |
return False |
def FlushEntireSystemCache(self): |
+ if not self._can_elevate_privilege: |
+ logging.warning('Cannot flush system cache on non-rooted device.') |
+ return |
cache = cache_control.CacheControl(self._device) |
cache.DropRamCaches() |
@@ -329,6 +332,9 @@ class AndroidPlatformBackend( |
assert isinstance(application, basestring) |
self._device.KillAll(application, blocking=True, quiet=True) |
+ def CanElevatePrivilege(self): |
+ return self._can_elevate_privilege |
+ |
def LaunchApplication( |
self, application, parameters=None, elevate_privilege=False): |
"""Launches the given |application| with a list of |parameters| on the OS. |
@@ -416,7 +422,7 @@ class AndroidPlatformBackend( |
device_path, timeout=timeout, retries=retries) |
def GetFileContents(self, fname): |
- if not self._can_access_protected_file_contents: |
+ if not self._can_elevate_privilege: |
logging.warning('%s cannot be retrieved on non-rooted device.', fname) |
return '' |
return self._device.ReadFile(fname, as_root=True) |