summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Anton Hansson <hansson@google.com> 2023-11-09 19:11:54 +0000
committer Anton Hansson <hansson@google.com> 2023-11-10 16:21:29 +0000
commitfaf2ba91259b85dc02a86253b65b25d35a6d2ec5 (patch)
tree251fbcc69200d8a999b4c3342dfce91d23c0a917
parente3ea9b5d8300d44a9cd1a82a6a8bc2702559dd09 (diff)
Make all typedefs SOURCE retention
The default retention is CLASS, but the correct retention is SOURCE. There is a metalava check for typedef annotations correctly, but that check is currently disabled. This is part of the work required to re-enable that check. Bug: 309971481 Test: m checkapi Change-Id: I386efea9321bd2adb2722710056b1d57dd5401f5
-rw-r--r--core/api/system-current.txt2
-rw-r--r--core/java/android/accessibilityservice/AccessibilityServiceInfo.java1
-rw-r--r--core/java/android/accessibilityservice/TouchInteractionController.java3
-rw-r--r--core/java/android/app/Activity.java4
-rw-r--r--core/java/android/app/ActivityManager.java1
-rw-r--r--core/java/android/app/KeyguardManager.java3
-rw-r--r--core/java/android/app/Notification.java1
-rw-r--r--core/java/android/app/WindowConfiguration.java4
-rw-r--r--core/java/android/app/admin/DeviceAdminInfo.java3
-rw-r--r--core/java/android/app/ambientcontext/AmbientContextEvent.java8
-rw-r--r--core/java/android/app/ambientcontext/AmbientContextManager.java6
-rw-r--r--core/java/android/app/cloudsearch/SearchResponse.java3
-rw-r--r--core/java/android/app/wearable/WearableSensingManager.java6
-rw-r--r--core/java/android/content/res/Configuration.java2
-rw-r--r--core/java/android/hardware/biometrics/BiometricManager.java1
-rw-r--r--core/java/android/hardware/hdmi/HdmiControlManager.java3
-rw-r--r--core/java/android/hardware/usb/UsbManager.java5
-rw-r--r--core/java/android/os/RecoverySystem.java3
-rw-r--r--core/java/android/os/UpdateEngine.java4
-rw-r--r--core/java/android/os/storage/StorageManager.java1
-rw-r--r--core/java/android/service/notification/NotificationListenerService.java2
-rw-r--r--core/java/android/service/voice/HotwordDetectedResult.java1
-rw-r--r--core/java/android/service/voice/HotwordRejectedResult.java4
-rw-r--r--core/java/android/view/WindowManager.java3
-rw-r--r--core/java/android/view/inputmethod/HandwritingGesture.java1
-rw-r--r--core/java/android/window/BackNavigationInfo.java4
-rw-r--r--core/java/android/window/SplashScreen.java3
-rw-r--r--graphics/java/android/graphics/Mesh.java3
-rw-r--r--graphics/java/android/graphics/drawable/Icon.java3
-rw-r--r--media/java/android/media/AudioHalVersionInfo.java3
-rw-r--r--media/java/android/media/Spatializer.java12
-rw-r--r--telecomm/java/android/telecom/CallAttributes.java5
-rw-r--r--telephony/java/android/telephony/NumberVerificationCallback.java4
-rw-r--r--telephony/java/android/telephony/PinResult.java3
-rw-r--r--telephony/java/android/telephony/TelephonyManager.java4
-rw-r--r--telephony/java/android/telephony/data/ThrottleStatus.java4
-rw-r--r--telephony/java/android/telephony/ims/MediaQualityStatus.java3
-rw-r--r--telephony/java/android/telephony/ims/RcsClientConfiguration.java3
38 files changed, 120 insertions, 9 deletions
diff --git a/core/api/system-current.txt b/core/api/system-current.txt
index 8d480e5bc8f4..e33e4d78a453 100644
--- a/core/api/system-current.txt
+++ b/core/api/system-current.txt
@@ -4762,7 +4762,7 @@ package android.hardware.hdmi {
method public void onChange(@NonNull String);
}
- @IntDef({android.hardware.hdmi.HdmiControlManager.RESULT_SUCCESS, android.hardware.hdmi.HdmiControlManager.RESULT_TIMEOUT, android.hardware.hdmi.HdmiControlManager.RESULT_SOURCE_NOT_AVAILABLE, android.hardware.hdmi.HdmiControlManager.RESULT_TARGET_NOT_AVAILABLE, android.hardware.hdmi.HdmiControlManager.RESULT_ALREADY_IN_PROGRESS, android.hardware.hdmi.HdmiControlManager.RESULT_EXCEPTION, android.hardware.hdmi.HdmiControlManager.RESULT_INCORRECT_MODE, android.hardware.hdmi.HdmiControlManager.RESULT_COMMUNICATION_FAILED}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) public static @interface HdmiControlManager.ControlCallbackResult {
+ @IntDef({android.hardware.hdmi.HdmiControlManager.RESULT_SUCCESS, android.hardware.hdmi.HdmiControlManager.RESULT_TIMEOUT, android.hardware.hdmi.HdmiControlManager.RESULT_SOURCE_NOT_AVAILABLE, android.hardware.hdmi.HdmiControlManager.RESULT_TARGET_NOT_AVAILABLE, android.hardware.hdmi.HdmiControlManager.RESULT_ALREADY_IN_PROGRESS, android.hardware.hdmi.HdmiControlManager.RESULT_EXCEPTION, android.hardware.hdmi.HdmiControlManager.RESULT_INCORRECT_MODE, android.hardware.hdmi.HdmiControlManager.RESULT_COMMUNICATION_FAILED}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface HdmiControlManager.ControlCallbackResult {
}
public static interface HdmiControlManager.HotplugEventListener {
diff --git a/core/java/android/accessibilityservice/AccessibilityServiceInfo.java b/core/java/android/accessibilityservice/AccessibilityServiceInfo.java
index 3f9cc65ba1db..8ad6ea207665 100644
--- a/core/java/android/accessibilityservice/AccessibilityServiceInfo.java
+++ b/core/java/android/accessibilityservice/AccessibilityServiceInfo.java
@@ -632,6 +632,7 @@ public class AccessibilityServiceInfo implements Parcelable {
InputDevice.SOURCE_JOYSTICK,
InputDevice.SOURCE_SENSOR
})
+ @Retention(RetentionPolicy.SOURCE)
public @interface MotionEventSources {}
/**
diff --git a/core/java/android/accessibilityservice/TouchInteractionController.java b/core/java/android/accessibilityservice/TouchInteractionController.java
index af00f316de7b..6ec956ee7783 100644
--- a/core/java/android/accessibilityservice/TouchInteractionController.java
+++ b/core/java/android/accessibilityservice/TouchInteractionController.java
@@ -24,6 +24,8 @@ import android.util.ArrayMap;
import android.view.MotionEvent;
import android.view.accessibility.AccessibilityInteractionClient;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
import java.util.LinkedList;
import java.util.Queue;
import java.util.concurrent.Executor;
@@ -92,6 +94,7 @@ public final class TouchInteractionController {
STATE_DRAGGING,
STATE_DELEGATING
})
+ @Retention(RetentionPolicy.SOURCE)
private @interface State {}
// The maximum number of pointers that can be touching the screen at once. (See MAX_POINTER_ID
diff --git a/core/java/android/app/Activity.java b/core/java/android/app/Activity.java
index be433d2ab0f2..ed18d81d7914 100644
--- a/core/java/android/app/Activity.java
+++ b/core/java/android/app/Activity.java
@@ -23,7 +23,9 @@ import static android.Manifest.permission.INTERACT_ACROSS_USERS_FULL;
import static android.app.WindowConfiguration.WINDOWING_MODE_PINNED;
import static android.app.WindowConfiguration.inMultiWindowMode;
import static android.os.Process.myUid;
+
import static com.android.sdksandbox.flags.Flags.sandboxActivitySdkBasedContext;
+
import static java.lang.Character.MIN_VALUE;
import android.annotation.AnimRes;
@@ -1000,6 +1002,7 @@ public class Activity extends ContextThemeWrapper
FULLSCREEN_MODE_REQUEST_EXIT,
FULLSCREEN_MODE_REQUEST_ENTER
})
+ @Retention(RetentionPolicy.SOURCE)
public @interface FullscreenModeRequest {}
/** Request type of {@link #requestFullscreenMode(int, OutcomeReceiver)}, to request exiting the
@@ -1016,6 +1019,7 @@ public class Activity extends ContextThemeWrapper
OVERRIDE_TRANSITION_OPEN,
OVERRIDE_TRANSITION_CLOSE
})
+ @Retention(RetentionPolicy.SOURCE)
public @interface OverrideTransition {}
/**
diff --git a/core/java/android/app/ActivityManager.java b/core/java/android/app/ActivityManager.java
index 8b4ebaee04c5..854e12177fb5 100644
--- a/core/java/android/app/ActivityManager.java
+++ b/core/java/android/app/ActivityManager.java
@@ -4998,6 +4998,7 @@ public class ActivityManager {
STOP_USER_ON_SWITCH_TRUE,
STOP_USER_ON_SWITCH_FALSE
})
+ @Retention(RetentionPolicy.SOURCE)
public @interface StopUserOnSwitch {}
/**
diff --git a/core/java/android/app/KeyguardManager.java b/core/java/android/app/KeyguardManager.java
index 545ba8e81f62..6aad1682466d 100644
--- a/core/java/android/app/KeyguardManager.java
+++ b/core/java/android/app/KeyguardManager.java
@@ -64,6 +64,8 @@ import com.android.internal.widget.LockscreenCredential;
import com.android.internal.widget.PasswordValidationError;
import com.android.internal.widget.VerifyCredentialResponse;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
import java.nio.charset.Charset;
import java.util.Arrays;
import java.util.List;
@@ -235,6 +237,7 @@ public class KeyguardManager {
PIN,
PATTERN
})
+ @Retention(RetentionPolicy.SOURCE)
@interface LockTypes {}
private final IKeyguardLockedStateListener mIKeyguardLockedStateListener =
diff --git a/core/java/android/app/Notification.java b/core/java/android/app/Notification.java
index 2d80b1ffca6c..337e3f1195be 100644
--- a/core/java/android/app/Notification.java
+++ b/core/java/android/app/Notification.java
@@ -924,6 +924,7 @@ public class Notification implements Parcelable
VISIBILITY_SECRET,
NotificationManager.VISIBILITY_NO_OVERRIDE
})
+ @Retention(RetentionPolicy.SOURCE)
public @interface NotificationVisibilityOverride{};
/**
diff --git a/core/java/android/app/WindowConfiguration.java b/core/java/android/app/WindowConfiguration.java
index 019a1a8cb2a6..46216343dcff 100644
--- a/core/java/android/app/WindowConfiguration.java
+++ b/core/java/android/app/WindowConfiguration.java
@@ -42,6 +42,8 @@ import android.view.Surface;
import android.view.WindowManager;
import java.io.IOException;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
import java.util.Objects;
/**
@@ -120,6 +122,7 @@ public class WindowConfiguration implements Parcelable, Comparable<WindowConfigu
WINDOWING_MODE_PINNED,
WINDOWING_MODE_FREEFORM,
})
+ @Retention(RetentionPolicy.SOURCE)
public @interface WindowingMode {}
/** The current activity type of the configuration. */
@@ -147,6 +150,7 @@ public class WindowConfiguration implements Parcelable, Comparable<WindowConfigu
ACTIVITY_TYPE_ASSISTANT,
ACTIVITY_TYPE_DREAM,
})
+ @Retention(RetentionPolicy.SOURCE)
public @interface ActivityType {}
/** The current always on top status of the configuration. */
diff --git a/core/java/android/app/admin/DeviceAdminInfo.java b/core/java/android/app/admin/DeviceAdminInfo.java
index e4ee959336a5..14462b853c02 100644
--- a/core/java/android/app/admin/DeviceAdminInfo.java
+++ b/core/java/android/app/admin/DeviceAdminInfo.java
@@ -47,6 +47,8 @@ import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserException;
import java.io.IOException;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
import java.util.ArrayList;
import java.util.HashMap;
@@ -175,6 +177,7 @@ public final class DeviceAdminInfo implements Parcelable {
public static final int HEADLESS_DEVICE_OWNER_MODE_AFFILIATED = 1;
@IntDef({HEADLESS_DEVICE_OWNER_MODE_UNSUPPORTED, HEADLESS_DEVICE_OWNER_MODE_AFFILIATED})
+ @Retention(RetentionPolicy.SOURCE)
private @interface HeadlessDeviceOwnerMode {}
/** @hide */
diff --git a/core/java/android/app/ambientcontext/AmbientContextEvent.java b/core/java/android/app/ambientcontext/AmbientContextEvent.java
index a6595feed1f7..b5c66ffa72a1 100644
--- a/core/java/android/app/ambientcontext/AmbientContextEvent.java
+++ b/core/java/android/app/ambientcontext/AmbientContextEvent.java
@@ -86,7 +86,9 @@ public final class AmbientContextEvent implements Parcelable {
EVENT_SNORE,
EVENT_BACK_DOUBLE_TAP,
EVENT_VENDOR_WEARABLE_START,
- }) public @interface EventCode {}
+ })
+ @Retention(RetentionPolicy.SOURCE)
+ public @interface EventCode {}
/** The integer indicating an unknown level. */
public static final int LEVEL_UNKNOWN = 0;
@@ -114,7 +116,9 @@ public final class AmbientContextEvent implements Parcelable {
LEVEL_MEDIUM,
LEVEL_MEDIUM_HIGH,
LEVEL_HIGH
- }) public @interface LevelValue {}
+ })
+ @Retention(RetentionPolicy.SOURCE)
+ public @interface LevelValue {}
@EventCode private final int mEventType;
private static int defaultEventType() {
diff --git a/core/java/android/app/ambientcontext/AmbientContextManager.java b/core/java/android/app/ambientcontext/AmbientContextManager.java
index bf383f1165c4..159481f82e39 100644
--- a/core/java/android/app/ambientcontext/AmbientContextManager.java
+++ b/core/java/android/app/ambientcontext/AmbientContextManager.java
@@ -32,6 +32,8 @@ import android.os.RemoteException;
import com.android.internal.util.Preconditions;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
@@ -106,7 +108,9 @@ public final class AmbientContextManager {
STATUS_SERVICE_UNAVAILABLE,
STATUS_MICROPHONE_DISABLED,
STATUS_ACCESS_DENIED
- }) public @interface StatusCode {}
+ })
+ @Retention(RetentionPolicy.SOURCE)
+ public @interface StatusCode {}
/**
* Allows clients to retrieve the list of {@link AmbientContextEvent}s from the intent.
diff --git a/core/java/android/app/cloudsearch/SearchResponse.java b/core/java/android/app/cloudsearch/SearchResponse.java
index c86142e0d22d..dab1657d60d0 100644
--- a/core/java/android/app/cloudsearch/SearchResponse.java
+++ b/core/java/android/app/cloudsearch/SearchResponse.java
@@ -21,6 +21,8 @@ import android.annotation.SystemApi;
import android.os.Parcel;
import android.os.Parcelable;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
import java.util.ArrayList;
import java.util.List;
@@ -37,6 +39,7 @@ public final class SearchResponse implements Parcelable {
SEARCH_STATUS_OK,
SEARCH_STATUS_TIME_OUT,
SEARCH_STATUS_NO_INTERNET})
+ @Retention(RetentionPolicy.SOURCE)
public @interface SearchStatusCode {
}
diff --git a/core/java/android/app/wearable/WearableSensingManager.java b/core/java/android/app/wearable/WearableSensingManager.java
index d0b4fe473148..f1ca0864a6dd 100644
--- a/core/java/android/app/wearable/WearableSensingManager.java
+++ b/core/java/android/app/wearable/WearableSensingManager.java
@@ -35,6 +35,8 @@ import android.os.SharedMemory;
import android.service.wearable.WearableSensingService;
import android.system.OsConstants;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
import java.util.concurrent.Executor;
import java.util.function.Consumer;
@@ -105,7 +107,9 @@ public class WearableSensingManager {
STATUS_SERVICE_UNAVAILABLE,
STATUS_WEARABLE_UNAVAILABLE,
STATUS_ACCESS_DENIED
- }) public @interface StatusCode {}
+ })
+ @Retention(RetentionPolicy.SOURCE)
+ public @interface StatusCode {}
private final Context mContext;
private final IWearableSensingManager mService;
diff --git a/core/java/android/content/res/Configuration.java b/core/java/android/content/res/Configuration.java
index 62630c8909d3..d27479299efa 100644
--- a/core/java/android/content/res/Configuration.java
+++ b/core/java/android/content/res/Configuration.java
@@ -163,6 +163,7 @@ public final class Configuration implements Parcelable, Comparable<Configuration
GRAMMATICAL_GENDER_FEMININE,
GRAMMATICAL_GENDER_MASCULINE,
})
+ @Retention(RetentionPolicy.SOURCE)
public @interface GrammaticalGender {}
/**
@@ -698,6 +699,7 @@ public final class Configuration implements Parcelable, Comparable<Configuration
ORIENTATION_LANDSCAPE,
ORIENTATION_SQUARE
})
+ @Retention(RetentionPolicy.SOURCE)
public @interface Orientation {
}
diff --git a/core/java/android/hardware/biometrics/BiometricManager.java b/core/java/android/hardware/biometrics/BiometricManager.java
index 90bbca8336e1..f82f79eba8c9 100644
--- a/core/java/android/hardware/biometrics/BiometricManager.java
+++ b/core/java/android/hardware/biometrics/BiometricManager.java
@@ -131,6 +131,7 @@ public class BiometricManager {
BIOMETRIC_CONVENIENCE,
DEVICE_CREDENTIAL,
})
+ @Retention(RetentionPolicy.SOURCE)
@interface Types {}
/**
diff --git a/core/java/android/hardware/hdmi/HdmiControlManager.java b/core/java/android/hardware/hdmi/HdmiControlManager.java
index b0b7a416c019..440585c845f8 100644
--- a/core/java/android/hardware/hdmi/HdmiControlManager.java
+++ b/core/java/android/hardware/hdmi/HdmiControlManager.java
@@ -159,6 +159,7 @@ public final class HdmiControlManager {
RESULT_INCORRECT_MODE,
RESULT_COMMUNICATION_FAILED,
})
+ @Retention(RetentionPolicy.SOURCE)
public @interface ControlCallbackResult {}
/** Control operation is successfully handled by the framework. */
@@ -1135,6 +1136,7 @@ public final class HdmiControlManager {
CEC_SETTING_NAME_QUERY_SAD_MAX,
SETTING_NAME_EARC_ENABLED,
})
+ @Retention(RetentionPolicy.SOURCE)
public @interface SettingName {}
/**
@@ -1157,6 +1159,7 @@ public final class HdmiControlManager {
CEC_SETTING_NAME_QUERY_SAD_WMAPRO,
CEC_SETTING_NAME_QUERY_SAD_MAX,
})
+ @Retention(RetentionPolicy.SOURCE)
public @interface CecSettingSad {}
// True if we have a logical device of type playback hosted in the system.
diff --git a/core/java/android/hardware/usb/UsbManager.java b/core/java/android/hardware/usb/UsbManager.java
index 889d3df0941a..81a023451f16 100644
--- a/core/java/android/hardware/usb/UsbManager.java
+++ b/core/java/android/hardware/usb/UsbManager.java
@@ -52,6 +52,8 @@ import android.util.Slog;
import com.android.internal.annotations.GuardedBy;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
@@ -738,6 +740,7 @@ public class UsbManager {
FUNCTION_NCM,
FUNCTION_UVC,
})
+ @Retention(RetentionPolicy.SOURCE)
public @interface UsbFunctionMode {}
/** @hide */
@@ -748,6 +751,7 @@ public class UsbManager {
GADGET_HAL_V1_2,
GADGET_HAL_V2_0,
})
+ @Retention(RetentionPolicy.SOURCE)
public @interface UsbGadgetHalVersion {}
/** @hide */
@@ -759,6 +763,7 @@ public class UsbManager {
USB_HAL_V1_3,
USB_HAL_V2_0,
})
+ @Retention(RetentionPolicy.SOURCE)
public @interface UsbHalVersion {}
/**
diff --git a/core/java/android/os/RecoverySystem.java b/core/java/android/os/RecoverySystem.java
index d4688f8794a4..f71c2695c677 100644
--- a/core/java/android/os/RecoverySystem.java
+++ b/core/java/android/os/RecoverySystem.java
@@ -57,6 +57,8 @@ import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.RandomAccessFile;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
import java.security.GeneralSecurityException;
import java.security.PublicKey;
import java.security.SignatureException;
@@ -166,6 +168,7 @@ public class RecoverySystem {
RESUME_ON_REBOOT_REBOOT_ERROR_LSKF_NOT_CAPTURED,
RESUME_ON_REBOOT_REBOOT_ERROR_SLOT_MISMATCH,
RESUME_ON_REBOOT_REBOOT_ERROR_PROVIDER_PREPARATION_FAILURE})
+ @Retention(RetentionPolicy.SOURCE)
public @interface ResumeOnRebootRebootErrorCode {}
/**
diff --git a/core/java/android/os/UpdateEngine.java b/core/java/android/os/UpdateEngine.java
index b7e3068a437c..0a8f62fd56d8 100644
--- a/core/java/android/os/UpdateEngine.java
+++ b/core/java/android/os/UpdateEngine.java
@@ -25,6 +25,9 @@ import android.os.IUpdateEngine;
import android.os.IUpdateEngineCallback;
import android.os.RemoteException;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+
/**
* UpdateEngine handles calls to the update engine which takes care of A/B OTA
* updates. It wraps up the update engine Binder APIs and exposes them as
@@ -178,6 +181,7 @@ public class UpdateEngine {
ErrorCodeConstants.NOT_ENOUGH_SPACE,
ErrorCodeConstants.DEVICE_CORRUPTED,
})
+ @Retention(RetentionPolicy.SOURCE)
public @interface ErrorCode {}
/**
diff --git a/core/java/android/os/storage/StorageManager.java b/core/java/android/os/storage/StorageManager.java
index 2d1802ae85e5..6853892348d9 100644
--- a/core/java/android/os/storage/StorageManager.java
+++ b/core/java/android/os/storage/StorageManager.java
@@ -2133,6 +2133,7 @@ public class StorageManager {
MOUNT_MODE_EXTERNAL_PASS_THROUGH,
MOUNT_MODE_EXTERNAL_ANDROID_WRITABLE
})
+ @Retention(RetentionPolicy.SOURCE)
/** @hide */
public @interface MountMode {}
diff --git a/core/java/android/service/notification/NotificationListenerService.java b/core/java/android/service/notification/NotificationListenerService.java
index 759953e4aca4..92c516c38dcc 100644
--- a/core/java/android/service/notification/NotificationListenerService.java
+++ b/core/java/android/service/notification/NotificationListenerService.java
@@ -309,6 +309,7 @@ public abstract class NotificationListenerService extends Service {
REASON_ASSISTANT_CANCEL,
REASON_LOCKDOWN,
})
+ @Retention(RetentionPolicy.SOURCE)
public @interface NotificationCancelReason{};
/**
@@ -320,6 +321,7 @@ public abstract class NotificationListenerService extends Service {
FLAG_FILTER_TYPE_SILENT,
FLAG_FILTER_TYPE_ONGOING
})
+ @Retention(RetentionPolicy.SOURCE)
public @interface NotificationFilterTypes {}
/**
* A flag value indicating that this notification listener can see conversation type
diff --git a/core/java/android/service/voice/HotwordDetectedResult.java b/core/java/android/service/voice/HotwordDetectedResult.java
index ff6dffdaaf5d..1e08fd8061e0 100644
--- a/core/java/android/service/voice/HotwordDetectedResult.java
+++ b/core/java/android/service/voice/HotwordDetectedResult.java
@@ -85,6 +85,7 @@ public final class HotwordDetectedResult implements Parcelable {
CONFIDENCE_LEVEL_HIGH,
CONFIDENCE_LEVEL_VERY_HIGH
})
+ @Retention(RetentionPolicy.SOURCE)
@interface HotwordConfidenceLevelValue {
}
diff --git a/core/java/android/service/voice/HotwordRejectedResult.java b/core/java/android/service/voice/HotwordRejectedResult.java
index 7b3f47d04e48..26c1ca428c3b 100644
--- a/core/java/android/service/voice/HotwordRejectedResult.java
+++ b/core/java/android/service/voice/HotwordRejectedResult.java
@@ -22,6 +22,9 @@ import android.os.Parcelable;
import com.android.internal.util.DataClass;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+
/**
* Represents a result supporting the rejected hotword trigger.
*
@@ -57,6 +60,7 @@ public final class HotwordRejectedResult implements Parcelable {
CONFIDENCE_LEVEL_MEDIUM,
CONFIDENCE_LEVEL_HIGH
})
+ @Retention(RetentionPolicy.SOURCE)
@interface HotwordConfidenceLevelValue {
}
diff --git a/core/java/android/view/WindowManager.java b/core/java/android/view/WindowManager.java
index c73514250e3b..d4bd9e5bab92 100644
--- a/core/java/android/view/WindowManager.java
+++ b/core/java/android/view/WindowManager.java
@@ -651,6 +651,7 @@ public interface WindowManager extends ViewManager {
REMOVE_CONTENT_MODE_MOVE_TO_PRIMARY,
REMOVE_CONTENT_MODE_DESTROY,
})
+ @Retention(RetentionPolicy.SOURCE)
@interface RemoveContentMode {}
/**
@@ -685,6 +686,7 @@ public interface WindowManager extends ViewManager {
DISPLAY_IME_POLICY_FALLBACK_DISPLAY,
DISPLAY_IME_POLICY_HIDE,
})
+ @Retention(RetentionPolicy.SOURCE)
@interface DisplayImePolicy {}
/**
@@ -3349,6 +3351,7 @@ public interface WindowManager extends ViewManager {
PRIVATE_FLAG_INTERCEPT_GLOBAL_DRAG_AND_DROP,
PRIVATE_FLAG_SYSTEM_APPLICATION_OVERLAY,
})
+ @Retention(RetentionPolicy.SOURCE)
public @interface PrivateFlags {}
/**
diff --git a/core/java/android/view/inputmethod/HandwritingGesture.java b/core/java/android/view/inputmethod/HandwritingGesture.java
index c4d43bcfdb24..eb2a101e8ee6 100644
--- a/core/java/android/view/inputmethod/HandwritingGesture.java
+++ b/core/java/android/view/inputmethod/HandwritingGesture.java
@@ -86,6 +86,7 @@ public abstract class HandwritingGesture {
* Granular level on which text should be operated.
*/
@IntDef({GRANULARITY_CHARACTER, GRANULARITY_WORD})
+ @Retention(RetentionPolicy.SOURCE)
@interface Granularity {}
/**
diff --git a/core/java/android/window/BackNavigationInfo.java b/core/java/android/window/BackNavigationInfo.java
index e44f43609256..4816f35e6a07 100644
--- a/core/java/android/window/BackNavigationInfo.java
+++ b/core/java/android/window/BackNavigationInfo.java
@@ -27,6 +27,9 @@ import android.os.Parcel;
import android.os.Parcelable;
import android.os.RemoteCallback;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+
/**
* Information to be sent to SysUI about a back event.
*
@@ -85,6 +88,7 @@ public final class BackNavigationInfo implements Parcelable {
TYPE_CROSS_TASK,
TYPE_CALLBACK
})
+ @Retention(RetentionPolicy.SOURCE)
public @interface BackTargetType {
}
diff --git a/core/java/android/window/SplashScreen.java b/core/java/android/window/SplashScreen.java
index f1c0d8dee525..b6c04d94b476 100644
--- a/core/java/android/window/SplashScreen.java
+++ b/core/java/android/window/SplashScreen.java
@@ -33,6 +33,8 @@ import android.util.Log;
import android.util.Singleton;
import android.util.Slog;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
import java.util.ArrayList;
/**
@@ -65,6 +67,7 @@ public interface SplashScreen {
SPLASH_SCREEN_STYLE_SOLID_COLOR,
SPLASH_SCREEN_STYLE_ICON
})
+ @Retention(RetentionPolicy.SOURCE)
@interface SplashScreenStyle {}
/**
diff --git a/graphics/java/android/graphics/Mesh.java b/graphics/java/android/graphics/Mesh.java
index 66fabec91924..a4bce9eb5e88 100644
--- a/graphics/java/android/graphics/Mesh.java
+++ b/graphics/java/android/graphics/Mesh.java
@@ -23,6 +23,8 @@ import android.annotation.NonNull;
import libcore.util.NativeAllocationRegistry;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
import java.nio.Buffer;
import java.nio.ShortBuffer;
@@ -43,6 +45,7 @@ public class Mesh {
* Determines how the mesh is represented and will be drawn.
*/
@IntDef({TRIANGLES, TRIANGLE_STRIP})
+ @Retention(RetentionPolicy.SOURCE)
private @interface Mode {}
/**
diff --git a/graphics/java/android/graphics/drawable/Icon.java b/graphics/java/android/graphics/drawable/Icon.java
index 5509f000aca5..45e29a88c7db 100644
--- a/graphics/java/android/graphics/drawable/Icon.java
+++ b/graphics/java/android/graphics/drawable/Icon.java
@@ -62,6 +62,8 @@ import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
import java.util.Arrays;
import java.util.Objects;
@@ -116,6 +118,7 @@ public final class Icon implements Parcelable {
*/
@IntDef({TYPE_BITMAP, TYPE_RESOURCE, TYPE_DATA, TYPE_URI, TYPE_ADAPTIVE_BITMAP,
TYPE_URI_ADAPTIVE_BITMAP})
+ @Retention(RetentionPolicy.SOURCE)
public @interface IconType {
}
diff --git a/media/java/android/media/AudioHalVersionInfo.java b/media/java/android/media/AudioHalVersionInfo.java
index 985a7584ffe2..0f48abeb6882 100644
--- a/media/java/android/media/AudioHalVersionInfo.java
+++ b/media/java/android/media/AudioHalVersionInfo.java
@@ -22,6 +22,8 @@ import android.annotation.TestApi;
import android.os.Parcel;
import android.os.Parcelable;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
import java.util.List;
/**
@@ -54,6 +56,7 @@ public final class AudioHalVersionInfo implements Parcelable, Comparable<AudioHa
flag = false,
prefix = "AUDIO_HAL_TYPE_",
value = {AUDIO_HAL_TYPE_HIDL, AUDIO_HAL_TYPE_AIDL})
+ @Retention(RetentionPolicy.SOURCE)
public @interface AudioHalType {}
/** AudioHalVersionInfo object of all valid Audio HAL versions. */
diff --git a/media/java/android/media/Spatializer.java b/media/java/android/media/Spatializer.java
index 74ca4b858ff6..99fcaf29688c 100644
--- a/media/java/android/media/Spatializer.java
+++ b/media/java/android/media/Spatializer.java
@@ -267,20 +267,26 @@ public class Spatializer {
HEAD_TRACKING_MODE_DISABLED,
HEAD_TRACKING_MODE_RELATIVE_WORLD,
HEAD_TRACKING_MODE_RELATIVE_DEVICE,
- }) public @interface HeadTrackingMode {};
+ })
+ @Retention(RetentionPolicy.SOURCE)
+ public @interface HeadTrackingMode {};
/** @hide */
@IntDef(flag = false, value = {
HEAD_TRACKING_MODE_DISABLED,
HEAD_TRACKING_MODE_RELATIVE_WORLD,
HEAD_TRACKING_MODE_RELATIVE_DEVICE,
- }) public @interface HeadTrackingModeSet {};
+ })
+ @Retention(RetentionPolicy.SOURCE)
+ public @interface HeadTrackingModeSet {};
/** @hide */
@IntDef(flag = false, value = {
HEAD_TRACKING_MODE_RELATIVE_WORLD,
HEAD_TRACKING_MODE_RELATIVE_DEVICE,
- }) public @interface HeadTrackingModeSupported {};
+ })
+ @Retention(RetentionPolicy.SOURCE)
+ public @interface HeadTrackingModeSupported {};
/**
* @hide
diff --git a/telecomm/java/android/telecom/CallAttributes.java b/telecomm/java/android/telecom/CallAttributes.java
index b1a7d819cd17..8c6e101f2c03 100644
--- a/telecomm/java/android/telecom/CallAttributes.java
+++ b/telecomm/java/android/telecom/CallAttributes.java
@@ -24,6 +24,8 @@ import android.os.Parcel;
import android.os.Parcelable;
import android.text.TextUtils;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
import java.util.Objects;
/**
@@ -83,6 +85,7 @@ public final class CallAttributes implements Parcelable {
/** @hide */
@IntDef(value = {DIRECTION_INCOMING, DIRECTION_OUTGOING})
+ @Retention(RetentionPolicy.SOURCE)
public @interface Direction {
}
/**
@@ -96,6 +99,7 @@ public final class CallAttributes implements Parcelable {
/** @hide */
@IntDef(value = {AUDIO_CALL, VIDEO_CALL})
+ @Retention(RetentionPolicy.SOURCE)
public @interface CallType {
}
/**
@@ -110,6 +114,7 @@ public final class CallAttributes implements Parcelable {
/** @hide */
@IntDef(value = {SUPPORTS_SET_INACTIVE, SUPPORTS_STREAM, SUPPORTS_TRANSFER}, flag = true)
+ @Retention(RetentionPolicy.SOURCE)
public @interface CallCapability {
}
/**
diff --git a/telephony/java/android/telephony/NumberVerificationCallback.java b/telephony/java/android/telephony/NumberVerificationCallback.java
index b00c57351589..71df1f2fa28c 100644
--- a/telephony/java/android/telephony/NumberVerificationCallback.java
+++ b/telephony/java/android/telephony/NumberVerificationCallback.java
@@ -20,6 +20,9 @@ import android.annotation.IntDef;
import android.annotation.NonNull;
import android.annotation.SystemApi;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+
/**
* A callback for number verification. After a request for number verification is received,
* the system will call {@link #onCallReceived(String)} if a phone call was received from a number
@@ -34,6 +37,7 @@ public interface NumberVerificationCallback {
REASON_TOO_MANY_CALLS, REASON_CONCURRENT_REQUESTS, REASON_IN_ECBM,
REASON_IN_EMERGENCY_CALL},
prefix = {"REASON_"})
+ @Retention(RetentionPolicy.SOURCE)
@interface NumberVerificationFailureReason {}
/**
diff --git a/telephony/java/android/telephony/PinResult.java b/telephony/java/android/telephony/PinResult.java
index b8c1ffe58371..14713c7d4b12 100644
--- a/telephony/java/android/telephony/PinResult.java
+++ b/telephony/java/android/telephony/PinResult.java
@@ -25,6 +25,8 @@ import android.os.Parcelable;
import com.android.internal.telephony.PhoneConstants;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
import java.util.Objects;
/**
@@ -46,6 +48,7 @@ public final class PinResult implements Parcelable {
PIN_RESULT_TYPE_FAILURE,
PIN_RESULT_TYPE_ABORTED,
})
+ @Retention(RetentionPolicy.SOURCE)
public @interface PinResultType {}
/**
diff --git a/telephony/java/android/telephony/TelephonyManager.java b/telephony/java/android/telephony/TelephonyManager.java
index 1c5761dcebe0..b96914e59c0e 100644
--- a/telephony/java/android/telephony/TelephonyManager.java
+++ b/telephony/java/android/telephony/TelephonyManager.java
@@ -3400,6 +3400,7 @@ public class TelephonyManager {
SIM_STATE_LOADED,
SIM_STATE_PRESENT,
})
+ @Retention(RetentionPolicy.SOURCE)
public @interface SimState {}
/**
@@ -10170,6 +10171,7 @@ public class TelephonyManager {
CALL_COMPOSER_STATUS_ON,
CALL_COMPOSER_STATUS_OFF,
})
+ @Retention(RetentionPolicy.SOURCE)
public @interface CallComposerStatus {}
/**
@@ -13157,7 +13159,7 @@ public class TelephonyManager {
CARRIER_RESTRICTION_STATUS_RESTRICTED,
CARRIER_RESTRICTION_STATUS_RESTRICTED_TO_CALLER
})
-
+ @Retention(RetentionPolicy.SOURCE)
public @interface CarrierRestrictionStatus {
}
diff --git a/telephony/java/android/telephony/data/ThrottleStatus.java b/telephony/java/android/telephony/data/ThrottleStatus.java
index 0335c6868340..0dff6ff705ca 100644
--- a/telephony/java/android/telephony/data/ThrottleStatus.java
+++ b/telephony/java/android/telephony/data/ThrottleStatus.java
@@ -27,6 +27,8 @@ import android.os.SystemClock;
import android.telephony.AccessNetworkConstants;
import android.telephony.Annotation;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
import java.util.Objects;
/**
@@ -52,6 +54,7 @@ public final class ThrottleStatus implements Parcelable {
ThrottleStatus.THROTTLE_TYPE_NONE,
ThrottleStatus.THROTTLE_TYPE_ELAPSED_TIME,
})
+ @Retention(RetentionPolicy.SOURCE)
public @interface ThrottleType {
}
@@ -76,6 +79,7 @@ public final class ThrottleStatus implements Parcelable {
ThrottleStatus.RETRY_TYPE_NEW_CONNECTION,
ThrottleStatus.RETRY_TYPE_HANDOVER,
})
+ @Retention(RetentionPolicy.SOURCE)
public @interface RetryType {
}
diff --git a/telephony/java/android/telephony/ims/MediaQualityStatus.java b/telephony/java/android/telephony/ims/MediaQualityStatus.java
index 76394feaed66..e2df0d44fda8 100644
--- a/telephony/java/android/telephony/ims/MediaQualityStatus.java
+++ b/telephony/java/android/telephony/ims/MediaQualityStatus.java
@@ -24,6 +24,8 @@ import android.os.Parcel;
import android.os.Parcelable;
import android.telephony.AccessNetworkConstants.TransportType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
import java.util.Objects;
/**
@@ -49,6 +51,7 @@ public final class MediaQualityStatus implements Parcelable {
MEDIA_SESSION_TYPE_AUDIO,
MEDIA_SESSION_TYPE_VIDEO,
})
+ @Retention(RetentionPolicy.SOURCE)
public @interface MediaSessionType {}
/**
diff --git a/telephony/java/android/telephony/ims/RcsClientConfiguration.java b/telephony/java/android/telephony/ims/RcsClientConfiguration.java
index f367e404a35b..39c9d8b94d3a 100644
--- a/telephony/java/android/telephony/ims/RcsClientConfiguration.java
+++ b/telephony/java/android/telephony/ims/RcsClientConfiguration.java
@@ -22,6 +22,8 @@ import android.annotation.SystemApi;
import android.os.Parcel;
import android.os.Parcelable;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
import java.util.Objects;
/**
@@ -35,6 +37,7 @@ public final class RcsClientConfiguration implements Parcelable {
/**@hide*/
@StringDef(prefix = "RCS_PROFILE_",
value = {RCS_PROFILE_1_0, RCS_PROFILE_2_3, RCS_PROFILE_2_4})
+ @Retention(RetentionPolicy.SOURCE)
public @interface StringRcsProfile {}
/**