diff options
3 files changed, 31 insertions, 30 deletions
diff --git a/cmds/uiautomator/src/com/android/commands/uiautomator/DumpCommand.java b/cmds/uiautomator/src/com/android/commands/uiautomator/DumpCommand.java index 3a4e783..c35f7fc 100644 --- a/cmds/uiautomator/src/com/android/commands/uiautomator/DumpCommand.java +++ b/cmds/uiautomator/src/com/android/commands/uiautomator/DumpCommand.java @@ -52,7 +52,7 @@ public class DumpCommand extends Command { @Override public String detailedOptions() { return " dump [--verbose][file]\n" - + " [--verbose]: dumps all layout information.\n" + + " [--compressed]: dumps compressed layout information.\n" + " [file]: the location where the dumped XML should be stored, default is\n " + DEFAULT_DUMP_FILE.getAbsolutePath() + "\n"; } @@ -60,11 +60,11 @@ public class DumpCommand extends Command { @Override public void run(String[] args) { File dumpFile = DEFAULT_DUMP_FILE; - boolean verboseMode = false; + boolean verboseMode = true; for (String arg : args) { - if (arg.equals("--verbose")) - verboseMode = true; + if (arg.equals("--compressed")) + verboseMode = false; else if (!arg.startsWith("-")) { dumpFile = new File(arg); } @@ -73,9 +73,9 @@ public class DumpCommand extends Command { UiAutomationShellWrapper automationWrapper = new UiAutomationShellWrapper(); automationWrapper.connect(); if (verboseMode) { + // default automationWrapper.setCompressedLayoutHierarchy(false); } else { - // default automationWrapper.setCompressedLayoutHierarchy(true); } diff --git a/library/core-src/com/android/uiautomator/core/UiDevice.java b/library/core-src/com/android/uiautomator/core/UiDevice.java index 5a2f3a7..fc23cdf 100644 --- a/library/core-src/com/android/uiautomator/core/UiDevice.java +++ b/library/core-src/com/android/uiautomator/core/UiDevice.java @@ -83,6 +83,9 @@ public class UiDevice { * @return {@link ShellUiAutomatorBridge} */ UiAutomatorBridge getAutomatorBridge() { + if (mUiAutomationBridge == null) { + throw new RuntimeException("UiDevice not initialized"); + } return mUiAutomationBridge; } @@ -97,7 +100,7 @@ public class UiDevice { * @since API Level 18 */ public void setCompressedLayoutHeirarchy(boolean compressed) { - mUiAutomationBridge.setCompressedLayoutHierarchy(compressed); + getAutomatorBridge().setCompressedLayoutHierarchy(compressed); } /** @@ -123,7 +126,7 @@ public class UiDevice { */ public Point getDisplaySizeDp() { Tracer.trace(); - Display display = mUiAutomationBridge.getDefaultDisplay(); + Display display = getAutomatorBridge().getDefaultDisplay(); Point p = new Point(); display.getRealSize(p); DisplayMetrics metrics = new DisplayMetrics(); @@ -166,7 +169,7 @@ public class UiDevice { */ public String getLastTraversedText() { Tracer.trace(); - return mUiAutomationBridge.getQueryController().getLastTraversedText(); + return getAutomatorBridge().getQueryController().getLastTraversedText(); } /** @@ -176,7 +179,7 @@ public class UiDevice { */ public void clearLastTraversedText() { Tracer.trace(); - mUiAutomationBridge.getQueryController().clearLastTraversedText(); + getAutomatorBridge().getQueryController().clearLastTraversedText(); } /** @@ -187,7 +190,7 @@ public class UiDevice { public boolean pressMenu() { Tracer.trace(); waitForIdle(); - return mUiAutomationBridge.getInteractionController().sendKeyAndWaitForEvent( + return getAutomatorBridge().getInteractionController().sendKeyAndWaitForEvent( KeyEvent.KEYCODE_MENU, 0, AccessibilityEvent.TYPE_WINDOW_CONTENT_CHANGED, KEY_PRESS_EVENT_TIMEOUT); } @@ -200,7 +203,7 @@ public class UiDevice { public boolean pressBack() { Tracer.trace(); waitForIdle(); - return mUiAutomationBridge.getInteractionController().sendKeyAndWaitForEvent( + return getAutomatorBridge().getInteractionController().sendKeyAndWaitForEvent( KeyEvent.KEYCODE_BACK, 0, AccessibilityEvent.TYPE_WINDOW_CONTENT_CHANGED, KEY_PRESS_EVENT_TIMEOUT); } @@ -213,7 +216,7 @@ public class UiDevice { public boolean pressHome() { Tracer.trace(); waitForIdle(); - return mUiAutomationBridge.getInteractionController().sendKeyAndWaitForEvent( + return getAutomatorBridge().getInteractionController().sendKeyAndWaitForEvent( KeyEvent.KEYCODE_HOME, 0, AccessibilityEvent.TYPE_WINDOW_CONTENT_CHANGED, KEY_PRESS_EVENT_TIMEOUT); } @@ -308,7 +311,7 @@ public class UiDevice { public boolean pressKeyCode(int keyCode) { Tracer.trace(keyCode); waitForIdle(); - return mUiAutomationBridge.getInteractionController().sendKey(keyCode, 0); + return getAutomatorBridge().getInteractionController().sendKey(keyCode, 0); } /** @@ -323,7 +326,7 @@ public class UiDevice { public boolean pressKeyCode(int keyCode, int metaState) { Tracer.trace(keyCode, metaState); waitForIdle(); - return mUiAutomationBridge.getInteractionController().sendKey(keyCode, metaState); + return getAutomatorBridge().getInteractionController().sendKey(keyCode, metaState); } /** @@ -371,7 +374,7 @@ public class UiDevice { */ public int getDisplayWidth() { Tracer.trace(); - Display display = mUiAutomationBridge.getDefaultDisplay(); + Display display = getAutomatorBridge().getDefaultDisplay(); Point p = new Point(); display.getSize(p); return p.x; @@ -385,7 +388,7 @@ public class UiDevice { */ public int getDisplayHeight() { Tracer.trace(); - Display display = mUiAutomationBridge.getDefaultDisplay(); + Display display = getAutomatorBridge().getDefaultDisplay(); Point p = new Point(); display.getSize(p); return p.y; @@ -422,7 +425,7 @@ public class UiDevice { */ public boolean swipe(int startX, int startY, int endX, int endY, int steps) { Tracer.trace(startX, startY, endX, endY, steps); - return mUiAutomationBridge.getInteractionController() + return getAutomatorBridge().getInteractionController() .swipe(startX, startY, endX, endY, steps); } @@ -441,7 +444,7 @@ public class UiDevice { */ public boolean drag(int startX, int startY, int endX, int endY, int steps) { Tracer.trace(startX, startY, endX, endY, steps); - return mUiAutomationBridge.getInteractionController() + return getAutomatorBridge().getInteractionController() .swipe(startX, startY, endX, endY, steps, true); } @@ -456,7 +459,7 @@ public class UiDevice { */ public boolean swipe(Point[] segments, int segmentSteps) { Tracer.trace(segments, segmentSteps); - return mUiAutomationBridge.getInteractionController().swipe(segments, segmentSteps); + return getAutomatorBridge().getInteractionController().swipe(segments, segmentSteps); } /** @@ -476,7 +479,7 @@ public class UiDevice { */ public void waitForIdle(long timeout) { Tracer.trace(timeout); - mUiAutomationBridge.waitForIdle(timeout); + getAutomatorBridge().waitForIdle(timeout); } /** @@ -488,7 +491,7 @@ public class UiDevice { @Deprecated public String getCurrentActivityName() { Tracer.trace(); - return mUiAutomationBridge.getQueryController().getCurrentActivityName(); + return getAutomatorBridge().getQueryController().getCurrentActivityName(); } /** @@ -498,7 +501,7 @@ public class UiDevice { */ public String getCurrentPackageName() { Tracer.trace(); - return mUiAutomationBridge.getQueryController().getCurrentPackageName(); + return getAutomatorBridge().getQueryController().getCurrentPackageName(); } /** @@ -620,7 +623,7 @@ public class UiDevice { public boolean isNaturalOrientation() { Tracer.trace(); waitForIdle(); - int ret = mUiAutomationBridge.getRotation(); + int ret = getAutomatorBridge().getRotation(); return ret == UiAutomation.ROTATION_FREEZE_0 || ret == UiAutomation.ROTATION_FREEZE_180; } @@ -632,7 +635,7 @@ public class UiDevice { public int getDisplayRotation() { Tracer.trace(); waitForIdle(); - return mUiAutomationBridge.getRotation(); + return getAutomatorBridge().getRotation(); } /** @@ -756,7 +759,7 @@ public class UiDevice { AccessibilityNodeInfo root = getAutomatorBridge().getQueryController().getAccessibilityRootNode(); if(root != null) { - Display display = mUiAutomationBridge.getDefaultDisplay(); + Display display = getAutomatorBridge().getDefaultDisplay(); Point size = new Point(); display.getSize(size); AccessibilityNodeInfoDumper.dumpWindowToFile(root, @@ -840,6 +843,6 @@ public class UiDevice { */ public boolean takeScreenshot(File storePath, float scale, int quality) { Tracer.trace(storePath, scale, quality); - return mUiAutomationBridge.takeScreenshot(storePath, quality); + return getAutomatorBridge().takeScreenshot(storePath, quality); } } diff --git a/library/core-src/com/android/uiautomator/core/UiObject.java b/library/core-src/com/android/uiautomator/core/UiObject.java index 9fdfae5..4862ca5 100644 --- a/library/core-src/com/android/uiautomator/core/UiObject.java +++ b/library/core-src/com/android/uiautomator/core/UiObject.java @@ -65,7 +65,6 @@ public class UiObject { protected static final int FINGER_TOUCH_HALF_WIDTH = 20; private final UiSelector mSelector; - private final UiAutomatorBridge mUiAutomationBridge; private final Configurator mConfig = Configurator.getInstance(); @@ -76,7 +75,6 @@ public class UiObject { * @since API Level 16 */ public UiObject(UiSelector selector) { - mUiAutomationBridge = UiDevice.getInstance().getAutomatorBridge(); mSelector = selector; } @@ -99,7 +97,7 @@ public class UiObject { * @return {@link QueryController} */ QueryController getQueryController() { - return mUiAutomationBridge.getQueryController(); + return UiDevice.getInstance().getAutomatorBridge().getQueryController(); } /** @@ -109,7 +107,7 @@ public class UiObject { * @return {@link InteractionController} */ InteractionController getInteractionController() { - return mUiAutomationBridge.getInteractionController(); + return UiDevice.getInstance().getAutomatorBridge().getInteractionController(); } /** |