Skip to content
Snippets Groups Projects
Commit 5e92d2e2 authored by Daniel Norman's avatar Daniel Norman
Browse files

Prepares the main looper for UiAutomator shell command.

The underlying UiAutomation object uses classes which expect
the main looper to have been prepared.

Fix: 289444999
Test: adb shell uiautomator dump
Test: Use go/hsv to take a snapshot
Change-Id: I43fcc4e9b4c1ab6e09aacd73f638208094641554
parent 1c547cdb
No related branches found
No related tags found
No related merge requests found
......@@ -8,6 +8,7 @@ import android.app.UiAutomation;
import android.app.UiAutomationConnection;
import android.content.Intent;
import android.os.HandlerThread;
import android.os.Looper;
import android.os.RemoteException;
/**
......@@ -26,6 +27,10 @@ public class UiAutomationShellWrapper {
throw new IllegalStateException("Already connected!");
}
mHandlerThread.start();
// The AccessibilityInteractionClient used by UiAutomation expects the main looper to
// be prepared. In most contexts this is normally done automatically, but must be called
// explicitly here because this is a shell tool.
Looper.prepareMainLooper();
mUiAutomation = new UiAutomation(mHandlerThread.getLooper(),
new UiAutomationConnection());
mUiAutomation.connect();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment