Android: makes "RestartAdbdOnDevice" more robust.
Some bots fail on the command that kills adbd on the device, even though the device should be online and available. BUG=322132 Review URL: https://codereview.chromium.org/91563002 git-svn-id: http://src.chromium.org/svn/trunk/src/build@237708 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This commit is contained in:
Родитель
373a1188a6
Коммит
c60e3f540f
|
@ -465,10 +465,18 @@ class AndroidCommands(object):
|
||||||
|
|
||||||
def RestartAdbdOnDevice(self):
|
def RestartAdbdOnDevice(self):
|
||||||
logging.info('Killing adbd on the device...')
|
logging.info('Killing adbd on the device...')
|
||||||
adb_pids = self.KillAll('adbd', signal=signal.SIGTERM, with_su=True)
|
adb_pids = self.ExtractPid('adbd')
|
||||||
assert adb_pids, 'Unable to obtain adbd pid'
|
if not adb_pids:
|
||||||
logging.info('Waiting for device to settle...')
|
raise errors.MsgException('Unable to obtain adbd pid')
|
||||||
self._adb.SendCommand('wait-for-device')
|
try:
|
||||||
|
self.KillAll('adbd', signal=signal.SIGTERM, with_su=True)
|
||||||
|
logging.info('Waiting for device to settle...')
|
||||||
|
self._adb.SendCommand('wait-for-device')
|
||||||
|
new_adb_pids = self.ExtractPid('adbd')
|
||||||
|
if new_adb_pids == adb_pids:
|
||||||
|
logging.error('adbd on the device may not have been restarted.')
|
||||||
|
except Exception as e:
|
||||||
|
logging.error('Exception when trying to kill adbd on the device [%s]', e)
|
||||||
|
|
||||||
def RestartAdbServer(self):
|
def RestartAdbServer(self):
|
||||||
"""Restart the adb server."""
|
"""Restart the adb server."""
|
||||||
|
|
Загрузка…
Ссылка в новой задаче