diff --git a/wa/workloads/pcmark/com.arm.wa.uiauto.pcmark.apk b/wa/workloads/pcmark/com.arm.wa.uiauto.pcmark.apk index 74af261f..4d20fe7c 100644 Binary files a/wa/workloads/pcmark/com.arm.wa.uiauto.pcmark.apk and b/wa/workloads/pcmark/com.arm.wa.uiauto.pcmark.apk differ diff --git a/wa/workloads/pcmark/uiauto/app/src/main/java/com/arm/wa/uiauto/pcmark/UiAutomation.java b/wa/workloads/pcmark/uiauto/app/src/main/java/com/arm/wa/uiauto/pcmark/UiAutomation.java index ae4f653b..ca2968e0 100755 --- a/wa/workloads/pcmark/uiauto/app/src/main/java/com/arm/wa/uiauto/pcmark/UiAutomation.java +++ b/wa/workloads/pcmark/uiauto/app/src/main/java/com/arm/wa/uiauto/pcmark/UiAutomation.java @@ -37,6 +37,7 @@ public class UiAutomation extends BaseUiAutomation { private int networkTimeoutSecs = 30; private long networkTimeout = TimeUnit.SECONDS.toMillis(networkTimeoutSecs); public static String TAG = "UXPERF"; + public static final long WAIT_TIMEOUT_5SEC = TimeUnit.SECONDS.toMillis(5); @Before public void initialize(){ @@ -45,6 +46,7 @@ public class UiAutomation extends BaseUiAutomation { @Test public void setup() throws Exception{ + dismissPopup(); setScreenOrientation(ScreenOrientation.NATURAL); loadBenchmarks(); installBenchmark(); @@ -60,6 +62,18 @@ public class UiAutomation extends BaseUiAutomation { unsetScreenOrientation(); } + // If we run the app in newer Android we'll get a popup complaining about + // that, silently accept it and carry on. + // This function should act as a NOP if no popup appears. + public void dismissPopup() throws Exception { + UiObject acceptButton = + mDevice.findObject(new UiSelector().resourceId("android:id/button1") + .className("android.widget.Button")); + if (acceptButton.waitForExists(WAIT_TIMEOUT_5SEC)) { + acceptButton.click(); + } + } + //Swipe to benchmarks and back to initialise the app correctly private void loadBenchmarks() throws Exception { UiObject title =