diff options
author | setrofim <setrofim@gmail.com> | 2017-07-12 13:20:53 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-07-12 13:20:53 +0100 |
commit | b933dbda67769c7a036f25f284fc464299f2ce8d (patch) | |
tree | d9016668fa6aac24be68fee7e07d746509f7e4e3 /devlib/target.py | |
parent | b062097221591df9425878005002741e6ce22e5b (diff) | |
parent | 0c7eb9e91e46fd551d9986afebe10670b1f160aa (diff) | |
download | devlib-b933dbda67769c7a036f25f284fc464299f2ce8d.tar.gz |
Merge pull request #146 from derkling/adb_addons
Add a couple of ADB related utility functions
Diffstat (limited to 'devlib/target.py')
-rw-r--r-- | devlib/target.py | 23 |
1 files changed, 16 insertions, 7 deletions
diff --git a/devlib/target.py b/devlib/target.py index 65d5600..a920655 100644 --- a/devlib/target.py +++ b/devlib/target.py @@ -909,8 +909,16 @@ class AndroidTarget(Target): pass self._connected_as_root = None - def connect(self, timeout=10, check_boot_completed=True): # pylint: disable=arguments-differ + def wait_boot_complete(self, timeout=10): start = time.time() + boot_completed = boolean(self.getprop('sys.boot_completed')) + while not boot_completed and timeout >= time.time() - start: + time.sleep(5) + boot_completed = boolean(self.getprop('sys.boot_completed')) + if not boot_completed: + raise TargetError('Connected but Android did not fully boot.') + + def connect(self, timeout=10, check_boot_completed=True): # pylint: disable=arguments-differ device = self.connection_settings.get('device') if device and ':' in device: # ADB does not automatically remove a network device from it's @@ -922,12 +930,7 @@ class AndroidTarget(Target): super(AndroidTarget, self).connect(timeout=timeout) if check_boot_completed: - boot_completed = boolean(self.getprop('sys.boot_completed')) - while not boot_completed and timeout >= time.time() - start: - time.sleep(5) - boot_completed = boolean(self.getprop('sys.boot_completed')) - if not boot_completed: - raise TargetError('Connected but Android did not fully boot.') + self.wait_boot_complete(timeout) def setup(self, executables=None): super(AndroidTarget, self).setup(executables) @@ -1120,6 +1123,12 @@ class AndroidTarget(Target): def clear_logcat(self): adb_command(self.adb_name, 'logcat -c', timeout=30) + def adb_kill_server(self, timeout=30): + adb_command(self.adb_name, 'kill-server', timeout) + + def adb_wait_for_device(self, timeout=30): + adb_command(self.adb_name, 'wait-for-device', timeout) + def adb_reboot_bootloader(self, timeout=30): adb_command(self.adb_name, 'reboot-bootloader', timeout) |