| Index: mojo/devtools/common/devtoolslib/android_shell.py
|
| diff --git a/mojo/devtools/common/devtoolslib/android_shell.py b/mojo/devtools/common/devtoolslib/android_shell.py
|
| index 611732e045da426e1836253a76d3c78f038f30a8..ab03bb2b5e61fd0725dd34c17a17c36be683fa3d 100644
|
| --- a/mojo/devtools/common/devtoolslib/android_shell.py
|
| +++ b/mojo/devtools/common/devtoolslib/android_shell.py
|
| @@ -15,6 +15,7 @@ import sys
|
| import tempfile
|
| import threading
|
| import time
|
| +import uuid
|
|
|
| from devtoolslib.http_server import start_http_server
|
| from devtoolslib.shell import Shell
|
| @@ -349,8 +350,20 @@ class AndroidShell(Shell):
|
| parameters.extend(arguments)
|
|
|
| if parameters:
|
| - encodedParameters = json.dumps(parameters)
|
| - cmd += ['--es', 'encodedParameters', encodedParameters]
|
| + device_filename = (
|
| + '/sdcard/%s/args_%s' % (_MOJO_SHELL_PACKAGE_NAME, str(uuid.uuid4())))
|
| + with tempfile.NamedTemporaryFile(delete=False) as temp:
|
| + try:
|
| + for parameter in parameters:
|
| + temp.write(parameter)
|
| + temp.write('\n')
|
| + temp.close()
|
| + subprocess.check_call(self._adb_command(
|
| + ['push', temp.name, device_filename]))
|
| + finally:
|
| + os.remove(temp.name)
|
| +
|
| + cmd += ['--es', 'argsFile', device_filename]
|
|
|
| subprocess.check_call(cmd, stdout=self.verbose_pipe)
|
|
|
|
|