From 16a56e56a73aed90e3fe8f3488876941c31ad952 Mon Sep 17 00:00:00 2001
From: Robert Wu <85952307+robertwu1@users.noreply.github.com>
Date: Tue, 5 May 2026 14:52:56 -0700
Subject: [PATCH] OboeTester: Add watch support
---
apps/OboeTester/app/build.gradle | 9 +++
.../app/src/main/AndroidManifest.xml | 70 +++++++------------
.../activity_audio_workload_test_runner.xml | 20 ++++--
.../layout/activity_cold_start_latency.xml | 33 +++++----
.../main/res/layout/activity_data_paths.xml | 7 ++
.../res/layout/activity_error_callback.xml | 17 ++++-
.../layout/activity_external_tap_to_tone.xml | 7 ++
.../main/res/layout/activity_extra_tests.xml | 20 +++++-
.../app/src/main/res/layout/activity_main.xml | 9 ++-
.../main/res/layout/activity_rapid_cycle.xml | 23 ++++--
.../main/res/layout/activity_reverse_jni.xml | 7 ++
.../res/layout/activity_routing_crash.xml | 23 ++++--
.../main/res/layout/activity_rt_latency.xml | 3 +-
.../res/layout/activity_test_disconnect.xml | 20 ++++--
.../main/res/layout/activity_test_input.xml | 3 +-
.../main/res/layout/activity_test_output.xml | 3 +-
.../main/res/layout/merge_audio_common.xml | 20 +++---
.../app/src/main/res/values-watch/dimens.xml | 5 ++
.../src/main/res/values-watch/integers.xml | 6 ++
.../app/src/main/res/values/integers.xml | 6 ++
.../app/src/main/res/values/strings.xml | 4 +-
.../app/src/watch/AndroidManifest.xml | 12 ++++
22 files changed, 223 insertions(+), 104 deletions(-)
create mode 100644 apps/OboeTester/app/src/main/res/values-watch/dimens.xml
create mode 100644 apps/OboeTester/app/src/main/res/values-watch/integers.xml
create mode 100644 apps/OboeTester/app/src/main/res/values/integers.xml
create mode 100644 apps/OboeTester/app/src/watch/AndroidManifest.xml
diff --git a/apps/OboeTester/app/build.gradle b/apps/OboeTester/app/build.gradle
index 10f20bdf3..22020961f 100644
--- a/apps/OboeTester/app/build.gradle
+++ b/apps/OboeTester/app/build.gradle
@@ -25,6 +25,15 @@ android {
jniDebuggable true
}
}
+ flavorDimensions = ["device"]
+ productFlavors {
+ mobile {
+ dimension "device"
+ }
+ watch {
+ dimension "device"
+ }
+ }
externalNativeBuild {
cmake {
path "CMakeLists.txt"
diff --git a/apps/OboeTester/app/src/main/AndroidManifest.xml b/apps/OboeTester/app/src/main/AndroidManifest.xml
index ba91a8a3d..bcf73af0c 100644
--- a/apps/OboeTester/app/src/main/AndroidManifest.xml
+++ b/apps/OboeTester/app/src/main/AndroidManifest.xml
@@ -20,6 +20,9 @@
+
@@ -41,7 +44,6 @@
@@ -52,104 +54,82 @@
+ android:label="@string/title_activity_test_output" />
+ android:label="@string/title_activity_test_input" />
+ android:label="@string/title_activity_output_latency" />
+ android:label="@string/title_activity_recorder" />
+ android:label="@string/title_activity_echo" />
+ android:label="@string/title_activity_rt_latency" />
+ android:label="@string/title_activity_glitches" />
+ android:label="@string/title_activity_auto_glitches" />
+ android:label="@string/title_test_disconnect" />
+ android:label="@string/title_report_devices" />
+ android:label="@string/title_data_paths" />
+ android:label="@string/title_extra_tests" />
+ android:exported="true" />
+ android:exported="true" />
+ android:exported="true" />
+ android:exported="true" />
+ android:exported="true" />
+ android:exported="true" />
+ android:exported="true" />
+ android:exported="true" />
+ android:exported="true" />
+ android:exported="true" />
+
+
-
+ android:columnCount="@integer/action_buttons_columns">
-
-
+
+
diff --git a/apps/OboeTester/app/src/main/res/layout/activity_cold_start_latency.xml b/apps/OboeTester/app/src/main/res/layout/activity_cold_start_latency.xml
index 063e02055..5c93fb91f 100644
--- a/apps/OboeTester/app/src/main/res/layout/activity_cold_start_latency.xml
+++ b/apps/OboeTester/app/src/main/res/layout/activity_cold_start_latency.xml
@@ -28,6 +28,12 @@
+
+
-
+ android:columnCount="@integer/main_grid_columns">
-
+
-
+ android:columnCount="@integer/action_buttons_columns">
+ android:text="Start" />
-
+ android:text="Stop" />
+
+
diff --git a/apps/OboeTester/app/src/main/res/layout/activity_data_paths.xml b/apps/OboeTester/app/src/main/res/layout/activity_data_paths.xml
index 590c11fb9..ba0d724b6 100644
--- a/apps/OboeTester/app/src/main/res/layout/activity_data_paths.xml
+++ b/apps/OboeTester/app/src/main/res/layout/activity_data_paths.xml
@@ -28,6 +28,12 @@
+
+
+
diff --git a/apps/OboeTester/app/src/main/res/layout/activity_error_callback.xml b/apps/OboeTester/app/src/main/res/layout/activity_error_callback.xml
index d6b29603d..5e0c337a3 100644
--- a/apps/OboeTester/app/src/main/res/layout/activity_error_callback.xml
+++ b/apps/OboeTester/app/src/main/res/layout/activity_error_callback.xml
@@ -28,13 +28,24 @@
+
+
+
+
+
+
diff --git a/apps/OboeTester/app/src/main/res/layout/activity_external_tap_to_tone.xml b/apps/OboeTester/app/src/main/res/layout/activity_external_tap_to_tone.xml
index 7df9c72f1..4a8ca6813 100644
--- a/apps/OboeTester/app/src/main/res/layout/activity_external_tap_to_tone.xml
+++ b/apps/OboeTester/app/src/main/res/layout/activity_external_tap_to_tone.xml
@@ -27,6 +27,12 @@
+
+
+
diff --git a/apps/OboeTester/app/src/main/res/layout/activity_extra_tests.xml b/apps/OboeTester/app/src/main/res/layout/activity_extra_tests.xml
index 206b87697..61912bf76 100644
--- a/apps/OboeTester/app/src/main/res/layout/activity_extra_tests.xml
+++ b/apps/OboeTester/app/src/main/res/layout/activity_extra_tests.xml
@@ -28,13 +28,24 @@
+
+
+
+
+
+
diff --git a/apps/OboeTester/app/src/main/res/layout/activity_main.xml b/apps/OboeTester/app/src/main/res/layout/activity_main.xml
index 314c89179..d48d8ef4f 100644
--- a/apps/OboeTester/app/src/main/res/layout/activity_main.xml
+++ b/apps/OboeTester/app/src/main/res/layout/activity_main.xml
@@ -29,6 +29,12 @@
+
+
+ android:columnCount="@integer/main_grid_columns" >
+
diff --git a/apps/OboeTester/app/src/main/res/layout/activity_rapid_cycle.xml b/apps/OboeTester/app/src/main/res/layout/activity_rapid_cycle.xml
index 1548c8f6b..afd6ae661 100644
--- a/apps/OboeTester/app/src/main/res/layout/activity_rapid_cycle.xml
+++ b/apps/OboeTester/app/src/main/res/layout/activity_rapid_cycle.xml
@@ -28,6 +28,12 @@
+
+
-
+ android:columnCount="@integer/action_buttons_columns">
-
+
+
diff --git a/apps/OboeTester/app/src/main/res/layout/activity_reverse_jni.xml b/apps/OboeTester/app/src/main/res/layout/activity_reverse_jni.xml
index 6409874f1..9355849ac 100644
--- a/apps/OboeTester/app/src/main/res/layout/activity_reverse_jni.xml
+++ b/apps/OboeTester/app/src/main/res/layout/activity_reverse_jni.xml
@@ -28,6 +28,12 @@
+
+
+
diff --git a/apps/OboeTester/app/src/main/res/layout/activity_routing_crash.xml b/apps/OboeTester/app/src/main/res/layout/activity_routing_crash.xml
index d66eac388..7e89722b5 100644
--- a/apps/OboeTester/app/src/main/res/layout/activity_routing_crash.xml
+++ b/apps/OboeTester/app/src/main/res/layout/activity_routing_crash.xml
@@ -28,6 +28,12 @@
+
+
-
+ android:columnCount="@integer/action_buttons_columns">
-
+
+
diff --git a/apps/OboeTester/app/src/main/res/layout/activity_rt_latency.xml b/apps/OboeTester/app/src/main/res/layout/activity_rt_latency.xml
index 33f54dae1..0f0b958b6 100644
--- a/apps/OboeTester/app/src/main/res/layout/activity_rt_latency.xml
+++ b/apps/OboeTester/app/src/main/res/layout/activity_rt_latency.xml
@@ -81,6 +81,7 @@
-
+ android:columnCount="@integer/action_buttons_columns">
-
-
+
+
diff --git a/apps/OboeTester/app/src/main/res/layout/activity_test_input.xml b/apps/OboeTester/app/src/main/res/layout/activity_test_input.xml
index ad94a10ec..0340f1550 100644
--- a/apps/OboeTester/app/src/main/res/layout/activity_test_input.xml
+++ b/apps/OboeTester/app/src/main/res/layout/activity_test_input.xml
@@ -31,7 +31,8 @@
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
- android:layout_height="wrap_content"
+ android:layout_height="0dp"
+ android:layout_weight="1"
android:fillViewport="true"
tools:context="com.mobileer.oboetester.TestInputActivity"
>
diff --git a/apps/OboeTester/app/src/main/res/layout/activity_test_output.xml b/apps/OboeTester/app/src/main/res/layout/activity_test_output.xml
index 412281e99..3b9960650 100644
--- a/apps/OboeTester/app/src/main/res/layout/activity_test_output.xml
+++ b/apps/OboeTester/app/src/main/res/layout/activity_test_output.xml
@@ -32,7 +32,8 @@
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
- android:layout_height="wrap_content"
+ android:layout_height="0dp"
+ android:layout_weight="1"
android:fillViewport="true"
tools:context="com.mobileer.oboetester.TestOutputActivity"
>
diff --git a/apps/OboeTester/app/src/main/res/layout/merge_audio_common.xml b/apps/OboeTester/app/src/main/res/layout/merge_audio_common.xml
index 31303c097..d499fdd70 100644
--- a/apps/OboeTester/app/src/main/res/layout/merge_audio_common.xml
+++ b/apps/OboeTester/app/src/main/res/layout/merge_audio_common.xml
@@ -31,16 +31,16 @@
android:gravity="center"
android:orientation="horizontal" />
-
+ android:columnCount="@integer/audio_buttons_columns">
-
+
+
+ 6dp
+ 6dp
+
diff --git a/apps/OboeTester/app/src/main/res/values-watch/integers.xml b/apps/OboeTester/app/src/main/res/values-watch/integers.xml
new file mode 100644
index 000000000..50f661f71
--- /dev/null
+++ b/apps/OboeTester/app/src/main/res/values-watch/integers.xml
@@ -0,0 +1,6 @@
+
+
+ 1
+ 3
+ 1
+
diff --git a/apps/OboeTester/app/src/main/res/values/integers.xml b/apps/OboeTester/app/src/main/res/values/integers.xml
new file mode 100644
index 000000000..dd9f9df3b
--- /dev/null
+++ b/apps/OboeTester/app/src/main/res/values/integers.xml
@@ -0,0 +1,6 @@
+
+
+ 2
+ 7
+ 2
+
diff --git a/apps/OboeTester/app/src/main/res/values/strings.xml b/apps/OboeTester/app/src/main/res/values/strings.xml
index 3edbabf57..9ccfcb663 100644
--- a/apps/OboeTester/app/src/main/res/values/strings.xml
+++ b/apps/OboeTester/app/src/main/res/values/strings.xml
@@ -13,7 +13,7 @@
Close
Record
Play
- Measure
+ Test
Cancel
Scan
Clear
@@ -280,7 +280,7 @@
CPUs:
SRC:
- Average
+ Avg
Fail
Skip
Attach peripherals\nVolume up, [START]
diff --git a/apps/OboeTester/app/src/watch/AndroidManifest.xml b/apps/OboeTester/app/src/watch/AndroidManifest.xml
new file mode 100644
index 000000000..9824de042
--- /dev/null
+++ b/apps/OboeTester/app/src/watch/AndroidManifest.xml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+