Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(364)

Unified Diff: tools/chrome_remote_control/chrome_remote_control/android_browser_backend.py

Issue 11361165: [chrome_remote_control] Rename chrome_remote_control to telemetry. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: tools/chrome_remote_control/chrome_remote_control/android_browser_backend.py
diff --git a/tools/chrome_remote_control/chrome_remote_control/android_browser_backend.py b/tools/chrome_remote_control/chrome_remote_control/android_browser_backend.py
deleted file mode 100644
index 1ed137253072528e3835b95bc3e3361f3978683a..0000000000000000000000000000000000000000
--- a/tools/chrome_remote_control/chrome_remote_control/android_browser_backend.py
+++ /dev/null
@@ -1,125 +0,0 @@
-# Copyright (c) 2012 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.
-import logging
-import tempfile
-import json
-
-from chrome_remote_control import adb_commands
-from chrome_remote_control import browser_backend
-from chrome_remote_control import browser_gone_exception
-
-class AndroidBrowserBackend(browser_backend.BrowserBackend):
- """The backend for controlling a browser instance running on Android.
- """
- def __init__(self, options, adb, package,
- is_content_shell, cmdline_file, activity, devtools_remote_port):
- super(AndroidBrowserBackend, self).__init__(is_content_shell, options)
- # Initialize fields so that an explosion during init doesn't break in Close.
- self._options = options
- self._adb = adb
- self._package = package
- self._cmdline_file = cmdline_file
- self._activity = activity
- self._port = 9222
- self._devtools_remote_port = devtools_remote_port
-
- # Kill old browser.
- self._adb.KillAll(self._package)
- self._adb.KillAll('device_forwarder')
- self._adb.Forward('tcp:9222', self._devtools_remote_port)
-
- # Chrome Android doesn't listen to --user-data-dir.
- # TODO: symlink the app's Default, files and cache dir
- # to somewhere safe.
- if not is_content_shell and not options.dont_override_profile:
- # Set up the temp dir
- # self._tmpdir = '/sdcard/chrome_remote_control_data'
- # self._adb.RunShellCommand('rm -r %s' % self._tmpdir)
- # args.append('--user-data-dir=%s' % self._tmpdir)
- pass
-
- # Set up the command line.
- if is_content_shell:
- pseudo_exec_name = 'content_shell'
- else:
- pseudo_exec_name = 'chrome'
-
- args = [pseudo_exec_name]
- args.extend(self.GetBrowserStartupArgs())
-
- with tempfile.NamedTemporaryFile() as f:
- def EscapeIfNeeded(arg):
- return arg.replace(' ', '" "')
- f.write(' '.join([EscapeIfNeeded(arg) for arg in args]))
- f.flush()
- self._adb.Push(f.name, cmdline_file)
-
- # Force devtools protocol on, if not already done.
- if not is_content_shell:
- # Make sure we can find the apps' prefs file
- app_data_dir = '/data/data/%s' % self._package
- prefs_file = (app_data_dir +
- '/app_chrome/Default/Preferences')
- if not self._adb.FileExistsOnDevice(prefs_file):
- logging.critical(
- 'android_browser_backend: Could not find preferences file ' +
- '%s for %s' % (prefs_file, self._package))
- raise browser_gone_exception.BrowserGoneException(
- 'Missing preferences file.')
-
- with tempfile.NamedTemporaryFile() as raw_f:
- self._adb.Pull(prefs_file, raw_f.name)
- with open(raw_f.name, 'r') as f:
- txt_in = f.read()
- preferences = json.loads(txt_in)
- changed = False
- if 'devtools' not in preferences:
- preferences['devtools'] = {}
- changed = True
- if 'remote_enabled' not in preferences['devtools']:
- preferences['devtools']['remote_enabled'] = True
- changed = True
- if preferences['devtools']['remote_enabled'] != True:
- preferences['devtools']['remote_enabled'] = True
- changed = True
- if changed:
- logging.warning('Manually enabled devtools protocol on %s' %
- self._package)
- with open(raw_f.name, 'w') as f:
- txt = json.dumps(preferences, indent=2)
- f.write(txt)
- self._adb.Push(raw_f.name, prefs_file)
-
- # Start it up!
- self._adb.StartActivity(self._package,
- self._activity,
- True,
- None,
- 'chrome://newtab/')
- try:
- self._WaitForBrowserToComeUp()
- except:
- import traceback
- traceback.print_exc()
- self.Close()
- raise
-
- def GetBrowserStartupArgs(self):
- args = super(AndroidBrowserBackend, self).GetBrowserStartupArgs()
- args.append('--disable-fre')
- return args
-
- def __del__(self):
- self.Close()
-
- def Close(self):
- self._adb.RunShellCommand('rm %s' % self._cmdline_file)
- self._adb.KillAll(self._package)
-
- def IsBrowserRunning(self):
- pids = self._adb.ExtractPid(self._package)
- return len(pids) != 0
-
- def CreateForwarder(self, *ports):
- return adb_commands.Forwarder(self._adb, *ports)

Powered by Google App Engine
This is Rietveld 408576698