def dump_view_server(package): kwargs1 = {VERBOSE: False, 'ignoresecuredevice': False, 'ignoreversioncheck': False} kwargs2 = {ViewClientOptions.FORCE_VIEW_SERVER_USE: False, ViewClientOptions.START_VIEW_SERVER: True, ViewClientOptions.AUTO_DUMP: False, ViewClientOptions.IGNORE_UIAUTOMATOR_KILLED: True, ViewClientOptions.COMPRESSED_DUMP: True, ViewClientOptions.USE_UIAUTOMATOR_HELPER: False, ViewClientOptions.DEBUG: {}, } kwargs2[ViewClientOptions.FORCE_VIEW_SERVER_USE] = True vc = ViewClient(*ViewClient.connectToDeviceOrExit(**kwargs1), **kwargs2) options = {WINDOW: -1, SAVE_SCREENSHOT: None, SAVE_VIEW_SCREENSHOTS: None, DO_NOT_DUMP_VIEWS: False, DEVICE_ART: None, DROP_SHADOW: False, SCREEN_GLARE: False} windows = vc.list() print windows transform = MAP['b'] for window in windows: if package not in windows[window]: continue print windows[window] vc.dump(window=int(window)) # ViewClient.imageDirectory = options[SAVE_VIEW_SCREENSHOTS] return ViewClientHandler.traverse(vc, transform=transform)
#! /usr/bin/env python ''' Copyright (C) 2014 Diego Torres Milano Created on Apr 24, 2014 @author: diego ''' from com.dtmilano.android.viewclient import ViewClient kwargs1 = {'verbose': True, 'ignoresecuredevice': True} kwargs2 = {'startviewserver': True, 'forceviewserveruse': True, 'autodump': False, 'ignoreuiautomatorkilled': True} vc = ViewClient(*ViewClient.connectToDeviceOrExit(**kwargs1), **kwargs2) windows = vc.list() for wId in windows.keys(): print ">>> window=", wId, windows[wId] vc.dump(window=wId) vc.traverse(transform=ViewClient.TRAVERSE_CIT, indent=" ")