From ee44b863d7e04d0643961b4342806c363ce89df0 Mon Sep 17 00:00:00 2001 From: Tom Chan <tomchan@google.com> Date: Tue, 30 Jan 2024 16:55:12 +0000 Subject: [PATCH] Add STATUS_UNSUPPORTED_OPERATION status code. Put it in its own CL and behind its own flag because it will be used by multiple features. This prevents rollback of one feature from affecting another feature. Bug: 301427767 Test: It builds. Change-Id: I25f0f4ebea16d8db6789ee060d1b30de9eb7113a --- AconfigFlags.bp | 14 ++++++++++++++ core/api/system-current.txt | 1 + .../app/wearable/WearableSensingManager.java | 11 ++++++++++- core/java/android/app/wearable/flags.aconfig | 8 ++++++++ 4 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 core/java/android/app/wearable/flags.aconfig diff --git a/AconfigFlags.bp b/AconfigFlags.bp index 0ee7ace5f661..e6e835b05295 100644 --- a/AconfigFlags.bp +++ b/AconfigFlags.bp @@ -19,6 +19,7 @@ aconfig_srcjars = [ ":android.app.flags-aconfig-java{.generated_srcjars}", ":android.app.smartspace.flags-aconfig-java{.generated_srcjars}", ":android.app.usage.flags-aconfig-java{.generated_srcjars}", + ":android.app.wearable.flags-aconfig-java{.generated_srcjars}", ":android.appwidget.flags-aconfig-java{.generated_srcjars}", ":android.chre.flags-aconfig-java{.generated_srcjars}", ":android.companion.flags-aconfig-java{.generated_srcjars}", @@ -1123,3 +1124,16 @@ java_aconfig_library { ], defaults: ["framework-minus-apex-aconfig-java-defaults"], } + +// Wearable Sensing +aconfig_declarations { + name: "android.app.wearable.flags-aconfig", + package: "android.app.wearable", + srcs: ["core/java/android/app/wearable/*.aconfig"], +} + +java_aconfig_library { + name: "android.app.wearable.flags-aconfig-java", + aconfig_declarations: "android.app.wearable.flags-aconfig", + defaults: ["framework-minus-apex-aconfig-java-defaults"], +} diff --git a/core/api/system-current.txt b/core/api/system-current.txt index 3b18dac88c5f..1ac5cd562f5c 100644 --- a/core/api/system-current.txt +++ b/core/api/system-current.txt @@ -3157,6 +3157,7 @@ package android.app.wearable { field public static final int STATUS_SUCCESS = 1; // 0x1 field public static final int STATUS_UNKNOWN = 0; // 0x0 field public static final int STATUS_UNSUPPORTED = 2; // 0x2 + field @FlaggedApi("android.app.wearable.enable_unsupported_operation_status_code") public static final int STATUS_UNSUPPORTED_OPERATION = 6; // 0x6 field public static final int STATUS_WEARABLE_UNAVAILABLE = 4; // 0x4 } diff --git a/core/java/android/app/wearable/WearableSensingManager.java b/core/java/android/app/wearable/WearableSensingManager.java index f1ca0864a6dd..eca0039c20f4 100644 --- a/core/java/android/app/wearable/WearableSensingManager.java +++ b/core/java/android/app/wearable/WearableSensingManager.java @@ -18,6 +18,7 @@ package android.app.wearable; import android.Manifest; import android.annotation.CallbackExecutor; +import android.annotation.FlaggedApi; import android.annotation.IntDef; import android.annotation.NonNull; import android.annotation.Nullable; @@ -99,6 +100,13 @@ public class WearableSensingManager { */ public static final int STATUS_ACCESS_DENIED = 5; + /** + * The value of the status code that indicates the method called is not supported by the + * implementation of {@link WearableSensingService}. + */ + @FlaggedApi(Flags.FLAG_ENABLE_UNSUPPORTED_OPERATION_STATUS_CODE) + public static final int STATUS_UNSUPPORTED_OPERATION = 6; + /** @hide */ @IntDef(prefix = { "STATUS_" }, value = { STATUS_UNKNOWN, @@ -106,7 +114,8 @@ public class WearableSensingManager { STATUS_UNSUPPORTED, STATUS_SERVICE_UNAVAILABLE, STATUS_WEARABLE_UNAVAILABLE, - STATUS_ACCESS_DENIED + STATUS_ACCESS_DENIED, + STATUS_UNSUPPORTED_OPERATION }) @Retention(RetentionPolicy.SOURCE) public @interface StatusCode {} diff --git a/core/java/android/app/wearable/flags.aconfig b/core/java/android/app/wearable/flags.aconfig new file mode 100644 index 000000000000..074ce9bb0e82 --- /dev/null +++ b/core/java/android/app/wearable/flags.aconfig @@ -0,0 +1,8 @@ +package: "android.app.wearable" + +flag { + name: "enable_unsupported_operation_status_code" + namespace: "machine_learning" + description: "This flag enables the WearableSensingManager#STATUS_UNSUPPORTED_OPERATION status code API." + bug: "301427767" +} \ No newline at end of file -- GitLab