| Index: tools/telemetry/telemetry/core/backends/chrome/android_browser_finder.py
|
| diff --git a/tools/telemetry/telemetry/core/backends/chrome/android_browser_finder.py b/tools/telemetry/telemetry/core/backends/chrome/android_browser_finder.py
|
| index 1d12d81f201be93185ab38f7de14cede8b85532e..22347173310afbe23f8d9096f600911092d36ad8 100644
|
| --- a/tools/telemetry/telemetry/core/backends/chrome/android_browser_finder.py
|
| +++ b/tools/telemetry/telemetry/core/backends/chrome/android_browser_finder.py
|
| @@ -58,10 +58,10 @@ CHROME_PACKAGE_NAMES = {
|
|
|
| class PossibleAndroidBrowser(possible_browser.PossibleBrowser):
|
| """A launchable android browser instance."""
|
| - def __init__(self, browser_type, finder_options, android_platform,
|
| + def __init__(self, browser_type, device_id, finder_options, android_platform,
|
| backend_settings, apk_name):
|
| - super(PossibleAndroidBrowser, self).__init__(
|
| - browser_type, 'android', backend_settings.supports_tab_control)
|
| + super(PossibleAndroidBrowser, self).__init__(browser_type, 'android',
|
| + device_id, backend_settings.supports_tab_control)
|
| assert browser_type in FindAllBrowserTypes(finder_options), (
|
| 'Please add %s to android_browser_finder.FindAllBrowserTypes' %
|
| browser_type)
|
| @@ -143,7 +143,7 @@ def FindAllBrowserTypes(_options):
|
| return CHROME_PACKAGE_NAMES.keys()
|
|
|
|
|
| -def _FindAllPossibleBrowsers(finder_options, android_platform):
|
| +def _FindAllPossibleBrowsers(finder_options, android_platform, device_id):
|
| """Testable version of FindAllAvailableBrowsers."""
|
| if not android_platform:
|
| return []
|
| @@ -151,6 +151,7 @@ def _FindAllPossibleBrowsers(finder_options, android_platform):
|
| for name, package_info in CHROME_PACKAGE_NAMES.iteritems():
|
| package, backend_settings, local_apk = package_info
|
| b = PossibleAndroidBrowser(name,
|
| + device_id,
|
| finder_options,
|
| android_platform,
|
| backend_settings(package),
|
| @@ -166,8 +167,13 @@ def FindAllAvailableBrowsers(finder_options):
|
| The device is either the only device on the host platform,
|
| or |finder_options| specifies a particular device.
|
| """
|
| - device = android_device.GetDevice(finder_options)
|
| - if not device:
|
| + devices = android_device.GetAllDevices()
|
| + if not devices:
|
| return []
|
| - android_platform = platform.GetPlatformForDevice(device)
|
| - return _FindAllPossibleBrowsers(finder_options, android_platform)
|
| +
|
| + possiple_browsers = []
|
| + for device in devices:
|
| + android_platform = platform.GetPlatformForDevice(device)
|
| + possiple_browsers.extend(_FindAllPossibleBrowsers(
|
| + finder_options, android_platform, device.device_id))
|
| + return possiple_browsers
|
|
|