[Android] Add screenshot command line tool.
This modifies the no longer used monkeyrunner_screenshot.py into a
simple screenshot tool.
BUG=164644
Review URL: https://codereview.chromium.org/11470004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171615 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/build/android/screenshot.py b/build/android/screenshot.py
new file mode 100755
index 0000000..e1dfdb3
--- /dev/null
+++ b/build/android/screenshot.py
@@ -0,0 +1,46 @@
+#!/usr/bin/env python
+
+# 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.
+
+"""Takes and saves a screenshot from an Android device.
+
+Usage: screenshot.py [-s SERIAL] [-f FILE]
+
+Options:
+ -s SERIAL connect to device with specified SERIAL
+ -f FILE write screenshot to FILE (default: Screenshot.png)
+"""
+
+from optparse import OptionParser
+import os
+import sys
+
+from pylib import android_commands
+
+
+def main(argv):
+ # Parse options.
+ parser = OptionParser()
+ parser.add_option('-s', '--serial', dest='serial',
+ help='connect to device with specified SERIAL',
+ metavar='SERIAL', default=None)
+ parser.add_option('-f', '--file', dest='filename',
+ help='write screenshot to FILE (default: %default)',
+ metavar='FILE', default='Screenshot.png')
+ (options, args) = parser.parse_args(argv)
+
+ if not options.serial and len(android_commands.GetAttachedDevices()) > 1:
+ parser.error('Multiple devices are attached. '
+ 'Please specify SERIAL with -s.')
+
+ # Grab screenshot and write to disk.
+ filename = os.path.abspath(options.filename)
+ ac = android_commands.AndroidCommands(options.serial)
+ ac.TakeScreenshot(filename)
+ return 0
+
+
+if __name__ == '__main__':
+ sys.exit(main(sys.argv))