diff options
Diffstat (limited to 'api')
| -rw-r--r-- | api/Android.bp | 7 | ||||
| -rw-r--r-- | api/current.txt | 5717 | ||||
| -rw-r--r-- | api/lint-baseline.txt | 1273 | ||||
| -rw-r--r-- | api/module-lib-current.txt | 161 | ||||
| -rw-r--r-- | api/module-lib-lint-baseline.txt | 29 | ||||
| -rw-r--r-- | api/module-lib-removed.txt | 1 | ||||
| -rw-r--r-- | api/removed.txt | 148 | ||||
| -rwxr-xr-x[-rw-r--r--] | api/system-current.txt | 5370 | ||||
| -rw-r--r-- | api/system-lint-baseline.txt | 510 | ||||
| -rw-r--r-- | api/system-removed.txt | 40 | ||||
| -rw-r--r-- | api/test-current.txt | 2467 | ||||
| -rw-r--r-- | api/test-lint-baseline.txt | 2691 | ||||
| -rw-r--r-- | api/test-removed.txt | 13 |
13 files changed, 16118 insertions, 2309 deletions
diff --git a/api/Android.bp b/api/Android.bp new file mode 100644 index 000000000000..54ff82c97e17 --- /dev/null +++ b/api/Android.bp @@ -0,0 +1,7 @@ +genrule { + name: "current-api-xml", + tools: ["metalava"], + srcs: ["current.txt"], + out: ["current.api"], + cmd: "$(location metalava) --no-banner -convert2xmlnostrip $(in) $(out)", +} diff --git a/api/current.txt b/api/current.txt index cd78602d9cd9..952ccdad992c 100644 --- a/api/current.txt +++ b/api/current.txt @@ -29,8 +29,9 @@ package android { field public static final String BIND_CARRIER_MESSAGING_CLIENT_SERVICE = "android.permission.BIND_CARRIER_MESSAGING_CLIENT_SERVICE"; field @Deprecated public static final String BIND_CARRIER_MESSAGING_SERVICE = "android.permission.BIND_CARRIER_MESSAGING_SERVICE"; field public static final String BIND_CARRIER_SERVICES = "android.permission.BIND_CARRIER_SERVICES"; - field public static final String BIND_CHOOSER_TARGET_SERVICE = "android.permission.BIND_CHOOSER_TARGET_SERVICE"; + field @Deprecated public static final String BIND_CHOOSER_TARGET_SERVICE = "android.permission.BIND_CHOOSER_TARGET_SERVICE"; field public static final String BIND_CONDITION_PROVIDER_SERVICE = "android.permission.BIND_CONDITION_PROVIDER_SERVICE"; + field public static final String BIND_CONTROLS = "android.permission.BIND_CONTROLS"; field public static final String BIND_DEVICE_ADMIN = "android.permission.BIND_DEVICE_ADMIN"; field public static final String BIND_DREAM_SERVICE = "android.permission.BIND_DREAM_SERVICE"; field public static final String BIND_INCALL_SERVICE = "android.permission.BIND_INCALL_SERVICE"; @@ -39,6 +40,7 @@ package android { field public static final String BIND_NFC_SERVICE = "android.permission.BIND_NFC_SERVICE"; field public static final String BIND_NOTIFICATION_LISTENER_SERVICE = "android.permission.BIND_NOTIFICATION_LISTENER_SERVICE"; field public static final String BIND_PRINT_SERVICE = "android.permission.BIND_PRINT_SERVICE"; + field public static final String BIND_QUICK_ACCESS_WALLET_SERVICE = "android.permission.BIND_QUICK_ACCESS_WALLET_SERVICE"; field public static final String BIND_QUICK_SETTINGS_TILE = "android.permission.BIND_QUICK_SETTINGS_TILE"; field public static final String BIND_REMOTEVIEWS = "android.permission.BIND_REMOTEVIEWS"; field public static final String BIND_SCREENING_SERVICE = "android.permission.BIND_SCREENING_SERVICE"; @@ -87,10 +89,13 @@ package android { field public static final String INSTALL_PACKAGES = "android.permission.INSTALL_PACKAGES"; field public static final String INSTALL_SHORTCUT = "com.android.launcher.permission.INSTALL_SHORTCUT"; field public static final String INSTANT_APP_FOREGROUND_SERVICE = "android.permission.INSTANT_APP_FOREGROUND_SERVICE"; + field public static final String INTERACT_ACROSS_PROFILES = "android.permission.INTERACT_ACROSS_PROFILES"; field public static final String INTERNET = "android.permission.INTERNET"; field public static final String KILL_BACKGROUND_PROCESSES = "android.permission.KILL_BACKGROUND_PROCESSES"; + field public static final String LOADER_USAGE_STATS = "android.permission.LOADER_USAGE_STATS"; field public static final String LOCATION_HARDWARE = "android.permission.LOCATION_HARDWARE"; field public static final String MANAGE_DOCUMENTS = "android.permission.MANAGE_DOCUMENTS"; + field public static final String MANAGE_EXTERNAL_STORAGE = "android.permission.MANAGE_EXTERNAL_STORAGE"; field public static final String MANAGE_OWN_CALLS = "android.permission.MANAGE_OWN_CALLS"; field public static final String MASTER_CLEAR = "android.permission.MASTER_CLEAR"; field public static final String MEDIA_CONTENT_CONTROL = "android.permission.MEDIA_CONTENT_CONTROL"; @@ -99,10 +104,12 @@ package android { field public static final String MOUNT_FORMAT_FILESYSTEMS = "android.permission.MOUNT_FORMAT_FILESYSTEMS"; field public static final String MOUNT_UNMOUNT_FILESYSTEMS = "android.permission.MOUNT_UNMOUNT_FILESYSTEMS"; field public static final String NFC = "android.permission.NFC"; + field public static final String NFC_PREFERRED_PAYMENT_INFO = "android.permission.NFC_PREFERRED_PAYMENT_INFO"; field public static final String NFC_TRANSACTION_EVENT = "android.permission.NFC_TRANSACTION_EVENT"; field public static final String PACKAGE_USAGE_STATS = "android.permission.PACKAGE_USAGE_STATS"; field @Deprecated public static final String PERSISTENT_ACTIVITY = "android.permission.PERSISTENT_ACTIVITY"; field @Deprecated public static final String PROCESS_OUTGOING_CALLS = "android.permission.PROCESS_OUTGOING_CALLS"; + field public static final String QUERY_ALL_PACKAGES = "android.permission.QUERY_ALL_PACKAGES"; field public static final String READ_CALENDAR = "android.permission.READ_CALENDAR"; field public static final String READ_CALL_LOG = "android.permission.READ_CALL_LOG"; field public static final String READ_CONTACTS = "android.permission.READ_CONTACTS"; @@ -111,6 +118,7 @@ package android { field public static final String READ_LOGS = "android.permission.READ_LOGS"; field public static final String READ_PHONE_NUMBERS = "android.permission.READ_PHONE_NUMBERS"; field public static final String READ_PHONE_STATE = "android.permission.READ_PHONE_STATE"; + field public static final String READ_PRECISE_PHONE_STATE = "android.permission.READ_PRECISE_PHONE_STATE"; field public static final String READ_SMS = "android.permission.READ_SMS"; field public static final String READ_SYNC_SETTINGS = "android.permission.READ_SYNC_SETTINGS"; field public static final String READ_SYNC_STATS = "android.permission.READ_SYNC_STATS"; @@ -282,6 +290,7 @@ package android { field public static final int allowBackup = 16843392; // 0x1010280 field public static final int allowClearUserData = 16842757; // 0x1010005 field public static final int allowEmbedded = 16843765; // 0x10103f5 + field public static final int allowNativeHeapPointerTagging = 16844306; // 0x1010612 field public static final int allowParallelSyncs = 16843570; // 0x1010332 field public static final int allowSingleTap = 16843353; // 0x1010259 field public static final int allowTaskReparenting = 16843268; // 0x1010204 @@ -298,13 +307,14 @@ package android { field public static final int animateFirstView = 16843477; // 0x10102d5 field public static final int animateLayoutChanges = 16843506; // 0x10102f2 field public static final int animateOnClick = 16843356; // 0x101025c + field public static final int animatedImageDrawable = 16844298; // 0x101060a field public static final int animation = 16843213; // 0x10101cd field public static final int animationCache = 16842989; // 0x10100ed field public static final int animationDuration = 16843026; // 0x1010112 field public static final int animationOrder = 16843214; // 0x10101ce field @Deprecated public static final int animationResolution = 16843546; // 0x101031a field public static final int antialias = 16843034; // 0x101011a - field public static final int anyDensity = 16843372; // 0x101026c + field @Deprecated public static final int anyDensity = 16843372; // 0x101026c field public static final int apduServiceBanner = 16843757; // 0x10103ed field public static final int apiKey = 16843281; // 0x1010211 field public static final int appCategory = 16844101; // 0x1010545 @@ -316,6 +326,7 @@ package android { field public static final int autoLink = 16842928; // 0x10100b0 field public static final int autoMirrored = 16843754; // 0x10103ea field public static final int autoRemoveFromRecents = 16843847; // 0x1010447 + field public static final int autoRevokePermissions = 16844307; // 0x1010613 field public static final int autoSizeMaxTextSize = 16844102; // 0x1010546 field public static final int autoSizeMinTextSize = 16844088; // 0x1010538 field public static final int autoSizePresetSizes = 16844087; // 0x1010537 @@ -380,6 +391,7 @@ package android { field public static final int canRequestFingerprintGestures = 16844109; // 0x101054d field public static final int canRequestTouchExplorationMode = 16843735; // 0x10103d7 field public static final int canRetrieveWindowContent = 16843653; // 0x1010385 + field public static final int canTakeScreenshot = 16844303; // 0x101060f field public static final int candidatesTextStyleSpans = 16843312; // 0x1010230 field public static final int cantSaveState = 16844142; // 0x101056e field @Deprecated public static final int capitalize = 16843113; // 0x1010169 @@ -474,6 +486,7 @@ package android { field public static final int countDown = 16844059; // 0x101051b field public static final int country = 16843962; // 0x10104ba field public static final int cropToPadding = 16843043; // 0x1010123 + field public static final int crossProfile = 16844302; // 0x101060e field public static final int cursorVisible = 16843090; // 0x1010152 field public static final int customNavigationLayout = 16843474; // 0x10102d2 field public static final int customTokens = 16843579; // 0x101033b @@ -640,6 +653,7 @@ package android { field public static final int footerDividersEnabled = 16843311; // 0x101022f field public static final int forceDarkAllowed = 16844172; // 0x101058c field public static final int forceHasOverlappingRendering = 16844065; // 0x1010521 + field public static final int forceQueryable = 16844296; // 0x1010608 field public static final int forceUriPermissions = 16844191; // 0x101059f field public static final int foreground = 16843017; // 0x1010109 field public static final int foregroundGravity = 16843264; // 0x1010200 @@ -694,6 +708,7 @@ package android { field public static final int gravity = 16842927; // 0x10100af field public static final int gridViewStyle = 16842865; // 0x1010071 field public static final int groupIndicator = 16843019; // 0x101010b + field public static final int gwpAsanMode = 16844310; // 0x1010616 field public static final int hand_hour = 16843011; // 0x1010103 field public static final int hand_minute = 16843012; // 0x1010104 field public static final int handle = 16843354; // 0x101025a @@ -721,6 +736,7 @@ package android { field public static final int host = 16842792; // 0x1010028 field public static final int hotSpotX = 16844055; // 0x1010517 field public static final int hotSpotY = 16844056; // 0x1010518 + field public static final int htmlDescription = 16844299; // 0x101060b field public static final int hyphenationFrequency = 16843998; // 0x10104de field public static final int icon = 16842754; // 0x1010002 field @Deprecated public static final int iconPreview = 16843337; // 0x1010249 @@ -745,6 +761,7 @@ package android { field public static final int immersive = 16843456; // 0x10102c0 field public static final int importantForAccessibility = 16843690; // 0x10103aa field public static final int importantForAutofill = 16844120; // 0x1010558 + field public static final int importantForContentCapture = 16844295; // 0x1010607 field public static final int inAnimation = 16843127; // 0x1010177 field public static final int includeFontPadding = 16843103; // 0x101015f field public static final int includeInGlobalSearch = 16843374; // 0x101026e @@ -936,6 +953,7 @@ package android { field public static final int mediaRouteButtonStyle = 16843693; // 0x10103ad field public static final int mediaRouteTypes = 16843694; // 0x10103ae field public static final int menuCategory = 16843230; // 0x10101de + field public static final int mimeGroup = 16844309; // 0x1010615 field public static final int mimeType = 16842790; // 0x1010026 field public static final int min = 16844089; // 0x1010539 field public static final int minAspectRatio = 16844187; // 0x101059b @@ -1056,6 +1074,7 @@ package android { field public static final int popupWindowStyle = 16842870; // 0x1010076 field public static final int port = 16842793; // 0x1010029 field public static final int positiveButtonText = 16843253; // 0x10101f5 + field public static final int preferMinimalPostProcessing = 16844300; // 0x101060c field public static final int preferenceCategoryStyle = 16842892; // 0x101008c field public static final int preferenceFragmentStyle = 16844038; // 0x1010506 field public static final int preferenceInformationStyle = 16842893; // 0x101008d @@ -1063,6 +1082,7 @@ package android { field public static final int preferenceScreenStyle = 16842891; // 0x101008b field public static final int preferenceStyle = 16842894; // 0x101008e field public static final int presentationTheme = 16843712; // 0x10103c0 + field public static final int preserveLegacyExternalStorage = 16844308; // 0x1010614 field public static final int previewImage = 16843482; // 0x10102da field public static final int primaryContentAlpha = 16844114; // 0x1010552 field public static final int priority = 16842780; // 0x101001c @@ -1133,6 +1153,7 @@ package android { field public static final int resizeable = 16843405; // 0x101028d field public static final int resizeableActivity = 16844022; // 0x10104f6 field public static final int resource = 16842789; // 0x1010025 + field public static final int resourcesMap = 16844297; // 0x1010609 field public static final int restoreAnyVersion = 16843450; // 0x10102ba field @Deprecated public static final int restoreNeedsApplication = 16843421; // 0x101029d field public static final int restrictedAccountType = 16843733; // 0x10103d5 @@ -1324,6 +1345,7 @@ package android { field public static final int summaryOff = 16843248; // 0x10101f0 field public static final int summaryOn = 16843247; // 0x10101ef field public static final int supportsAssist = 16844016; // 0x10104f0 + field public static final int supportsInlineSuggestions = 16844301; // 0x101060d field public static final int supportsLaunchVoiceAssistFromKeyguard = 16844017; // 0x10104f1 field public static final int supportsLocalInteraction = 16844047; // 0x101050f field public static final int supportsMultipleDisplays = 16844182; // 0x1010596 @@ -1594,7 +1616,7 @@ package android { field public static final int windowMinWidthMinor = 16843607; // 0x1010357 field public static final int windowNoDisplay = 16843294; // 0x101021e field public static final int windowNoTitle = 16842838; // 0x1010056 - field public static final int windowOverscan = 16843727; // 0x10103cf + field @Deprecated public static final int windowOverscan = 16843727; // 0x10103cf field public static final int windowReenterTransition = 16843951; // 0x10104af field public static final int windowReturnTransition = 16843950; // 0x10104ae field public static final int windowSharedElementEnterTransition = 16843833; // 0x1010439 @@ -1606,7 +1628,7 @@ package android { field public static final int windowShowWallpaper = 16843410; // 0x1010292 field public static final int windowSoftInputMode = 16843307; // 0x101022b field public static final int windowSplashscreenContent = 16844132; // 0x1010564 - field public static final int windowSwipeToDismiss = 16843763; // 0x10103f3 + field @Deprecated public static final int windowSwipeToDismiss = 16843763; // 0x10103f3 field public static final int windowTitleBackgroundStyle = 16842844; // 0x101005c field public static final int windowTitleSize = 16842842; // 0x101005a field public static final int windowTitleStyle = 16842843; // 0x101005b @@ -1857,11 +1879,13 @@ package android { ctor public R.id(); field public static final int accessibilityActionContextClick = 16908348; // 0x102003c field public static final int accessibilityActionHideTooltip = 16908357; // 0x1020045 + field public static final int accessibilityActionImeEnter = 16908372; // 0x1020054 field public static final int accessibilityActionMoveWindow = 16908354; // 0x1020042 field public static final int accessibilityActionPageDown = 16908359; // 0x1020047 field public static final int accessibilityActionPageLeft = 16908360; // 0x1020048 field public static final int accessibilityActionPageRight = 16908361; // 0x1020049 field public static final int accessibilityActionPageUp = 16908358; // 0x1020046 + field public static final int accessibilityActionPressAndHold = 16908362; // 0x102004a field public static final int accessibilityActionScrollDown = 16908346; // 0x102003a field public static final int accessibilityActionScrollLeft = 16908345; // 0x1020039 field public static final int accessibilityActionScrollRight = 16908347; // 0x102003b @@ -1870,6 +1894,15 @@ package android { field public static final int accessibilityActionSetProgress = 16908349; // 0x102003d field public static final int accessibilityActionShowOnScreen = 16908342; // 0x1020036 field public static final int accessibilityActionShowTooltip = 16908356; // 0x1020044 + field public static final int accessibilitySystemActionBack = 16908363; // 0x102004b + field public static final int accessibilitySystemActionHome = 16908364; // 0x102004c + field public static final int accessibilitySystemActionLockScreen = 16908370; // 0x1020052 + field public static final int accessibilitySystemActionNotifications = 16908366; // 0x102004e + field public static final int accessibilitySystemActionPowerDialog = 16908368; // 0x1020050 + field public static final int accessibilitySystemActionQuickSettings = 16908367; // 0x102004f + field public static final int accessibilitySystemActionRecents = 16908365; // 0x102004d + field public static final int accessibilitySystemActionTakeScreenshot = 16908371; // 0x1020053 + field public static final int accessibilitySystemActionToggleSplitScreen = 16908369; // 0x1020051 field public static final int addToDictionary = 16908330; // 0x102002a field public static final int autofill = 16908355; // 0x1020043 field public static final int background = 16908288; // 0x1020000 @@ -2023,7 +2056,7 @@ package android { field public static final int fingerprint_icon_content_description = 17039384; // 0x1040018 field public static final int httpErrorBadUrl = 17039367; // 0x1040007 field public static final int httpErrorUnsupportedScheme = 17039368; // 0x1040008 - field public static final int no = 17039369; // 0x1040009 + field @Deprecated public static final int no = 17039369; // 0x1040009 field public static final int ok = 17039370; // 0x104000a field public static final int paste = 17039371; // 0x104000b field public static final int paste_as_plain_text = 17039385; // 0x1040019 @@ -2033,7 +2066,7 @@ package android { field public static final int status_bar_notification_info_overflow = 17039383; // 0x1040017 field public static final int unknownName = 17039374; // 0x104000e field public static final int untitled = 17039375; // 0x104000f - field public static final int yes = 17039379; // 0x1040013 + field @Deprecated public static final int yes = 17039379; // 0x1040013 } public static final class R.style { @@ -2321,13 +2354,13 @@ package android { field public static final int Theme_Material_Light_LightStatusBar = 16974549; // 0x10302d5 field public static final int Theme_Material_Light_NoActionBar = 16974401; // 0x1030241 field public static final int Theme_Material_Light_NoActionBar_Fullscreen = 16974402; // 0x1030242 - field public static final int Theme_Material_Light_NoActionBar_Overscan = 16974403; // 0x1030243 + field @Deprecated public static final int Theme_Material_Light_NoActionBar_Overscan = 16974403; // 0x1030243 field public static final int Theme_Material_Light_NoActionBar_TranslucentDecor = 16974404; // 0x1030244 field public static final int Theme_Material_Light_Panel = 16974405; // 0x1030245 field public static final int Theme_Material_Light_Voice = 16974406; // 0x1030246 field public static final int Theme_Material_NoActionBar = 16974382; // 0x103022e field public static final int Theme_Material_NoActionBar_Fullscreen = 16974383; // 0x103022f - field public static final int Theme_Material_NoActionBar_Overscan = 16974384; // 0x1030230 + field @Deprecated public static final int Theme_Material_NoActionBar_Overscan = 16974384; // 0x1030230 field public static final int Theme_Material_NoActionBar_TranslucentDecor = 16974385; // 0x1030231 field public static final int Theme_Material_Panel = 16974386; // 0x1030232 field public static final int Theme_Material_Settings = 16974387; // 0x1030233 @@ -2809,26 +2842,72 @@ package android.accessibilityservice { method public void onClicked(android.accessibilityservice.AccessibilityButtonController); } + public final class AccessibilityGestureEvent implements android.os.Parcelable { + method public int describeContents(); + method public int getDisplayId(); + method public int getGestureId(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.accessibilityservice.AccessibilityGestureEvent> CREATOR; + } + public abstract class AccessibilityService extends android.app.Service { ctor public AccessibilityService(); method public final void disableSelf(); method public final boolean dispatchGesture(@NonNull android.accessibilityservice.GestureDescription, @Nullable android.accessibilityservice.AccessibilityService.GestureResultCallback, @Nullable android.os.Handler); method public android.view.accessibility.AccessibilityNodeInfo findFocus(int); method @NonNull public final android.accessibilityservice.AccessibilityButtonController getAccessibilityButtonController(); - method @RequiresPermission(android.Manifest.permission.USE_FINGERPRINT) @NonNull public final android.accessibilityservice.FingerprintGestureController getFingerprintGestureController(); + method @NonNull public final android.accessibilityservice.AccessibilityButtonController getAccessibilityButtonController(int); + method @NonNull @RequiresPermission(android.Manifest.permission.USE_FINGERPRINT) public final android.accessibilityservice.FingerprintGestureController getFingerprintGestureController(); method @NonNull public final android.accessibilityservice.AccessibilityService.MagnificationController getMagnificationController(); method public android.view.accessibility.AccessibilityNodeInfo getRootInActiveWindow(); method public final android.accessibilityservice.AccessibilityServiceInfo getServiceInfo(); method @NonNull public final android.accessibilityservice.AccessibilityService.SoftKeyboardController getSoftKeyboardController(); + method @NonNull public final java.util.List<android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction> getSystemActions(); method public java.util.List<android.view.accessibility.AccessibilityWindowInfo> getWindows(); + method @NonNull public final android.util.SparseArray<java.util.List<android.view.accessibility.AccessibilityWindowInfo>> getWindowsOnAllDisplays(); method public abstract void onAccessibilityEvent(android.view.accessibility.AccessibilityEvent); method public final android.os.IBinder onBind(android.content.Intent); - method protected boolean onGesture(int); + method @Deprecated protected boolean onGesture(int); + method public boolean onGesture(@NonNull android.accessibilityservice.AccessibilityGestureEvent); method public abstract void onInterrupt(); method protected boolean onKeyEvent(android.view.KeyEvent); method protected void onServiceConnected(); + method public void onSystemActionsChanged(); method public final boolean performGlobalAction(int); + method public void setGestureDetectionPassthroughRegion(int, @NonNull android.graphics.Region); method public final void setServiceInfo(android.accessibilityservice.AccessibilityServiceInfo); + method public void setTouchExplorationPassthroughRegion(int, @NonNull android.graphics.Region); + method public void takeScreenshot(int, @NonNull java.util.concurrent.Executor, @NonNull android.accessibilityservice.AccessibilityService.TakeScreenshotCallback); + field public static final int ERROR_TAKE_SCREENSHOT_INTERNAL_ERROR = 1; // 0x1 + field public static final int ERROR_TAKE_SCREENSHOT_INTERVAL_TIME_SHORT = 3; // 0x3 + field public static final int ERROR_TAKE_SCREENSHOT_INVALID_DISPLAY = 4; // 0x4 + field public static final int ERROR_TAKE_SCREENSHOT_NO_ACCESSIBILITY_ACCESS = 2; // 0x2 + field public static final int GESTURE_2_FINGER_DOUBLE_TAP = 20; // 0x14 + field public static final int GESTURE_2_FINGER_DOUBLE_TAP_AND_HOLD = 40; // 0x28 + field public static final int GESTURE_2_FINGER_SINGLE_TAP = 19; // 0x13 + field public static final int GESTURE_2_FINGER_SWIPE_DOWN = 26; // 0x1a + field public static final int GESTURE_2_FINGER_SWIPE_LEFT = 27; // 0x1b + field public static final int GESTURE_2_FINGER_SWIPE_RIGHT = 28; // 0x1c + field public static final int GESTURE_2_FINGER_SWIPE_UP = 25; // 0x19 + field public static final int GESTURE_2_FINGER_TRIPLE_TAP = 21; // 0x15 + field public static final int GESTURE_3_FINGER_DOUBLE_TAP = 23; // 0x17 + field public static final int GESTURE_3_FINGER_DOUBLE_TAP_AND_HOLD = 41; // 0x29 + field public static final int GESTURE_3_FINGER_SINGLE_TAP = 22; // 0x16 + field public static final int GESTURE_3_FINGER_SWIPE_DOWN = 30; // 0x1e + field public static final int GESTURE_3_FINGER_SWIPE_LEFT = 31; // 0x1f + field public static final int GESTURE_3_FINGER_SWIPE_RIGHT = 32; // 0x20 + field public static final int GESTURE_3_FINGER_SWIPE_UP = 29; // 0x1d + field public static final int GESTURE_3_FINGER_TRIPLE_TAP = 24; // 0x18 + field public static final int GESTURE_4_FINGER_DOUBLE_TAP = 38; // 0x26 + field public static final int GESTURE_4_FINGER_DOUBLE_TAP_AND_HOLD = 42; // 0x2a + field public static final int GESTURE_4_FINGER_SINGLE_TAP = 37; // 0x25 + field public static final int GESTURE_4_FINGER_SWIPE_DOWN = 34; // 0x22 + field public static final int GESTURE_4_FINGER_SWIPE_LEFT = 35; // 0x23 + field public static final int GESTURE_4_FINGER_SWIPE_RIGHT = 36; // 0x24 + field public static final int GESTURE_4_FINGER_SWIPE_UP = 33; // 0x21 + field public static final int GESTURE_4_FINGER_TRIPLE_TAP = 39; // 0x27 + field public static final int GESTURE_DOUBLE_TAP = 17; // 0x11 + field public static final int GESTURE_DOUBLE_TAP_AND_HOLD = 18; // 0x12 field public static final int GESTURE_SWIPE_DOWN = 2; // 0x2 field public static final int GESTURE_SWIPE_DOWN_AND_LEFT = 15; // 0xf field public static final int GESTURE_SWIPE_DOWN_AND_RIGHT = 16; // 0x10 @@ -2884,18 +2963,30 @@ package android.accessibilityservice { method public void onMagnificationChanged(@NonNull android.accessibilityservice.AccessibilityService.MagnificationController, @NonNull android.graphics.Region, float, float, float); } + public static final class AccessibilityService.ScreenshotResult { + method @NonNull public android.graphics.ColorSpace getColorSpace(); + method @NonNull public android.hardware.HardwareBuffer getHardwareBuffer(); + method public long getTimestamp(); + } + public static final class AccessibilityService.SoftKeyboardController { method public void addOnShowModeChangedListener(@NonNull android.accessibilityservice.AccessibilityService.SoftKeyboardController.OnShowModeChangedListener); method public void addOnShowModeChangedListener(@NonNull android.accessibilityservice.AccessibilityService.SoftKeyboardController.OnShowModeChangedListener, @Nullable android.os.Handler); method public int getShowMode(); method public boolean removeOnShowModeChangedListener(@NonNull android.accessibilityservice.AccessibilityService.SoftKeyboardController.OnShowModeChangedListener); method public boolean setShowMode(int); + method public boolean switchToInputMethod(@NonNull String); } public static interface AccessibilityService.SoftKeyboardController.OnShowModeChangedListener { method public void onShowModeChanged(@NonNull android.accessibilityservice.AccessibilityService.SoftKeyboardController, int); } + public static interface AccessibilityService.TakeScreenshotCallback { + method public void onFailure(int); + method public void onSuccess(@NonNull android.accessibilityservice.AccessibilityService.ScreenshotResult); + } + public class AccessibilityServiceInfo implements android.os.Parcelable { ctor public AccessibilityServiceInfo(); method public static String capabilityToString(int); @@ -2922,6 +3013,7 @@ package android.accessibilityservice { field public static final int CAPABILITY_CAN_REQUEST_FINGERPRINT_GESTURES = 64; // 0x40 field public static final int CAPABILITY_CAN_REQUEST_TOUCH_EXPLORATION = 2; // 0x2 field public static final int CAPABILITY_CAN_RETRIEVE_WINDOW_CONTENT = 1; // 0x1 + field public static final int CAPABILITY_CAN_TAKE_SCREENSHOT = 128; // 0x80 field @NonNull public static final android.os.Parcelable.Creator<android.accessibilityservice.AccessibilityServiceInfo> CREATOR; field public static final int DEFAULT = 1; // 0x1 field public static final int FEEDBACK_ALL_MASK = -1; // 0xffffffff @@ -2938,9 +3030,11 @@ package android.accessibilityservice { field @Deprecated public static final int FLAG_REQUEST_ENHANCED_WEB_ACCESSIBILITY = 8; // 0x8 field public static final int FLAG_REQUEST_FILTER_KEY_EVENTS = 32; // 0x20 field public static final int FLAG_REQUEST_FINGERPRINT_GESTURES = 512; // 0x200 + field public static final int FLAG_REQUEST_MULTI_FINGER_GESTURES = 4096; // 0x1000 field public static final int FLAG_REQUEST_SHORTCUT_WARNING_DIALOG_SPOKEN_FEEDBACK = 1024; // 0x400 field public static final int FLAG_REQUEST_TOUCH_EXPLORATION_MODE = 4; // 0x4 field public static final int FLAG_RETRIEVE_INTERACTIVE_WINDOWS = 64; // 0x40 + field public static final int FLAG_SERVICE_HANDLES_DOUBLE_TAP = 2048; // 0x800 field public int eventTypes; field public int feedbackType; field public int flags; @@ -2965,6 +3059,7 @@ package android.accessibilityservice { } public final class GestureDescription { + method public int getDisplayId(); method public static long getMaxGestureDuration(); method public static int getMaxStrokeCount(); method public android.accessibilityservice.GestureDescription.StrokeDescription getStroke(@IntRange(from=0) int); @@ -2975,6 +3070,7 @@ package android.accessibilityservice { ctor public GestureDescription.Builder(); method public android.accessibilityservice.GestureDescription.Builder addStroke(@NonNull android.accessibilityservice.GestureDescription.StrokeDescription); method public android.accessibilityservice.GestureDescription build(); + method @NonNull public android.accessibilityservice.GestureDescription.Builder setDisplayId(int); } public static class GestureDescription.StrokeDescription { @@ -3021,9 +3117,9 @@ package android.accounts { field public final String type; } - public class AccountAuthenticatorActivity extends android.app.Activity { - ctor public AccountAuthenticatorActivity(); - method public final void setAccountAuthenticatorResult(android.os.Bundle); + @Deprecated public class AccountAuthenticatorActivity extends android.app.Activity { + ctor @Deprecated public AccountAuthenticatorActivity(); + method @Deprecated public final void setAccountAuthenticatorResult(android.os.Bundle); } public class AccountAuthenticatorResponse implements android.os.Parcelable { @@ -3524,11 +3620,11 @@ package android.animation { package android.annotation { - @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE, java.lang.annotation.ElementType.FIELD, java.lang.annotation.ElementType.METHOD, java.lang.annotation.ElementType.PARAMETER, java.lang.annotation.ElementType.CONSTRUCTOR, java.lang.annotation.ElementType.LOCAL_VARIABLE}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) public @interface SuppressLint { + @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE, java.lang.annotation.ElementType.FIELD, java.lang.annotation.ElementType.METHOD, java.lang.annotation.ElementType.PARAMETER, java.lang.annotation.ElementType.CONSTRUCTOR, java.lang.annotation.ElementType.LOCAL_VARIABLE}) public @interface SuppressLint { method public abstract String[] value(); } - @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE, java.lang.annotation.ElementType.METHOD, java.lang.annotation.ElementType.CONSTRUCTOR, java.lang.annotation.ElementType.FIELD}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) public @interface TargetApi { + @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE, java.lang.annotation.ElementType.METHOD, java.lang.annotation.ElementType.CONSTRUCTOR, java.lang.annotation.ElementType.FIELD}) public @interface TargetApi { method public abstract int value(); } @@ -3675,11 +3771,11 @@ package android.app { method public <T extends android.view.View> T findViewById(@IdRes int); method public void finish(); method public void finishActivity(int); - method public void finishActivityFromChild(@NonNull android.app.Activity, int); + method @Deprecated public void finishActivityFromChild(@NonNull android.app.Activity, int); method public void finishAffinity(); method public void finishAfterTransition(); method public void finishAndRemoveTask(); - method public void finishFromChild(android.app.Activity); + method @Deprecated public void finishFromChild(android.app.Activity); method @Nullable public android.app.ActionBar getActionBar(); method public final android.app.Application getApplication(); method @Nullable public android.content.ComponentName getCallingActivity(); @@ -3728,7 +3824,7 @@ package android.app { method @Deprecated public final android.database.Cursor managedQuery(android.net.Uri, String[], String, String[], String); method public boolean moveTaskToBack(boolean); method public boolean navigateUpTo(android.content.Intent); - method public boolean navigateUpToFromChild(android.app.Activity, android.content.Intent); + method @Deprecated public boolean navigateUpToFromChild(android.app.Activity, android.content.Intent); method @CallSuper public void onActionModeFinished(android.view.ActionMode); method @CallSuper public void onActionModeStarted(android.view.ActionMode); method public void onActivityReenter(int, android.content.Intent); @@ -3741,7 +3837,7 @@ package android.app { method public void onContentChanged(); method public boolean onContextItemSelected(@NonNull android.view.MenuItem); method public void onContextMenuClosed(@NonNull android.view.Menu); - method @MainThread @CallSuper protected void onCreate(@Nullable android.os.Bundle); + method @CallSuper @MainThread protected void onCreate(@Nullable android.os.Bundle); method public void onCreate(@Nullable android.os.Bundle, @Nullable android.os.PersistableBundle); method public void onCreateContextMenu(android.view.ContextMenu, android.view.View, android.view.ContextMenu.ContextMenuInfo); method @Nullable public CharSequence onCreateDescription(); @@ -3772,7 +3868,7 @@ package android.app { method public void onMultiWindowModeChanged(boolean, android.content.res.Configuration); method @Deprecated public void onMultiWindowModeChanged(boolean); method public boolean onNavigateUp(); - method public boolean onNavigateUpFromChild(android.app.Activity); + method @Deprecated public boolean onNavigateUpFromChild(android.app.Activity); method protected void onNewIntent(android.content.Intent); method public boolean onOptionsItemSelected(@NonNull android.view.MenuItem); method public void onOptionsMenuClosed(android.view.Menu); @@ -3781,6 +3877,7 @@ package android.app { method public void onPerformDirectAction(@NonNull String, @NonNull android.os.Bundle, @NonNull android.os.CancellationSignal, @NonNull java.util.function.Consumer<android.os.Bundle>); method public void onPictureInPictureModeChanged(boolean, android.content.res.Configuration); method @Deprecated public void onPictureInPictureModeChanged(boolean); + method public boolean onPictureInPictureRequested(); method @CallSuper protected void onPostCreate(@Nullable android.os.Bundle); method public void onPostCreate(@Nullable android.os.Bundle, @Nullable android.os.PersistableBundle); method @CallSuper protected void onPostResume(); @@ -3850,6 +3947,7 @@ package android.app { method public void setImmersive(boolean); method public void setInheritShowWhenLocked(boolean); method public void setIntent(android.content.Intent); + method public void setLocusContext(@Nullable android.content.LocusId, @Nullable android.os.Bundle); method public final void setMediaController(android.media.session.MediaController); method public void setPictureInPictureParams(@NonNull android.app.PictureInPictureParams); method @Deprecated public final void setProgress(int); @@ -3865,6 +3963,7 @@ package android.app { method public void setTitle(CharSequence); method public void setTitle(int); method @Deprecated public void setTitleColor(int); + method public boolean setTranslucent(boolean); method public void setTurnScreenOn(boolean); method public void setVisible(boolean); method public final void setVolumeControlStream(int); @@ -3879,21 +3978,21 @@ package android.app { method @Nullable public android.view.ActionMode startActionMode(android.view.ActionMode.Callback, int); method public void startActivityForResult(@RequiresPermission android.content.Intent, int); method public void startActivityForResult(@RequiresPermission android.content.Intent, int, @Nullable android.os.Bundle); - method public void startActivityFromChild(@NonNull android.app.Activity, @RequiresPermission android.content.Intent, int); - method public void startActivityFromChild(@NonNull android.app.Activity, @RequiresPermission android.content.Intent, int, @Nullable android.os.Bundle); + method @Deprecated public void startActivityFromChild(@NonNull android.app.Activity, @RequiresPermission android.content.Intent, int); + method @Deprecated public void startActivityFromChild(@NonNull android.app.Activity, @RequiresPermission android.content.Intent, int, @Nullable android.os.Bundle); method @Deprecated public void startActivityFromFragment(@NonNull android.app.Fragment, @RequiresPermission android.content.Intent, int); method @Deprecated public void startActivityFromFragment(@NonNull android.app.Fragment, @RequiresPermission android.content.Intent, int, @Nullable android.os.Bundle); - method public boolean startActivityIfNeeded(@RequiresPermission @NonNull android.content.Intent, int); - method public boolean startActivityIfNeeded(@RequiresPermission @NonNull android.content.Intent, int, @Nullable android.os.Bundle); + method public boolean startActivityIfNeeded(@NonNull @RequiresPermission android.content.Intent, int); + method public boolean startActivityIfNeeded(@NonNull @RequiresPermission android.content.Intent, int, @Nullable android.os.Bundle); method public void startIntentSenderForResult(android.content.IntentSender, int, @Nullable android.content.Intent, int, int, int) throws android.content.IntentSender.SendIntentException; method public void startIntentSenderForResult(android.content.IntentSender, int, @Nullable android.content.Intent, int, int, int, android.os.Bundle) throws android.content.IntentSender.SendIntentException; - method public void startIntentSenderFromChild(android.app.Activity, android.content.IntentSender, int, android.content.Intent, int, int, int) throws android.content.IntentSender.SendIntentException; - method public void startIntentSenderFromChild(android.app.Activity, android.content.IntentSender, int, android.content.Intent, int, int, int, @Nullable android.os.Bundle) throws android.content.IntentSender.SendIntentException; + method @Deprecated public void startIntentSenderFromChild(android.app.Activity, android.content.IntentSender, int, android.content.Intent, int, int, int) throws android.content.IntentSender.SendIntentException; + method @Deprecated public void startIntentSenderFromChild(android.app.Activity, android.content.IntentSender, int, android.content.Intent, int, int, int, @Nullable android.os.Bundle) throws android.content.IntentSender.SendIntentException; method public void startLocalVoiceInteraction(android.os.Bundle); method public void startLockTask(); method @Deprecated public void startManagingCursor(android.database.Cursor); - method public boolean startNextMatchingActivity(@RequiresPermission @NonNull android.content.Intent); - method public boolean startNextMatchingActivity(@RequiresPermission @NonNull android.content.Intent, @Nullable android.os.Bundle); + method public boolean startNextMatchingActivity(@NonNull @RequiresPermission android.content.Intent); + method public boolean startNextMatchingActivity(@NonNull @RequiresPermission android.content.Intent, @Nullable android.os.Bundle); method public void startPostponedEnterTransition(); method public void startSearch(@Nullable String, boolean, @Nullable android.os.Bundle, boolean); method public void stopLocalVoiceInteraction(); @@ -3923,12 +4022,14 @@ package android.app { public class ActivityManager { method public int addAppTask(@NonNull android.app.Activity, @NonNull android.content.Intent, @Nullable android.app.ActivityManager.TaskDescription, @NonNull android.graphics.Bitmap); + method public void appNotResponding(@NonNull String); method public boolean clearApplicationUserData(); method public void clearWatchHeapLimit(); method @RequiresPermission(android.Manifest.permission.DUMP) public void dumpPackageState(java.io.FileDescriptor, String); method public android.util.Size getAppTaskThumbnailSize(); method public java.util.List<android.app.ActivityManager.AppTask> getAppTasks(); method public android.content.pm.ConfigurationInfo getDeviceConfigurationInfo(); + method @NonNull public java.util.List<android.app.ApplicationExitInfo> getHistoricalProcessExitReasons(@Nullable String, @IntRange(from=0) int, @IntRange(from=0) int); method public int getLargeMemoryClass(); method public int getLauncherLargeIconDensity(); method public int getLauncherLargeIconSize(); @@ -3946,6 +4047,7 @@ package android.app { method public boolean isActivityStartAllowedOnDisplay(@NonNull android.content.Context, int, @NonNull android.content.Intent); method public boolean isBackgroundRestricted(); method @Deprecated public boolean isInLockTaskMode(); + method public static boolean isLowMemoryKillReportSupported(); method public boolean isLowRamDevice(); method @Deprecated public static boolean isRunningInTestHarness(); method public static boolean isRunningInUserTestHarness(); @@ -3954,6 +4056,7 @@ package android.app { method @RequiresPermission(android.Manifest.permission.REORDER_TASKS) public void moveTaskToFront(int, int); method @RequiresPermission(android.Manifest.permission.REORDER_TASKS) public void moveTaskToFront(int, int, android.os.Bundle); method @Deprecated public void restartPackage(String); + method public void setProcessStateSummary(@Nullable byte[]); method public static void setVrThread(int); method public void setWatchHeapLimit(long); field public static final String ACTION_REPORT_HEAP_LIMIT = "android.app.action.REPORT_HEAP_LIMIT"; @@ -4093,15 +4196,15 @@ package android.app { } public static class ActivityManager.TaskDescription implements android.os.Parcelable { - ctor @Deprecated public ActivityManager.TaskDescription(String, android.graphics.Bitmap, int); ctor public ActivityManager.TaskDescription(String, @DrawableRes int, int); - ctor @Deprecated public ActivityManager.TaskDescription(String, android.graphics.Bitmap); ctor public ActivityManager.TaskDescription(String, @DrawableRes int); ctor public ActivityManager.TaskDescription(String); ctor public ActivityManager.TaskDescription(); + ctor @Deprecated public ActivityManager.TaskDescription(String, android.graphics.Bitmap, int); + ctor @Deprecated public ActivityManager.TaskDescription(String, android.graphics.Bitmap); ctor public ActivityManager.TaskDescription(android.app.ActivityManager.TaskDescription); method public int describeContents(); - method public android.graphics.Bitmap getIcon(); + method @Deprecated public android.graphics.Bitmap getIcon(); method public String getLabel(); method public int getPrimaryColor(); method public void readFromParcel(android.os.Parcel); @@ -4244,8 +4347,8 @@ package android.app { method public android.app.AlertDialog show(); } - public class AliasActivity extends android.app.Activity { - ctor public AliasActivity(); + @Deprecated public class AliasActivity extends android.app.Activity { + ctor @Deprecated public AliasActivity(); } public class AppComponentFactory { @@ -4261,18 +4364,29 @@ package android.app { public class AppOpsManager { method @Deprecated public int checkOp(@NonNull String, int, @NonNull String); method @Deprecated public int checkOpNoThrow(@NonNull String, int, @NonNull String); - method public void checkPackage(int, @NonNull String); - method public void finishOp(@NonNull String, int, @NonNull String); - method public int noteOp(@NonNull String, int, @NonNull String); - method public int noteOpNoThrow(@NonNull String, int, @NonNull String); - method public int noteProxyOp(@NonNull String, @NonNull String); - method public int noteProxyOpNoThrow(@NonNull String, @NonNull String); - method public int noteProxyOpNoThrow(@NonNull String, @Nullable String, int); - method public static String permissionToOp(String); - method public int startOp(@NonNull String, int, @NonNull String); - method public int startOpNoThrow(@NonNull String, int, @NonNull String); + method @Deprecated public void checkPackage(int, @NonNull String); + method @Deprecated public void finishOp(@NonNull String, int, @NonNull String); + method public void finishOp(@NonNull String, int, @NonNull String, @Nullable String); + method public boolean isOpActive(@NonNull String, int, @NonNull String); + method @Deprecated public int noteOp(@NonNull String, int, @NonNull String); + method public int noteOp(@NonNull String, int, @Nullable String, @Nullable String, @Nullable String); + method @Deprecated public int noteOpNoThrow(@NonNull String, int, @NonNull String); + method public int noteOpNoThrow(@NonNull String, int, @NonNull String, @Nullable String, @Nullable String); + method @Deprecated public int noteProxyOp(@NonNull String, @NonNull String); + method public int noteProxyOp(@NonNull String, @Nullable String, int, @Nullable String, @Nullable String); + method @Deprecated public int noteProxyOpNoThrow(@NonNull String, @NonNull String); + method @Deprecated public int noteProxyOpNoThrow(@NonNull String, @Nullable String, int); + method public int noteProxyOpNoThrow(@NonNull String, @Nullable String, int, @Nullable String, @Nullable String); + method @Nullable public static String permissionToOp(@NonNull String); + method public void setOnOpNotedCallback(@Nullable java.util.concurrent.Executor, @Nullable android.app.AppOpsManager.OnOpNotedCallback); + method @Deprecated public int startOp(@NonNull String, int, @NonNull String); + method public int startOp(@NonNull String, int, @Nullable String, @Nullable String, @Nullable String); + method @Deprecated public int startOpNoThrow(@NonNull String, int, @NonNull String); + method public int startOpNoThrow(@NonNull String, int, @NonNull String, @NonNull String, @Nullable String); + method public void startWatchingActive(@NonNull String[], @NonNull java.util.concurrent.Executor, @NonNull android.app.AppOpsManager.OnOpActiveChangedListener); method public void startWatchingMode(@NonNull String, @Nullable String, @NonNull android.app.AppOpsManager.OnOpChangedListener); method public void startWatchingMode(@NonNull String, @Nullable String, int, @NonNull android.app.AppOpsManager.OnOpChangedListener); + method public void stopWatchingActive(@NonNull android.app.AppOpsManager.OnOpActiveChangedListener); method public void stopWatchingMode(@NonNull android.app.AppOpsManager.OnOpChangedListener); method public int unsafeCheckOp(@NonNull String, int, @NonNull String); method public int unsafeCheckOpNoThrow(@NonNull String, int, @NonNull String); @@ -4320,10 +4434,21 @@ package android.app { field public static final int WATCH_FOREGROUND_CHANGES = 1; // 0x1 } + public static interface AppOpsManager.OnOpActiveChangedListener { + method public void onOpActiveChanged(@NonNull String, int, @NonNull String, boolean); + } + public static interface AppOpsManager.OnOpChangedListener { method public void onOpChanged(String, String); } + public abstract static class AppOpsManager.OnOpNotedCallback { + ctor public AppOpsManager.OnOpNotedCallback(); + method public abstract void onAsyncNoted(@NonNull android.app.AsyncNotedAppOp); + method public abstract void onNoted(@NonNull android.app.SyncNotedAppOp); + method public abstract void onSelfNoted(@NonNull android.app.SyncNotedAppOp); + } + public class Application extends android.content.ContextWrapper implements android.content.ComponentCallbacks2 { ctor public Application(); method public static String getProcessName(); @@ -4436,6 +4561,52 @@ package android.app { field public String serviceDetails; } + public final class ApplicationExitInfo implements android.os.Parcelable { + method public int describeContents(); + method public int getDefiningUid(); + method @Nullable public String getDescription(); + method public int getImportance(); + method public int getPackageUid(); + method public int getPid(); + method @NonNull public String getProcessName(); + method @Nullable public byte[] getProcessStateSummary(); + method public long getPss(); + method public int getRealUid(); + method public int getReason(); + method public long getRss(); + method public int getStatus(); + method public long getTimestamp(); + method @Nullable public java.io.InputStream getTraceInputStream() throws java.io.IOException; + method @NonNull public android.os.UserHandle getUserHandle(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.app.ApplicationExitInfo> CREATOR; + field public static final int REASON_ANR = 6; // 0x6 + field public static final int REASON_CRASH = 4; // 0x4 + field public static final int REASON_CRASH_NATIVE = 5; // 0x5 + field public static final int REASON_DEPENDENCY_DIED = 12; // 0xc + field public static final int REASON_EXCESSIVE_RESOURCE_USAGE = 9; // 0x9 + field public static final int REASON_EXIT_SELF = 1; // 0x1 + field public static final int REASON_INITIALIZATION_FAILURE = 7; // 0x7 + field public static final int REASON_LOW_MEMORY = 3; // 0x3 + field public static final int REASON_OTHER = 13; // 0xd + field public static final int REASON_PERMISSION_CHANGE = 8; // 0x8 + field public static final int REASON_SIGNALED = 2; // 0x2 + field public static final int REASON_UNKNOWN = 0; // 0x0 + field public static final int REASON_USER_REQUESTED = 10; // 0xa + field public static final int REASON_USER_STOPPED = 11; // 0xb + } + + public final class AsyncNotedAppOp implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public String getAttributionTag(); + method @NonNull public String getMessage(); + method @IntRange(from=0) public int getNotingUid(); + method @NonNull public String getOp(); + method public long getTime(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.app.AsyncNotedAppOp> CREATOR; + } + public final class AuthenticationRequiredException extends java.lang.SecurityException implements android.os.Parcelable { ctor public AuthenticationRequiredException(Throwable, android.app.PendingIntent); method public int describeContents(); @@ -4698,18 +4869,18 @@ package android.app { field public static final int VISIBILITY_VISIBLE_NOTIFY_ONLY_COMPLETION = 3; // 0x3 } - public class ExpandableListActivity extends android.app.Activity implements android.widget.ExpandableListView.OnChildClickListener android.widget.ExpandableListView.OnGroupCollapseListener android.widget.ExpandableListView.OnGroupExpandListener android.view.View.OnCreateContextMenuListener { - ctor public ExpandableListActivity(); - method public android.widget.ExpandableListAdapter getExpandableListAdapter(); - method public android.widget.ExpandableListView getExpandableListView(); - method public long getSelectedId(); - method public long getSelectedPosition(); - method public boolean onChildClick(android.widget.ExpandableListView, android.view.View, int, int, long); - method public void onGroupCollapse(int); - method public void onGroupExpand(int); - method public void setListAdapter(android.widget.ExpandableListAdapter); - method public boolean setSelectedChild(int, int, boolean); - method public void setSelectedGroup(int); + @Deprecated public class ExpandableListActivity extends android.app.Activity implements android.widget.ExpandableListView.OnChildClickListener android.widget.ExpandableListView.OnGroupCollapseListener android.widget.ExpandableListView.OnGroupExpandListener android.view.View.OnCreateContextMenuListener { + ctor @Deprecated public ExpandableListActivity(); + method @Deprecated public android.widget.ExpandableListAdapter getExpandableListAdapter(); + method @Deprecated public android.widget.ExpandableListView getExpandableListView(); + method @Deprecated public long getSelectedId(); + method @Deprecated public long getSelectedPosition(); + method @Deprecated public boolean onChildClick(android.widget.ExpandableListView, android.view.View, int, int, long); + method @Deprecated public void onGroupCollapse(int); + method @Deprecated public void onGroupExpand(int); + method @Deprecated public void setListAdapter(android.widget.ExpandableListAdapter); + method @Deprecated public boolean setSelectedChild(int, int, boolean); + method @Deprecated public void setSelectedGroup(int); } @Deprecated public class Fragment implements android.content.ComponentCallbacks2 android.view.View.OnCreateContextMenuListener { @@ -5034,6 +5205,7 @@ package android.app { method public void callActivityOnDestroy(android.app.Activity); method public void callActivityOnNewIntent(android.app.Activity, android.content.Intent); method public void callActivityOnPause(android.app.Activity); + method public void callActivityOnPictureInPictureRequested(@NonNull android.app.Activity); method public void callActivityOnPostCreate(@NonNull android.app.Activity, @Nullable android.os.Bundle); method public void callActivityOnPostCreate(@NonNull android.app.Activity, @Nullable android.os.Bundle, @Nullable android.os.PersistableBundle); method public void callActivityOnRestart(android.app.Activity); @@ -5115,12 +5287,12 @@ package android.app { method public android.content.Intent getResultData(); } - public abstract class IntentService extends android.app.Service { - ctor public IntentService(String); - method @Nullable public android.os.IBinder onBind(android.content.Intent); - method @WorkerThread protected abstract void onHandleIntent(@Nullable android.content.Intent); - method public void onStart(@Nullable android.content.Intent, int); - method public void setIntentRedelivery(boolean); + @Deprecated public abstract class IntentService extends android.app.Service { + ctor @Deprecated public IntentService(String); + method @Deprecated @Nullable public android.os.IBinder onBind(android.content.Intent); + method @Deprecated @WorkerThread protected abstract void onHandleIntent(@Nullable android.content.Intent); + method @Deprecated public void onStart(@Nullable android.content.Intent, int); + method @Deprecated public void setIntentRedelivery(boolean); } public class KeyguardManager { @@ -5151,40 +5323,40 @@ package android.app { method @Deprecated public void onKeyguardExitResult(boolean); } - public abstract class LauncherActivity extends android.app.ListActivity { - ctor public LauncherActivity(); - method protected android.content.Intent getTargetIntent(); - method protected android.content.Intent intentForPosition(int); - method protected android.app.LauncherActivity.ListItem itemForPosition(int); - method public java.util.List<android.app.LauncherActivity.ListItem> makeListItems(); - method protected java.util.List<android.content.pm.ResolveInfo> onQueryPackageManager(android.content.Intent); - method protected void onSetContentView(); + @Deprecated public abstract class LauncherActivity extends android.app.ListActivity { + ctor @Deprecated public LauncherActivity(); + method @Deprecated protected android.content.Intent getTargetIntent(); + method @Deprecated protected android.content.Intent intentForPosition(int); + method @Deprecated protected android.app.LauncherActivity.ListItem itemForPosition(int); + method @Deprecated public java.util.List<android.app.LauncherActivity.ListItem> makeListItems(); + method @Deprecated protected java.util.List<android.content.pm.ResolveInfo> onQueryPackageManager(android.content.Intent); + method @Deprecated protected void onSetContentView(); } - public class LauncherActivity.IconResizer { - ctor public LauncherActivity.IconResizer(); - method public android.graphics.drawable.Drawable createIconThumbnail(android.graphics.drawable.Drawable); + @Deprecated public class LauncherActivity.IconResizer { + ctor @Deprecated public LauncherActivity.IconResizer(); + method @Deprecated public android.graphics.drawable.Drawable createIconThumbnail(android.graphics.drawable.Drawable); } - public static class LauncherActivity.ListItem { - ctor public LauncherActivity.ListItem(); - field public String className; - field public android.os.Bundle extras; - field public android.graphics.drawable.Drawable icon; - field public CharSequence label; - field public String packageName; - field public android.content.pm.ResolveInfo resolveInfo; + @Deprecated public static class LauncherActivity.ListItem { + ctor @Deprecated public LauncherActivity.ListItem(); + field @Deprecated public String className; + field @Deprecated public android.os.Bundle extras; + field @Deprecated public android.graphics.drawable.Drawable icon; + field @Deprecated public CharSequence label; + field @Deprecated public String packageName; + field @Deprecated public android.content.pm.ResolveInfo resolveInfo; } - public class ListActivity extends android.app.Activity { - ctor public ListActivity(); - method public android.widget.ListAdapter getListAdapter(); - method public android.widget.ListView getListView(); - method public long getSelectedItemId(); - method public int getSelectedItemPosition(); - method protected void onListItemClick(android.widget.ListView, android.view.View, int, long); - method public void setListAdapter(android.widget.ListAdapter); - method public void setSelection(int); + @Deprecated public class ListActivity extends android.app.Activity { + ctor @Deprecated public ListActivity(); + method @Deprecated public android.widget.ListAdapter getListAdapter(); + method @Deprecated public android.widget.ListView getListView(); + method @Deprecated public long getSelectedItemId(); + method @Deprecated public int getSelectedItemPosition(); + method @Deprecated protected void onListItemClick(android.widget.ListView, android.view.View, int, long); + method @Deprecated public void setListAdapter(android.widget.ListAdapter); + method @Deprecated public void setSelection(int); } @Deprecated public class ListFragment extends android.app.Fragment { @@ -5272,10 +5444,12 @@ package android.app { ctor public Notification(android.os.Parcel); method public android.app.Notification clone(); method public int describeContents(); + method @Nullable public android.util.Pair<android.app.RemoteInput,android.app.Notification.Action> findRemoteInputActionPair(boolean); method public boolean getAllowSystemGeneratedContextualActions(); method public int getBadgeIconType(); method @Nullable public android.app.Notification.BubbleMetadata getBubbleMetadata(); method public String getChannelId(); + method @NonNull public java.util.List<android.app.Notification.Action> getContextualActions(); method public String getGroup(); method public int getGroupAlertBehavior(); method public android.graphics.drawable.Icon getLargeIcon(); @@ -5495,15 +5669,18 @@ package android.app { method @Nullable public android.app.PendingIntent getDeleteIntent(); method @Dimension(unit=android.annotation.Dimension.DP) public int getDesiredHeight(); method @DimenRes public int getDesiredHeightResId(); - method @NonNull public android.graphics.drawable.Icon getIcon(); - method @NonNull public android.app.PendingIntent getIntent(); + method @Nullable public android.graphics.drawable.Icon getIcon(); + method @Nullable public android.app.PendingIntent getIntent(); + method @Nullable public String getShortcutId(); method public boolean isNotificationSuppressed(); method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.app.Notification.BubbleMetadata> CREATOR; } public static final class Notification.BubbleMetadata.Builder { - ctor public Notification.BubbleMetadata.Builder(); + ctor @Deprecated public Notification.BubbleMetadata.Builder(); + ctor public Notification.BubbleMetadata.Builder(@NonNull String); + ctor public Notification.BubbleMetadata.Builder(@NonNull android.app.PendingIntent, @NonNull android.graphics.drawable.Icon); method @NonNull public android.app.Notification.BubbleMetadata build(); method @NonNull public android.app.Notification.BubbleMetadata.Builder setAutoExpandBubble(boolean); method @NonNull public android.app.Notification.BubbleMetadata.Builder setDeleteIntent(@Nullable android.app.PendingIntent); @@ -5552,6 +5729,7 @@ package android.app { method @Deprecated public android.app.Notification.Builder setDefaults(int); method @NonNull public android.app.Notification.Builder setDeleteIntent(android.app.PendingIntent); method @NonNull public android.app.Notification.Builder setExtras(android.os.Bundle); + method @NonNull public android.app.Notification.Builder setFlag(int, boolean); method @NonNull public android.app.Notification.Builder setFullScreenIntent(android.app.PendingIntent, boolean); method @NonNull public android.app.Notification.Builder setGroup(String); method @NonNull public android.app.Notification.Builder setGroupAlertBehavior(int); @@ -5671,6 +5849,7 @@ package android.app { method public String getDataMimeType(); method public android.net.Uri getDataUri(); method public android.os.Bundle getExtras(); + method @NonNull public static java.util.List<android.app.Notification.MessagingStyle.Message> getMessagesFromBundleArray(@Nullable android.os.Parcelable[]); method @Deprecated public CharSequence getSender(); method @Nullable public android.app.Person getSenderPerson(); method public CharSequence getText(); @@ -5758,6 +5937,7 @@ package android.app { method public void enableLights(boolean); method public void enableVibration(boolean); method public android.media.AudioAttributes getAudioAttributes(); + method @Nullable public String getConversationId(); method public String getDescription(); method public String getGroup(); method public String getId(); @@ -5765,11 +5945,15 @@ package android.app { method public int getLightColor(); method public int getLockscreenVisibility(); method public CharSequence getName(); + method @Nullable public String getParentChannelId(); method public android.net.Uri getSound(); method public long[] getVibrationPattern(); method public boolean hasUserSetImportance(); + method public boolean hasUserSetSound(); + method public boolean isImportantConversation(); method public void setAllowBubbles(boolean); method public void setBypassDnd(boolean); + method public void setConversationId(@NonNull String, @NonNull String); method public void setDescription(String); method public void setGroup(String); method public void setImportance(int); @@ -5807,8 +5991,9 @@ package android.app { method public boolean areNotificationsPaused(); method public boolean canNotifyAsPackage(@NonNull String); method public void cancel(int); - method public void cancel(String, int); + method public void cancel(@Nullable String, int); method public void cancelAll(); + method public void cancelAsPackage(@NonNull String, @Nullable String, int); method public void createNotificationChannel(@NonNull android.app.NotificationChannel); method public void createNotificationChannelGroup(@NonNull android.app.NotificationChannelGroup); method public void createNotificationChannelGroups(@NonNull java.util.List<android.app.NotificationChannelGroup>); @@ -5818,9 +6003,11 @@ package android.app { method public android.service.notification.StatusBarNotification[] getActiveNotifications(); method public android.app.AutomaticZenRule getAutomaticZenRule(String); method public java.util.Map<java.lang.String,android.app.AutomaticZenRule> getAutomaticZenRules(); + method @NonNull public android.app.NotificationManager.Policy getConsolidatedNotificationPolicy(); method public final int getCurrentInterruptionFilter(); method public int getImportance(); method public android.app.NotificationChannel getNotificationChannel(String); + method @Nullable public android.app.NotificationChannel getNotificationChannel(@NonNull String, @NonNull String); method public android.app.NotificationChannelGroup getNotificationChannelGroup(String); method public java.util.List<android.app.NotificationChannelGroup> getNotificationChannelGroups(); method public java.util.List<android.app.NotificationChannel> getNotificationChannels(); @@ -5830,7 +6017,7 @@ package android.app { method public boolean isNotificationPolicyAccessGranted(); method public void notify(int, android.app.Notification); method public void notify(String, int, android.app.Notification); - method public void notifyAsPackage(@NonNull String, @NonNull String, int, @NonNull android.app.Notification); + method public void notifyAsPackage(@NonNull String, @Nullable String, int, @NonNull android.app.Notification); method public boolean removeAutomaticZenRule(String); method public void setAutomaticZenRuleState(@NonNull String, @NonNull android.service.notification.Condition); method public final void setInterruptionFilter(int); @@ -5840,12 +6027,19 @@ package android.app { method public boolean updateAutomaticZenRule(String, android.app.AutomaticZenRule); field public static final String ACTION_APP_BLOCK_STATE_CHANGED = "android.app.action.APP_BLOCK_STATE_CHANGED"; field public static final String ACTION_AUTOMATIC_ZEN_RULE = "android.app.action.AUTOMATIC_ZEN_RULE"; + field public static final String ACTION_AUTOMATIC_ZEN_RULE_STATUS_CHANGED = "android.app.action.AUTOMATIC_ZEN_RULE_STATUS_CHANGED"; field public static final String ACTION_INTERRUPTION_FILTER_CHANGED = "android.app.action.INTERRUPTION_FILTER_CHANGED"; field public static final String ACTION_NOTIFICATION_CHANNEL_BLOCK_STATE_CHANGED = "android.app.action.NOTIFICATION_CHANNEL_BLOCK_STATE_CHANGED"; field public static final String ACTION_NOTIFICATION_CHANNEL_GROUP_BLOCK_STATE_CHANGED = "android.app.action.NOTIFICATION_CHANNEL_GROUP_BLOCK_STATE_CHANGED"; field public static final String ACTION_NOTIFICATION_POLICY_ACCESS_GRANTED_CHANGED = "android.app.action.NOTIFICATION_POLICY_ACCESS_GRANTED_CHANGED"; field public static final String ACTION_NOTIFICATION_POLICY_CHANGED = "android.app.action.NOTIFICATION_POLICY_CHANGED"; + field public static final int AUTOMATIC_RULE_STATUS_DISABLED = 2; // 0x2 + field public static final int AUTOMATIC_RULE_STATUS_ENABLED = 1; // 0x1 + field public static final int AUTOMATIC_RULE_STATUS_REMOVED = 3; // 0x3 + field public static final int AUTOMATIC_RULE_STATUS_UNKNOWN = -1; // 0xffffffff field public static final String EXTRA_AUTOMATIC_RULE_ID = "android.app.extra.AUTOMATIC_RULE_ID"; + field public static final String EXTRA_AUTOMATIC_ZEN_RULE_ID = "android.app.extra.AUTOMATIC_ZEN_RULE_ID"; + field public static final String EXTRA_AUTOMATIC_ZEN_RULE_STATUS = "android.app.extra.AUTOMATIC_ZEN_RULE_STATUS"; field public static final String EXTRA_BLOCKED_STATE = "android.app.extra.BLOCKED_STATE"; field public static final String EXTRA_NOTIFICATION_CHANNEL_GROUP_ID = "android.app.extra.NOTIFICATION_CHANNEL_GROUP_ID"; field public static final String EXTRA_NOTIFICATION_CHANNEL_ID = "android.app.extra.NOTIFICATION_CHANNEL_ID"; @@ -5868,14 +6062,19 @@ package android.app { public static class NotificationManager.Policy implements android.os.Parcelable { ctor public NotificationManager.Policy(int, int, int); ctor public NotificationManager.Policy(int, int, int, int); + ctor public NotificationManager.Policy(int, int, int, int, int); method public int describeContents(); method public static String priorityCategoriesToString(int); method public static String prioritySendersToString(int); method public static String suppressedEffectsToString(int); method public void writeToParcel(android.os.Parcel, int); + field public static final int CONVERSATION_SENDERS_ANYONE = 1; // 0x1 + field public static final int CONVERSATION_SENDERS_IMPORTANT = 2; // 0x2 + field public static final int CONVERSATION_SENDERS_NONE = 3; // 0x3 field @NonNull public static final android.os.Parcelable.Creator<android.app.NotificationManager.Policy> CREATOR; field public static final int PRIORITY_CATEGORY_ALARMS = 32; // 0x20 field public static final int PRIORITY_CATEGORY_CALLS = 8; // 0x8 + field public static final int PRIORITY_CATEGORY_CONVERSATIONS = 256; // 0x100 field public static final int PRIORITY_CATEGORY_EVENTS = 2; // 0x2 field public static final int PRIORITY_CATEGORY_MEDIA = 64; // 0x40 field public static final int PRIORITY_CATEGORY_MESSAGES = 4; // 0x4 @@ -5896,6 +6095,7 @@ package android.app { field public static final int SUPPRESSED_EFFECT_STATUS_BAR = 32; // 0x20 field public final int priorityCallSenders; field public final int priorityCategories; + field public final int priorityConversationSenders; field public final int priorityMessageSenders; field public final int suppressedVisualEffects; } @@ -6237,6 +6437,15 @@ package android.app { public class StatusBarManager { } + public final class SyncNotedAppOp implements android.os.Parcelable { + ctor public SyncNotedAppOp(@IntRange(from=0L) int, @Nullable String); + method public int describeContents(); + method @Nullable public String getAttributionTag(); + method @NonNull public String getOp(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.app.SyncNotedAppOp> CREATOR; + } + @Deprecated public class TabActivity extends android.app.ActivityGroup { ctor @Deprecated public TabActivity(); method @Deprecated public android.widget.TabHost getTabHost(); @@ -6298,6 +6507,7 @@ package android.app { method public android.view.WindowAnimationFrameStats getWindowAnimationFrameStats(); method public android.view.WindowContentFrameStats getWindowContentFrameStats(int); method public java.util.List<android.view.accessibility.AccessibilityWindowInfo> getWindows(); + method @NonNull public android.util.SparseArray<java.util.List<android.view.accessibility.AccessibilityWindowInfo>> getWindowsOnAllDisplays(); method public void grantRuntimePermission(String, String); method public void grantRuntimePermissionAsUser(String, String, android.os.UserHandle); method public boolean injectInputEvent(android.view.InputEvent, boolean); @@ -6331,7 +6541,11 @@ package android.app { method public void disableCarMode(int); method public void enableCarMode(int); method public int getCurrentModeType(); + method @NonNull public java.time.LocalTime getCustomNightModeEnd(); + method @NonNull public java.time.LocalTime getCustomNightModeStart(); method public int getNightMode(); + method public void setCustomNightModeEnd(@NonNull java.time.LocalTime); + method public void setCustomNightModeStart(@NonNull java.time.LocalTime); method public void setNightMode(int); field public static String ACTION_ENTER_CAR_MODE; field public static String ACTION_ENTER_DESK_MODE; @@ -6341,6 +6555,7 @@ package android.app { field public static final int ENABLE_CAR_MODE_ALLOW_SLEEP = 2; // 0x2 field public static final int ENABLE_CAR_MODE_GO_CAR_HOME = 1; // 0x1 field public static final int MODE_NIGHT_AUTO = 0; // 0x0 + field public static final int MODE_NIGHT_CUSTOM = 3; // 0x3 field public static final int MODE_NIGHT_NO = 1; // 0x1 field public static final int MODE_NIGHT_YES = 2; // 0x2 } @@ -6642,9 +6857,11 @@ package android.app.admin { method @NonNull public java.util.Set<java.lang.String> getAffiliationIds(@NonNull android.content.ComponentName); method @Nullable public java.util.Set<java.lang.String> getAlwaysOnVpnLockdownWhitelist(@NonNull android.content.ComponentName); method @Nullable public String getAlwaysOnVpnPackage(@NonNull android.content.ComponentName); - method @WorkerThread @NonNull public android.os.Bundle getApplicationRestrictions(@Nullable android.content.ComponentName, String); + method @NonNull @WorkerThread public android.os.Bundle getApplicationRestrictions(@Nullable android.content.ComponentName, String); method @Deprecated @Nullable public String getApplicationRestrictionsManagingPackage(@NonNull android.content.ComponentName); - method public boolean getAutoTimeRequired(); + method public boolean getAutoTimeEnabled(@NonNull android.content.ComponentName); + method @Deprecated public boolean getAutoTimeRequired(); + method public boolean getAutoTimeZoneEnabled(@NonNull android.content.ComponentName); method @NonNull public java.util.List<android.os.UserHandle> getBindDeviceAdminTargetUsers(@NonNull android.content.ComponentName); method public boolean getBluetoothContactSharingDisabled(@NonNull android.content.ComponentName); method public boolean getCameraDisabled(@Nullable android.content.ComponentName); @@ -6652,12 +6869,14 @@ package android.app.admin { method @Nullable public java.util.Set<java.lang.String> getCrossProfileCalendarPackages(@NonNull android.content.ComponentName); method public boolean getCrossProfileCallerIdDisabled(@NonNull android.content.ComponentName); method public boolean getCrossProfileContactsSearchDisabled(@NonNull android.content.ComponentName); + method @NonNull public java.util.Set<java.lang.String> getCrossProfilePackages(@NonNull android.content.ComponentName); method @NonNull public java.util.List<java.lang.String> getCrossProfileWidgetProviders(@NonNull android.content.ComponentName); method public int getCurrentFailedPasswordAttempts(); method @Nullable public java.util.List<java.lang.String> getDelegatePackages(@NonNull android.content.ComponentName, @NonNull String); method @NonNull public java.util.List<java.lang.String> getDelegatedScopes(@Nullable android.content.ComponentName, @NonNull String); method public CharSequence getDeviceOwnerLockScreenInfo(); method public CharSequence getEndUserSessionMessage(@NonNull android.content.ComponentName); + method @Nullable public android.app.admin.FactoryResetProtectionPolicy getFactoryResetProtectionPolicy(@Nullable android.content.ComponentName); method @Nullable public String getGlobalPrivateDnsHost(@NonNull android.content.ComponentName); method public int getGlobalPrivateDnsMode(@NonNull android.content.ComponentName); method @NonNull public java.util.List<byte[]> getInstalledCaCerts(@Nullable android.content.ComponentName); @@ -6666,6 +6885,7 @@ package android.app.admin { method public int getLockTaskFeatures(@NonNull android.content.ComponentName); method @NonNull public String[] getLockTaskPackages(@NonNull android.content.ComponentName); method @Nullable public CharSequence getLongSupportMessage(@NonNull android.content.ComponentName); + method public long getManagedProfileMaximumTimeOff(@NonNull android.content.ComponentName); method public int getMaximumFailedPasswordsForWipe(@Nullable android.content.ComponentName); method public long getMaximumTimeToLock(@Nullable android.content.ComponentName); method @NonNull public java.util.List<java.lang.String> getMeteredDataDisabledPackages(@NonNull android.content.ComponentName); @@ -6692,20 +6912,24 @@ package android.app.admin { method @Nullable public java.util.List<java.lang.String> getPermittedAccessibilityServices(@NonNull android.content.ComponentName); method @Nullable public java.util.List<java.lang.String> getPermittedCrossProfileNotificationListeners(@NonNull android.content.ComponentName); method @Nullable public java.util.List<java.lang.String> getPermittedInputMethods(@NonNull android.content.ComponentName); + method public int getPersonalAppsSuspendedReasons(@NonNull android.content.ComponentName); method public long getRequiredStrongAuthTimeout(@Nullable android.content.ComponentName); method public boolean getScreenCaptureDisabled(@Nullable android.content.ComponentName); method public java.util.List<android.os.UserHandle> getSecondaryUsers(@NonNull android.content.ComponentName); method public CharSequence getShortSupportMessage(@NonNull android.content.ComponentName); method public CharSequence getStartUserSessionMessage(@NonNull android.content.ComponentName); - method public boolean getStorageEncryption(@Nullable android.content.ComponentName); + method @Deprecated public boolean getStorageEncryption(@Nullable android.content.ComponentName); method public int getStorageEncryptionStatus(); method @Nullable public android.app.admin.SystemUpdatePolicy getSystemUpdatePolicy(); method @Nullable public android.os.PersistableBundle getTransferOwnershipBundle(); method @Nullable public java.util.List<android.os.PersistableBundle> getTrustAgentConfiguration(@Nullable android.content.ComponentName, @NonNull android.content.ComponentName); + method @NonNull public java.util.List<java.lang.String> getUserControlDisabledPackages(@NonNull android.content.ComponentName); method @NonNull public android.os.Bundle getUserRestrictions(@NonNull android.content.ComponentName); method @Nullable public String getWifiMacAddress(@NonNull android.content.ComponentName); + method public boolean grantKeyPairToApp(@Nullable android.content.ComponentName, @NonNull String, @NonNull String); method public boolean hasCaCertInstalled(@Nullable android.content.ComponentName, byte[]); method public boolean hasGrantedPolicy(@NonNull android.content.ComponentName, int); + method public boolean hasLockdownAdminConfiguredNetworks(@NonNull android.content.ComponentName); method public boolean installCaCert(@Nullable android.content.ComponentName, byte[]); method public boolean installExistingPackage(@NonNull android.content.ComponentName, String); method public boolean installKeyPair(@Nullable android.content.ComponentName, @NonNull java.security.PrivateKey, @NonNull java.security.cert.Certificate, @NonNull String); @@ -6719,6 +6943,7 @@ package android.app.admin { method public boolean isApplicationHidden(@NonNull android.content.ComponentName, String); method public boolean isBackupServiceEnabled(@NonNull android.content.ComponentName); method @Deprecated public boolean isCallerApplicationRestrictionsManagingPackage(); + method public boolean isCommonCriteriaModeEnabled(@Nullable android.content.ComponentName); method public boolean isDeviceIdAttestationSupported(); method public boolean isDeviceOwnerApp(String); method public boolean isEphemeralUser(@NonNull android.content.ComponentName); @@ -6727,6 +6952,7 @@ package android.app.admin { method public boolean isManagedProfile(@NonNull android.content.ComponentName); method public boolean isMasterVolumeMuted(@NonNull android.content.ComponentName); method public boolean isNetworkLoggingEnabled(@Nullable android.content.ComponentName); + method public boolean isOrganizationOwnedDeviceWithManagedProfile(); method public boolean isOverrideApnEnabled(@NonNull android.content.ComponentName); method public boolean isPackageSuspended(@NonNull android.content.ComponentName, String) throws android.content.pm.PackageManager.NameNotFoundException; method public boolean isProfileOwnerApp(String); @@ -6734,6 +6960,7 @@ package android.app.admin { method public boolean isResetPasswordTokenActive(android.content.ComponentName); method public boolean isSecurityLoggingEnabled(@Nullable android.content.ComponentName); method public boolean isUninstallBlocked(@Nullable android.content.ComponentName, String); + method public boolean isUniqueDeviceAttestationSupported(); method public boolean isUsingUnifiedPassword(@NonNull android.content.ComponentName); method public void lockNow(); method public void lockNow(int); @@ -6745,11 +6972,12 @@ package android.app.admin { method public boolean removeOverrideApn(@NonNull android.content.ComponentName, int); method public boolean removeUser(@NonNull android.content.ComponentName, @NonNull android.os.UserHandle); method public boolean requestBugreport(@NonNull android.content.ComponentName); - method public boolean resetPassword(String, int); + method @Deprecated public boolean resetPassword(String, int); method public boolean resetPasswordWithToken(@NonNull android.content.ComponentName, String, byte[], int); method @Nullable public java.util.List<android.app.admin.NetworkEvent> retrieveNetworkLogs(@Nullable android.content.ComponentName, long); method @Nullable public java.util.List<android.app.admin.SecurityLog.SecurityEvent> retrievePreRebootSecurityLogs(@NonNull android.content.ComponentName); method @Nullable public java.util.List<android.app.admin.SecurityLog.SecurityEvent> retrieveSecurityLogs(@NonNull android.content.ComponentName); + method public boolean revokeKeyPairFromApp(@Nullable android.content.ComponentName, @NonNull String, @NonNull String); method public void setAccountManagementDisabled(@NonNull android.content.ComponentName, String, boolean); method public void setAffiliationIds(@NonNull android.content.ComponentName, @NonNull java.util.Set<java.lang.String>); method public void setAlwaysOnVpnPackage(@NonNull android.content.ComponentName, @Nullable String, boolean) throws android.content.pm.PackageManager.NameNotFoundException; @@ -6757,18 +6985,24 @@ package android.app.admin { method public boolean setApplicationHidden(@NonNull android.content.ComponentName, String, boolean); method @WorkerThread public void setApplicationRestrictions(@Nullable android.content.ComponentName, String, android.os.Bundle); method @Deprecated public void setApplicationRestrictionsManagingPackage(@NonNull android.content.ComponentName, @Nullable String) throws android.content.pm.PackageManager.NameNotFoundException; - method public void setAutoTimeRequired(@NonNull android.content.ComponentName, boolean); + method public void setAutoTimeEnabled(@NonNull android.content.ComponentName, boolean); + method @Deprecated public void setAutoTimeRequired(@NonNull android.content.ComponentName, boolean); + method public void setAutoTimeZoneEnabled(@NonNull android.content.ComponentName, boolean); method public void setBackupServiceEnabled(@NonNull android.content.ComponentName, boolean); method public void setBluetoothContactSharingDisabled(@NonNull android.content.ComponentName, boolean); method public void setCameraDisabled(@NonNull android.content.ComponentName, boolean); method @Deprecated public void setCertInstallerPackage(@NonNull android.content.ComponentName, @Nullable String) throws java.lang.SecurityException; + method public void setCommonCriteriaModeEnabled(@NonNull android.content.ComponentName, boolean); + method public void setConfiguredNetworksLockdownState(@NonNull android.content.ComponentName, boolean); method public void setCrossProfileCalendarPackages(@NonNull android.content.ComponentName, @Nullable java.util.Set<java.lang.String>); method public void setCrossProfileCallerIdDisabled(@NonNull android.content.ComponentName, boolean); method public void setCrossProfileContactsSearchDisabled(@NonNull android.content.ComponentName, boolean); + method public void setCrossProfilePackages(@NonNull android.content.ComponentName, @NonNull java.util.Set<java.lang.String>); method public void setDefaultSmsApplication(@NonNull android.content.ComponentName, @NonNull String); method public void setDelegatedScopes(@NonNull android.content.ComponentName, @NonNull String, @NonNull java.util.List<java.lang.String>); method public void setDeviceOwnerLockScreenInfo(@NonNull android.content.ComponentName, CharSequence); method public void setEndUserSessionMessage(@NonNull android.content.ComponentName, @Nullable CharSequence); + method public void setFactoryResetProtectionPolicy(@NonNull android.content.ComponentName, @Nullable android.app.admin.FactoryResetProtectionPolicy); method public int setGlobalPrivateDnsModeOpportunistic(@NonNull android.content.ComponentName); method @WorkerThread public int setGlobalPrivateDnsModeSpecifiedHost(@NonNull android.content.ComponentName, @NonNull String); method public void setGlobalSetting(@NonNull android.content.ComponentName, String, String); @@ -6776,10 +7010,12 @@ package android.app.admin { method public boolean setKeyPairCertificate(@Nullable android.content.ComponentName, @NonNull String, @NonNull java.util.List<java.security.cert.Certificate>, boolean); method public boolean setKeyguardDisabled(@NonNull android.content.ComponentName, boolean); method public void setKeyguardDisabledFeatures(@NonNull android.content.ComponentName, int); + method public void setLocationEnabled(@NonNull android.content.ComponentName, boolean); method public void setLockTaskFeatures(@NonNull android.content.ComponentName, int); method public void setLockTaskPackages(@NonNull android.content.ComponentName, @NonNull String[]) throws java.lang.SecurityException; method public void setLogoutEnabled(@NonNull android.content.ComponentName, boolean); method public void setLongSupportMessage(@NonNull android.content.ComponentName, @Nullable CharSequence); + method public void setManagedProfileMaximumTimeOff(@NonNull android.content.ComponentName, long); method public void setMasterVolumeMuted(@NonNull android.content.ComponentName, boolean); method public void setMaximumFailedPasswordsForWipe(@NonNull android.content.ComponentName, int); method public void setMaximumTimeToLock(@NonNull android.content.ComponentName, long); @@ -6804,6 +7040,7 @@ package android.app.admin { method public boolean setPermittedAccessibilityServices(@NonNull android.content.ComponentName, java.util.List<java.lang.String>); method public boolean setPermittedCrossProfileNotificationListeners(@NonNull android.content.ComponentName, @Nullable java.util.List<java.lang.String>); method public boolean setPermittedInputMethods(@NonNull android.content.ComponentName, java.util.List<java.lang.String>); + method public void setPersonalAppsSuspended(@NonNull android.content.ComponentName, boolean); method public void setProfileEnabled(@NonNull android.content.ComponentName); method public void setProfileName(@NonNull android.content.ComponentName, String); method public void setRecommendedGlobalProxy(@NonNull android.content.ComponentName, @Nullable android.net.ProxyInfo); @@ -6816,13 +7053,14 @@ package android.app.admin { method public void setShortSupportMessage(@NonNull android.content.ComponentName, @Nullable CharSequence); method public void setStartUserSessionMessage(@NonNull android.content.ComponentName, @Nullable CharSequence); method public boolean setStatusBarDisabled(@NonNull android.content.ComponentName, boolean); - method public int setStorageEncryption(@NonNull android.content.ComponentName, boolean); + method @Deprecated public int setStorageEncryption(@NonNull android.content.ComponentName, boolean); method public void setSystemSetting(@NonNull android.content.ComponentName, @NonNull String, String); method public void setSystemUpdatePolicy(@NonNull android.content.ComponentName, android.app.admin.SystemUpdatePolicy); method public boolean setTime(@NonNull android.content.ComponentName, long); method public boolean setTimeZone(@NonNull android.content.ComponentName, String); method public void setTrustAgentConfiguration(@NonNull android.content.ComponentName, @NonNull android.content.ComponentName, android.os.PersistableBundle); method public void setUninstallBlocked(@Nullable android.content.ComponentName, String, boolean); + method public void setUserControlDisabledPackages(@NonNull android.content.ComponentName, @NonNull java.util.List<java.lang.String>); method public void setUserIcon(@NonNull android.content.ComponentName, android.graphics.Bitmap); method public int startUserInBackground(@NonNull android.content.ComponentName, @NonNull android.os.UserHandle); method public int stopUser(@NonNull android.content.ComponentName, @NonNull android.os.UserHandle); @@ -6836,6 +7074,7 @@ package android.app.admin { field public static final String ACTION_ADD_DEVICE_ADMIN = "android.app.action.ADD_DEVICE_ADMIN"; field public static final String ACTION_ADMIN_POLICY_COMPLIANCE = "android.app.action.ADMIN_POLICY_COMPLIANCE"; field public static final String ACTION_APPLICATION_DELEGATION_SCOPES_CHANGED = "android.app.action.APPLICATION_DELEGATION_SCOPES_CHANGED"; + field public static final String ACTION_CHECK_POLICY_COMPLIANCE = "android.app.action.CHECK_POLICY_COMPLIANCE"; field public static final String ACTION_DEVICE_ADMIN_SERVICE = "android.app.action.DEVICE_ADMIN_SERVICE"; field public static final String ACTION_DEVICE_OWNER_CHANGED = "android.app.action.DEVICE_OWNER_CHANGED"; field public static final String ACTION_GET_PROVISIONING_MODE = "android.app.action.GET_PROVISIONING_MODE"; @@ -6914,6 +7153,7 @@ package android.app.admin { field public static final int FLAG_PARENT_CAN_ACCESS_MANAGED = 1; // 0x1 field public static final int ID_TYPE_BASE_INFO = 1; // 0x1 field public static final int ID_TYPE_IMEI = 4; // 0x4 + field public static final int ID_TYPE_INDIVIDUAL_ATTESTATION = 16; // 0x10 field public static final int ID_TYPE_MEID = 8; // 0x8 field public static final int ID_TYPE_SERIAL = 2; // 0x2 field public static final int INSTALLKEY_REQUEST_CREDENTIALS_ACCESS = 1; // 0x1 @@ -6931,6 +7171,7 @@ package android.app.admin { field public static final int KEYGUARD_DISABLE_UNREDACTED_NOTIFICATIONS = 8; // 0x8 field public static final int KEYGUARD_DISABLE_WIDGETS_ALL = 1; // 0x1 field public static final int LEAVE_ALL_SYSTEM_APPS_ENABLED = 16; // 0x10 + field public static final int LOCK_TASK_FEATURE_BLOCK_ACTIVITY_START_IN_TASK = 64; // 0x40 field public static final int LOCK_TASK_FEATURE_GLOBAL_ACTIONS = 16; // 0x10 field public static final int LOCK_TASK_FEATURE_HOME = 4; // 0x4 field public static final int LOCK_TASK_FEATURE_KEYGUARD = 32; // 0x20 @@ -6958,6 +7199,9 @@ package android.app.admin { field public static final int PERMISSION_POLICY_AUTO_DENY = 2; // 0x2 field public static final int PERMISSION_POLICY_AUTO_GRANT = 1; // 0x1 field public static final int PERMISSION_POLICY_PROMPT = 0; // 0x0 + field public static final int PERSONAL_APPS_NOT_SUSPENDED = 0; // 0x0 + field public static final int PERSONAL_APPS_SUSPENDED_EXPLICITLY = 1; // 0x1 + field public static final int PERSONAL_APPS_SUSPENDED_PROFILE_TIMEOUT = 2; // 0x2 field public static final String POLICY_DISABLE_CAMERA = "policy_disable_camera"; field public static final String POLICY_DISABLE_SCREEN_CAPTURE = "policy_disable_screen_capture"; field public static final int PRIVATE_DNS_MODE_OFF = 1; // 0x1 @@ -7000,6 +7244,21 @@ package android.app.admin { field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.DnsEvent> CREATOR; } + public final class FactoryResetProtectionPolicy implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public java.util.List<java.lang.String> getFactoryResetProtectionAccounts(); + method public boolean isFactoryResetProtectionEnabled(); + method public void writeToParcel(@NonNull android.os.Parcel, @Nullable int); + field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.FactoryResetProtectionPolicy> CREATOR; + } + + public static class FactoryResetProtectionPolicy.Builder { + ctor public FactoryResetProtectionPolicy.Builder(); + method @NonNull public android.app.admin.FactoryResetProtectionPolicy build(); + method @NonNull public android.app.admin.FactoryResetProtectionPolicy.Builder setFactoryResetProtectionAccounts(@NonNull java.util.List<java.lang.String>); + method @NonNull public android.app.admin.FactoryResetProtectionPolicy.Builder setFactoryResetProtectionEnabled(boolean); + } + public class FreezePeriod { ctor public FreezePeriod(java.time.MonthDay, java.time.MonthDay); method public java.time.MonthDay getEnd(); @@ -7022,6 +7281,7 @@ package android.app.admin { field public static final int TAG_ADB_SHELL_CMD = 210002; // 0x33452 field public static final int TAG_ADB_SHELL_INTERACTIVE = 210001; // 0x33451 field public static final int TAG_APP_PROCESS_START = 210005; // 0x33455 + field public static final int TAG_CAMERA_POLICY_SET = 210034; // 0x33472 field public static final int TAG_CERT_AUTHORITY_INSTALLED = 210029; // 0x3346d field public static final int TAG_CERT_AUTHORITY_REMOVED = 210030; // 0x3346e field public static final int TAG_CERT_VALIDATION_FAILURE = 210033; // 0x33471 @@ -7150,17 +7410,18 @@ package android.app.assist { method @Nullable public android.view.autofill.AutofillValue getAutofillValue(); method public android.app.assist.AssistStructure.ViewNode getChildAt(int); method public int getChildCount(); - method public String getClassName(); - method public CharSequence getContentDescription(); + method @Nullable public String getClassName(); + method @Nullable public CharSequence getContentDescription(); method public float getElevation(); - method public android.os.Bundle getExtras(); + method @Nullable public android.os.Bundle getExtras(); method public int getHeight(); - method public String getHint(); + method @Nullable public String getHint(); + method @Nullable public String getHintIdEntry(); method @Nullable public android.view.ViewStructure.HtmlInfo getHtmlInfo(); method public int getId(); - method public String getIdEntry(); - method public String getIdPackage(); - method public String getIdType(); + method @Nullable public String getIdEntry(); + method @Nullable public String getIdPackage(); + method @Nullable public String getIdType(); method public int getImportantForAutofill(); method public int getInputType(); method public int getLeft(); @@ -7170,12 +7431,12 @@ package android.app.assist { method public int getMinTextEms(); method public int getScrollX(); method public int getScrollY(); - method public CharSequence getText(); + method @Nullable public CharSequence getText(); method public int getTextBackgroundColor(); method public int getTextColor(); method @Nullable public String getTextIdEntry(); - method public int[] getTextLineBaselines(); - method public int[] getTextLineCharOffsets(); + method @Nullable public int[] getTextLineBaselines(); + method @Nullable public int[] getTextLineCharOffsets(); method public int getTextSelectionEnd(); method public int getTextSelectionStart(); method public float getTextSize(); @@ -7308,6 +7569,50 @@ package android.app.backup { } +package android.app.blob { + + public final class BlobHandle implements android.os.Parcelable { + method @NonNull public static android.app.blob.BlobHandle createWithSha256(@NonNull byte[], @NonNull CharSequence, long, @NonNull String); + method public int describeContents(); + method public long getExpiryTimeMillis(); + method @NonNull public CharSequence getLabel(); + method @NonNull public byte[] getSha256Digest(); + method @NonNull public String getTag(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.app.blob.BlobHandle> CREATOR; + } + + public class BlobStoreManager { + method public void abandonSession(@IntRange(from=1) long) throws java.io.IOException; + method public void acquireLease(@NonNull android.app.blob.BlobHandle, @IdRes int, long) throws java.io.IOException; + method public void acquireLease(@NonNull android.app.blob.BlobHandle, @NonNull CharSequence, long) throws java.io.IOException; + method public void acquireLease(@NonNull android.app.blob.BlobHandle, @IdRes int) throws java.io.IOException; + method public void acquireLease(@NonNull android.app.blob.BlobHandle, @NonNull CharSequence) throws java.io.IOException; + method @IntRange(from=1) public long createSession(@NonNull android.app.blob.BlobHandle) throws java.io.IOException; + method @NonNull public java.util.List<android.app.blob.BlobHandle> getLeasedBlobs() throws java.io.IOException; + method @IntRange(from=0) public long getRemainingLeaseQuotaBytes(); + method @NonNull public android.os.ParcelFileDescriptor openBlob(@NonNull android.app.blob.BlobHandle) throws java.io.IOException; + method @NonNull public android.app.blob.BlobStoreManager.Session openSession(@IntRange(from=1) long) throws java.io.IOException; + method public void releaseLease(@NonNull android.app.blob.BlobHandle) throws java.io.IOException; + } + + public static class BlobStoreManager.Session implements java.io.Closeable { + method public void abandon() throws java.io.IOException; + method public void allowPackageAccess(@NonNull String, @NonNull byte[]) throws java.io.IOException; + method public void allowPublicAccess() throws java.io.IOException; + method public void allowSameSignatureAccess() throws java.io.IOException; + method public void close() throws java.io.IOException; + method public void commit(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>) throws java.io.IOException; + method public long getSize() throws java.io.IOException; + method public boolean isPackageAccessAllowed(@NonNull String, @NonNull byte[]) throws java.io.IOException; + method public boolean isPublicAccessAllowed() throws java.io.IOException; + method public boolean isSameSignatureAccessAllowed() throws java.io.IOException; + method @NonNull public android.os.ParcelFileDescriptor openRead() throws java.io.IOException; + method @NonNull public android.os.ParcelFileDescriptor openWrite(long, long) throws java.io.IOException; + } + +} + package android.app.job { public class JobInfo implements android.os.Parcelable { @@ -7562,7 +7867,7 @@ package android.app.slice { method public int checkSlicePermission(@NonNull android.net.Uri, int, int); method @NonNull public java.util.List<android.net.Uri> getPinnedSlices(); method @NonNull public java.util.Set<android.app.slice.SliceSpec> getPinnedSpecs(android.net.Uri); - method @WorkerThread @NonNull public java.util.Collection<android.net.Uri> getSliceDescendants(@NonNull android.net.Uri); + method @NonNull @WorkerThread public java.util.Collection<android.net.Uri> getSliceDescendants(@NonNull android.net.Uri); method public void grantSlicePermission(@NonNull String, @NonNull android.net.Uri); method @Nullable public android.net.Uri mapIntentToUri(@NonNull android.content.Intent); method public void pinSlice(@NonNull android.net.Uri, @NonNull java.util.Set<android.app.slice.SliceSpec>); @@ -7718,10 +8023,10 @@ package android.app.usage { public class StorageStatsManager { method @WorkerThread public long getFreeBytes(@NonNull java.util.UUID) throws java.io.IOException; method @WorkerThread public long getTotalBytes(@NonNull java.util.UUID) throws java.io.IOException; - method @WorkerThread @NonNull public android.app.usage.ExternalStorageStats queryExternalStatsForUser(@NonNull java.util.UUID, @NonNull android.os.UserHandle) throws java.io.IOException; - method @WorkerThread @NonNull public android.app.usage.StorageStats queryStatsForPackage(@NonNull java.util.UUID, @NonNull String, @NonNull android.os.UserHandle) throws java.io.IOException, android.content.pm.PackageManager.NameNotFoundException; - method @WorkerThread @NonNull public android.app.usage.StorageStats queryStatsForUid(@NonNull java.util.UUID, int) throws java.io.IOException; - method @WorkerThread @NonNull public android.app.usage.StorageStats queryStatsForUser(@NonNull java.util.UUID, @NonNull android.os.UserHandle) throws java.io.IOException; + method @NonNull @WorkerThread public android.app.usage.ExternalStorageStats queryExternalStatsForUser(@NonNull java.util.UUID, @NonNull android.os.UserHandle) throws java.io.IOException; + method @NonNull @WorkerThread public android.app.usage.StorageStats queryStatsForPackage(@NonNull java.util.UUID, @NonNull String, @NonNull android.os.UserHandle) throws java.io.IOException, android.content.pm.PackageManager.NameNotFoundException; + method @NonNull @WorkerThread public android.app.usage.StorageStats queryStatsForUid(@NonNull java.util.UUID, int) throws java.io.IOException; + method @NonNull @WorkerThread public android.app.usage.StorageStats queryStatsForUser(@NonNull java.util.UUID, @NonNull android.os.UserHandle) throws java.io.IOException; } public final class UsageEvents implements android.os.Parcelable { @@ -7795,6 +8100,7 @@ package android.app.usage { field public static final int STANDBY_BUCKET_ACTIVE = 10; // 0xa field public static final int STANDBY_BUCKET_FREQUENT = 30; // 0x1e field public static final int STANDBY_BUCKET_RARE = 40; // 0x28 + field public static final int STANDBY_BUCKET_RESTRICTED = 45; // 0x2d field public static final int STANDBY_BUCKET_WORKING_SET = 20; // 0x14 } @@ -7811,6 +8117,7 @@ package android.appwidget { method public void deleteAppWidgetId(int); method public void deleteHost(); method public int[] getAppWidgetIds(); + method public void onAppWidgetRemoved(int); method protected android.appwidget.AppWidgetHostView onCreateView(android.content.Context, int, android.appwidget.AppWidgetProviderInfo); method protected void onProviderChanged(int, android.appwidget.AppWidgetProviderInfo); method protected void onProvidersChanged(); @@ -7885,6 +8192,7 @@ package android.appwidget { field public static final String OPTION_APPWIDGET_MAX_WIDTH = "appWidgetMaxWidth"; field public static final String OPTION_APPWIDGET_MIN_HEIGHT = "appWidgetMinHeight"; field public static final String OPTION_APPWIDGET_MIN_WIDTH = "appWidgetMinWidth"; + field public static final String OPTION_APPWIDGET_RESTORE_COMPLETED = "appWidgetRestoreCompleted"; } public class AppWidgetProvider extends android.content.BroadcastReceiver { @@ -7980,9 +8288,9 @@ package android.bluetooth { method public boolean isMultipleAdvertisementSupported(); method public boolean isOffloadedFilteringSupported(); method public boolean isOffloadedScanBatchingSupported(); - method @RequiresPermission(android.Manifest.permission.BLUETOOTH) @NonNull public android.bluetooth.BluetoothServerSocket listenUsingInsecureL2capChannel() throws java.io.IOException; + method @NonNull @RequiresPermission(android.Manifest.permission.BLUETOOTH) public android.bluetooth.BluetoothServerSocket listenUsingInsecureL2capChannel() throws java.io.IOException; method @RequiresPermission(android.Manifest.permission.BLUETOOTH) public android.bluetooth.BluetoothServerSocket listenUsingInsecureRfcommWithServiceRecord(String, java.util.UUID) throws java.io.IOException; - method @RequiresPermission(android.Manifest.permission.BLUETOOTH) @NonNull public android.bluetooth.BluetoothServerSocket listenUsingL2capChannel() throws java.io.IOException; + method @NonNull @RequiresPermission(android.Manifest.permission.BLUETOOTH) public android.bluetooth.BluetoothServerSocket listenUsingL2capChannel() throws java.io.IOException; method @RequiresPermission(android.Manifest.permission.BLUETOOTH) public android.bluetooth.BluetoothServerSocket listenUsingRfcommWithServiceRecord(String, java.util.UUID) throws java.io.IOException; method @RequiresPermission(android.Manifest.permission.BLUETOOTH_ADMIN) public boolean setName(String); method @RequiresPermission(android.Manifest.permission.BLUETOOTH_ADMIN) public boolean startDiscovery(); @@ -8350,13 +8658,14 @@ package android.bluetooth { method public android.bluetooth.BluetoothGatt connectGatt(android.content.Context, boolean, android.bluetooth.BluetoothGattCallback, int, int); method public android.bluetooth.BluetoothGatt connectGatt(android.content.Context, boolean, android.bluetooth.BluetoothGattCallback, int, int, android.os.Handler); method @RequiresPermission(android.Manifest.permission.BLUETOOTH_ADMIN) public boolean createBond(); - method @RequiresPermission(android.Manifest.permission.BLUETOOTH) @NonNull public android.bluetooth.BluetoothSocket createInsecureL2capChannel(int) throws java.io.IOException; + method @NonNull @RequiresPermission(android.Manifest.permission.BLUETOOTH) public android.bluetooth.BluetoothSocket createInsecureL2capChannel(int) throws java.io.IOException; method @RequiresPermission(android.Manifest.permission.BLUETOOTH) public android.bluetooth.BluetoothSocket createInsecureRfcommSocketToServiceRecord(java.util.UUID) throws java.io.IOException; - method @RequiresPermission(android.Manifest.permission.BLUETOOTH) @NonNull public android.bluetooth.BluetoothSocket createL2capChannel(int) throws java.io.IOException; + method @NonNull @RequiresPermission(android.Manifest.permission.BLUETOOTH) public android.bluetooth.BluetoothSocket createL2capChannel(int) throws java.io.IOException; method @RequiresPermission(android.Manifest.permission.BLUETOOTH) public android.bluetooth.BluetoothSocket createRfcommSocketToServiceRecord(java.util.UUID) throws java.io.IOException; method public int describeContents(); method @RequiresPermission(android.Manifest.permission.BLUETOOTH) public boolean fetchUuidsWithSdp(); method public String getAddress(); + method @Nullable @RequiresPermission(android.Manifest.permission.BLUETOOTH) public String getAlias(); method @RequiresPermission(android.Manifest.permission.BLUETOOTH) public android.bluetooth.BluetoothClass getBluetoothClass(); method @RequiresPermission(android.Manifest.permission.BLUETOOTH) public int getBondState(); method @RequiresPermission(android.Manifest.permission.BLUETOOTH) public String getName(); @@ -8368,6 +8677,7 @@ package android.bluetooth { field public static final String ACTION_ACL_CONNECTED = "android.bluetooth.device.action.ACL_CONNECTED"; field public static final String ACTION_ACL_DISCONNECTED = "android.bluetooth.device.action.ACL_DISCONNECTED"; field public static final String ACTION_ACL_DISCONNECT_REQUESTED = "android.bluetooth.device.action.ACL_DISCONNECT_REQUESTED"; + field public static final String ACTION_ALIAS_CHANGED = "android.bluetooth.device.action.ALIAS_CHANGED"; field public static final String ACTION_BOND_STATE_CHANGED = "android.bluetooth.device.action.BOND_STATE_CHANGED"; field public static final String ACTION_CLASS_CHANGED = "android.bluetooth.device.action.CLASS_CHANGED"; field public static final String ACTION_FOUND = "android.bluetooth.device.action.FOUND"; @@ -9152,14 +9462,16 @@ package android.companion { public final class WifiDeviceFilter implements android.companion.DeviceFilter<android.net.wifi.ScanResult> { method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); + method public void writeToParcel(@NonNull android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.companion.WifiDeviceFilter> CREATOR; } public static final class WifiDeviceFilter.Builder { ctor public WifiDeviceFilter.Builder(); method @NonNull public android.companion.WifiDeviceFilter build(); - method public android.companion.WifiDeviceFilter.Builder setNamePattern(@Nullable java.util.regex.Pattern); + method @NonNull public android.companion.WifiDeviceFilter.Builder setBssid(@NonNull android.net.MacAddress); + method @NonNull public android.companion.WifiDeviceFilter.Builder setBssidMask(@NonNull android.net.MacAddress); + method @NonNull public android.companion.WifiDeviceFilter.Builder setNamePattern(@Nullable java.util.regex.Pattern); } } @@ -9315,6 +9627,7 @@ package android.content { field public static final String MIMETYPE_TEXT_INTENT = "text/vnd.android.intent"; field public static final String MIMETYPE_TEXT_PLAIN = "text/plain"; field public static final String MIMETYPE_TEXT_URILIST = "text/uri-list"; + field public static final String MIMETYPE_UNKNOWN = "application/octet-stream"; } public class ClipboardManager extends android.text.ClipboardManager { @@ -9384,8 +9697,11 @@ package android.content { method @Nullable public android.net.Uri canonicalize(@NonNull android.net.Uri); method @NonNull public final android.content.ContentProvider.CallingIdentity clearCallingIdentity(); method public abstract int delete(@NonNull android.net.Uri, @Nullable String, @Nullable String[]); + method public int delete(@NonNull android.net.Uri, @Nullable android.os.Bundle); method public void dump(java.io.FileDescriptor, java.io.PrintWriter, String[]); + method @Nullable public final String getCallingAttributionTag(); method @Nullable public final String getCallingPackage(); + method @Nullable public final String getCallingPackageUnchecked(); method @Nullable public final android.content.Context getContext(); method @Nullable public final android.content.pm.PathPermission[] getPathPermissions(); method @Nullable public final String getReadPermission(); @@ -9393,7 +9709,9 @@ package android.content { method @Nullable public abstract String getType(@NonNull android.net.Uri); method @Nullable public final String getWritePermission(); method @Nullable public abstract android.net.Uri insert(@NonNull android.net.Uri, @Nullable android.content.ContentValues); + method @Nullable public android.net.Uri insert(@NonNull android.net.Uri, @Nullable android.content.ContentValues, @Nullable android.os.Bundle); method protected boolean isTemporary(); + method public void onCallingPackageChanged(); method public void onConfigurationChanged(android.content.res.Configuration); method public abstract boolean onCreate(); method public void onLowMemory(); @@ -9410,6 +9728,7 @@ package android.content { method @Nullable public android.database.Cursor query(@NonNull android.net.Uri, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String, @Nullable android.os.CancellationSignal); method @Nullable public android.database.Cursor query(@NonNull android.net.Uri, @Nullable String[], @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal); method public boolean refresh(android.net.Uri, @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal); + method @NonNull public final android.content.Context requireContext(); method public final void restoreCallingIdentity(@NonNull android.content.ContentProvider.CallingIdentity); method protected final void setPathPermissions(@Nullable android.content.pm.PathPermission[]); method protected final void setReadPermission(@Nullable String); @@ -9417,6 +9736,7 @@ package android.content { method public void shutdown(); method @Nullable public android.net.Uri uncanonicalize(@NonNull android.net.Uri); method public abstract int update(@NonNull android.net.Uri, @Nullable android.content.ContentValues, @Nullable String, @Nullable String[]); + method public int update(@NonNull android.net.Uri, @Nullable android.content.ContentValues, @Nullable android.os.Bundle); } public final class ContentProvider.CallingIdentity { @@ -9435,10 +9755,12 @@ package android.content { method @Nullable public final android.net.Uri canonicalize(@NonNull android.net.Uri) throws android.os.RemoteException; method public void close(); method public int delete(@NonNull android.net.Uri, @Nullable String, @Nullable String[]) throws android.os.RemoteException; + method public int delete(@NonNull android.net.Uri, @Nullable android.os.Bundle) throws android.os.RemoteException; method @Nullable public android.content.ContentProvider getLocalContentProvider(); method @Nullable public String[] getStreamTypes(@NonNull android.net.Uri, @NonNull String) throws android.os.RemoteException; method @Nullable public String getType(@NonNull android.net.Uri) throws android.os.RemoteException; method @Nullable public android.net.Uri insert(@NonNull android.net.Uri, @Nullable android.content.ContentValues) throws android.os.RemoteException; + method @Nullable public android.net.Uri insert(@NonNull android.net.Uri, @Nullable android.content.ContentValues, @Nullable android.os.Bundle) throws android.os.RemoteException; method @Nullable public android.content.res.AssetFileDescriptor openAssetFile(@NonNull android.net.Uri, @NonNull String) throws java.io.FileNotFoundException, android.os.RemoteException; method @Nullable public android.content.res.AssetFileDescriptor openAssetFile(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException, android.os.RemoteException; method @Nullable public android.os.ParcelFileDescriptor openFile(@NonNull android.net.Uri, @NonNull String) throws java.io.FileNotFoundException, android.os.RemoteException; @@ -9453,50 +9775,66 @@ package android.content { method @Deprecated public boolean release(); method @Nullable public final android.net.Uri uncanonicalize(@NonNull android.net.Uri) throws android.os.RemoteException; method public int update(@NonNull android.net.Uri, @Nullable android.content.ContentValues, @Nullable String, @Nullable String[]) throws android.os.RemoteException; + method public int update(@NonNull android.net.Uri, @Nullable android.content.ContentValues, @Nullable android.os.Bundle) throws android.os.RemoteException; } public class ContentProviderOperation implements android.os.Parcelable { - method public android.content.ContentProviderResult apply(android.content.ContentProvider, android.content.ContentProviderResult[], int) throws android.content.OperationApplicationException; + method @NonNull public android.content.ContentProviderResult apply(@NonNull android.content.ContentProvider, @NonNull android.content.ContentProviderResult[], int) throws android.content.OperationApplicationException; method public int describeContents(); - method public android.net.Uri getUri(); + method @NonNull public android.net.Uri getUri(); method public boolean isAssertQuery(); + method public boolean isCall(); method public boolean isDelete(); + method public boolean isExceptionAllowed(); method public boolean isInsert(); method public boolean isReadOperation(); method public boolean isUpdate(); method public boolean isWriteOperation(); method public boolean isYieldAllowed(); - method public static android.content.ContentProviderOperation.Builder newAssertQuery(android.net.Uri); - method public static android.content.ContentProviderOperation.Builder newDelete(android.net.Uri); - method public static android.content.ContentProviderOperation.Builder newInsert(android.net.Uri); - method public static android.content.ContentProviderOperation.Builder newUpdate(android.net.Uri); - method public String[] resolveSelectionArgsBackReferences(android.content.ContentProviderResult[], int); - method public android.content.ContentValues resolveValueBackReferences(android.content.ContentProviderResult[], int); + method @NonNull public static android.content.ContentProviderOperation.Builder newAssertQuery(@NonNull android.net.Uri); + method @NonNull public static android.content.ContentProviderOperation.Builder newCall(@NonNull android.net.Uri, @Nullable String, @Nullable String); + method @NonNull public static android.content.ContentProviderOperation.Builder newDelete(@NonNull android.net.Uri); + method @NonNull public static android.content.ContentProviderOperation.Builder newInsert(@NonNull android.net.Uri); + method @NonNull public static android.content.ContentProviderOperation.Builder newUpdate(@NonNull android.net.Uri); + method @Nullable public android.os.Bundle resolveExtrasBackReferences(@NonNull android.content.ContentProviderResult[], int); + method @Nullable public String[] resolveSelectionArgsBackReferences(@NonNull android.content.ContentProviderResult[], int); + method @Nullable public android.content.ContentValues resolveValueBackReferences(@NonNull android.content.ContentProviderResult[], int); method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.content.ContentProviderOperation> CREATOR; } public static class ContentProviderOperation.Builder { - method public android.content.ContentProviderOperation build(); - method public android.content.ContentProviderOperation.Builder withExpectedCount(int); - method public android.content.ContentProviderOperation.Builder withSelection(String, String[]); - method public android.content.ContentProviderOperation.Builder withSelectionBackReference(int, int); - method public android.content.ContentProviderOperation.Builder withValue(String, Object); - method public android.content.ContentProviderOperation.Builder withValueBackReference(String, int); - method public android.content.ContentProviderOperation.Builder withValueBackReferences(android.content.ContentValues); - method public android.content.ContentProviderOperation.Builder withValues(android.content.ContentValues); - method public android.content.ContentProviderOperation.Builder withYieldAllowed(boolean); + method @NonNull public android.content.ContentProviderOperation build(); + method @NonNull public android.content.ContentProviderOperation.Builder withExceptionAllowed(boolean); + method @NonNull public android.content.ContentProviderOperation.Builder withExpectedCount(int); + method @NonNull public android.content.ContentProviderOperation.Builder withExtra(@NonNull String, @Nullable Object); + method @NonNull public android.content.ContentProviderOperation.Builder withExtraBackReference(@NonNull String, int); + method @NonNull public android.content.ContentProviderOperation.Builder withExtraBackReference(@NonNull String, int, @NonNull String); + method @NonNull public android.content.ContentProviderOperation.Builder withExtras(@NonNull android.os.Bundle); + method @NonNull public android.content.ContentProviderOperation.Builder withSelection(@Nullable String, @Nullable String[]); + method @NonNull public android.content.ContentProviderOperation.Builder withSelectionBackReference(int, int); + method @NonNull public android.content.ContentProviderOperation.Builder withSelectionBackReference(int, int, @NonNull String); + method @NonNull public android.content.ContentProviderOperation.Builder withValue(@NonNull String, @Nullable Object); + method @NonNull public android.content.ContentProviderOperation.Builder withValueBackReference(@NonNull String, int); + method @NonNull public android.content.ContentProviderOperation.Builder withValueBackReference(@NonNull String, int, @NonNull String); + method @NonNull public android.content.ContentProviderOperation.Builder withValueBackReferences(@NonNull android.content.ContentValues); + method @NonNull public android.content.ContentProviderOperation.Builder withValues(@NonNull android.content.ContentValues); + method @NonNull public android.content.ContentProviderOperation.Builder withYieldAllowed(boolean); } public class ContentProviderResult implements android.os.Parcelable { - ctor public ContentProviderResult(android.net.Uri); + ctor public ContentProviderResult(@NonNull android.net.Uri); ctor public ContentProviderResult(int); + ctor public ContentProviderResult(@NonNull android.os.Bundle); + ctor public ContentProviderResult(@NonNull Throwable); ctor public ContentProviderResult(android.os.Parcel); method public int describeContents(); method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.content.ContentProviderResult> CREATOR; - field public final Integer count; - field public final android.net.Uri uri; + field @Nullable public final Integer count; + field @Nullable public final Throwable exception; + field @Nullable public final android.os.Bundle extras; + field @Nullable public final android.net.Uri uri; } public class ContentQueryMap extends java.util.Observable { @@ -9517,14 +9855,15 @@ package android.content { method public static void addPeriodicSync(android.accounts.Account, String, android.os.Bundle, long); method public static Object addStatusChangeListener(int, android.content.SyncStatusObserver); method @NonNull public android.content.ContentProviderResult[] applyBatch(@NonNull String, @NonNull java.util.ArrayList<android.content.ContentProviderOperation>) throws android.content.OperationApplicationException, android.os.RemoteException; - method public final int bulkInsert(@RequiresPermission.Write @NonNull android.net.Uri, @NonNull android.content.ContentValues[]); + method public final int bulkInsert(@NonNull @RequiresPermission.Write android.net.Uri, @NonNull android.content.ContentValues[]); method @Nullable public final android.os.Bundle call(@NonNull android.net.Uri, @NonNull String, @Nullable String, @Nullable android.os.Bundle); method @Nullable public final android.os.Bundle call(@NonNull String, @NonNull String, @Nullable String, @Nullable android.os.Bundle); method @Deprecated public void cancelSync(android.net.Uri); method public static void cancelSync(android.accounts.Account, String); method public static void cancelSync(android.content.SyncRequest); method @Nullable public final android.net.Uri canonicalize(@NonNull android.net.Uri); - method public final int delete(@RequiresPermission.Write @NonNull android.net.Uri, @Nullable String, @Nullable String[]); + method public final int delete(@NonNull @RequiresPermission.Write android.net.Uri, @Nullable String, @Nullable String[]); + method public final int delete(@NonNull @RequiresPermission.Write android.net.Uri, @Nullable android.os.Bundle); method @Deprecated public static android.content.SyncInfo getCurrentSync(); method public static java.util.List<android.content.SyncInfo> getCurrentSyncs(); method public static int getIsSyncable(android.accounts.Account, String); @@ -9537,13 +9876,15 @@ package android.content { method public static boolean getSyncAutomatically(android.accounts.Account, String); method @Nullable public final String getType(@NonNull android.net.Uri); method @NonNull public final android.content.ContentResolver.MimeTypeInfo getTypeInfo(@NonNull String); - method @Nullable public final android.net.Uri insert(@RequiresPermission.Write @NonNull android.net.Uri, @Nullable android.content.ContentValues); + method @Nullable public final android.net.Uri insert(@NonNull @RequiresPermission.Write android.net.Uri, @Nullable android.content.ContentValues); + method @Nullable public final android.net.Uri insert(@NonNull @RequiresPermission.Write android.net.Uri, @Nullable android.content.ContentValues, @Nullable android.os.Bundle); method public static boolean isSyncActive(android.accounts.Account, String); method public static boolean isSyncPending(android.accounts.Account, String); method @NonNull public android.graphics.Bitmap loadThumbnail(@NonNull android.net.Uri, @NonNull android.util.Size, @Nullable android.os.CancellationSignal) throws java.io.IOException; method public void notifyChange(@NonNull android.net.Uri, @Nullable android.database.ContentObserver); - method public void notifyChange(@NonNull android.net.Uri, @Nullable android.database.ContentObserver, boolean); + method @Deprecated public void notifyChange(@NonNull android.net.Uri, @Nullable android.database.ContentObserver, boolean); method public void notifyChange(@NonNull android.net.Uri, @Nullable android.database.ContentObserver, int); + method public void notifyChange(@NonNull java.util.Collection<android.net.Uri>, @Nullable android.database.ContentObserver, int); method @Nullable public final android.content.res.AssetFileDescriptor openAssetFile(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException; method @Nullable public final android.content.res.AssetFileDescriptor openAssetFileDescriptor(@NonNull android.net.Uri, @NonNull String) throws java.io.FileNotFoundException; method @Nullable public final android.content.res.AssetFileDescriptor openAssetFileDescriptor(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException; @@ -9556,9 +9897,9 @@ package android.content { method @Nullable public final android.content.res.AssetFileDescriptor openTypedAssetFile(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException; method @Nullable public final android.content.res.AssetFileDescriptor openTypedAssetFileDescriptor(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.Bundle) throws java.io.FileNotFoundException; method @Nullable public final android.content.res.AssetFileDescriptor openTypedAssetFileDescriptor(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException; - method @Nullable public final android.database.Cursor query(@RequiresPermission.Read @NonNull android.net.Uri, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String); - method @Nullable public final android.database.Cursor query(@RequiresPermission.Read @NonNull android.net.Uri, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String, @Nullable android.os.CancellationSignal); - method @Nullable public final android.database.Cursor query(@RequiresPermission.Read @NonNull android.net.Uri, @Nullable String[], @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal); + method @Nullable public final android.database.Cursor query(@NonNull @RequiresPermission.Read android.net.Uri, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String); + method @Nullable public final android.database.Cursor query(@NonNull @RequiresPermission.Read android.net.Uri, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String, @Nullable android.os.CancellationSignal); + method @Nullable public final android.database.Cursor query(@NonNull @RequiresPermission.Read android.net.Uri, @Nullable String[], @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal); method public final boolean refresh(@NonNull android.net.Uri, @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal); method public final void registerContentObserver(@NonNull android.net.Uri, boolean, @NonNull android.database.ContentObserver); method public void releasePersistableUriPermission(@NonNull android.net.Uri, int); @@ -9573,7 +9914,8 @@ package android.content { method public void takePersistableUriPermission(@NonNull android.net.Uri, int); method @Nullable public final android.net.Uri uncanonicalize(@NonNull android.net.Uri); method public final void unregisterContentObserver(@NonNull android.database.ContentObserver); - method public final int update(@RequiresPermission.Write @NonNull android.net.Uri, @Nullable android.content.ContentValues, @Nullable String, @Nullable String[]); + method public final int update(@NonNull @RequiresPermission.Write android.net.Uri, @Nullable android.content.ContentValues, @Nullable String, @Nullable String[]); + method public final int update(@NonNull @RequiresPermission.Write android.net.Uri, @Nullable android.content.ContentValues, @Nullable android.os.Bundle); method public static void validateSyncExtrasBundle(android.os.Bundle); method @NonNull public static android.content.ContentResolver wrap(@NonNull android.content.ContentProvider); method @NonNull public static android.content.ContentResolver wrap(@NonNull android.content.ContentProviderClient); @@ -9584,13 +9926,21 @@ package android.content { field public static final String EXTRA_REFRESH_SUPPORTED = "android.content.extra.REFRESH_SUPPORTED"; field public static final String EXTRA_SIZE = "android.content.extra.SIZE"; field public static final String EXTRA_TOTAL_COUNT = "android.content.extra.TOTAL_COUNT"; + field public static final int NOTIFY_DELETE = 16; // 0x10 + field public static final int NOTIFY_INSERT = 4; // 0x4 field public static final int NOTIFY_SKIP_NOTIFY_FOR_DESCENDANTS = 2; // 0x2 field public static final int NOTIFY_SYNC_TO_NETWORK = 1; // 0x1 + field public static final int NOTIFY_UPDATE = 8; // 0x8 + field public static final String QUERY_ARG_GROUP_COLUMNS = "android:query-arg-group-columns"; field public static final String QUERY_ARG_LIMIT = "android:query-arg-limit"; field public static final String QUERY_ARG_OFFSET = "android:query-arg-offset"; field public static final String QUERY_ARG_SORT_COLLATION = "android:query-arg-sort-collation"; field public static final String QUERY_ARG_SORT_COLUMNS = "android:query-arg-sort-columns"; field public static final String QUERY_ARG_SORT_DIRECTION = "android:query-arg-sort-direction"; + field public static final String QUERY_ARG_SORT_LOCALE = "android:query-arg-sort-locale"; + field public static final String QUERY_ARG_SQL_GROUP_BY = "android:query-arg-sql-group-by"; + field public static final String QUERY_ARG_SQL_HAVING = "android:query-arg-sql-having"; + field public static final String QUERY_ARG_SQL_LIMIT = "android:query-arg-sql-limit"; field public static final String QUERY_ARG_SQL_SELECTION = "android:query-arg-sql-selection"; field public static final String QUERY_ARG_SQL_SELECTION_ARGS = "android:query-arg-sql-selection-args"; field public static final String QUERY_ARG_SQL_SORT_ORDER = "android:query-arg-sql-sort-order"; @@ -9647,6 +9997,7 @@ package android.content { method public Long getAsLong(String); method public Short getAsShort(String); method public String getAsString(String); + method public boolean isEmpty(); method public java.util.Set<java.lang.String> keySet(); method public void put(String, String); method public void put(String, Byte); @@ -9669,9 +10020,10 @@ package android.content { public abstract class Context { ctor public Context(); - method public boolean bindIsolatedService(@RequiresPermission @NonNull android.content.Intent, int, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.content.ServiceConnection); + method public boolean bindIsolatedService(@NonNull @RequiresPermission android.content.Intent, int, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.content.ServiceConnection); method public abstract boolean bindService(@RequiresPermission android.content.Intent, @NonNull android.content.ServiceConnection, int); - method public boolean bindService(@RequiresPermission @NonNull android.content.Intent, int, @NonNull java.util.concurrent.Executor, @NonNull android.content.ServiceConnection); + method public boolean bindService(@NonNull @RequiresPermission android.content.Intent, int, @NonNull java.util.concurrent.Executor, @NonNull android.content.ServiceConnection); + method @RequiresPermission(anyOf={"android.permission.INTERACT_ACROSS_USERS", android.Manifest.permission.INTERACT_ACROSS_PROFILES}) public boolean bindServiceAsUser(@NonNull @RequiresPermission android.content.Intent, @NonNull android.content.ServiceConnection, int, @NonNull android.os.UserHandle); method @CheckResult(suggest="#enforceCallingOrSelfPermission(String,String)") public abstract int checkCallingOrSelfPermission(@NonNull String); method @CheckResult(suggest="#enforceCallingOrSelfUriPermission(Uri,int,String)") public abstract int checkCallingOrSelfUriPermission(android.net.Uri, int); method @CheckResult(suggest="#enforceCallingPermission(String,String)") public abstract int checkCallingPermission(@NonNull String); @@ -9681,11 +10033,13 @@ package android.content { method @CheckResult(suggest="#enforceUriPermission(Uri,int,int,String)") public abstract int checkUriPermission(android.net.Uri, int, int, int); method @CheckResult(suggest="#enforceUriPermission(Uri,String,String,int,int,int,String)") public abstract int checkUriPermission(@Nullable android.net.Uri, @Nullable String, @Nullable String, int, int, int); method @Deprecated public abstract void clearWallpaper() throws java.io.IOException; + method @NonNull public android.content.Context createAttributionContext(@Nullable String); method public abstract android.content.Context createConfigurationContext(@NonNull android.content.res.Configuration); method public abstract android.content.Context createContextForSplit(String) throws android.content.pm.PackageManager.NameNotFoundException; method public abstract android.content.Context createDeviceProtectedStorageContext(); method public abstract android.content.Context createDisplayContext(@NonNull android.view.Display); method public abstract android.content.Context createPackageContext(String, int) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public android.content.Context createWindowContext(int, @Nullable android.os.Bundle); method public abstract String[] databaseList(); method public abstract boolean deleteDatabase(String); method public abstract boolean deleteFile(String); @@ -9701,6 +10055,7 @@ package android.content { method public abstract android.content.Context getApplicationContext(); method public abstract android.content.pm.ApplicationInfo getApplicationInfo(); method public abstract android.content.res.AssetManager getAssets(); + method @Nullable public String getAttributionTag(); method public abstract java.io.File getCacheDir(); method public abstract ClassLoader getClassLoader(); method public abstract java.io.File getCodeCacheDir(); @@ -9710,12 +10065,13 @@ package android.content { method public abstract java.io.File getDataDir(); method public abstract java.io.File getDatabasePath(String); method public abstract java.io.File getDir(String, int); + method @Nullable public android.view.Display getDisplay(); method @Nullable public final android.graphics.drawable.Drawable getDrawable(@DrawableRes int); method @Nullable public abstract java.io.File getExternalCacheDir(); method public abstract java.io.File[] getExternalCacheDirs(); method @Nullable public abstract java.io.File getExternalFilesDir(@Nullable String); method public abstract java.io.File[] getExternalFilesDirs(String); - method public abstract java.io.File[] getExternalMediaDirs(); + method @Deprecated public abstract java.io.File[] getExternalMediaDirs(); method public abstract java.io.File getFileStreamPath(String); method public abstract java.io.File getFilesDir(); method public java.util.concurrent.Executor getMainExecutor(); @@ -9767,8 +10123,10 @@ package android.content { method public abstract void sendBroadcast(@RequiresPermission android.content.Intent, @Nullable String); method @RequiresPermission("android.permission.INTERACT_ACROSS_USERS") public abstract void sendBroadcastAsUser(@RequiresPermission android.content.Intent, android.os.UserHandle); method @RequiresPermission("android.permission.INTERACT_ACROSS_USERS") public abstract void sendBroadcastAsUser(@RequiresPermission android.content.Intent, android.os.UserHandle, @Nullable String); + method public void sendBroadcastWithMultiplePermissions(@NonNull android.content.Intent, @NonNull String[]); method public abstract void sendOrderedBroadcast(@RequiresPermission android.content.Intent, @Nullable String); - method public abstract void sendOrderedBroadcast(@RequiresPermission @NonNull android.content.Intent, @Nullable String, @Nullable android.content.BroadcastReceiver, @Nullable android.os.Handler, int, @Nullable String, @Nullable android.os.Bundle); + method public abstract void sendOrderedBroadcast(@NonNull @RequiresPermission android.content.Intent, @Nullable String, @Nullable android.content.BroadcastReceiver, @Nullable android.os.Handler, int, @Nullable String, @Nullable android.os.Bundle); + method public void sendOrderedBroadcast(@NonNull android.content.Intent, @Nullable String, @Nullable String, @Nullable android.content.BroadcastReceiver, @Nullable android.os.Handler, int, @Nullable String, @Nullable android.os.Bundle); method @RequiresPermission("android.permission.INTERACT_ACROSS_USERS") public abstract void sendOrderedBroadcastAsUser(@RequiresPermission android.content.Intent, android.os.UserHandle, @Nullable String, android.content.BroadcastReceiver, @Nullable android.os.Handler, int, @Nullable String, @Nullable android.os.Bundle); method @Deprecated @RequiresPermission(android.Manifest.permission.BROADCAST_STICKY) public abstract void sendStickyBroadcast(@RequiresPermission android.content.Intent); method @Deprecated @RequiresPermission(allOf={"android.permission.INTERACT_ACROSS_USERS", android.Manifest.permission.BROADCAST_STICKY}) public abstract void sendStickyBroadcastAsUser(@RequiresPermission android.content.Intent, android.os.UserHandle); @@ -9811,12 +10169,14 @@ package android.content { field public static final int BIND_NOT_PERCEPTIBLE = 256; // 0x100 field public static final int BIND_WAIVE_PRIORITY = 32; // 0x20 field public static final String BIOMETRIC_SERVICE = "biometric"; + field public static final String BLOB_STORE_SERVICE = "blob_store"; field public static final String BLUETOOTH_SERVICE = "bluetooth"; field public static final String CAMERA_SERVICE = "camera"; field public static final String CAPTIONING_SERVICE = "captioning"; field public static final String CARRIER_CONFIG_SERVICE = "carrier_config"; field public static final String CLIPBOARD_SERVICE = "clipboard"; field public static final String COMPANION_DEVICE_SERVICE = "companiondevice"; + field public static final String CONNECTIVITY_DIAGNOSTICS_SERVICE = "connectivity_diagnostics"; field public static final String CONNECTIVITY_SERVICE = "connectivity"; field public static final String CONSUMER_IR_SERVICE = "consumer_ir"; field public static final int CONTEXT_IGNORE_SECURITY = 2; // 0x2 @@ -9828,6 +10188,7 @@ package android.content { field public static final String DOWNLOAD_SERVICE = "download"; field public static final String DROPBOX_SERVICE = "dropbox"; field public static final String EUICC_SERVICE = "euicc"; + field public static final String FILE_INTEGRITY_SERVICE = "file_integrity"; field public static final String FINGERPRINT_SERVICE = "fingerprint"; field public static final String HARDWARE_PROPERTIES_SERVICE = "hardware_properties"; field public static final String INPUT_METHOD_SERVICE = "input_method"; @@ -9865,6 +10226,7 @@ package android.content { field public static final String STORAGE_STATS_SERVICE = "storagestats"; field public static final String SYSTEM_HEALTH_SERVICE = "systemhealth"; field public static final String TELECOM_SERVICE = "telecom"; + field public static final String TELEPHONY_IMS_SERVICE = "telephony_ims"; field public static final String TELEPHONY_SERVICE = "phone"; field public static final String TELEPHONY_SUBSCRIPTION_SERVICE = "telephony_subscription_service"; field public static final String TEXT_CLASSIFICATION_SERVICE = "textclassification"; @@ -9875,6 +10237,7 @@ package android.content { field public static final String USB_SERVICE = "usb"; field public static final String USER_SERVICE = "user"; field public static final String VIBRATOR_SERVICE = "vibrator"; + field public static final String VPN_MANAGEMENT_SERVICE = "vpn_management"; field public static final String WALLPAPER_SERVICE = "wallpaper"; field public static final String WIFI_AWARE_SERVICE = "wifiaware"; field public static final String WIFI_P2P_SERVICE = "wifip2p"; @@ -9970,6 +10333,7 @@ package android.content { method public void sendBroadcastAsUser(android.content.Intent, android.os.UserHandle, String); method public void sendOrderedBroadcast(android.content.Intent, String); method public void sendOrderedBroadcast(android.content.Intent, String, android.content.BroadcastReceiver, android.os.Handler, int, String, android.os.Bundle); + method public void sendOrderedBroadcast(@NonNull @RequiresPermission android.content.Intent, int, @Nullable String, @Nullable String, @Nullable android.content.BroadcastReceiver, @Nullable android.os.Handler, @Nullable String, @Nullable android.os.Bundle, @Nullable android.os.Bundle); method public void sendOrderedBroadcastAsUser(android.content.Intent, android.os.UserHandle, String, android.content.BroadcastReceiver, android.os.Handler, int, String, android.os.Bundle); method @Deprecated public void sendStickyBroadcast(android.content.Intent); method @Deprecated public void sendStickyBroadcastAsUser(android.content.Intent, android.os.UserHandle); @@ -10203,6 +10567,7 @@ package android.content { field public static final String ACTION_APP_ERROR = "android.intent.action.APP_ERROR"; field public static final String ACTION_ASSIST = "android.intent.action.ASSIST"; field public static final String ACTION_ATTACH_DATA = "android.intent.action.ATTACH_DATA"; + field public static final String ACTION_AUTO_REVOKE_PERMISSIONS = "android.intent.action.AUTO_REVOKE_PERMISSIONS"; field public static final String ACTION_BATTERY_CHANGED = "android.intent.action.BATTERY_CHANGED"; field public static final String ACTION_BATTERY_LOW = "android.intent.action.BATTERY_LOW"; field public static final String ACTION_BATTERY_OKAY = "android.intent.action.BATTERY_OKAY"; @@ -10216,6 +10581,7 @@ package android.content { field public static final String ACTION_CLOSE_SYSTEM_DIALOGS = "android.intent.action.CLOSE_SYSTEM_DIALOGS"; field public static final String ACTION_CONFIGURATION_CHANGED = "android.intent.action.CONFIGURATION_CHANGED"; field public static final String ACTION_CREATE_DOCUMENT = "android.intent.action.CREATE_DOCUMENT"; + field public static final String ACTION_CREATE_REMINDER = "android.intent.action.CREATE_REMINDER"; field public static final String ACTION_CREATE_SHORTCUT = "android.intent.action.CREATE_SHORTCUT"; field public static final String ACTION_DATE_CHANGED = "android.intent.action.DATE_CHANGED"; field public static final String ACTION_DEFAULT = "android.intent.action.VIEW"; @@ -10326,6 +10692,7 @@ package android.content { field public static final String ACTION_VOICE_COMMAND = "android.intent.action.VOICE_COMMAND"; field @Deprecated public static final String ACTION_WALLPAPER_CHANGED = "android.intent.action.WALLPAPER_CHANGED"; field public static final String ACTION_WEB_SEARCH = "android.intent.action.WEB_SEARCH"; + field public static final String CATEGORY_ACCESSIBILITY_SHORTCUT_TARGET = "android.intent.category.ACCESSIBILITY_SHORTCUT_TARGET"; field public static final String CATEGORY_ALTERNATIVE = "android.intent.category.ALTERNATIVE"; field public static final String CATEGORY_APP_BROWSER = "android.intent.category.APP_BROWSER"; field public static final String CATEGORY_APP_CALCULATOR = "android.intent.category.APP_CALCULATOR"; @@ -10440,6 +10807,8 @@ package android.content { field public static final String EXTRA_SUSPENDED_PACKAGE_EXTRAS = "android.intent.extra.SUSPENDED_PACKAGE_EXTRAS"; field public static final String EXTRA_TEMPLATE = "android.intent.extra.TEMPLATE"; field public static final String EXTRA_TEXT = "android.intent.extra.TEXT"; + field public static final String EXTRA_TIME = "android.intent.extra.TIME"; + field public static final String EXTRA_TIMEZONE = "time-zone"; field public static final String EXTRA_TITLE = "android.intent.extra.TITLE"; field public static final String EXTRA_UID = "android.intent.extra.UID"; field public static final String EXTRA_USER = "android.intent.extra.USER"; @@ -10469,6 +10838,8 @@ package android.content { field public static final int FLAG_ACTIVITY_NO_USER_ACTION = 262144; // 0x40000 field public static final int FLAG_ACTIVITY_PREVIOUS_IS_TOP = 16777216; // 0x1000000 field public static final int FLAG_ACTIVITY_REORDER_TO_FRONT = 131072; // 0x20000 + field public static final int FLAG_ACTIVITY_REQUIRE_DEFAULT = 512; // 0x200 + field public static final int FLAG_ACTIVITY_REQUIRE_NON_BROWSER = 1024; // 0x400 field public static final int FLAG_ACTIVITY_RESET_TASK_IF_NEEDED = 2097152; // 0x200000 field public static final int FLAG_ACTIVITY_RETAIN_IN_RECENTS = 8192; // 0x2000 field public static final int FLAG_ACTIVITY_SINGLE_TOP = 536870912; // 0x20000000 @@ -11006,6 +11377,7 @@ package android.content.pm { field public static final int FLAG_IMMERSIVE = 2048; // 0x800 field public static final int FLAG_MULTIPROCESS = 1; // 0x1 field public static final int FLAG_NO_HISTORY = 128; // 0x80 + field public static final int FLAG_PREFER_MINIMAL_POST_PROCESSING = 33554432; // 0x2000000 field public static final int FLAG_RELINQUISH_TASK_IDENTITY = 4096; // 0x1000 field public static final int FLAG_RESUME_WHILE_PAUSING = 16384; // 0x4000 field public static final int FLAG_SINGLE_USER = 1073741824; // 0x40000000 @@ -11069,6 +11441,7 @@ package android.content.pm { method public int describeContents(); method public void dump(android.util.Printer, String); method public static CharSequence getCategoryTitle(android.content.Context, int); + method public int getGwpAsanMode(); method public boolean isProfileableByShell(); method public boolean isResourceOverlay(); method public boolean isVirtualPreload(); @@ -11106,7 +11479,7 @@ package android.content.pm { field public static final int FLAG_SUPPORTS_LARGE_SCREENS = 2048; // 0x800 field public static final int FLAG_SUPPORTS_NORMAL_SCREENS = 1024; // 0x400 field public static final int FLAG_SUPPORTS_RTL = 4194304; // 0x400000 - field public static final int FLAG_SUPPORTS_SCREEN_DENSITIES = 8192; // 0x2000 + field @Deprecated public static final int FLAG_SUPPORTS_SCREEN_DENSITIES = 8192; // 0x2000 field public static final int FLAG_SUPPORTS_SMALL_SCREENS = 512; // 0x200 field public static final int FLAG_SUPPORTS_XLARGE_SCREENS = 524288; // 0x80000 field public static final int FLAG_SUSPENDED = 1073741824; // 0x40000000 @@ -11115,6 +11488,9 @@ package android.content.pm { field public static final int FLAG_UPDATED_SYSTEM_APP = 128; // 0x80 field public static final int FLAG_USES_CLEARTEXT_TRAFFIC = 134217728; // 0x8000000 field public static final int FLAG_VM_SAFE_MODE = 16384; // 0x4000 + field public static final int GWP_ASAN_ALWAYS = 1; // 0x1 + field public static final int GWP_ASAN_DEFAULT = -1; // 0xffffffff + field public static final int GWP_ASAN_NEVER = 0; // 0x0 field public String appComponentFactory; field public String backupAgentName; field public int category; @@ -11195,10 +11571,16 @@ package android.content.pm { } public class CrossProfileApps { + method public boolean canInteractAcrossProfiles(); + method public boolean canRequestInteractAcrossProfiles(); + method @NonNull public android.content.Intent createRequestInteractAcrossProfilesIntent(); method @NonNull public android.graphics.drawable.Drawable getProfileSwitchingIconDrawable(@NonNull android.os.UserHandle); method @NonNull public CharSequence getProfileSwitchingLabel(@NonNull android.os.UserHandle); method @NonNull public java.util.List<android.os.UserHandle> getTargetUserProfiles(); + method @RequiresPermission(anyOf={android.Manifest.permission.INTERACT_ACROSS_PROFILES, "android.permission.INTERACT_ACROSS_USERS"}) public void startActivity(@NonNull android.content.Intent, @NonNull android.os.UserHandle, @Nullable android.app.Activity); + method @RequiresPermission(anyOf={android.Manifest.permission.INTERACT_ACROSS_PROFILES, "android.permission.INTERACT_ACROSS_USERS"}) public void startActivity(@NonNull android.content.Intent, @NonNull android.os.UserHandle, @Nullable android.app.Activity, @Nullable android.os.Bundle); method public void startMainActivity(@NonNull android.content.ComponentName, @NonNull android.os.UserHandle); + field public static final String ACTION_CAN_INTERACT_ACROSS_PROFILES_CHANGED = "android.content.pm.action.CAN_INTERACT_ACROSS_PROFILES_CHANGED"; } public final class FeatureGroupInfo implements android.os.Parcelable { @@ -11225,6 +11607,16 @@ package android.content.pm { field public int version; } + public final class InstallSourceInfo implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public String getInitiatingPackageName(); + method @Nullable public android.content.pm.SigningInfo getInitiatingPackageSigningInfo(); + method @Nullable public String getInstallingPackageName(); + method @Nullable public String getOriginatingPackageName(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.InstallSourceInfo> CREATOR; + } + public class InstrumentationInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable { ctor public InstrumentationInfo(); ctor public InstrumentationInfo(android.content.pm.InstrumentationInfo); @@ -11307,7 +11699,7 @@ package android.content.pm { method public abstract void onPackageRemoved(String, android.os.UserHandle); method public abstract void onPackagesAvailable(String[], android.os.UserHandle, boolean); method public void onPackagesSuspended(String[], android.os.UserHandle); - method public void onPackagesSuspended(String[], android.os.UserHandle, @Nullable android.os.Bundle); + method @Deprecated public void onPackagesSuspended(String[], android.os.UserHandle, @Nullable android.os.Bundle); method public abstract void onPackagesUnavailable(String[], android.os.UserHandle, boolean); method public void onPackagesUnsuspended(String[], android.os.UserHandle); method public void onShortcutsChanged(@NonNull String, @NonNull java.util.List<android.content.pm.ShortcutInfo>, @NonNull android.os.UserHandle); @@ -11332,10 +11724,12 @@ package android.content.pm { ctor public LauncherApps.ShortcutQuery(); method public android.content.pm.LauncherApps.ShortcutQuery setActivity(@Nullable android.content.ComponentName); method public android.content.pm.LauncherApps.ShortcutQuery setChangedSince(long); + method @NonNull public android.content.pm.LauncherApps.ShortcutQuery setLocusIds(@Nullable java.util.List<android.content.LocusId>); method public android.content.pm.LauncherApps.ShortcutQuery setPackage(@Nullable String); method public android.content.pm.LauncherApps.ShortcutQuery setQueryFlags(int); method public android.content.pm.LauncherApps.ShortcutQuery setShortcutIds(@Nullable java.util.List<java.lang.String>); field public static final int FLAG_GET_KEY_FIELDS_ONLY = 4; // 0x4 + field public static final int FLAG_MATCH_CACHED = 16; // 0x10 field public static final int FLAG_MATCH_DYNAMIC = 1; // 0x1 field public static final int FLAG_MATCH_MANIFEST = 8; // 0x8 field public static final int FLAG_MATCH_PINNED = 2; // 0x2 @@ -11394,7 +11788,8 @@ package android.content.pm { public class PackageInstaller { method public void abandonSession(int); method public int createSession(@NonNull android.content.pm.PackageInstaller.SessionParams) throws java.io.IOException; - method @Nullable public android.content.pm.PackageInstaller.SessionInfo getActiveStagedSession(); + method @Deprecated @Nullable public android.content.pm.PackageInstaller.SessionInfo getActiveStagedSession(); + method @NonNull public java.util.List<android.content.pm.PackageInstaller.SessionInfo> getActiveStagedSessions(); method @NonNull public java.util.List<android.content.pm.PackageInstaller.SessionInfo> getAllSessions(); method @NonNull public java.util.List<android.content.pm.PackageInstaller.SessionInfo> getMySessions(); method @Nullable public android.content.pm.PackageInstaller.SessionInfo getSessionInfo(int); @@ -11464,6 +11859,7 @@ package android.content.pm { method @Nullable public CharSequence getAppLabel(); method @Nullable public String getAppPackageName(); method @NonNull public int[] getChildSessionIds(); + method public long getCreatedMillis(); method public int getInstallLocation(); method public int getInstallReason(); method @Nullable public String getInstallerPackageName(); @@ -11479,11 +11875,13 @@ package android.content.pm { method @NonNull public String getStagedSessionErrorMessage(); method public long getUpdatedMillis(); method @NonNull public android.os.UserHandle getUser(); + method public boolean hasParentSessionId(); method public boolean isActive(); method public boolean isCommitted(); method public boolean isMultiPackage(); method public boolean isSealed(); method public boolean isStaged(); + method public boolean isStagedSessionActive(); method public boolean isStagedSessionApplied(); method public boolean isStagedSessionFailed(); method public boolean isStagedSessionReady(); @@ -11502,6 +11900,7 @@ package android.content.pm { method public void setAppIcon(@Nullable android.graphics.Bitmap); method public void setAppLabel(@Nullable CharSequence); method public void setAppPackageName(@Nullable String); + method public void setAutoRevokePermissionsMode(boolean); method public void setInstallLocation(int); method public void setInstallReason(int); method public void setMultiPackage(); @@ -11578,19 +11977,22 @@ package android.content.pm { method @NonNull public abstract CharSequence getApplicationLabel(@NonNull android.content.pm.ApplicationInfo); method @Nullable public abstract android.graphics.drawable.Drawable getApplicationLogo(@NonNull android.content.pm.ApplicationInfo); method @Nullable public abstract android.graphics.drawable.Drawable getApplicationLogo(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public CharSequence getBackgroundPermissionOptionLabel(); method @Nullable public abstract android.content.pm.ChangedPackages getChangedPackages(@IntRange(from=0) int); method public abstract int getComponentEnabledSetting(@NonNull android.content.ComponentName); method @NonNull public abstract android.graphics.drawable.Drawable getDefaultActivityIcon(); method @Nullable public abstract android.graphics.drawable.Drawable getDrawable(@NonNull String, @DrawableRes int, @Nullable android.content.pm.ApplicationInfo); + method @NonNull public android.content.pm.InstallSourceInfo getInstallSourceInfo(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; method @NonNull public abstract java.util.List<android.content.pm.ApplicationInfo> getInstalledApplications(int); method @NonNull public java.util.List<android.content.pm.ModuleInfo> getInstalledModules(int); method @NonNull public abstract java.util.List<android.content.pm.PackageInfo> getInstalledPackages(int); - method @Nullable public abstract String getInstallerPackageName(@NonNull String); + method @Deprecated @Nullable public abstract String getInstallerPackageName(@NonNull String); method @NonNull public abstract byte[] getInstantAppCookie(); method public abstract int getInstantAppCookieMaxBytes(); method @NonNull public abstract android.content.pm.InstrumentationInfo getInstrumentationInfo(@NonNull android.content.ComponentName, int) throws android.content.pm.PackageManager.NameNotFoundException; method @Nullable public abstract android.content.Intent getLaunchIntentForPackage(@NonNull String); method @Nullable public abstract android.content.Intent getLeanbackLaunchIntentForPackage(@NonNull String); + method @NonNull public java.util.Set<java.lang.String> getMimeGroup(@NonNull String); method @NonNull public android.content.pm.ModuleInfo getModuleInfo(@NonNull String, int) throws android.content.pm.PackageManager.NameNotFoundException; method @Nullable public abstract String getNameForUid(int); method @Nullable public android.content.pm.PackageInfo getPackageArchiveInfo(@NonNull String, int); @@ -11621,12 +12023,15 @@ package android.content.pm { method @NonNull public abstract android.graphics.drawable.Drawable getUserBadgedDrawableForDensity(@NonNull android.graphics.drawable.Drawable, @NonNull android.os.UserHandle, @Nullable android.graphics.Rect, int); method @NonNull public abstract android.graphics.drawable.Drawable getUserBadgedIcon(@NonNull android.graphics.drawable.Drawable, @NonNull android.os.UserHandle); method @NonNull public abstract CharSequence getUserBadgedLabel(@NonNull CharSequence, @NonNull android.os.UserHandle); - method @RequiresPermission(value="android.permission.WHITELIST_RESTRICTED_PERMISSIONS", conditional=true) @NonNull public java.util.Set<java.lang.String> getWhitelistedRestrictedPermissions(@NonNull String, int); + method @NonNull @RequiresPermission(value="android.permission.WHITELIST_RESTRICTED_PERMISSIONS", conditional=true) public java.util.Set<java.lang.String> getWhitelistedRestrictedPermissions(@NonNull String, int); method @Nullable public abstract android.content.res.XmlResourceParser getXml(@NonNull String, @XmlRes int, @Nullable android.content.pm.ApplicationInfo); method public boolean hasSigningCertificate(@NonNull String, @NonNull byte[], int); method public boolean hasSigningCertificate(int, @NonNull byte[], int); method public abstract boolean hasSystemFeature(@NonNull String); method public abstract boolean hasSystemFeature(@NonNull String, int); + method @RequiresPermission(value="android.permission.WHITELIST_AUTO_REVOKE_PERMISSIONS", conditional=true) public boolean isAutoRevokeWhitelisted(@NonNull String); + method public boolean isAutoRevokeWhitelisted(); + method public boolean isDefaultApplicationIcon(@NonNull android.graphics.drawable.Drawable); method public boolean isDeviceUpgrading(); method public abstract boolean isInstantApp(); method public abstract boolean isInstantApp(@NonNull String); @@ -11650,8 +12055,10 @@ package android.content.pm { method @Nullable public abstract android.content.pm.ResolveInfo resolveService(@NonNull android.content.Intent, int); method public abstract void setApplicationCategoryHint(@NonNull String, int); method @RequiresPermission(value=android.Manifest.permission.CHANGE_COMPONENT_ENABLED_STATE, conditional=true) public abstract void setApplicationEnabledSetting(@NonNull String, int, int); + method @RequiresPermission(value="android.permission.WHITELIST_AUTO_REVOKE_PERMISSIONS", conditional=true) public boolean setAutoRevokeWhitelisted(@NonNull String, boolean); method @RequiresPermission(value=android.Manifest.permission.CHANGE_COMPONENT_ENABLED_STATE, conditional=true) public abstract void setComponentEnabledSetting(@NonNull android.content.ComponentName, int, int); method public abstract void setInstallerPackageName(@NonNull String, @Nullable String); + method public void setMimeGroup(@NonNull String, @NonNull java.util.Set<java.lang.String>); method public abstract void updateInstantAppCookie(@Nullable byte[]); method public abstract void verifyPendingInstall(int, int); field public static final int CERT_INPUT_RAW_X509 = 0; // 0x0 @@ -11681,6 +12088,7 @@ package android.content.pm { field public static final String FEATURE_CAMERA_CAPABILITY_MANUAL_POST_PROCESSING = "android.hardware.camera.capability.manual_post_processing"; field public static final String FEATURE_CAMERA_CAPABILITY_MANUAL_SENSOR = "android.hardware.camera.capability.manual_sensor"; field public static final String FEATURE_CAMERA_CAPABILITY_RAW = "android.hardware.camera.capability.raw"; + field public static final String FEATURE_CAMERA_CONCURRENT = "android.hardware.camera.concurrent"; field public static final String FEATURE_CAMERA_EXTERNAL = "android.hardware.camera.external"; field public static final String FEATURE_CAMERA_FLASH = "android.hardware.camera.flash"; field public static final String FEATURE_CAMERA_FRONT = "android.hardware.camera.front"; @@ -11689,6 +12097,7 @@ package android.content.pm { field public static final String FEATURE_COMPANION_DEVICE_SETUP = "android.software.companion_device_setup"; field public static final String FEATURE_CONNECTION_SERVICE = "android.software.connectionservice"; field public static final String FEATURE_CONSUMER_IR = "android.hardware.consumerir"; + field public static final String FEATURE_CONTROLS = "android.software.controls"; field public static final String FEATURE_DEVICE_ADMIN = "android.software.device_admin"; field public static final String FEATURE_EMBEDDED = "android.hardware.type.embedded"; field public static final String FEATURE_ETHERNET = "android.hardware.ethernet"; @@ -11737,11 +12146,15 @@ package android.content.pm { field public static final String FEATURE_SENSOR_GYROSCOPE = "android.hardware.sensor.gyroscope"; field public static final String FEATURE_SENSOR_HEART_RATE = "android.hardware.sensor.heartrate"; field public static final String FEATURE_SENSOR_HEART_RATE_ECG = "android.hardware.sensor.heartrate.ecg"; + field public static final String FEATURE_SENSOR_HINGE_ANGLE = "android.hardware.sensor.hinge_angle"; field public static final String FEATURE_SENSOR_LIGHT = "android.hardware.sensor.light"; field public static final String FEATURE_SENSOR_PROXIMITY = "android.hardware.sensor.proximity"; field public static final String FEATURE_SENSOR_RELATIVE_HUMIDITY = "android.hardware.sensor.relative_humidity"; field public static final String FEATURE_SENSOR_STEP_COUNTER = "android.hardware.sensor.stepcounter"; field public static final String FEATURE_SENSOR_STEP_DETECTOR = "android.hardware.sensor.stepdetector"; + field public static final String FEATURE_SE_OMAPI_ESE = "android.hardware.se.omapi.ese"; + field public static final String FEATURE_SE_OMAPI_SD = "android.hardware.se.omapi.sd"; + field public static final String FEATURE_SE_OMAPI_UICC = "android.hardware.se.omapi.uicc"; field public static final String FEATURE_SIP = "android.software.sip"; field public static final String FEATURE_SIP_VOIP = "android.software.sip.voip"; field public static final String FEATURE_STRONGBOX_KEYSTORE = "android.hardware.strongbox_keystore"; @@ -11762,6 +12175,7 @@ package android.content.pm { field public static final String FEATURE_VR_HEADTRACKING = "android.hardware.vr.headtracking"; field @Deprecated public static final String FEATURE_VR_MODE = "android.software.vr.mode"; field public static final String FEATURE_VR_MODE_HIGH_PERFORMANCE = "android.hardware.vr.high_performance"; + field public static final String FEATURE_VULKAN_DEQP_LEVEL = "android.software.vulkan.deqp.level"; field public static final String FEATURE_VULKAN_HARDWARE_COMPUTE = "android.hardware.vulkan.compute"; field public static final String FEATURE_VULKAN_HARDWARE_LEVEL = "android.hardware.vulkan.level"; field public static final String FEATURE_VULKAN_HARDWARE_VERSION = "android.hardware.vulkan.version"; @@ -11817,6 +12231,7 @@ package android.content.pm { field public static final int SIGNATURE_NO_MATCH = -3; // 0xfffffffd field public static final int SIGNATURE_SECOND_NOT_SIGNED = -2; // 0xfffffffe field public static final int SIGNATURE_UNKNOWN_PACKAGE = -4; // 0xfffffffc + field public static final int SYNCHRONOUS = 2; // 0x2 field public static final int VERIFICATION_ALLOW = 1; // 0x1 field public static final int VERIFICATION_REJECT = -1; // 0xffffffff field public static final int VERSION_CODE_HIGHEST = -1; // 0xffffffff @@ -11929,6 +12344,7 @@ package android.content.pm { method public int describeContents(); method public void dump(android.util.Printer, String); method public final int getIconResource(); + method public boolean isCrossProfileIntentForwarderActivity(); method public android.graphics.drawable.Drawable loadIcon(android.content.pm.PackageManager); method public CharSequence loadLabel(android.content.pm.PackageManager); method public void writeToParcel(android.os.Parcel, int); @@ -11966,12 +12382,14 @@ package android.content.pm { field public static final int FLAG_SINGLE_USER = 1073741824; // 0x40000000 field public static final int FLAG_STOP_WITH_TASK = 1; // 0x1 field public static final int FLAG_USE_APP_ZYGOTE = 8; // 0x8 + field public static final int FOREGROUND_SERVICE_TYPE_CAMERA = 64; // 0x40 field public static final int FOREGROUND_SERVICE_TYPE_CONNECTED_DEVICE = 16; // 0x10 field public static final int FOREGROUND_SERVICE_TYPE_DATA_SYNC = 1; // 0x1 field public static final int FOREGROUND_SERVICE_TYPE_LOCATION = 8; // 0x8 field public static final int FOREGROUND_SERVICE_TYPE_MANIFEST = -1; // 0xffffffff field public static final int FOREGROUND_SERVICE_TYPE_MEDIA_PLAYBACK = 2; // 0x2 field public static final int FOREGROUND_SERVICE_TYPE_MEDIA_PROJECTION = 32; // 0x20 + field public static final int FOREGROUND_SERVICE_TYPE_MICROPHONE = 128; // 0x80 field public static final int FOREGROUND_SERVICE_TYPE_NONE = 0; // 0x0 field public static final int FOREGROUND_SERVICE_TYPE_PHONE_CALL = 4; // 0x4 field public int flags; @@ -12012,6 +12430,7 @@ package android.content.pm { method @Nullable public CharSequence getShortLabel(); method public android.os.UserHandle getUserHandle(); method public boolean hasKeyFieldsOnly(); + method public boolean isCached(); method public boolean isDeclaredInManifest(); method public boolean isDynamic(); method public boolean isEnabled(); @@ -12061,14 +12480,21 @@ package android.content.pm { method @NonNull public java.util.List<android.content.pm.ShortcutInfo> getManifestShortcuts(); method public int getMaxShortcutCountPerActivity(); method @NonNull public java.util.List<android.content.pm.ShortcutInfo> getPinnedShortcuts(); + method @NonNull public java.util.List<android.content.pm.ShortcutInfo> getShortcuts(int); method public boolean isRateLimitingActive(); method public boolean isRequestPinShortcutSupported(); + method public void pushDynamicShortcut(@NonNull android.content.pm.ShortcutInfo); method public void removeAllDynamicShortcuts(); method public void removeDynamicShortcuts(@NonNull java.util.List<java.lang.String>); + method public void removeLongLivedShortcuts(@NonNull java.util.List<java.lang.String>); method public void reportShortcutUsed(String); method public boolean requestPinShortcut(@NonNull android.content.pm.ShortcutInfo, @Nullable android.content.IntentSender); method public boolean setDynamicShortcuts(@NonNull java.util.List<android.content.pm.ShortcutInfo>); method public boolean updateShortcuts(@NonNull java.util.List<android.content.pm.ShortcutInfo>); + field public static final int FLAG_MATCH_CACHED = 8; // 0x8 + field public static final int FLAG_MATCH_DYNAMIC = 2; // 0x2 + field public static final int FLAG_MATCH_MANIFEST = 1; // 0x1 + field public static final int FLAG_MATCH_PINNED = 4; // 0x4 } public class Signature implements android.os.Parcelable { @@ -12183,6 +12609,7 @@ package android.content.res { method public int getLayoutDirection(); method @NonNull public android.os.LocaleList getLocales(); method public boolean isLayoutSizeAtLeast(int); + method public boolean isNightModeActive(); method public boolean isScreenHdr(); method public boolean isScreenRound(); method public boolean isScreenWideColorGamut(); @@ -12307,9 +12734,10 @@ package android.content.res { public class Resources { ctor @Deprecated public Resources(android.content.res.AssetManager, android.util.DisplayMetrics, android.content.res.Configuration); + method public void addLoaders(@NonNull android.content.res.loader.ResourcesLoader...); method public final void finishPreloading(); method public final void flushLayoutCache(); - method @NonNull public android.content.res.XmlResourceParser getAnimation(@AnimatorRes @AnimRes int) throws android.content.res.Resources.NotFoundException; + method @NonNull public android.content.res.XmlResourceParser getAnimation(@AnimRes @AnimatorRes int) throws android.content.res.Resources.NotFoundException; method public final android.content.res.AssetManager getAssets(); method @AnyRes public static int getAttributeSetSourceResId(@Nullable android.util.AttributeSet); method public boolean getBoolean(@BoolRes int) throws android.content.res.Resources.NotFoundException; @@ -12360,6 +12788,7 @@ package android.content.res { method public android.content.res.AssetFileDescriptor openRawResourceFd(@RawRes int) throws android.content.res.Resources.NotFoundException; method public void parseBundleExtra(String, android.util.AttributeSet, android.os.Bundle) throws org.xmlpull.v1.XmlPullParserException; method public void parseBundleExtras(android.content.res.XmlResourceParser, android.os.Bundle) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; + method public void removeLoaders(@NonNull android.content.res.loader.ResourcesLoader...); method @Deprecated public void updateConfiguration(android.content.res.Configuration, android.util.DisplayMetrics); field @AnyRes public static final int ID_NULL = 0; // 0x0 } @@ -12427,6 +12856,33 @@ package android.content.res { } +package android.content.res.loader { + + public interface AssetsProvider { + method @Nullable public default android.content.res.AssetFileDescriptor loadAssetFd(@NonNull String, int); + } + + public class ResourcesLoader { + ctor public ResourcesLoader(); + method public void addProvider(@NonNull android.content.res.loader.ResourcesProvider); + method public void clearProviders(); + method @NonNull public java.util.List<android.content.res.loader.ResourcesProvider> getProviders(); + method public void removeProvider(@NonNull android.content.res.loader.ResourcesProvider); + method public void setProviders(@NonNull java.util.List<android.content.res.loader.ResourcesProvider>); + } + + public class ResourcesProvider implements java.lang.AutoCloseable java.io.Closeable { + method public void close(); + method @NonNull public static android.content.res.loader.ResourcesProvider empty(@NonNull android.content.res.loader.AssetsProvider); + method @NonNull public static android.content.res.loader.ResourcesProvider loadFromApk(@NonNull android.os.ParcelFileDescriptor) throws java.io.IOException; + method @NonNull public static android.content.res.loader.ResourcesProvider loadFromApk(@NonNull android.os.ParcelFileDescriptor, @Nullable android.content.res.loader.AssetsProvider) throws java.io.IOException; + method @NonNull public static android.content.res.loader.ResourcesProvider loadFromDirectory(@NonNull String, @Nullable android.content.res.loader.AssetsProvider) throws java.io.IOException; + method @NonNull public static android.content.res.loader.ResourcesProvider loadFromSplit(@NonNull android.content.Context, @NonNull String) throws java.io.IOException; + method @NonNull public static android.content.res.loader.ResourcesProvider loadFromTable(@NonNull android.os.ParcelFileDescriptor, @Nullable android.content.res.loader.AssetsProvider) throws java.io.IOException; + } + +} + package android.database { public abstract class AbstractCursor implements android.database.CrossProcessCursor { @@ -12517,9 +12973,13 @@ package android.database { ctor public ContentObserver(android.os.Handler); method public boolean deliverSelfNotifications(); method @Deprecated public final void dispatchChange(boolean); - method public final void dispatchChange(boolean, android.net.Uri); + method public final void dispatchChange(boolean, @Nullable android.net.Uri); + method public final void dispatchChange(boolean, @Nullable android.net.Uri, int); + method public final void dispatchChange(boolean, @NonNull java.util.Collection<android.net.Uri>, int); method public void onChange(boolean); - method public void onChange(boolean, android.net.Uri); + method public void onChange(boolean, @Nullable android.net.Uri); + method public void onChange(boolean, @Nullable android.net.Uri, int); + method public void onChange(boolean, @NonNull java.util.Collection<android.net.Uri>, int); } public interface CrossProcessCursor extends android.database.Cursor { @@ -12917,6 +13377,7 @@ package android.database.sqlite { method public void disableWriteAheadLogging(); method public boolean enableWriteAheadLogging(); method public void endTransaction(); + method public void execPerConnectionSQL(@NonNull String, @Nullable Object[]) throws android.database.SQLException; method public void execSQL(String) throws android.database.SQLException; method public void execSQL(String, Object[]) throws android.database.SQLException; method public static String findEditTable(String); @@ -12959,6 +13420,8 @@ package android.database.sqlite { method public static int releaseMemory(); method public long replace(String, String, android.content.ContentValues); method public long replaceOrThrow(String, String, android.content.ContentValues) throws android.database.SQLException; + method public void setCustomAggregateFunction(@NonNull String, @NonNull java.util.function.BinaryOperator<java.lang.String>) throws android.database.sqlite.SQLiteException; + method public void setCustomScalarFunction(@NonNull String, @NonNull java.util.function.UnaryOperator<java.lang.String>) throws android.database.sqlite.SQLiteException; method public void setForeignKeyConstraintsEnabled(boolean); method public void setLocale(java.util.Locale); method @Deprecated public void setLockingEnabled(boolean); @@ -13112,17 +13575,24 @@ package android.database.sqlite { method @Deprecated public String buildUnionSubQuery(String, String[], java.util.Set<java.lang.String>, int, String, String, String[], String, String); method public int delete(@NonNull android.database.sqlite.SQLiteDatabase, @Nullable String, @Nullable String[]); method @Nullable public android.database.sqlite.SQLiteDatabase.CursorFactory getCursorFactory(); + method @Nullable public java.util.Collection<java.util.regex.Pattern> getProjectionGreylist(); method @Nullable public java.util.Map<java.lang.String,java.lang.String> getProjectionMap(); method @Nullable public String getTables(); + method public long insert(@NonNull android.database.sqlite.SQLiteDatabase, @NonNull android.content.ContentValues); method public boolean isDistinct(); method public boolean isStrict(); + method public boolean isStrictColumns(); + method public boolean isStrictGrammar(); method public android.database.Cursor query(android.database.sqlite.SQLiteDatabase, String[], String, String[], String, String, String); method public android.database.Cursor query(android.database.sqlite.SQLiteDatabase, String[], String, String[], String, String, String, String); method public android.database.Cursor query(android.database.sqlite.SQLiteDatabase, String[], String, String[], String, String, String, String, android.os.CancellationSignal); method public void setCursorFactory(@Nullable android.database.sqlite.SQLiteDatabase.CursorFactory); method public void setDistinct(boolean); + method public void setProjectionGreylist(@Nullable java.util.Collection<java.util.regex.Pattern>); method public void setProjectionMap(@Nullable java.util.Map<java.lang.String,java.lang.String>); method public void setStrict(boolean); + method public void setStrictColumns(boolean); + method public void setStrictGrammar(boolean); method public void setTables(@Nullable String); method public int update(@NonNull android.database.sqlite.SQLiteDatabase, @NonNull android.content.ContentValues, @Nullable String, @Nullable String[]); } @@ -13156,226 +13626,227 @@ package android.database.sqlite { package android.drm { - public class DrmConvertedStatus { - ctor public DrmConvertedStatus(int, byte[], int); - field public static final int STATUS_ERROR = 3; // 0x3 - field public static final int STATUS_INPUTDATA_ERROR = 2; // 0x2 - field public static final int STATUS_OK = 1; // 0x1 - field public final byte[] convertedData; - field public final int offset; - field public final int statusCode; - } - - public class DrmErrorEvent extends android.drm.DrmEvent { - ctor public DrmErrorEvent(int, int, String); - ctor public DrmErrorEvent(int, int, String, java.util.HashMap<java.lang.String,java.lang.Object>); - field public static final int TYPE_ACQUIRE_DRM_INFO_FAILED = 2008; // 0x7d8 - field public static final int TYPE_NOT_SUPPORTED = 2003; // 0x7d3 - field public static final int TYPE_NO_INTERNET_CONNECTION = 2005; // 0x7d5 - field public static final int TYPE_OUT_OF_MEMORY = 2004; // 0x7d4 - field public static final int TYPE_PROCESS_DRM_INFO_FAILED = 2006; // 0x7d6 - field public static final int TYPE_REMOVE_ALL_RIGHTS_FAILED = 2007; // 0x7d7 - field public static final int TYPE_RIGHTS_NOT_INSTALLED = 2001; // 0x7d1 - field public static final int TYPE_RIGHTS_RENEWAL_NOT_ALLOWED = 2002; // 0x7d2 - } - - public class DrmEvent { - ctor protected DrmEvent(int, int, String, java.util.HashMap<java.lang.String,java.lang.Object>); - ctor protected DrmEvent(int, int, String); - method public Object getAttribute(String); - method public String getMessage(); - method public int getType(); - method public int getUniqueId(); - field public static final String DRM_INFO_OBJECT = "drm_info_object"; - field public static final String DRM_INFO_STATUS_OBJECT = "drm_info_status_object"; - field public static final int TYPE_ALL_RIGHTS_REMOVED = 1001; // 0x3e9 - field public static final int TYPE_DRM_INFO_PROCESSED = 1002; // 0x3ea - } - - public class DrmInfo { - ctor public DrmInfo(int, byte[], String); - ctor public DrmInfo(int, String, String); - method public Object get(String); - method public byte[] getData(); - method public int getInfoType(); - method public String getMimeType(); - method public java.util.Iterator<java.lang.Object> iterator(); - method public java.util.Iterator<java.lang.String> keyIterator(); - method public void put(String, Object); - } - - public class DrmInfoEvent extends android.drm.DrmEvent { - ctor public DrmInfoEvent(int, int, String); - ctor public DrmInfoEvent(int, int, String, java.util.HashMap<java.lang.String,java.lang.Object>); - field public static final int TYPE_ACCOUNT_ALREADY_REGISTERED = 5; // 0x5 - field public static final int TYPE_ALREADY_REGISTERED_BY_ANOTHER_ACCOUNT = 1; // 0x1 - field public static final int TYPE_REMOVE_RIGHTS = 2; // 0x2 - field public static final int TYPE_RIGHTS_INSTALLED = 3; // 0x3 - field public static final int TYPE_RIGHTS_REMOVED = 6; // 0x6 - field public static final int TYPE_WAIT_FOR_RIGHTS = 4; // 0x4 - } - - public class DrmInfoRequest { - ctor public DrmInfoRequest(int, String); - method public Object get(String); - method public int getInfoType(); - method public String getMimeType(); - method public java.util.Iterator<java.lang.Object> iterator(); - method public java.util.Iterator<java.lang.String> keyIterator(); - method public void put(String, Object); - field public static final String ACCOUNT_ID = "account_id"; - field public static final String SUBSCRIPTION_ID = "subscription_id"; - field public static final int TYPE_REGISTRATION_INFO = 1; // 0x1 - field public static final int TYPE_RIGHTS_ACQUISITION_INFO = 3; // 0x3 - field public static final int TYPE_RIGHTS_ACQUISITION_PROGRESS_INFO = 4; // 0x4 - field public static final int TYPE_UNREGISTRATION_INFO = 2; // 0x2 - } - - public class DrmInfoStatus { - ctor public DrmInfoStatus(int, int, android.drm.ProcessedData, String); - field public static final int STATUS_ERROR = 2; // 0x2 - field public static final int STATUS_OK = 1; // 0x1 - field public final android.drm.ProcessedData data; - field public final int infoType; - field public final String mimeType; - field public final int statusCode; - } - - public class DrmManagerClient implements java.lang.AutoCloseable { - ctor public DrmManagerClient(android.content.Context); - method public android.drm.DrmInfo acquireDrmInfo(android.drm.DrmInfoRequest); - method public int acquireRights(android.drm.DrmInfoRequest); - method public boolean canHandle(String, String); - method public boolean canHandle(android.net.Uri, String); - method public int checkRightsStatus(String); - method public int checkRightsStatus(android.net.Uri); - method public int checkRightsStatus(String, int); - method public int checkRightsStatus(android.net.Uri, int); - method public void close(); - method public android.drm.DrmConvertedStatus closeConvertSession(int); - method public android.drm.DrmConvertedStatus convertData(int, byte[]); - method public String[] getAvailableDrmEngines(); - method public android.content.ContentValues getConstraints(String, int); - method public android.content.ContentValues getConstraints(android.net.Uri, int); - method public int getDrmObjectType(String, String); - method public int getDrmObjectType(android.net.Uri, String); - method public android.content.ContentValues getMetadata(String); - method public android.content.ContentValues getMetadata(android.net.Uri); - method public String getOriginalMimeType(String); - method public String getOriginalMimeType(android.net.Uri); - method public int openConvertSession(String); - method public int processDrmInfo(android.drm.DrmInfo); + @Deprecated public class DrmConvertedStatus { + ctor @Deprecated public DrmConvertedStatus(int, byte[], int); + field @Deprecated public static final int STATUS_ERROR = 3; // 0x3 + field @Deprecated public static final int STATUS_INPUTDATA_ERROR = 2; // 0x2 + field @Deprecated public static final int STATUS_OK = 1; // 0x1 + field @Deprecated public final byte[] convertedData; + field @Deprecated public final int offset; + field @Deprecated public final int statusCode; + } + + @Deprecated public class DrmErrorEvent extends android.drm.DrmEvent { + ctor @Deprecated public DrmErrorEvent(int, int, String); + ctor @Deprecated public DrmErrorEvent(int, int, String, java.util.HashMap<java.lang.String,java.lang.Object>); + field @Deprecated public static final int TYPE_ACQUIRE_DRM_INFO_FAILED = 2008; // 0x7d8 + field @Deprecated public static final int TYPE_NOT_SUPPORTED = 2003; // 0x7d3 + field @Deprecated public static final int TYPE_NO_INTERNET_CONNECTION = 2005; // 0x7d5 + field @Deprecated public static final int TYPE_OUT_OF_MEMORY = 2004; // 0x7d4 + field @Deprecated public static final int TYPE_PROCESS_DRM_INFO_FAILED = 2006; // 0x7d6 + field @Deprecated public static final int TYPE_REMOVE_ALL_RIGHTS_FAILED = 2007; // 0x7d7 + field @Deprecated public static final int TYPE_RIGHTS_NOT_INSTALLED = 2001; // 0x7d1 + field @Deprecated public static final int TYPE_RIGHTS_RENEWAL_NOT_ALLOWED = 2002; // 0x7d2 + } + + @Deprecated public class DrmEvent { + ctor @Deprecated protected DrmEvent(int, int, String, java.util.HashMap<java.lang.String,java.lang.Object>); + ctor @Deprecated protected DrmEvent(int, int, String); + method @Deprecated public Object getAttribute(String); + method @Deprecated public String getMessage(); + method @Deprecated public int getType(); + method @Deprecated public int getUniqueId(); + field @Deprecated public static final String DRM_INFO_OBJECT = "drm_info_object"; + field @Deprecated public static final String DRM_INFO_STATUS_OBJECT = "drm_info_status_object"; + field @Deprecated public static final int TYPE_ALL_RIGHTS_REMOVED = 1001; // 0x3e9 + field @Deprecated public static final int TYPE_DRM_INFO_PROCESSED = 1002; // 0x3ea + } + + @Deprecated public class DrmInfo { + ctor @Deprecated public DrmInfo(int, byte[], String); + ctor @Deprecated public DrmInfo(int, String, String); + method @Deprecated public Object get(String); + method @Deprecated public byte[] getData(); + method @Deprecated public int getInfoType(); + method @Deprecated public String getMimeType(); + method @Deprecated public java.util.Iterator<java.lang.Object> iterator(); + method @Deprecated public java.util.Iterator<java.lang.String> keyIterator(); + method @Deprecated public void put(String, Object); + } + + @Deprecated public class DrmInfoEvent extends android.drm.DrmEvent { + ctor @Deprecated public DrmInfoEvent(int, int, String); + ctor @Deprecated public DrmInfoEvent(int, int, String, java.util.HashMap<java.lang.String,java.lang.Object>); + field @Deprecated public static final int TYPE_ACCOUNT_ALREADY_REGISTERED = 5; // 0x5 + field @Deprecated public static final int TYPE_ALREADY_REGISTERED_BY_ANOTHER_ACCOUNT = 1; // 0x1 + field @Deprecated public static final int TYPE_REMOVE_RIGHTS = 2; // 0x2 + field @Deprecated public static final int TYPE_RIGHTS_INSTALLED = 3; // 0x3 + field @Deprecated public static final int TYPE_RIGHTS_REMOVED = 6; // 0x6 + field @Deprecated public static final int TYPE_WAIT_FOR_RIGHTS = 4; // 0x4 + } + + @Deprecated public class DrmInfoRequest { + ctor @Deprecated public DrmInfoRequest(int, String); + method @Deprecated public Object get(String); + method @Deprecated public int getInfoType(); + method @Deprecated public String getMimeType(); + method @Deprecated public java.util.Iterator<java.lang.Object> iterator(); + method @Deprecated public java.util.Iterator<java.lang.String> keyIterator(); + method @Deprecated public void put(String, Object); + field @Deprecated public static final String ACCOUNT_ID = "account_id"; + field @Deprecated public static final String SUBSCRIPTION_ID = "subscription_id"; + field @Deprecated public static final int TYPE_REGISTRATION_INFO = 1; // 0x1 + field @Deprecated public static final int TYPE_RIGHTS_ACQUISITION_INFO = 3; // 0x3 + field @Deprecated public static final int TYPE_RIGHTS_ACQUISITION_PROGRESS_INFO = 4; // 0x4 + field @Deprecated public static final int TYPE_UNREGISTRATION_INFO = 2; // 0x2 + } + + @Deprecated public class DrmInfoStatus { + ctor @Deprecated public DrmInfoStatus(int, int, android.drm.ProcessedData, String); + field @Deprecated public static final int STATUS_ERROR = 2; // 0x2 + field @Deprecated public static final int STATUS_OK = 1; // 0x1 + field @Deprecated public final android.drm.ProcessedData data; + field @Deprecated public final int infoType; + field @Deprecated public final String mimeType; + field @Deprecated public final int statusCode; + } + + @Deprecated public class DrmManagerClient implements java.lang.AutoCloseable { + ctor @Deprecated public DrmManagerClient(android.content.Context); + method @Deprecated public android.drm.DrmInfo acquireDrmInfo(android.drm.DrmInfoRequest); + method @Deprecated public int acquireRights(android.drm.DrmInfoRequest); + method @Deprecated public boolean canHandle(String, String); + method @Deprecated public boolean canHandle(android.net.Uri, String); + method @Deprecated public int checkRightsStatus(String); + method @Deprecated public int checkRightsStatus(android.net.Uri); + method @Deprecated public int checkRightsStatus(String, int); + method @Deprecated public int checkRightsStatus(android.net.Uri, int); + method @Deprecated public void close(); + method @Deprecated public android.drm.DrmConvertedStatus closeConvertSession(int); + method @Deprecated public android.drm.DrmConvertedStatus convertData(int, byte[]); + method @Deprecated public String[] getAvailableDrmEngines(); + method @Deprecated @NonNull public java.util.Collection<android.drm.DrmSupportInfo> getAvailableDrmSupportInfo(); + method @Deprecated public android.content.ContentValues getConstraints(String, int); + method @Deprecated public android.content.ContentValues getConstraints(android.net.Uri, int); + method @Deprecated public int getDrmObjectType(String, String); + method @Deprecated public int getDrmObjectType(android.net.Uri, String); + method @Deprecated public android.content.ContentValues getMetadata(String); + method @Deprecated public android.content.ContentValues getMetadata(android.net.Uri); + method @Deprecated public String getOriginalMimeType(String); + method @Deprecated public String getOriginalMimeType(android.net.Uri); + method @Deprecated public int openConvertSession(String); + method @Deprecated public int processDrmInfo(android.drm.DrmInfo); method @Deprecated public void release(); - method public int removeAllRights(); - method public int removeRights(String); - method public int removeRights(android.net.Uri); - method public int saveRights(android.drm.DrmRights, String, String) throws java.io.IOException; - method public void setOnErrorListener(android.drm.DrmManagerClient.OnErrorListener); - method public void setOnEventListener(android.drm.DrmManagerClient.OnEventListener); - method public void setOnInfoListener(android.drm.DrmManagerClient.OnInfoListener); - field public static final int ERROR_NONE = 0; // 0x0 - field public static final int ERROR_UNKNOWN = -2000; // 0xfffff830 + method @Deprecated public int removeAllRights(); + method @Deprecated public int removeRights(String); + method @Deprecated public int removeRights(android.net.Uri); + method @Deprecated public int saveRights(android.drm.DrmRights, String, String) throws java.io.IOException; + method @Deprecated public void setOnErrorListener(android.drm.DrmManagerClient.OnErrorListener); + method @Deprecated public void setOnEventListener(android.drm.DrmManagerClient.OnEventListener); + method @Deprecated public void setOnInfoListener(android.drm.DrmManagerClient.OnInfoListener); + field @Deprecated public static final int ERROR_NONE = 0; // 0x0 + field @Deprecated public static final int ERROR_UNKNOWN = -2000; // 0xfffff830 } - public static interface DrmManagerClient.OnErrorListener { - method public void onError(android.drm.DrmManagerClient, android.drm.DrmErrorEvent); + @Deprecated public static interface DrmManagerClient.OnErrorListener { + method @Deprecated public void onError(android.drm.DrmManagerClient, android.drm.DrmErrorEvent); } - public static interface DrmManagerClient.OnEventListener { - method public void onEvent(android.drm.DrmManagerClient, android.drm.DrmEvent); + @Deprecated public static interface DrmManagerClient.OnEventListener { + method @Deprecated public void onEvent(android.drm.DrmManagerClient, android.drm.DrmEvent); } - public static interface DrmManagerClient.OnInfoListener { - method public void onInfo(android.drm.DrmManagerClient, android.drm.DrmInfoEvent); + @Deprecated public static interface DrmManagerClient.OnInfoListener { + method @Deprecated public void onInfo(android.drm.DrmManagerClient, android.drm.DrmInfoEvent); } - public class DrmRights { - ctor public DrmRights(String, String); - ctor public DrmRights(String, String, String); - ctor public DrmRights(String, String, String, String); - ctor public DrmRights(java.io.File, String); - ctor public DrmRights(android.drm.ProcessedData, String); - method public String getAccountId(); - method public byte[] getData(); - method public String getMimeType(); - method public String getSubscriptionId(); + @Deprecated public class DrmRights { + ctor @Deprecated public DrmRights(String, String); + ctor @Deprecated public DrmRights(String, String, String); + ctor @Deprecated public DrmRights(String, String, String, String); + ctor @Deprecated public DrmRights(java.io.File, String); + ctor @Deprecated public DrmRights(android.drm.ProcessedData, String); + method @Deprecated public String getAccountId(); + method @Deprecated public byte[] getData(); + method @Deprecated public String getMimeType(); + method @Deprecated public String getSubscriptionId(); } - public class DrmStore { + @Deprecated public class DrmStore { ctor @Deprecated public DrmStore(); } - public static class DrmStore.Action { + @Deprecated public static class DrmStore.Action { ctor @Deprecated public DrmStore.Action(); - field public static final int DEFAULT = 0; // 0x0 - field public static final int DISPLAY = 7; // 0x7 - field public static final int EXECUTE = 6; // 0x6 - field public static final int OUTPUT = 4; // 0x4 - field public static final int PLAY = 1; // 0x1 - field public static final int PREVIEW = 5; // 0x5 - field public static final int RINGTONE = 2; // 0x2 - field public static final int TRANSFER = 3; // 0x3 - } - - public static interface DrmStore.ConstraintsColumns { - field public static final String EXTENDED_METADATA = "extended_metadata"; - field public static final String LICENSE_AVAILABLE_TIME = "license_available_time"; - field public static final String LICENSE_EXPIRY_TIME = "license_expiry_time"; - field public static final String LICENSE_START_TIME = "license_start_time"; - field public static final String MAX_REPEAT_COUNT = "max_repeat_count"; - field public static final String REMAINING_REPEAT_COUNT = "remaining_repeat_count"; - } - - public static class DrmStore.DrmObjectType { + field @Deprecated public static final int DEFAULT = 0; // 0x0 + field @Deprecated public static final int DISPLAY = 7; // 0x7 + field @Deprecated public static final int EXECUTE = 6; // 0x6 + field @Deprecated public static final int OUTPUT = 4; // 0x4 + field @Deprecated public static final int PLAY = 1; // 0x1 + field @Deprecated public static final int PREVIEW = 5; // 0x5 + field @Deprecated public static final int RINGTONE = 2; // 0x2 + field @Deprecated public static final int TRANSFER = 3; // 0x3 + } + + @Deprecated public static interface DrmStore.ConstraintsColumns { + field @Deprecated public static final String EXTENDED_METADATA = "extended_metadata"; + field @Deprecated public static final String LICENSE_AVAILABLE_TIME = "license_available_time"; + field @Deprecated public static final String LICENSE_EXPIRY_TIME = "license_expiry_time"; + field @Deprecated public static final String LICENSE_START_TIME = "license_start_time"; + field @Deprecated public static final String MAX_REPEAT_COUNT = "max_repeat_count"; + field @Deprecated public static final String REMAINING_REPEAT_COUNT = "remaining_repeat_count"; + } + + @Deprecated public static class DrmStore.DrmObjectType { ctor @Deprecated public DrmStore.DrmObjectType(); - field public static final int CONTENT = 1; // 0x1 - field public static final int RIGHTS_OBJECT = 2; // 0x2 - field public static final int TRIGGER_OBJECT = 3; // 0x3 - field public static final int UNKNOWN = 0; // 0x0 + field @Deprecated public static final int CONTENT = 1; // 0x1 + field @Deprecated public static final int RIGHTS_OBJECT = 2; // 0x2 + field @Deprecated public static final int TRIGGER_OBJECT = 3; // 0x3 + field @Deprecated public static final int UNKNOWN = 0; // 0x0 } - public static class DrmStore.Playback { + @Deprecated public static class DrmStore.Playback { ctor @Deprecated public DrmStore.Playback(); - field public static final int PAUSE = 2; // 0x2 - field public static final int RESUME = 3; // 0x3 - field public static final int START = 0; // 0x0 - field public static final int STOP = 1; // 0x1 + field @Deprecated public static final int PAUSE = 2; // 0x2 + field @Deprecated public static final int RESUME = 3; // 0x3 + field @Deprecated public static final int START = 0; // 0x0 + field @Deprecated public static final int STOP = 1; // 0x1 } - public static class DrmStore.RightsStatus { + @Deprecated public static class DrmStore.RightsStatus { ctor @Deprecated public DrmStore.RightsStatus(); - field public static final int RIGHTS_EXPIRED = 2; // 0x2 - field public static final int RIGHTS_INVALID = 1; // 0x1 - field public static final int RIGHTS_NOT_ACQUIRED = 3; // 0x3 - field public static final int RIGHTS_VALID = 0; // 0x0 + field @Deprecated public static final int RIGHTS_EXPIRED = 2; // 0x2 + field @Deprecated public static final int RIGHTS_INVALID = 1; // 0x1 + field @Deprecated public static final int RIGHTS_NOT_ACQUIRED = 3; // 0x3 + field @Deprecated public static final int RIGHTS_VALID = 0; // 0x0 } - public class DrmSupportInfo { - ctor public DrmSupportInfo(); - method public void addFileSuffix(String); - method public void addMimeType(String); + @Deprecated public class DrmSupportInfo { + ctor @Deprecated public DrmSupportInfo(); + method @Deprecated public void addFileSuffix(String); + method @Deprecated public void addMimeType(String); method @Deprecated public String getDescriprition(); - method public String getDescription(); - method public java.util.Iterator<java.lang.String> getFileSuffixIterator(); - method public java.util.Iterator<java.lang.String> getMimeTypeIterator(); - method public void setDescription(String); + method @Deprecated public String getDescription(); + method @Deprecated public java.util.Iterator<java.lang.String> getFileSuffixIterator(); + method @Deprecated public java.util.Iterator<java.lang.String> getMimeTypeIterator(); + method @Deprecated public void setDescription(String); } - public class DrmUtils { - ctor public DrmUtils(); - method public static android.drm.DrmUtils.ExtendedMetadataParser getExtendedMetadataParser(byte[]); + @Deprecated public class DrmUtils { + ctor @Deprecated public DrmUtils(); + method @Deprecated public static android.drm.DrmUtils.ExtendedMetadataParser getExtendedMetadataParser(byte[]); } - public static class DrmUtils.ExtendedMetadataParser { - method public String get(String); - method public java.util.Iterator<java.lang.String> iterator(); - method public java.util.Iterator<java.lang.String> keyIterator(); + @Deprecated public static class DrmUtils.ExtendedMetadataParser { + method @Deprecated public String get(String); + method @Deprecated public java.util.Iterator<java.lang.String> iterator(); + method @Deprecated public java.util.Iterator<java.lang.String> keyIterator(); } - public class ProcessedData { - method public String getAccountId(); - method public byte[] getData(); - method public String getSubscriptionId(); + @Deprecated public class ProcessedData { + method @Deprecated public String getAccountId(); + method @Deprecated public byte[] getData(); + method @Deprecated public String getSubscriptionId(); } } @@ -13405,6 +13876,7 @@ package android.gesture { public final class GestureLibraries { method public static android.gesture.GestureLibrary fromFile(String); method public static android.gesture.GestureLibrary fromFile(java.io.File); + method @NonNull public static android.gesture.GestureLibrary fromFileDescriptor(@NonNull android.os.ParcelFileDescriptor); method public static android.gesture.GestureLibrary fromPrivateFile(android.content.Context, String); method public static android.gesture.GestureLibrary fromRawResource(android.content.Context, @RawRes int); } @@ -13579,10 +14051,10 @@ package android.graphics { method public static android.graphics.Bitmap createBitmap(int, int, @NonNull android.graphics.Bitmap.Config, boolean, @NonNull android.graphics.ColorSpace); method public static android.graphics.Bitmap createBitmap(@Nullable android.util.DisplayMetrics, int, int, @NonNull android.graphics.Bitmap.Config, boolean); method public static android.graphics.Bitmap createBitmap(@Nullable android.util.DisplayMetrics, int, int, @NonNull android.graphics.Bitmap.Config, boolean, @NonNull android.graphics.ColorSpace); - method public static android.graphics.Bitmap createBitmap(@NonNull @ColorInt int[], int, int, int, int, @NonNull android.graphics.Bitmap.Config); - method public static android.graphics.Bitmap createBitmap(@NonNull android.util.DisplayMetrics, @NonNull @ColorInt int[], int, int, int, int, @NonNull android.graphics.Bitmap.Config); - method public static android.graphics.Bitmap createBitmap(@NonNull @ColorInt int[], int, int, android.graphics.Bitmap.Config); - method public static android.graphics.Bitmap createBitmap(@Nullable android.util.DisplayMetrics, @NonNull @ColorInt int[], int, int, @NonNull android.graphics.Bitmap.Config); + method public static android.graphics.Bitmap createBitmap(@ColorInt @NonNull int[], int, int, int, int, @NonNull android.graphics.Bitmap.Config); + method public static android.graphics.Bitmap createBitmap(@NonNull android.util.DisplayMetrics, @ColorInt @NonNull int[], int, int, int, int, @NonNull android.graphics.Bitmap.Config); + method public static android.graphics.Bitmap createBitmap(@ColorInt @NonNull int[], int, int, android.graphics.Bitmap.Config); + method public static android.graphics.Bitmap createBitmap(@Nullable android.util.DisplayMetrics, @ColorInt @NonNull int[], int, int, @NonNull android.graphics.Bitmap.Config); method @NonNull public static android.graphics.Bitmap createBitmap(@NonNull android.graphics.Picture); method @NonNull public static android.graphics.Bitmap createBitmap(@NonNull android.graphics.Picture, int, int, @NonNull android.graphics.Bitmap.Config); method public static android.graphics.Bitmap createScaledBitmap(@NonNull android.graphics.Bitmap, int, int, boolean); @@ -13638,7 +14110,9 @@ package android.graphics { public enum Bitmap.CompressFormat { enum_constant public static final android.graphics.Bitmap.CompressFormat JPEG; enum_constant public static final android.graphics.Bitmap.CompressFormat PNG; - enum_constant public static final android.graphics.Bitmap.CompressFormat WEBP; + enum_constant @Deprecated public static final android.graphics.Bitmap.CompressFormat WEBP; + enum_constant public static final android.graphics.Bitmap.CompressFormat WEBP_LOSSLESS; + enum_constant public static final android.graphics.Bitmap.CompressFormat WEBP_LOSSY; } public enum Bitmap.Config { @@ -13813,8 +14287,8 @@ package android.graphics { method public void drawDoubleRoundRect(@NonNull android.graphics.RectF, float, float, @NonNull android.graphics.RectF, float, float, @NonNull android.graphics.Paint); method public void drawDoubleRoundRect(@NonNull android.graphics.RectF, @NonNull float[], @NonNull android.graphics.RectF, @NonNull float[], @NonNull android.graphics.Paint); method public void drawLine(float, float, float, float, @NonNull android.graphics.Paint); - method public void drawLines(@Size(multiple=4) @NonNull float[], int, int, @NonNull android.graphics.Paint); - method public void drawLines(@Size(multiple=4) @NonNull float[], @NonNull android.graphics.Paint); + method public void drawLines(@NonNull @Size(multiple=4) float[], int, int, @NonNull android.graphics.Paint); + method public void drawLines(@NonNull @Size(multiple=4) float[], @NonNull android.graphics.Paint); method public void drawOval(@NonNull android.graphics.RectF, @NonNull android.graphics.Paint); method public void drawOval(float, float, float, float, @NonNull android.graphics.Paint); method public void drawPaint(@NonNull android.graphics.Paint); @@ -13824,7 +14298,7 @@ package android.graphics { method public void drawPicture(@NonNull android.graphics.Picture, @NonNull android.graphics.Rect); method public void drawPoint(float, float, @NonNull android.graphics.Paint); method public void drawPoints(@Size(multiple=2) float[], int, int, @NonNull android.graphics.Paint); - method public void drawPoints(@Size(multiple=2) @NonNull float[], @NonNull android.graphics.Paint); + method public void drawPoints(@NonNull @Size(multiple=2) float[], @NonNull android.graphics.Paint); method @Deprecated public void drawPosText(@NonNull char[], int, int, @NonNull @Size(multiple=2) float[], @NonNull android.graphics.Paint); method @Deprecated public void drawPosText(@NonNull String, @NonNull @Size(multiple=2) float[], @NonNull android.graphics.Paint); method public void drawRGB(int, int, int); @@ -13858,9 +14332,12 @@ package android.graphics { method public int getWidth(); method public boolean isHardwareAccelerated(); method public boolean isOpaque(); - method public boolean quickReject(@NonNull android.graphics.RectF, @NonNull android.graphics.Canvas.EdgeType); - method public boolean quickReject(@NonNull android.graphics.Path, @NonNull android.graphics.Canvas.EdgeType); - method public boolean quickReject(float, float, float, float, @NonNull android.graphics.Canvas.EdgeType); + method @Deprecated public boolean quickReject(@NonNull android.graphics.RectF, @NonNull android.graphics.Canvas.EdgeType); + method public boolean quickReject(@NonNull android.graphics.RectF); + method @Deprecated public boolean quickReject(@NonNull android.graphics.Path, @NonNull android.graphics.Canvas.EdgeType); + method public boolean quickReject(@NonNull android.graphics.Path); + method @Deprecated public boolean quickReject(float, float, float, float, @NonNull android.graphics.Canvas.EdgeType); + method public boolean quickReject(float, float, float, float); method public void restore(); method public void restoreToCount(int); method public void rotate(float); @@ -13885,9 +14362,9 @@ package android.graphics { field public static final int ALL_SAVE_FLAG = 31; // 0x1f } - public enum Canvas.EdgeType { - enum_constant public static final android.graphics.Canvas.EdgeType AA; - enum_constant public static final android.graphics.Canvas.EdgeType BW; + @Deprecated public enum Canvas.EdgeType { + enum_constant @Deprecated public static final android.graphics.Canvas.EdgeType AA; + enum_constant @Deprecated public static final android.graphics.Canvas.EdgeType BW; } public enum Canvas.VertexMode { @@ -14185,10 +14662,10 @@ package android.graphics { method @AnyThread @NonNull public static android.graphics.ImageDecoder.Source createSource(@NonNull java.nio.ByteBuffer); method @AnyThread @NonNull public static android.graphics.ImageDecoder.Source createSource(@NonNull java.io.File); method @AnyThread @NonNull public static android.graphics.ImageDecoder.Source createSource(@NonNull java.util.concurrent.Callable<android.content.res.AssetFileDescriptor>); - method @WorkerThread @NonNull public static android.graphics.Bitmap decodeBitmap(@NonNull android.graphics.ImageDecoder.Source, @NonNull android.graphics.ImageDecoder.OnHeaderDecodedListener) throws java.io.IOException; - method @WorkerThread @NonNull public static android.graphics.Bitmap decodeBitmap(@NonNull android.graphics.ImageDecoder.Source) throws java.io.IOException; - method @WorkerThread @NonNull public static android.graphics.drawable.Drawable decodeDrawable(@NonNull android.graphics.ImageDecoder.Source, @NonNull android.graphics.ImageDecoder.OnHeaderDecodedListener) throws java.io.IOException; - method @WorkerThread @NonNull public static android.graphics.drawable.Drawable decodeDrawable(@NonNull android.graphics.ImageDecoder.Source) throws java.io.IOException; + method @NonNull @WorkerThread public static android.graphics.Bitmap decodeBitmap(@NonNull android.graphics.ImageDecoder.Source, @NonNull android.graphics.ImageDecoder.OnHeaderDecodedListener) throws java.io.IOException; + method @NonNull @WorkerThread public static android.graphics.Bitmap decodeBitmap(@NonNull android.graphics.ImageDecoder.Source) throws java.io.IOException; + method @NonNull @WorkerThread public static android.graphics.drawable.Drawable decodeDrawable(@NonNull android.graphics.ImageDecoder.Source, @NonNull android.graphics.ImageDecoder.OnHeaderDecodedListener) throws java.io.IOException; + method @NonNull @WorkerThread public static android.graphics.drawable.Drawable decodeDrawable(@NonNull android.graphics.ImageDecoder.Source) throws java.io.IOException; method public int getAllocator(); method @Nullable public android.graphics.Rect getCrop(); method public int getMemorySizePolicy(); @@ -14207,7 +14684,7 @@ package android.graphics { method public void setPostProcessor(@Nullable android.graphics.PostProcessor); method public void setTargetColorSpace(android.graphics.ColorSpace); method public void setTargetSampleSize(@IntRange(from=1) int); - method public void setTargetSize(@Px @IntRange(from=1) int, @Px @IntRange(from=1) int); + method public void setTargetSize(@IntRange(from=1) @Px int, @IntRange(from=1) @Px int); method public void setUnpremultipliedRequired(boolean); field public static final int ALLOCATOR_DEFAULT = 0; // 0x0 field public static final int ALLOCATOR_HARDWARE = 3; // 0x3 @@ -14314,8 +14791,8 @@ package android.graphics { } public class LinearGradient extends android.graphics.Shader { - ctor public LinearGradient(float, float, float, float, @NonNull @ColorInt int[], @Nullable float[], @NonNull android.graphics.Shader.TileMode); - ctor public LinearGradient(float, float, float, float, @NonNull @ColorLong long[], @Nullable float[], @NonNull android.graphics.Shader.TileMode); + ctor public LinearGradient(float, float, float, float, @ColorInt @NonNull int[], @Nullable float[], @NonNull android.graphics.Shader.TileMode); + ctor public LinearGradient(float, float, float, float, @ColorLong @NonNull long[], @Nullable float[], @NonNull android.graphics.Shader.TileMode); ctor public LinearGradient(float, float, float, float, @ColorInt int, @ColorInt int, @NonNull android.graphics.Shader.TileMode); ctor public LinearGradient(float, float, float, float, @ColorLong long, @ColorLong long, @NonNull android.graphics.Shader.TileMode); } @@ -14433,10 +14910,11 @@ package android.graphics { method public void offset(int, int); method public void set(@NonNull android.graphics.Outline); method public void setAlpha(@FloatRange(from=0.0, to=1.0) float); - method public void setConvexPath(@NonNull android.graphics.Path); + method @Deprecated public void setConvexPath(@NonNull android.graphics.Path); method public void setEmpty(); method public void setOval(int, int, int, int); method public void setOval(@NonNull android.graphics.Rect); + method public void setPath(@NonNull android.graphics.Path); method public void setRect(int, int, int, int); method public void setRect(@NonNull android.graphics.Rect); method public void setRoundRect(int, int, int, int, float); @@ -14672,7 +15150,7 @@ package android.graphics { method public void cubicTo(float, float, float, float, float, float); method @NonNull public android.graphics.Path.FillType getFillType(); method public void incReserve(int); - method public boolean isConvex(); + method @Deprecated public boolean isConvex(); method public boolean isEmpty(); method public boolean isInverseFillType(); method public boolean isRect(@Nullable android.graphics.RectF); @@ -14804,6 +15282,7 @@ package android.graphics { ctor public PointF(); ctor public PointF(float, float); ctor public PointF(@NonNull android.graphics.Point); + ctor public PointF(@NonNull android.graphics.PointF); method public int describeContents(); method public final boolean equals(float, float); method public final float length(); @@ -14857,8 +15336,8 @@ package android.graphics { } public class RadialGradient extends android.graphics.Shader { - ctor public RadialGradient(float, float, float, @NonNull @ColorInt int[], @Nullable float[], @NonNull android.graphics.Shader.TileMode); - ctor public RadialGradient(float, float, float, @NonNull @ColorLong long[], @Nullable float[], @NonNull android.graphics.Shader.TileMode); + ctor public RadialGradient(float, float, float, @ColorInt @NonNull int[], @Nullable float[], @NonNull android.graphics.Shader.TileMode); + ctor public RadialGradient(float, float, float, @ColorLong @NonNull long[], @Nullable float[], @NonNull android.graphics.Shader.TileMode); ctor public RadialGradient(float, float, float, @ColorInt int, @ColorInt int, @NonNull android.graphics.Shader.TileMode); ctor public RadialGradient(float, float, float, @ColorLong long, @ColorLong long, @NonNull android.graphics.Shader.TileMode); } @@ -15116,8 +15595,8 @@ package android.graphics { } public class SweepGradient extends android.graphics.Shader { - ctor public SweepGradient(float, float, @NonNull @ColorInt int[], @Nullable float[]); - ctor public SweepGradient(float, float, @NonNull @ColorLong long[], @Nullable float[]); + ctor public SweepGradient(float, float, @ColorInt @NonNull int[], @Nullable float[]); + ctor public SweepGradient(float, float, @ColorLong @NonNull long[], @Nullable float[]); ctor public SweepGradient(float, float, @ColorInt int, @ColorInt int); ctor public SweepGradient(float, float, @ColorLong long, @ColorLong long); } @@ -15510,8 +15989,8 @@ package android.graphics.drawable { method public void setColor(@ColorInt int); method public void setColor(@Nullable android.content.res.ColorStateList); method public void setColorFilter(@Nullable android.graphics.ColorFilter); - method public void setColors(@Nullable @ColorInt int[]); - method public void setColors(@Nullable @ColorInt int[], @Nullable float[]); + method public void setColors(@ColorInt @Nullable int[]); + method public void setColors(@ColorInt @Nullable int[], @Nullable float[]); method public void setCornerRadii(@Nullable float[]); method public void setCornerRadius(float); method public void setDither(boolean); @@ -15553,6 +16032,8 @@ package android.graphics.drawable { public final class Icon implements android.os.Parcelable { method public static android.graphics.drawable.Icon createWithAdaptiveBitmap(android.graphics.Bitmap); + method @NonNull public static android.graphics.drawable.Icon createWithAdaptiveBitmapContentUri(@NonNull String); + method @NonNull public static android.graphics.drawable.Icon createWithAdaptiveBitmapContentUri(@NonNull android.net.Uri); method public static android.graphics.drawable.Icon createWithBitmap(android.graphics.Bitmap); method public static android.graphics.drawable.Icon createWithContentUri(String); method public static android.graphics.drawable.Icon createWithContentUri(android.net.Uri); @@ -15579,6 +16060,7 @@ package android.graphics.drawable { field public static final int TYPE_DATA = 3; // 0x3 field public static final int TYPE_RESOURCE = 2; // 0x2 field public static final int TYPE_URI = 4; // 0x4 + field public static final int TYPE_URI_ADAPTIVE_BITMAP = 6; // 0x6 } public static interface Icon.OnDrawableLoadedListener { @@ -15959,14 +16441,14 @@ package android.graphics.text { public static class LineBreaker.ParagraphConstraints { ctor public LineBreaker.ParagraphConstraints(); - method @Px @FloatRange(from=0) public float getDefaultTabStop(); - method @Px @FloatRange(from=0.0f) public float getFirstWidth(); - method @Px @IntRange(from=0) public int getFirstWidthLineCount(); + method @FloatRange(from=0) @Px public float getDefaultTabStop(); + method @FloatRange(from=0.0f) @Px public float getFirstWidth(); + method @IntRange(from=0) @Px public int getFirstWidthLineCount(); method @Nullable public float[] getTabStops(); - method @Px @FloatRange(from=0.0f) public float getWidth(); - method public void setIndent(@Px @FloatRange(from=0.0f) float, @Px @IntRange(from=0) int); - method public void setTabStops(@Nullable float[], @Px @FloatRange(from=0) float); - method public void setWidth(@Px @FloatRange(from=0.0f) float); + method @FloatRange(from=0.0f) @Px public float getWidth(); + method public void setIndent(@FloatRange(from=0.0f) @Px float, @IntRange(from=0) @Px int); + method public void setTabStops(@Nullable float[], @FloatRange(from=0) @Px float); + method public void setWidth(@FloatRange(from=0.0f) @Px float); } public static class LineBreaker.Result { @@ -15989,7 +16471,7 @@ package android.graphics.text { public static final class MeasuredText.Builder { ctor public MeasuredText.Builder(@NonNull char[]); ctor public MeasuredText.Builder(@NonNull android.graphics.text.MeasuredText); - method @NonNull public android.graphics.text.MeasuredText.Builder appendReplacementRun(@NonNull android.graphics.Paint, @IntRange(from=0) int, @Px @FloatRange(from=0) float); + method @NonNull public android.graphics.text.MeasuredText.Builder appendReplacementRun(@NonNull android.graphics.Paint, @IntRange(from=0) int, @FloatRange(from=0) @Px float); method @NonNull public android.graphics.text.MeasuredText.Builder appendStyleRun(@NonNull android.graphics.Paint, @IntRange(from=0) int, boolean); method @NonNull public android.graphics.text.MeasuredText build(); method @NonNull public android.graphics.text.MeasuredText.Builder setComputeHyphenation(boolean); @@ -16315,6 +16797,7 @@ package android.hardware { field public static final long USAGE_PROTECTED_CONTENT = 16384L; // 0x4000L field public static final long USAGE_SENSOR_DIRECT_DATA = 8388608L; // 0x800000L field public static final long USAGE_VIDEO_ENCODE = 65536L; // 0x10000L + field public static final int YCBCR_420_888 = 35; // 0x23 } public final class Sensor { @@ -16351,6 +16834,7 @@ package android.hardware { field public static final String STRING_TYPE_GYROSCOPE_UNCALIBRATED = "android.sensor.gyroscope_uncalibrated"; field public static final String STRING_TYPE_HEART_BEAT = "android.sensor.heart_beat"; field public static final String STRING_TYPE_HEART_RATE = "android.sensor.heart_rate"; + field public static final String STRING_TYPE_HINGE_ANGLE = "android.sensor.hinge_angle"; field public static final String STRING_TYPE_LIGHT = "android.sensor.light"; field public static final String STRING_TYPE_LINEAR_ACCELERATION = "android.sensor.linear_acceleration"; field public static final String STRING_TYPE_LOW_LATENCY_OFFBODY_DETECT = "android.sensor.low_latency_offbody_detect"; @@ -16380,6 +16864,7 @@ package android.hardware { field public static final int TYPE_GYROSCOPE_UNCALIBRATED = 16; // 0x10 field public static final int TYPE_HEART_BEAT = 31; // 0x1f field public static final int TYPE_HEART_RATE = 21; // 0x15 + field public static final int TYPE_HINGE_ANGLE = 36; // 0x24 field public static final int TYPE_LIGHT = 5; // 0x5 field public static final int TYPE_LINEAR_ACCELERATION = 10; // 0xa field public static final int TYPE_LOW_LATENCY_OFFBODY_DETECT = 34; // 0x22 @@ -16570,16 +17055,32 @@ package android.hardware { package android.hardware.biometrics { public class BiometricManager { - method @RequiresPermission(android.Manifest.permission.USE_BIOMETRIC) public int canAuthenticate(); + method @Deprecated @RequiresPermission(android.Manifest.permission.USE_BIOMETRIC) public int canAuthenticate(); + method @RequiresPermission(android.Manifest.permission.USE_BIOMETRIC) public int canAuthenticate(int); field public static final int BIOMETRIC_ERROR_HW_UNAVAILABLE = 1; // 0x1 field public static final int BIOMETRIC_ERROR_NONE_ENROLLED = 11; // 0xb field public static final int BIOMETRIC_ERROR_NO_HARDWARE = 12; // 0xc + field public static final int BIOMETRIC_ERROR_SECURITY_UPDATE_REQUIRED = 15; // 0xf field public static final int BIOMETRIC_SUCCESS = 0; // 0x0 } + public static interface BiometricManager.Authenticators { + field public static final int BIOMETRIC_STRONG = 15; // 0xf + field public static final int BIOMETRIC_WEAK = 255; // 0xff + field public static final int DEVICE_CREDENTIAL = 32768; // 0x8000 + } + public class BiometricPrompt { method @RequiresPermission(android.Manifest.permission.USE_BIOMETRIC) public void authenticate(@NonNull android.hardware.biometrics.BiometricPrompt.CryptoObject, @NonNull android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.biometrics.BiometricPrompt.AuthenticationCallback); method @RequiresPermission(android.Manifest.permission.USE_BIOMETRIC) public void authenticate(@NonNull android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.biometrics.BiometricPrompt.AuthenticationCallback); + method @Nullable public int getAllowedAuthenticators(); + method @Nullable public CharSequence getDescription(); + method @Nullable public CharSequence getNegativeButtonText(); + method @Nullable public CharSequence getSubtitle(); + method @NonNull public CharSequence getTitle(); + method public boolean isConfirmationRequired(); + field public static final int AUTHENTICATION_RESULT_TYPE_BIOMETRIC = 2; // 0x2 + field public static final int AUTHENTICATION_RESULT_TYPE_DEVICE_CREDENTIAL = 1; // 0x1 field public static final int BIOMETRIC_ACQUIRED_GOOD = 0; // 0x0 field public static final int BIOMETRIC_ACQUIRED_IMAGER_DIRTY = 3; // 0x3 field public static final int BIOMETRIC_ACQUIRED_INSUFFICIENT = 2; // 0x2 @@ -16594,6 +17095,7 @@ package android.hardware.biometrics { field public static final int BIOMETRIC_ERROR_NO_BIOMETRICS = 11; // 0xb field public static final int BIOMETRIC_ERROR_NO_DEVICE_CREDENTIAL = 14; // 0xe field public static final int BIOMETRIC_ERROR_NO_SPACE = 4; // 0x4 + field public static final int BIOMETRIC_ERROR_SECURITY_UPDATE_REQUIRED = 15; // 0xf field public static final int BIOMETRIC_ERROR_TIMEOUT = 3; // 0x3 field public static final int BIOMETRIC_ERROR_UNABLE_TO_PROCESS = 2; // 0x2 field public static final int BIOMETRIC_ERROR_USER_CANCELED = 10; // 0xa @@ -16609,15 +17111,17 @@ package android.hardware.biometrics { } public static class BiometricPrompt.AuthenticationResult { + method public int getAuthenticationType(); method public android.hardware.biometrics.BiometricPrompt.CryptoObject getCryptoObject(); } public static class BiometricPrompt.Builder { ctor public BiometricPrompt.Builder(android.content.Context); method @NonNull public android.hardware.biometrics.BiometricPrompt build(); + method @NonNull public android.hardware.biometrics.BiometricPrompt.Builder setAllowedAuthenticators(int); method @NonNull public android.hardware.biometrics.BiometricPrompt.Builder setConfirmationRequired(boolean); method @NonNull public android.hardware.biometrics.BiometricPrompt.Builder setDescription(@NonNull CharSequence); - method @NonNull public android.hardware.biometrics.BiometricPrompt.Builder setDeviceCredentialAllowed(boolean); + method @Deprecated @NonNull public android.hardware.biometrics.BiometricPrompt.Builder setDeviceCredentialAllowed(boolean); method @NonNull public android.hardware.biometrics.BiometricPrompt.Builder setNegativeButton(@NonNull CharSequence, @NonNull java.util.concurrent.Executor, @NonNull android.content.DialogInterface.OnClickListener); method @NonNull public android.hardware.biometrics.BiometricPrompt.Builder setSubtitle(@NonNull CharSequence); method @NonNull public android.hardware.biometrics.BiometricPrompt.Builder setTitle(@NonNull CharSequence); @@ -16627,7 +17131,9 @@ package android.hardware.biometrics { ctor public BiometricPrompt.CryptoObject(@NonNull java.security.Signature); ctor public BiometricPrompt.CryptoObject(@NonNull javax.crypto.Cipher); ctor public BiometricPrompt.CryptoObject(@NonNull javax.crypto.Mac); + ctor public BiometricPrompt.CryptoObject(@NonNull android.security.identity.IdentityCredential); method public javax.crypto.Cipher getCipher(); + method @Nullable public android.security.identity.IdentityCredential getIdentityCredential(); method public javax.crypto.Mac getMac(); method public java.security.Signature getSignature(); } @@ -16667,6 +17173,8 @@ package android.hardware.camera2 { method public abstract int setRepeatingRequest(@NonNull android.hardware.camera2.CaptureRequest, @Nullable android.hardware.camera2.CameraCaptureSession.CaptureCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; method public int setSingleRepeatingRequest(@NonNull android.hardware.camera2.CaptureRequest, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraCaptureSession.CaptureCallback) throws android.hardware.camera2.CameraAccessException; method public abstract void stopRepeating() throws android.hardware.camera2.CameraAccessException; + method public boolean supportsOfflineProcessing(@NonNull android.view.Surface); + method @Nullable public android.hardware.camera2.CameraOfflineSession switchToOffline(@NonNull java.util.Collection<android.view.Surface>, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraOfflineSession.CameraOfflineSessionCallback) throws android.hardware.camera2.CameraAccessException; method public void updateOutputConfiguration(android.hardware.camera2.params.OutputConfiguration) throws android.hardware.camera2.CameraAccessException; } @@ -16711,6 +17219,7 @@ package android.hardware.camera2 { field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<java.lang.Boolean> CONTROL_AE_LOCK_AVAILABLE; field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<int[]> CONTROL_AF_AVAILABLE_MODES; field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<int[]> CONTROL_AVAILABLE_EFFECTS; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<android.hardware.camera2.params.Capability[]> CONTROL_AVAILABLE_EXTENDED_SCENE_MODE_CAPABILITIES; field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<int[]> CONTROL_AVAILABLE_MODES; field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<int[]> CONTROL_AVAILABLE_SCENE_MODES; field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<int[]> CONTROL_AVAILABLE_VIDEO_STABILIZATION_MODES; @@ -16720,6 +17229,7 @@ package android.hardware.camera2 { field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<java.lang.Integer> CONTROL_MAX_REGIONS_AF; field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<java.lang.Integer> CONTROL_MAX_REGIONS_AWB; field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<android.util.Range<java.lang.Integer>> CONTROL_POST_RAW_SENSITIVITY_BOOST_RANGE; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<android.util.Range<java.lang.Float>> CONTROL_ZOOM_RATIO_RANGE; field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<java.lang.Boolean> DEPTH_DEPTH_IS_EXCLUSIVE; field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<int[]> DISTORTION_CORRECTION_AVAILABLE_MODES; field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<int[]> EDGE_AVAILABLE_EDGE_MODES; @@ -16754,6 +17264,7 @@ package android.hardware.camera2 { field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<java.lang.Byte> REQUEST_PIPELINE_MAX_DEPTH; field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<java.lang.Float> SCALER_AVAILABLE_MAX_DIGITAL_ZOOM; field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<java.lang.Integer> SCALER_CROPPING_TYPE; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<android.hardware.camera2.params.MandatoryStreamCombination[]> SCALER_MANDATORY_CONCURRENT_STREAM_COMBINATIONS; field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<android.hardware.camera2.params.MandatoryStreamCombination[]> SCALER_MANDATORY_STREAM_COMBINATIONS; field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<android.hardware.camera2.params.StreamConfigurationMap> SCALER_STREAM_CONFIGURATION_MAP; field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<int[]> SENSOR_AVAILABLE_TEST_PATTERN_MODES; @@ -16805,15 +17316,20 @@ package android.hardware.camera2 { method public abstract void close(); method @NonNull public abstract android.hardware.camera2.CaptureRequest.Builder createCaptureRequest(int) throws android.hardware.camera2.CameraAccessException; method @NonNull public android.hardware.camera2.CaptureRequest.Builder createCaptureRequest(int, java.util.Set<java.lang.String>) throws android.hardware.camera2.CameraAccessException; - method public abstract void createCaptureSession(@NonNull java.util.List<android.view.Surface>, @NonNull android.hardware.camera2.CameraCaptureSession.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; + method @Deprecated public abstract void createCaptureSession(@NonNull java.util.List<android.view.Surface>, @NonNull android.hardware.camera2.CameraCaptureSession.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; method public void createCaptureSession(android.hardware.camera2.params.SessionConfiguration) throws android.hardware.camera2.CameraAccessException; - method public abstract void createCaptureSessionByOutputConfigurations(java.util.List<android.hardware.camera2.params.OutputConfiguration>, android.hardware.camera2.CameraCaptureSession.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; - method public abstract void createConstrainedHighSpeedCaptureSession(@NonNull java.util.List<android.view.Surface>, @NonNull android.hardware.camera2.CameraCaptureSession.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; + method @Deprecated public abstract void createCaptureSessionByOutputConfigurations(java.util.List<android.hardware.camera2.params.OutputConfiguration>, android.hardware.camera2.CameraCaptureSession.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; + method @Deprecated public abstract void createConstrainedHighSpeedCaptureSession(@NonNull java.util.List<android.view.Surface>, @NonNull android.hardware.camera2.CameraCaptureSession.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; method @NonNull public abstract android.hardware.camera2.CaptureRequest.Builder createReprocessCaptureRequest(@NonNull android.hardware.camera2.TotalCaptureResult) throws android.hardware.camera2.CameraAccessException; - method public abstract void createReprocessableCaptureSession(@NonNull android.hardware.camera2.params.InputConfiguration, @NonNull java.util.List<android.view.Surface>, @NonNull android.hardware.camera2.CameraCaptureSession.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; - method public abstract void createReprocessableCaptureSessionByConfigurations(@NonNull android.hardware.camera2.params.InputConfiguration, @NonNull java.util.List<android.hardware.camera2.params.OutputConfiguration>, @NonNull android.hardware.camera2.CameraCaptureSession.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; + method @Deprecated public abstract void createReprocessableCaptureSession(@NonNull android.hardware.camera2.params.InputConfiguration, @NonNull java.util.List<android.view.Surface>, @NonNull android.hardware.camera2.CameraCaptureSession.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; + method @Deprecated public abstract void createReprocessableCaptureSessionByConfigurations(@NonNull android.hardware.camera2.params.InputConfiguration, @NonNull java.util.List<android.hardware.camera2.params.OutputConfiguration>, @NonNull android.hardware.camera2.CameraCaptureSession.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; + method public int getCameraAudioRestriction() throws android.hardware.camera2.CameraAccessException; method @NonNull public abstract String getId(); method public boolean isSessionConfigurationSupported(@NonNull android.hardware.camera2.params.SessionConfiguration) throws android.hardware.camera2.CameraAccessException; + method public void setCameraAudioRestriction(int) throws android.hardware.camera2.CameraAccessException; + field public static final int AUDIO_RESTRICTION_NONE = 0; // 0x0 + field public static final int AUDIO_RESTRICTION_VIBRATION = 1; // 0x1 + field public static final int AUDIO_RESTRICTION_VIBRATION_SOUND = 3; // 0x3 field public static final int TEMPLATE_MANUAL = 6; // 0x6 field public static final int TEMPLATE_PREVIEW = 1; // 0x1 field public static final int TEMPLATE_RECORD = 3; // 0x3 @@ -16838,6 +17354,8 @@ package android.hardware.camera2 { public final class CameraManager { method @NonNull public android.hardware.camera2.CameraCharacteristics getCameraCharacteristics(@NonNull String) throws android.hardware.camera2.CameraAccessException; method @NonNull public String[] getCameraIdList() throws android.hardware.camera2.CameraAccessException; + method @NonNull public java.util.Set<java.util.Set<java.lang.String>> getConcurrentCameraIds() throws android.hardware.camera2.CameraAccessException; + method @RequiresPermission(android.Manifest.permission.CAMERA) public boolean isConcurrentSessionConfigurationSupported(@NonNull java.util.Map<java.lang.String,android.hardware.camera2.params.SessionConfiguration>) throws android.hardware.camera2.CameraAccessException; method @RequiresPermission(android.Manifest.permission.CAMERA) public void openCamera(@NonNull String, @NonNull android.hardware.camera2.CameraDevice.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; method @RequiresPermission(android.Manifest.permission.CAMERA) public void openCamera(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraDevice.StateCallback) throws android.hardware.camera2.CameraAccessException; method public void registerAvailabilityCallback(@NonNull android.hardware.camera2.CameraManager.AvailabilityCallback, @Nullable android.os.Handler); @@ -16854,6 +17372,8 @@ package android.hardware.camera2 { method public void onCameraAccessPrioritiesChanged(); method public void onCameraAvailable(@NonNull String); method public void onCameraUnavailable(@NonNull String); + method public void onPhysicalCameraAvailable(@NonNull String, @NonNull String); + method public void onPhysicalCameraUnavailable(@NonNull String, @NonNull String); } public abstract static class CameraManager.TorchCallback { @@ -16937,9 +17457,13 @@ package android.hardware.camera2 { field public static final int CONTROL_EFFECT_MODE_SEPIA = 4; // 0x4 field public static final int CONTROL_EFFECT_MODE_SOLARIZE = 3; // 0x3 field public static final int CONTROL_EFFECT_MODE_WHITEBOARD = 6; // 0x6 + field public static final int CONTROL_EXTENDED_SCENE_MODE_BOKEH_CONTINUOUS = 2; // 0x2 + field public static final int CONTROL_EXTENDED_SCENE_MODE_BOKEH_STILL_CAPTURE = 1; // 0x1 + field public static final int CONTROL_EXTENDED_SCENE_MODE_DISABLED = 0; // 0x0 field public static final int CONTROL_MODE_AUTO = 1; // 0x1 field public static final int CONTROL_MODE_OFF = 0; // 0x0 field public static final int CONTROL_MODE_OFF_KEEP_STATE = 3; // 0x3 + field public static final int CONTROL_MODE_USE_EXTENDED_SCENE_MODE = 4; // 0x4 field public static final int CONTROL_MODE_USE_SCENE_MODE = 2; // 0x2 field public static final int CONTROL_SCENE_MODE_ACTION = 2; // 0x2 field public static final int CONTROL_SCENE_MODE_BARCODE = 16; // 0x10 @@ -16995,6 +17519,7 @@ package android.hardware.camera2 { field public static final int LENS_OPTICAL_STABILIZATION_MODE_ON = 1; // 0x1 field public static final int LENS_POSE_REFERENCE_GYROSCOPE = 1; // 0x1 field public static final int LENS_POSE_REFERENCE_PRIMARY_CAMERA = 0; // 0x0 + field public static final int LENS_POSE_REFERENCE_UNDEFINED = 2; // 0x2 field public static final int LENS_STATE_MOVING = 1; // 0x1 field public static final int LENS_STATE_STATIONARY = 0; // 0x0 field public static final int LOGICAL_MULTI_CAMERA_SENSOR_SYNC_TYPE_APPROXIMATE = 0; // 0x0 @@ -17013,10 +17538,12 @@ package android.hardware.camera2 { field public static final int REQUEST_AVAILABLE_CAPABILITIES_MANUAL_SENSOR = 1; // 0x1 field public static final int REQUEST_AVAILABLE_CAPABILITIES_MONOCHROME = 12; // 0xc field public static final int REQUEST_AVAILABLE_CAPABILITIES_MOTION_TRACKING = 10; // 0xa + field public static final int REQUEST_AVAILABLE_CAPABILITIES_OFFLINE_PROCESSING = 15; // 0xf field public static final int REQUEST_AVAILABLE_CAPABILITIES_PRIVATE_REPROCESSING = 4; // 0x4 field public static final int REQUEST_AVAILABLE_CAPABILITIES_RAW = 3; // 0x3 field public static final int REQUEST_AVAILABLE_CAPABILITIES_READ_SENSOR_SETTINGS = 5; // 0x5 field public static final int REQUEST_AVAILABLE_CAPABILITIES_SECURE_IMAGE_DATA = 13; // 0xd + field public static final int REQUEST_AVAILABLE_CAPABILITIES_SYSTEM_CAMERA = 14; // 0xe field public static final int REQUEST_AVAILABLE_CAPABILITIES_YUV_REPROCESSING = 7; // 0x7 field public static final int SCALER_CROPPING_TYPE_CENTER_ONLY = 0; // 0x0 field public static final int SCALER_CROPPING_TYPE_FREEFORM = 1; // 0x1 @@ -17078,6 +17605,20 @@ package android.hardware.camera2 { field public static final int TONEMAP_PRESET_CURVE_SRGB = 0; // 0x0 } + public abstract class CameraOfflineSession extends android.hardware.camera2.CameraCaptureSession { + ctor public CameraOfflineSession(); + } + + public abstract static class CameraOfflineSession.CameraOfflineSessionCallback { + ctor public CameraOfflineSession.CameraOfflineSessionCallback(); + method public abstract void onClosed(@NonNull android.hardware.camera2.CameraOfflineSession); + method public abstract void onError(@NonNull android.hardware.camera2.CameraOfflineSession, int); + method public abstract void onIdle(@NonNull android.hardware.camera2.CameraOfflineSession); + method public abstract void onReady(@NonNull android.hardware.camera2.CameraOfflineSession); + method public abstract void onSwitchFailed(@NonNull android.hardware.camera2.CameraOfflineSession); + field public static final int STATUS_INTERNAL_ERROR = 0; // 0x0 + } + public class CaptureFailure { method public long getFrameNumber(); method @Nullable public String getPhysicalCameraId(); @@ -17117,10 +17658,12 @@ package android.hardware.camera2 { field @NonNull public static final android.hardware.camera2.CaptureRequest.Key<java.lang.Integer> CONTROL_CAPTURE_INTENT; field @NonNull public static final android.hardware.camera2.CaptureRequest.Key<java.lang.Integer> CONTROL_EFFECT_MODE; field @NonNull public static final android.hardware.camera2.CaptureRequest.Key<java.lang.Boolean> CONTROL_ENABLE_ZSL; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key<java.lang.Integer> CONTROL_EXTENDED_SCENE_MODE; field @NonNull public static final android.hardware.camera2.CaptureRequest.Key<java.lang.Integer> CONTROL_MODE; field @NonNull public static final android.hardware.camera2.CaptureRequest.Key<java.lang.Integer> CONTROL_POST_RAW_SENSITIVITY_BOOST; field @NonNull public static final android.hardware.camera2.CaptureRequest.Key<java.lang.Integer> CONTROL_SCENE_MODE; field @NonNull public static final android.hardware.camera2.CaptureRequest.Key<java.lang.Integer> CONTROL_VIDEO_STABILIZATION_MODE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key<java.lang.Float> CONTROL_ZOOM_RATIO; field @NonNull public static final android.os.Parcelable.Creator<android.hardware.camera2.CaptureRequest> CREATOR; field @NonNull public static final android.hardware.camera2.CaptureRequest.Key<java.lang.Integer> DISTORTION_CORRECTION_MODE; field @NonNull public static final android.hardware.camera2.CaptureRequest.Key<java.lang.Integer> EDGE_MODE; @@ -17202,10 +17745,12 @@ package android.hardware.camera2 { field @NonNull public static final android.hardware.camera2.CaptureResult.Key<java.lang.Integer> CONTROL_CAPTURE_INTENT; field @NonNull public static final android.hardware.camera2.CaptureResult.Key<java.lang.Integer> CONTROL_EFFECT_MODE; field @NonNull public static final android.hardware.camera2.CaptureResult.Key<java.lang.Boolean> CONTROL_ENABLE_ZSL; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key<java.lang.Integer> CONTROL_EXTENDED_SCENE_MODE; field @NonNull public static final android.hardware.camera2.CaptureResult.Key<java.lang.Integer> CONTROL_MODE; field @NonNull public static final android.hardware.camera2.CaptureResult.Key<java.lang.Integer> CONTROL_POST_RAW_SENSITIVITY_BOOST; field @NonNull public static final android.hardware.camera2.CaptureResult.Key<java.lang.Integer> CONTROL_SCENE_MODE; field @NonNull public static final android.hardware.camera2.CaptureResult.Key<java.lang.Integer> CONTROL_VIDEO_STABILIZATION_MODE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key<java.lang.Float> CONTROL_ZOOM_RATIO; field @NonNull public static final android.hardware.camera2.CaptureResult.Key<java.lang.Integer> DISTORTION_CORRECTION_MODE; field @NonNull public static final android.hardware.camera2.CaptureResult.Key<java.lang.Integer> EDGE_MODE; field @NonNull public static final android.hardware.camera2.CaptureResult.Key<java.lang.Integer> FLASH_MODE; @@ -17295,6 +17840,12 @@ package android.hardware.camera2.params { field public static final int COUNT = 4; // 0x4 } + public final class Capability { + method @NonNull public android.util.Size getMaxStreamingSize(); + method public int getMode(); + method @NonNull public android.util.Range<java.lang.Float> getZoomRatioRange(); + } + public final class ColorSpaceTransform { ctor public ColorSpaceTransform(android.util.Rational[]); ctor public ColorSpaceTransform(int[]); @@ -17579,6 +18130,7 @@ package android.hardware.input { method public int[] getInputDeviceIds(); method public void registerInputDeviceListener(android.hardware.input.InputManager.InputDeviceListener, android.os.Handler); method public void unregisterInputDeviceListener(android.hardware.input.InputManager.InputDeviceListener); + method @Nullable public android.view.VerifiedInputEvent verifyInputEvent(@NonNull android.view.InputEvent); field public static final String ACTION_QUERY_KEYBOARD_LAYOUTS = "android.hardware.input.action.QUERY_KEYBOARD_LAYOUTS"; field public static final String META_DATA_KEYBOARD_LAYOUTS = "android.hardware.input.metadata.KEYBOARD_LAYOUTS"; } @@ -17954,6 +18506,7 @@ package android.icu.lang { field public static final int RIGHT = 7; // 0x7 field public static final int TOP = 8; // 0x8 field public static final int TOP_AND_BOTTOM = 9; // 0x9 + field public static final int TOP_AND_BOTTOM_AND_LEFT = 15; // 0xf field public static final int TOP_AND_BOTTOM_AND_RIGHT = 10; // 0xa field public static final int TOP_AND_LEFT = 11; // 0xb field public static final int TOP_AND_LEFT_AND_RIGHT = 12; // 0xc @@ -18276,6 +18829,8 @@ package android.icu.lang { field public static final int CHEROKEE_SUPPLEMENT_ID = 255; // 0xff field public static final android.icu.lang.UCharacter.UnicodeBlock CHESS_SYMBOLS; field public static final int CHESS_SYMBOLS_ID = 281; // 0x119 + field public static final android.icu.lang.UCharacter.UnicodeBlock CHORASMIAN; + field public static final int CHORASMIAN_ID = 301; // 0x12d field public static final android.icu.lang.UCharacter.UnicodeBlock CJK_COMPATIBILITY; field public static final android.icu.lang.UCharacter.UnicodeBlock CJK_COMPATIBILITY_FORMS; field public static final int CJK_COMPATIBILITY_FORMS_ID = 83; // 0x53 @@ -18303,6 +18858,8 @@ package android.icu.lang { field public static final int CJK_UNIFIED_IDEOGRAPHS_EXTENSION_E_ID = 256; // 0x100 field public static final android.icu.lang.UCharacter.UnicodeBlock CJK_UNIFIED_IDEOGRAPHS_EXTENSION_F; field public static final int CJK_UNIFIED_IDEOGRAPHS_EXTENSION_F_ID = 274; // 0x112 + field public static final android.icu.lang.UCharacter.UnicodeBlock CJK_UNIFIED_IDEOGRAPHS_EXTENSION_G; + field public static final int CJK_UNIFIED_IDEOGRAPHS_EXTENSION_G_ID = 302; // 0x12e field public static final int CJK_UNIFIED_IDEOGRAPHS_ID = 71; // 0x47 field public static final android.icu.lang.UCharacter.UnicodeBlock COMBINING_DIACRITICAL_MARKS; field public static final android.icu.lang.UCharacter.UnicodeBlock COMBINING_DIACRITICAL_MARKS_EXTENDED; @@ -18352,6 +18909,8 @@ package android.icu.lang { field public static final int DEVANAGARI_ID = 15; // 0xf field public static final android.icu.lang.UCharacter.UnicodeBlock DINGBATS; field public static final int DINGBATS_ID = 56; // 0x38 + field public static final android.icu.lang.UCharacter.UnicodeBlock DIVES_AKURU; + field public static final int DIVES_AKURU_ID = 303; // 0x12f field public static final android.icu.lang.UCharacter.UnicodeBlock DOGRA; field public static final int DOGRA_ID = 282; // 0x11a field public static final android.icu.lang.UCharacter.UnicodeBlock DOMINO_TILES; @@ -18362,8 +18921,12 @@ package android.icu.lang { field public static final int EARLY_DYNASTIC_CUNEIFORM_ID = 257; // 0x101 field public static final android.icu.lang.UCharacter.UnicodeBlock EGYPTIAN_HIEROGLYPHS; field public static final int EGYPTIAN_HIEROGLYPHS_ID = 194; // 0xc2 + field public static final android.icu.lang.UCharacter.UnicodeBlock EGYPTIAN_HIEROGLYPH_FORMAT_CONTROLS; + field public static final int EGYPTIAN_HIEROGLYPH_FORMAT_CONTROLS_ID = 292; // 0x124 field public static final android.icu.lang.UCharacter.UnicodeBlock ELBASAN; field public static final int ELBASAN_ID = 226; // 0xe2 + field public static final android.icu.lang.UCharacter.UnicodeBlock ELYMAIC; + field public static final int ELYMAIC_ID = 293; // 0x125 field public static final android.icu.lang.UCharacter.UnicodeBlock EMOTICONS; field public static final int EMOTICONS_ID = 206; // 0xce field public static final android.icu.lang.UCharacter.UnicodeBlock ENCLOSED_ALPHANUMERICS; @@ -18476,6 +19039,8 @@ package android.icu.lang { field public static final int KAYAH_LI_ID = 162; // 0xa2 field public static final android.icu.lang.UCharacter.UnicodeBlock KHAROSHTHI; field public static final int KHAROSHTHI_ID = 137; // 0x89 + field public static final android.icu.lang.UCharacter.UnicodeBlock KHITAN_SMALL_SCRIPT; + field public static final int KHITAN_SMALL_SCRIPT_ID = 304; // 0x130 field public static final android.icu.lang.UCharacter.UnicodeBlock KHMER; field public static final int KHMER_ID = 36; // 0x24 field public static final android.icu.lang.UCharacter.UnicodeBlock KHMER_SYMBOLS; @@ -18514,6 +19079,8 @@ package android.icu.lang { field public static final int LINEAR_B_SYLLABARY_ID = 117; // 0x75 field public static final android.icu.lang.UCharacter.UnicodeBlock LISU; field public static final int LISU_ID = 176; // 0xb0 + field public static final android.icu.lang.UCharacter.UnicodeBlock LISU_SUPPLEMENT; + field public static final int LISU_SUPPLEMENT_ID = 305; // 0x131 field public static final android.icu.lang.UCharacter.UnicodeBlock LOW_SURROGATES; field public static final int LOW_SURROGATES_ID = 77; // 0x4d field public static final android.icu.lang.UCharacter.UnicodeBlock LYCIAN; @@ -18590,6 +19157,8 @@ package android.icu.lang { field public static final int MYANMAR_ID = 28; // 0x1c field public static final android.icu.lang.UCharacter.UnicodeBlock NABATAEAN; field public static final int NABATAEAN_ID = 239; // 0xef + field public static final android.icu.lang.UCharacter.UnicodeBlock NANDINAGARI; + field public static final int NANDINAGARI_ID = 294; // 0x126 field public static final android.icu.lang.UCharacter.UnicodeBlock NEWA; field public static final int NEWA_ID = 270; // 0x10e field public static final android.icu.lang.UCharacter.UnicodeBlock NEW_TAI_LUE; @@ -18601,6 +19170,8 @@ package android.icu.lang { field public static final int NUMBER_FORMS_ID = 45; // 0x2d field public static final android.icu.lang.UCharacter.UnicodeBlock NUSHU; field public static final int NUSHU_ID = 277; // 0x115 + field public static final android.icu.lang.UCharacter.UnicodeBlock NYIAKENG_PUACHUE_HMONG; + field public static final int NYIAKENG_PUACHUE_HMONG_ID = 295; // 0x127 field public static final android.icu.lang.UCharacter.UnicodeBlock OGHAM; field public static final int OGHAM_ID = 34; // 0x22 field public static final android.icu.lang.UCharacter.UnicodeBlock OLD_HUNGARIAN; @@ -18631,6 +19202,8 @@ package android.icu.lang { field public static final int OSAGE_ID = 271; // 0x10f field public static final android.icu.lang.UCharacter.UnicodeBlock OSMANYA; field public static final int OSMANYA_ID = 122; // 0x7a + field public static final android.icu.lang.UCharacter.UnicodeBlock OTTOMAN_SIYAQ_NUMBERS; + field public static final int OTTOMAN_SIYAQ_NUMBERS_ID = 296; // 0x128 field public static final android.icu.lang.UCharacter.UnicodeBlock PAHAWH_HMONG; field public static final int PAHAWH_HMONG_ID = 243; // 0xf3 field public static final android.icu.lang.UCharacter.UnicodeBlock PALMYRENE; @@ -18679,6 +19252,8 @@ package android.icu.lang { field public static final int SINHALA_ID = 24; // 0x18 field public static final android.icu.lang.UCharacter.UnicodeBlock SMALL_FORM_VARIANTS; field public static final int SMALL_FORM_VARIANTS_ID = 84; // 0x54 + field public static final android.icu.lang.UCharacter.UnicodeBlock SMALL_KANA_EXTENSION; + field public static final int SMALL_KANA_EXTENSION_ID = 297; // 0x129 field public static final android.icu.lang.UCharacter.UnicodeBlock SOGDIAN; field public static final int SOGDIAN_ID = 291; // 0x123 field public static final android.icu.lang.UCharacter.UnicodeBlock SORA_SOMPENG; @@ -18715,6 +19290,10 @@ package android.icu.lang { field public static final int SUTTON_SIGNWRITING_ID = 262; // 0x106 field public static final android.icu.lang.UCharacter.UnicodeBlock SYLOTI_NAGRI; field public static final int SYLOTI_NAGRI_ID = 143; // 0x8f + field public static final android.icu.lang.UCharacter.UnicodeBlock SYMBOLS_AND_PICTOGRAPHS_EXTENDED_A; + field public static final int SYMBOLS_AND_PICTOGRAPHS_EXTENDED_A_ID = 298; // 0x12a + field public static final android.icu.lang.UCharacter.UnicodeBlock SYMBOLS_FOR_LEGACY_COMPUTING; + field public static final int SYMBOLS_FOR_LEGACY_COMPUTING_ID = 306; // 0x132 field public static final android.icu.lang.UCharacter.UnicodeBlock SYRIAC; field public static final int SYRIAC_ID = 13; // 0xd field public static final android.icu.lang.UCharacter.UnicodeBlock SYRIAC_SUPPLEMENT; @@ -18737,10 +19316,14 @@ package android.icu.lang { field public static final int TAKRI_ID = 220; // 0xdc field public static final android.icu.lang.UCharacter.UnicodeBlock TAMIL; field public static final int TAMIL_ID = 20; // 0x14 + field public static final android.icu.lang.UCharacter.UnicodeBlock TAMIL_SUPPLEMENT; + field public static final int TAMIL_SUPPLEMENT_ID = 299; // 0x12b field public static final android.icu.lang.UCharacter.UnicodeBlock TANGUT; field public static final android.icu.lang.UCharacter.UnicodeBlock TANGUT_COMPONENTS; field public static final int TANGUT_COMPONENTS_ID = 273; // 0x111 field public static final int TANGUT_ID = 272; // 0x110 + field public static final android.icu.lang.UCharacter.UnicodeBlock TANGUT_SUPPLEMENT; + field public static final int TANGUT_SUPPLEMENT_ID = 307; // 0x133 field public static final android.icu.lang.UCharacter.UnicodeBlock TELUGU; field public static final int TELUGU_ID = 21; // 0x15 field public static final android.icu.lang.UCharacter.UnicodeBlock THAANA; @@ -18771,8 +19354,12 @@ package android.icu.lang { field public static final int VEDIC_EXTENSIONS_ID = 175; // 0xaf field public static final android.icu.lang.UCharacter.UnicodeBlock VERTICAL_FORMS; field public static final int VERTICAL_FORMS_ID = 145; // 0x91 + field public static final android.icu.lang.UCharacter.UnicodeBlock WANCHO; + field public static final int WANCHO_ID = 300; // 0x12c field public static final android.icu.lang.UCharacter.UnicodeBlock WARANG_CITI; field public static final int WARANG_CITI_ID = 252; // 0xfc + field public static final android.icu.lang.UCharacter.UnicodeBlock YEZIDI; + field public static final int YEZIDI_ID = 308; // 0x134 field public static final android.icu.lang.UCharacter.UnicodeBlock YIJING_HEXAGRAM_SYMBOLS; field public static final int YIJING_HEXAGRAM_SYMBOLS_ID = 116; // 0x74 field public static final android.icu.lang.UCharacter.UnicodeBlock YI_RADICALS; @@ -19069,6 +19656,7 @@ package android.icu.lang { field public static final int CHAKMA = 118; // 0x76 field public static final int CHAM = 66; // 0x42 field public static final int CHEROKEE = 6; // 0x6 + field public static final int CHORASMIAN = 189; // 0xbd field public static final int CIRTH = 67; // 0x43 field public static final int COMMON = 0; // 0x0 field public static final int COPTIC = 7; // 0x7 @@ -19078,11 +19666,13 @@ package android.icu.lang { field public static final int DEMOTIC_EGYPTIAN = 69; // 0x45 field public static final int DESERET = 9; // 0x9 field public static final int DEVANAGARI = 10; // 0xa + field public static final int DIVES_AKURU = 190; // 0xbe field public static final int DOGRA = 178; // 0xb2 field public static final int DUPLOYAN = 135; // 0x87 field public static final int EASTERN_SYRIAC = 97; // 0x61 field public static final int EGYPTIAN_HIEROGLYPHS = 71; // 0x47 field public static final int ELBASAN = 136; // 0x88 + field public static final int ELYMAIC = 185; // 0xb9 field public static final int ESTRANGELO_SYRIAC = 95; // 0x5f field public static final int ETHIOPIC = 11; // 0xb field public static final int GEORGIAN = 12; // 0xc @@ -19118,6 +19708,7 @@ package android.icu.lang { field public static final int KATAKANA_OR_HIRAGANA = 54; // 0x36 field public static final int KAYAH_LI = 79; // 0x4f field public static final int KHAROSHTHI = 57; // 0x39 + field public static final int KHITAN_SMALL_SCRIPT = 191; // 0xbf field public static final int KHMER = 23; // 0x17 field public static final int KHOJKI = 157; // 0x9d field public static final int KHUDAWADI = 145; // 0x91 @@ -19162,10 +19753,12 @@ package android.icu.lang { field public static final int MYANMAR = 28; // 0x1c field public static final int NABATAEAN = 143; // 0x8f field public static final int NAKHI_GEBA = 132; // 0x84 + field public static final int NANDINAGARI = 187; // 0xbb field public static final int NEWA = 170; // 0xaa field public static final int NEW_TAI_LUE = 59; // 0x3b field public static final int NKO = 87; // 0x57 field public static final int NUSHU = 150; // 0x96 + field public static final int NYIAKENG_PUACHUE_HMONG = 186; // 0xba field public static final int OGHAM = 29; // 0x1d field public static final int OLD_CHURCH_SLAVONIC_CYRILLIC = 68; // 0x44 field public static final int OLD_HUNGARIAN = 76; // 0x4c @@ -19229,9 +19822,11 @@ package android.icu.lang { field public static final int UNWRITTEN_LANGUAGES = 102; // 0x66 field public static final int VAI = 99; // 0x63 field public static final int VISIBLE_SPEECH = 100; // 0x64 + field public static final int WANCHO = 188; // 0xbc field public static final int WARANG_CITI = 146; // 0x92 field public static final int WESTERN_SYRIAC = 96; // 0x60 field public static final int WOLEAI = 155; // 0x9b + field public static final int YEZIDI = 192; // 0xc0 field public static final int YI = 41; // 0x29 field public static final int ZANABAZAR_SQUARE = 177; // 0xb1 } @@ -19349,6 +19944,195 @@ package android.icu.math { } +package android.icu.number { + + public class CompactNotation extends android.icu.number.Notation { + } + + public abstract class CurrencyPrecision extends android.icu.number.Precision { + method public android.icu.number.Precision withCurrency(android.icu.util.Currency); + } + + public class FormattedNumber implements java.lang.CharSequence { + method public char charAt(int); + method public int length(); + method public CharSequence subSequence(int, int); + method public java.math.BigDecimal toBigDecimal(); + method public java.text.AttributedCharacterIterator toCharacterIterator(); + } + + public class FormattedNumberRange implements java.lang.CharSequence { + method public char charAt(int); + method public java.math.BigDecimal getFirstBigDecimal(); + method public android.icu.number.NumberRangeFormatter.RangeIdentityResult getIdentityResult(); + method public java.math.BigDecimal getSecondBigDecimal(); + method public int length(); + method public CharSequence subSequence(int, int); + method public java.text.AttributedCharacterIterator toCharacterIterator(); + } + + public abstract class FractionPrecision extends android.icu.number.Precision { + method public android.icu.number.Precision withMaxDigits(int); + method public android.icu.number.Precision withMinDigits(int); + } + + public class IntegerWidth { + method public android.icu.number.IntegerWidth truncateAt(int); + method public static android.icu.number.IntegerWidth zeroFillTo(int); + } + + public class LocalizedNumberFormatter extends android.icu.number.NumberFormatterSettings<android.icu.number.LocalizedNumberFormatter> { + method public android.icu.number.FormattedNumber format(long); + method public android.icu.number.FormattedNumber format(double); + method public android.icu.number.FormattedNumber format(Number); + method public android.icu.number.FormattedNumber format(android.icu.util.Measure); + method public java.text.Format toFormat(); + } + + public class LocalizedNumberRangeFormatter extends android.icu.number.NumberRangeFormatterSettings<android.icu.number.LocalizedNumberRangeFormatter> { + method public android.icu.number.FormattedNumberRange formatRange(int, int); + method public android.icu.number.FormattedNumberRange formatRange(double, double); + method public android.icu.number.FormattedNumberRange formatRange(Number, Number); + } + + public class Notation { + method public static android.icu.number.CompactNotation compactLong(); + method public static android.icu.number.CompactNotation compactShort(); + method public static android.icu.number.ScientificNotation engineering(); + method public static android.icu.number.ScientificNotation scientific(); + method public static android.icu.number.SimpleNotation simple(); + } + + public final class NumberFormatter { + method public static android.icu.number.UnlocalizedNumberFormatter with(); + method public static android.icu.number.LocalizedNumberFormatter withLocale(java.util.Locale); + method public static android.icu.number.LocalizedNumberFormatter withLocale(android.icu.util.ULocale); + } + + public enum NumberFormatter.DecimalSeparatorDisplay { + enum_constant public static final android.icu.number.NumberFormatter.DecimalSeparatorDisplay ALWAYS; + enum_constant public static final android.icu.number.NumberFormatter.DecimalSeparatorDisplay AUTO; + } + + public enum NumberFormatter.GroupingStrategy { + enum_constant public static final android.icu.number.NumberFormatter.GroupingStrategy AUTO; + enum_constant public static final android.icu.number.NumberFormatter.GroupingStrategy MIN2; + enum_constant public static final android.icu.number.NumberFormatter.GroupingStrategy OFF; + enum_constant public static final android.icu.number.NumberFormatter.GroupingStrategy ON_ALIGNED; + enum_constant public static final android.icu.number.NumberFormatter.GroupingStrategy THOUSANDS; + } + + public enum NumberFormatter.SignDisplay { + enum_constant public static final android.icu.number.NumberFormatter.SignDisplay ACCOUNTING; + enum_constant public static final android.icu.number.NumberFormatter.SignDisplay ACCOUNTING_ALWAYS; + enum_constant public static final android.icu.number.NumberFormatter.SignDisplay ACCOUNTING_EXCEPT_ZERO; + enum_constant public static final android.icu.number.NumberFormatter.SignDisplay ALWAYS; + enum_constant public static final android.icu.number.NumberFormatter.SignDisplay AUTO; + enum_constant public static final android.icu.number.NumberFormatter.SignDisplay EXCEPT_ZERO; + enum_constant public static final android.icu.number.NumberFormatter.SignDisplay NEVER; + } + + public enum NumberFormatter.UnitWidth { + enum_constant public static final android.icu.number.NumberFormatter.UnitWidth FULL_NAME; + enum_constant public static final android.icu.number.NumberFormatter.UnitWidth HIDDEN; + enum_constant public static final android.icu.number.NumberFormatter.UnitWidth ISO_CODE; + enum_constant public static final android.icu.number.NumberFormatter.UnitWidth NARROW; + enum_constant public static final android.icu.number.NumberFormatter.UnitWidth SHORT; + } + + public abstract class NumberFormatterSettings<T extends android.icu.number.NumberFormatterSettings<?>> { + method public T decimal(android.icu.number.NumberFormatter.DecimalSeparatorDisplay); + method public T grouping(android.icu.number.NumberFormatter.GroupingStrategy); + method public T integerWidth(android.icu.number.IntegerWidth); + method public T notation(android.icu.number.Notation); + method public T perUnit(android.icu.util.MeasureUnit); + method public T precision(android.icu.number.Precision); + method public T roundingMode(java.math.RoundingMode); + method public T scale(android.icu.number.Scale); + method public T sign(android.icu.number.NumberFormatter.SignDisplay); + method public T symbols(android.icu.text.DecimalFormatSymbols); + method public T symbols(android.icu.text.NumberingSystem); + method public T unit(android.icu.util.MeasureUnit); + method public T unitWidth(android.icu.number.NumberFormatter.UnitWidth); + } + + public abstract class NumberRangeFormatter { + method public static android.icu.number.UnlocalizedNumberRangeFormatter with(); + method public static android.icu.number.LocalizedNumberRangeFormatter withLocale(java.util.Locale); + method public static android.icu.number.LocalizedNumberRangeFormatter withLocale(android.icu.util.ULocale); + } + + public enum NumberRangeFormatter.RangeCollapse { + enum_constant public static final android.icu.number.NumberRangeFormatter.RangeCollapse ALL; + enum_constant public static final android.icu.number.NumberRangeFormatter.RangeCollapse AUTO; + enum_constant public static final android.icu.number.NumberRangeFormatter.RangeCollapse NONE; + enum_constant public static final android.icu.number.NumberRangeFormatter.RangeCollapse UNIT; + } + + public enum NumberRangeFormatter.RangeIdentityFallback { + enum_constant public static final android.icu.number.NumberRangeFormatter.RangeIdentityFallback APPROXIMATELY; + enum_constant public static final android.icu.number.NumberRangeFormatter.RangeIdentityFallback APPROXIMATELY_OR_SINGLE_VALUE; + enum_constant public static final android.icu.number.NumberRangeFormatter.RangeIdentityFallback RANGE; + enum_constant public static final android.icu.number.NumberRangeFormatter.RangeIdentityFallback SINGLE_VALUE; + } + + public enum NumberRangeFormatter.RangeIdentityResult { + enum_constant public static final android.icu.number.NumberRangeFormatter.RangeIdentityResult EQUAL_AFTER_ROUNDING; + enum_constant public static final android.icu.number.NumberRangeFormatter.RangeIdentityResult EQUAL_BEFORE_ROUNDING; + enum_constant public static final android.icu.number.NumberRangeFormatter.RangeIdentityResult NOT_EQUAL; + } + + public abstract class NumberRangeFormatterSettings<T extends android.icu.number.NumberRangeFormatterSettings<?>> { + method public T collapse(android.icu.number.NumberRangeFormatter.RangeCollapse); + method public T identityFallback(android.icu.number.NumberRangeFormatter.RangeIdentityFallback); + method public T numberFormatterBoth(android.icu.number.UnlocalizedNumberFormatter); + method public T numberFormatterFirst(android.icu.number.UnlocalizedNumberFormatter); + method public T numberFormatterSecond(android.icu.number.UnlocalizedNumberFormatter); + } + + public abstract class Precision { + method public static android.icu.number.CurrencyPrecision currency(android.icu.util.Currency.CurrencyUsage); + method public static android.icu.number.FractionPrecision fixedFraction(int); + method public static android.icu.number.Precision fixedSignificantDigits(int); + method public static android.icu.number.Precision increment(java.math.BigDecimal); + method public static android.icu.number.FractionPrecision integer(); + method public static android.icu.number.FractionPrecision maxFraction(int); + method public static android.icu.number.Precision maxSignificantDigits(int); + method public static android.icu.number.FractionPrecision minFraction(int); + method public static android.icu.number.FractionPrecision minMaxFraction(int, int); + method public static android.icu.number.Precision minMaxSignificantDigits(int, int); + method public static android.icu.number.Precision minSignificantDigits(int); + method public static android.icu.number.Precision unlimited(); + } + + public class Scale { + method public static android.icu.number.Scale byBigDecimal(java.math.BigDecimal); + method public static android.icu.number.Scale byDouble(double); + method public static android.icu.number.Scale byDoubleAndPowerOfTen(double, int); + method public static android.icu.number.Scale none(); + method public static android.icu.number.Scale powerOfTen(int); + } + + public class ScientificNotation extends android.icu.number.Notation { + method public android.icu.number.ScientificNotation withExponentSignDisplay(android.icu.number.NumberFormatter.SignDisplay); + method public android.icu.number.ScientificNotation withMinExponentDigits(int); + } + + public class SimpleNotation extends android.icu.number.Notation { + } + + public class UnlocalizedNumberFormatter extends android.icu.number.NumberFormatterSettings<android.icu.number.UnlocalizedNumberFormatter> { + method public android.icu.number.LocalizedNumberFormatter locale(java.util.Locale); + method public android.icu.number.LocalizedNumberFormatter locale(android.icu.util.ULocale); + } + + public class UnlocalizedNumberRangeFormatter extends android.icu.number.NumberRangeFormatterSettings<android.icu.number.UnlocalizedNumberRangeFormatter> { + method public android.icu.number.LocalizedNumberRangeFormatter locale(java.util.Locale); + method public android.icu.number.LocalizedNumberRangeFormatter locale(android.icu.util.ULocale); + } + +} + package android.icu.text { public final class AlphabeticIndex<V> implements java.lang.Iterable<android.icu.text.AlphabeticIndex.Bucket<V>> { @@ -20017,6 +20801,7 @@ package android.icu.text { method public String getDateTimeFormat(); method public String getDecimal(); method public static android.icu.text.DateTimePatternGenerator getEmptyInstance(); + method public String getFieldDisplayName(int, android.icu.text.DateTimePatternGenerator.DisplayWidth); method public static android.icu.text.DateTimePatternGenerator getInstance(); method public static android.icu.text.DateTimePatternGenerator getInstance(android.icu.util.ULocale); method public static android.icu.text.DateTimePatternGenerator getInstance(java.util.Locale); @@ -20050,6 +20835,12 @@ package android.icu.text { field public static final int ZONE = 15; // 0xf } + public enum DateTimePatternGenerator.DisplayWidth { + enum_constant public static final android.icu.text.DateTimePatternGenerator.DisplayWidth ABBREVIATED; + enum_constant public static final android.icu.text.DateTimePatternGenerator.DisplayWidth NARROW; + enum_constant public static final android.icu.text.DateTimePatternGenerator.DisplayWidth WIDE; + } + public static final class DateTimePatternGenerator.PatternInfo { ctor public DateTimePatternGenerator.PatternInfo(); field public static final int BASE_CONFLICT = 1; // 0x1 @@ -21604,6 +22395,7 @@ package android.icu.util { method public static boolean isAvailable(String, java.util.Date, java.util.Date); method public java.util.Currency toJavaCurrency(); field public static final int LONG_NAME = 1; // 0x1 + field public static final int NARROW_SYMBOL_NAME = 3; // 0x3 field public static final int PLURAL_LONG_NAME = 2; // 0x2 field public static final int SYMBOL_NAME = 0; // 0x0 } @@ -21804,9 +22596,9 @@ package android.icu.util { ctor public JapaneseCalendar(int, int, int, int); ctor public JapaneseCalendar(int, int, int); ctor public JapaneseCalendar(int, int, int, int, int, int); - field @Deprecated public static final int CURRENT_ERA; field public static final int HEISEI; field public static final int MEIJI; + field public static final int REIWA; field public static final int SHOWA; field public static final int TAISHO; } @@ -21855,6 +22647,7 @@ package android.icu.util { field public static final android.icu.util.MeasureUnit ARC_MINUTE; field public static final android.icu.util.MeasureUnit ARC_SECOND; field public static final android.icu.util.MeasureUnit ASTRONOMICAL_UNIT; + field public static final android.icu.util.MeasureUnit ATMOSPHERE; field public static final android.icu.util.MeasureUnit BIT; field public static final android.icu.util.MeasureUnit BUSHEL; field public static final android.icu.util.MeasureUnit BYTE; @@ -21956,6 +22749,9 @@ package android.icu.util { field public static final android.icu.util.MeasureUnit OUNCE_TROY; field public static final android.icu.util.MeasureUnit PARSEC; field public static final android.icu.util.MeasureUnit PART_PER_MILLION; + field public static final android.icu.util.MeasureUnit PERCENT; + field public static final android.icu.util.MeasureUnit PERMILLE; + field public static final android.icu.util.MeasureUnit PETABYTE; field public static final android.icu.util.MeasureUnit PICOMETER; field public static final android.icu.util.MeasureUnit PINT; field public static final android.icu.util.MeasureUnit PINT_METRIC; @@ -22282,6 +23078,9 @@ package android.icu.util { field public static final android.icu.util.VersionInfo UCOL_RUNTIME_VERSION; field public static final android.icu.util.VersionInfo UNICODE_10_0; field public static final android.icu.util.VersionInfo UNICODE_11_0; + field public static final android.icu.util.VersionInfo UNICODE_12_0; + field public static final android.icu.util.VersionInfo UNICODE_12_1; + field public static final android.icu.util.VersionInfo UNICODE_13_0; field public static final android.icu.util.VersionInfo UNICODE_1_0; field public static final android.icu.util.VersionInfo UNICODE_1_0_1; field public static final android.icu.util.VersionInfo UNICODE_1_1_0; @@ -22379,6 +23178,7 @@ package android.inputmethodservice { method public void onConfigureWindow(android.view.Window, boolean, boolean); method public android.view.View onCreateCandidatesView(); method public android.view.View onCreateExtractTextView(); + method @Nullable public android.view.inputmethod.InlineSuggestionsRequest onCreateInlineSuggestionsRequest(@NonNull android.os.Bundle); method public android.inputmethodservice.AbstractInputMethodService.AbstractInputMethodImpl onCreateInputMethodInterface(); method public android.inputmethodservice.AbstractInputMethodService.AbstractInputMethodSessionImpl onCreateInputMethodSessionInterface(); method public android.view.View onCreateInputView(); @@ -22395,6 +23195,7 @@ package android.inputmethodservice { method public void onFinishInput(); method public void onFinishInputView(boolean); method public void onInitializeInterface(); + method public boolean onInlineSuggestionsResponse(@NonNull android.view.inputmethod.InlineSuggestionsResponse); method public boolean onKeyDown(int, android.view.KeyEvent); method public boolean onKeyLongPress(int, android.view.KeyEvent); method public boolean onKeyMultiple(int, int, android.view.KeyEvent); @@ -22691,6 +23492,57 @@ package android.location { method public static boolean isPresent(); } + public final class GnssAntennaInfo implements android.os.Parcelable { + method public int describeContents(); + method @FloatRange(from=0.0f) public double getCarrierFrequencyMHz(); + method @NonNull public android.location.GnssAntennaInfo.PhaseCenterOffset getPhaseCenterOffset(); + method @Nullable public android.location.GnssAntennaInfo.SphericalCorrections getPhaseCenterVariationCorrections(); + method @Nullable public android.location.GnssAntennaInfo.SphericalCorrections getSignalGainCorrections(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.location.GnssAntennaInfo> CREATOR; + } + + public static class GnssAntennaInfo.Builder { + ctor public GnssAntennaInfo.Builder(); + method @NonNull public android.location.GnssAntennaInfo build(); + method @NonNull public android.location.GnssAntennaInfo.Builder setCarrierFrequencyMHz(@FloatRange(from=0.0f) double); + method @NonNull public android.location.GnssAntennaInfo.Builder setPhaseCenterOffset(@NonNull android.location.GnssAntennaInfo.PhaseCenterOffset); + method @NonNull public android.location.GnssAntennaInfo.Builder setPhaseCenterVariationCorrections(@Nullable android.location.GnssAntennaInfo.SphericalCorrections); + method @NonNull public android.location.GnssAntennaInfo.Builder setSignalGainCorrections(@Nullable android.location.GnssAntennaInfo.SphericalCorrections); + } + + public static interface GnssAntennaInfo.Listener { + method public void onGnssAntennaInfoReceived(@NonNull java.util.List<android.location.GnssAntennaInfo>); + } + + public static final class GnssAntennaInfo.PhaseCenterOffset implements android.os.Parcelable { + ctor public GnssAntennaInfo.PhaseCenterOffset(double, double, double, double, double, double); + method public int describeContents(); + method @FloatRange public double getXOffsetMm(); + method @FloatRange public double getXOffsetUncertaintyMm(); + method @FloatRange public double getYOffsetMm(); + method @FloatRange public double getYOffsetUncertaintyMm(); + method @FloatRange public double getZOffsetMm(); + method @FloatRange public double getZOffsetUncertaintyMm(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.location.GnssAntennaInfo.PhaseCenterOffset> CREATOR; + } + + public static final class GnssAntennaInfo.SphericalCorrections implements android.os.Parcelable { + ctor public GnssAntennaInfo.SphericalCorrections(@NonNull double[][], @NonNull double[][]); + method public int describeContents(); + method @NonNull public double[][] getCorrectionUncertaintiesArray(); + method @NonNull public double[][] getCorrectionsArray(); + method @FloatRange(from=0.0f, to=180.0f) public double getDeltaPhi(); + method @FloatRange(from=0.0f, to=360.0f) public double getDeltaTheta(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.location.GnssAntennaInfo.SphericalCorrections> CREATOR; + } + + public final class GnssCapabilities { + method public boolean hasGnssAntennaInfo(); + } + public final class GnssClock implements android.os.Parcelable { method public int describeContents(); method public double getBiasNanos(); @@ -22702,6 +23554,9 @@ package android.location { method public long getFullBiasNanos(); method public int getHardwareClockDiscontinuityCount(); method public int getLeapSecond(); + method @FloatRange(from=0.0) public double getReferenceCarrierFrequencyHzForIsb(); + method @NonNull public String getReferenceCodeTypeForIsb(); + method public int getReferenceConstellationTypeForIsb(); method public long getTimeNanos(); method @FloatRange(from=0.0f) public double getTimeUncertaintyNanos(); method public boolean hasBiasNanos(); @@ -22712,6 +23567,9 @@ package android.location { method public boolean hasElapsedRealtimeUncertaintyNanos(); method public boolean hasFullBiasNanos(); method public boolean hasLeapSecond(); + method public boolean hasReferenceCarrierFrequencyHzForIsb(); + method public boolean hasReferenceCodeTypeForIsb(); + method public boolean hasReferenceConstellationTypeForIsb(); method public boolean hasTimeUncertaintyNanos(); method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.location.GnssClock> CREATOR; @@ -22723,28 +23581,38 @@ package android.location { method public int getAccumulatedDeltaRangeState(); method public double getAccumulatedDeltaRangeUncertaintyMeters(); method public double getAutomaticGainControlLevelDb(); + method @FloatRange(from=0, to=63) public double getBasebandCn0DbHz(); method @Deprecated public long getCarrierCycles(); method public float getCarrierFrequencyHz(); method @Deprecated public double getCarrierPhase(); method @Deprecated public double getCarrierPhaseUncertainty(); - method public double getCn0DbHz(); + method @FloatRange(from=0, to=63) public double getCn0DbHz(); method @NonNull public String getCodeType(); method public int getConstellationType(); + method public double getFullInterSignalBiasNanos(); + method @FloatRange(from=0.0) public double getFullInterSignalBiasUncertaintyNanos(); method public int getMultipathIndicator(); method public double getPseudorangeRateMetersPerSecond(); method public double getPseudorangeRateUncertaintyMetersPerSecond(); method public long getReceivedSvTimeNanos(); method public long getReceivedSvTimeUncertaintyNanos(); + method public double getSatelliteInterSignalBiasNanos(); + method @FloatRange(from=0.0) public double getSatelliteInterSignalBiasUncertaintyNanos(); method public double getSnrInDb(); method public int getState(); method public int getSvid(); method public double getTimeOffsetNanos(); method public boolean hasAutomaticGainControlLevelDb(); + method public boolean hasBasebandCn0DbHz(); method @Deprecated public boolean hasCarrierCycles(); method public boolean hasCarrierFrequencyHz(); method @Deprecated public boolean hasCarrierPhase(); method @Deprecated public boolean hasCarrierPhaseUncertainty(); method public boolean hasCodeType(); + method public boolean hasFullInterSignalBiasNanos(); + method public boolean hasFullInterSignalBiasUncertaintyNanos(); + method public boolean hasSatelliteInterSignalBiasNanos(); + method public boolean hasSatelliteInterSignalBiasUncertaintyNanos(); method public boolean hasSnrInDb(); method public void writeToParcel(android.os.Parcel, int); field public static final int ADR_STATE_CYCLE_SLIP = 4; // 0x4 @@ -22808,6 +23676,8 @@ package android.location { field public static final int STATUS_PARITY_PASSED = 1; // 0x1 field public static final int STATUS_PARITY_REBUILT = 2; // 0x2 field public static final int STATUS_UNKNOWN = 0; // 0x0 + field public static final int TYPE_BDS_CNAV1 = 1283; // 0x503 + field public static final int TYPE_BDS_CNAV2 = 1284; // 0x504 field public static final int TYPE_BDS_D1 = 1281; // 0x501 field public static final int TYPE_BDS_D2 = 1282; // 0x502 field public static final int TYPE_GAL_F = 1538; // 0x602 @@ -22817,6 +23687,9 @@ package android.location { field public static final int TYPE_GPS_L1CA = 257; // 0x101 field public static final int TYPE_GPS_L2CNAV = 258; // 0x102 field public static final int TYPE_GPS_L5CNAV = 259; // 0x103 + field public static final int TYPE_IRN_L5CA = 1793; // 0x701 + field public static final int TYPE_QZS_L1CA = 1025; // 0x401 + field public static final int TYPE_SBS = 513; // 0x201 field public static final int TYPE_UNKNOWN = 0; // 0x0 } @@ -22830,17 +23703,19 @@ package android.location { } public final class GnssStatus { - method public float getAzimuthDegrees(int); - method public float getCarrierFrequencyHz(int); - method public float getCn0DbHz(int); - method public int getConstellationType(int); - method public float getElevationDegrees(int); - method public int getSatelliteCount(); - method public int getSvid(int); - method public boolean hasAlmanacData(int); - method public boolean hasCarrierFrequencyHz(int); - method public boolean hasEphemerisData(int); - method public boolean usedInFix(int); + method @FloatRange(from=0, to=360) public float getAzimuthDegrees(@IntRange(from=0) int); + method @FloatRange(from=0, to=63) public float getBasebandCn0DbHz(@IntRange(from=0) int); + method @FloatRange(from=0) public float getCarrierFrequencyHz(@IntRange(from=0) int); + method @FloatRange(from=0, to=63) public float getCn0DbHz(@IntRange(from=0) int); + method public int getConstellationType(@IntRange(from=0) int); + method @FloatRange(from=0xffffffa6, to=90) public float getElevationDegrees(@IntRange(from=0) int); + method @IntRange(from=0) public int getSatelliteCount(); + method @IntRange(from=1, to=200) public int getSvid(@IntRange(from=0) int); + method public boolean hasAlmanacData(@IntRange(from=0) int); + method public boolean hasBasebandCn0DbHz(@IntRange(from=0) int); + method public boolean hasCarrierFrequencyHz(@IntRange(from=0) int); + method public boolean hasEphemerisData(@IntRange(from=0) int); + method public boolean usedInFix(@IntRange(from=0) int); field public static final int CONSTELLATION_BEIDOU = 5; // 0x5 field public static final int CONSTELLATION_GALILEO = 6; // 0x6 field public static final int CONSTELLATION_GLONASS = 3; // 0x3 @@ -22851,10 +23726,17 @@ package android.location { field public static final int CONSTELLATION_UNKNOWN = 0; // 0x0 } + public static final class GnssStatus.Builder { + ctor public GnssStatus.Builder(); + method @NonNull public android.location.GnssStatus.Builder addSatellite(int, @IntRange(from=1, to=200) int, @FloatRange(from=0, to=63) float, @FloatRange(from=0xffffffa6, to=90) float, @FloatRange(from=0, to=360) float, boolean, boolean, boolean, boolean, @FloatRange(from=0) float, boolean, @FloatRange(from=0, to=63) float); + method @NonNull public android.location.GnssStatus build(); + method @NonNull public android.location.GnssStatus.Builder clearSatellites(); + } + public abstract static class GnssStatus.Callback { ctor public GnssStatus.Callback(); method public void onFirstFix(int); - method public void onSatelliteStatusChanged(android.location.GnssStatus); + method public void onSatelliteStatusChanged(@NonNull android.location.GnssStatus); method public void onStarted(); method public void onStopped(); } @@ -22870,6 +23752,7 @@ package android.location { } @Deprecated public final class GpsStatus { + method @Deprecated @NonNull public static android.location.GpsStatus create(@NonNull android.location.GnssStatus, int); method @Deprecated public int getMaxSatellites(); method @Deprecated public Iterable<android.location.GpsSatellite> getSatellites(); method @Deprecated public int getTimeToFirstFix(); @@ -22948,16 +23831,18 @@ package android.location { } public interface LocationListener { - method public void onLocationChanged(android.location.Location); - method public void onProviderDisabled(String); - method public void onProviderEnabled(String); - method @Deprecated public void onStatusChanged(String, int, android.os.Bundle); + method public void onLocationChanged(@NonNull android.location.Location); + method public default void onProviderDisabled(@NonNull String); + method public default void onProviderEnabled(@NonNull String); + method @Deprecated public default void onStatusChanged(String, int, android.os.Bundle); } public class LocationManager { method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean addGpsStatusListener(android.location.GpsStatus.Listener); - method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean addNmeaListener(@NonNull android.location.OnNmeaMessageListener); + method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean addNmeaListener(@NonNull android.location.GpsStatus.NmeaListener); + method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean addNmeaListener(@NonNull android.location.OnNmeaMessageListener); method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean addNmeaListener(@NonNull android.location.OnNmeaMessageListener, @Nullable android.os.Handler); + method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean addNmeaListener(@NonNull java.util.concurrent.Executor, @NonNull android.location.OnNmeaMessageListener); method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void addProximityAlert(double, double, float, long, @NonNull android.app.PendingIntent); method public void addTestProvider(@NonNull String, boolean, boolean, boolean, boolean, boolean, boolean, boolean, int, int); method @Deprecated public void clearTestProviderEnabled(@NonNull String); @@ -22965,22 +23850,29 @@ package android.location { method @Deprecated public void clearTestProviderStatus(@NonNull String); method @NonNull public java.util.List<java.lang.String> getAllProviders(); method @Nullable public String getBestProvider(@NonNull android.location.Criteria, boolean); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void getCurrentLocation(@NonNull String, @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.location.Location>); + method @NonNull public android.location.GnssCapabilities getGnssCapabilities(); method @Nullable public String getGnssHardwareModelName(); method public int getGnssYearOfHardware(); method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public android.location.GpsStatus getGpsStatus(@Nullable android.location.GpsStatus); - method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) @Nullable public android.location.Location getLastKnownLocation(@NonNull String); + method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public android.location.Location getLastKnownLocation(@NonNull String); method @Nullable public android.location.LocationProvider getProvider(@NonNull String); method @NonNull public java.util.List<java.lang.String> getProviders(boolean); method @NonNull public java.util.List<java.lang.String> getProviders(@NonNull android.location.Criteria, boolean); method public boolean isLocationEnabled(); method public boolean isProviderEnabled(@NonNull String); - method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean registerGnssMeasurementsCallback(@NonNull android.location.GnssMeasurementsEvent.Callback); + method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean registerAntennaInfoListener(@NonNull java.util.concurrent.Executor, @NonNull android.location.GnssAntennaInfo.Listener); + method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean registerGnssMeasurementsCallback(@NonNull android.location.GnssMeasurementsEvent.Callback); method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean registerGnssMeasurementsCallback(@NonNull android.location.GnssMeasurementsEvent.Callback, @Nullable android.os.Handler); - method public boolean registerGnssNavigationMessageCallback(@NonNull android.location.GnssNavigationMessage.Callback); + method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean registerGnssMeasurementsCallback(@NonNull java.util.concurrent.Executor, @NonNull android.location.GnssMeasurementsEvent.Callback); + method @Deprecated public boolean registerGnssNavigationMessageCallback(@NonNull android.location.GnssNavigationMessage.Callback); method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean registerGnssNavigationMessageCallback(@NonNull android.location.GnssNavigationMessage.Callback, @Nullable android.os.Handler); - method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean registerGnssStatusCallback(@NonNull android.location.GnssStatus.Callback); + method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean registerGnssNavigationMessageCallback(@NonNull java.util.concurrent.Executor, @NonNull android.location.GnssNavigationMessage.Callback); + method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean registerGnssStatusCallback(@NonNull android.location.GnssStatus.Callback); method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean registerGnssStatusCallback(@NonNull android.location.GnssStatus.Callback, @Nullable android.os.Handler); + method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean registerGnssStatusCallback(@NonNull java.util.concurrent.Executor, @NonNull android.location.GnssStatus.Callback); method @Deprecated public void removeGpsStatusListener(android.location.GpsStatus.Listener); + method @Deprecated public void removeNmeaListener(@NonNull android.location.GpsStatus.NmeaListener); method public void removeNmeaListener(@NonNull android.location.OnNmeaMessageListener); method @RequiresPermission(anyOf={"android.permission.ACCESS_COARSE_LOCATION", "android.permission.ACCESS_FINE_LOCATION"}, apis="..22") public void removeProximityAlert(@NonNull android.app.PendingIntent); method public void removeTestProvider(@NonNull String); @@ -22988,20 +23880,25 @@ package android.location { method public void removeUpdates(@NonNull android.app.PendingIntent); method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@NonNull String, long, float, @NonNull android.location.LocationListener); method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@NonNull String, long, float, @NonNull android.location.LocationListener, @Nullable android.os.Looper); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@NonNull String, long, float, @NonNull java.util.concurrent.Executor, @NonNull android.location.LocationListener); method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(long, float, @NonNull android.location.Criteria, @NonNull android.location.LocationListener, @Nullable android.os.Looper); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(long, float, @NonNull android.location.Criteria, @NonNull java.util.concurrent.Executor, @NonNull android.location.LocationListener); method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@NonNull String, long, float, @NonNull android.app.PendingIntent); method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(long, float, @NonNull android.location.Criteria, @NonNull android.app.PendingIntent); - method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestSingleUpdate(@NonNull String, @NonNull android.location.LocationListener, @Nullable android.os.Looper); - method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestSingleUpdate(@NonNull android.location.Criteria, @NonNull android.location.LocationListener, @Nullable android.os.Looper); - method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestSingleUpdate(@NonNull String, @NonNull android.app.PendingIntent); - method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestSingleUpdate(@NonNull android.location.Criteria, @NonNull android.app.PendingIntent); + method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestSingleUpdate(@NonNull String, @NonNull android.location.LocationListener, @Nullable android.os.Looper); + method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestSingleUpdate(@NonNull android.location.Criteria, @NonNull android.location.LocationListener, @Nullable android.os.Looper); + method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestSingleUpdate(@NonNull String, @NonNull android.app.PendingIntent); + method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestSingleUpdate(@NonNull android.location.Criteria, @NonNull android.app.PendingIntent); method public boolean sendExtraCommand(@NonNull String, @NonNull String, @Nullable android.os.Bundle); method public void setTestProviderEnabled(@NonNull String, boolean); method public void setTestProviderLocation(@NonNull String, @NonNull android.location.Location); method @Deprecated public void setTestProviderStatus(@NonNull String, int, @Nullable android.os.Bundle, long); + method public void unregisterAntennaInfoListener(@NonNull android.location.GnssAntennaInfo.Listener); method public void unregisterGnssMeasurementsCallback(@NonNull android.location.GnssMeasurementsEvent.Callback); method public void unregisterGnssNavigationMessageCallback(@NonNull android.location.GnssNavigationMessage.Callback); method public void unregisterGnssStatusCallback(@NonNull android.location.GnssStatus.Callback); + field public static final String EXTRA_LOCATION_ENABLED = "android.location.extra.LOCATION_ENABLED"; + field public static final String EXTRA_PROVIDER_ENABLED = "android.location.extra.PROVIDER_ENABLED"; field public static final String EXTRA_PROVIDER_NAME = "android.location.extra.PROVIDER_NAME"; field public static final String GPS_PROVIDER = "gps"; field public static final String KEY_LOCATION_CHANGED = "location"; @@ -23122,6 +24019,8 @@ package android.media { method @NonNull public int[] getChannelCounts(); method @NonNull public int[] getChannelIndexMasks(); method @NonNull public int[] getChannelMasks(); + method @NonNull public int[] getEncapsulationMetadataTypes(); + method @NonNull public int[] getEncapsulationModes(); method @NonNull public int[] getEncodings(); method public int getId(); method public CharSequence getProductName(); @@ -23135,6 +24034,7 @@ package android.media { field public static final int TYPE_BUILTIN_EARPIECE = 1; // 0x1 field public static final int TYPE_BUILTIN_MIC = 15; // 0xf field public static final int TYPE_BUILTIN_SPEAKER = 2; // 0x2 + field public static final int TYPE_BUILTIN_SPEAKER_SAFE = 24; // 0x18 field public static final int TYPE_BUS = 21; // 0x15 field public static final int TYPE_DOCK = 13; // 0xd field public static final int TYPE_FM = 14; // 0xe @@ -23243,6 +24143,7 @@ package android.media { field public static final int ENCODING_IEC61937 = 13; // 0xd field public static final int ENCODING_INVALID = 0; // 0x0 field public static final int ENCODING_MP3 = 9; // 0x9 + field public static final int ENCODING_OPUS = 20; // 0x14 field public static final int ENCODING_PCM_16BIT = 2; // 0x2 field public static final int ENCODING_PCM_8BIT = 3; // 0x3 field public static final int ENCODING_PCM_FLOAT = 4; // 0x4 @@ -23285,6 +24186,7 @@ package android.media { method @Deprecated public boolean isBluetoothA2dpOn(); method public boolean isBluetoothScoAvailableOffCall(); method public boolean isBluetoothScoOn(); + method public boolean isCallScreeningModeSupported(); method public static boolean isHapticPlaybackSupported(); method public boolean isMicrophoneMute(); method public boolean isMusicActive(); @@ -23296,9 +24198,9 @@ package android.media { method public void loadSoundEffects(); method public void playSoundEffect(int); method public void playSoundEffect(int, float); - method public void registerAudioDeviceCallback(android.media.AudioDeviceCallback, android.os.Handler); - method public void registerAudioPlaybackCallback(@NonNull android.media.AudioManager.AudioPlaybackCallback, android.os.Handler); - method public void registerAudioRecordingCallback(@NonNull android.media.AudioManager.AudioRecordingCallback, android.os.Handler); + method public void registerAudioDeviceCallback(android.media.AudioDeviceCallback, @Nullable android.os.Handler); + method public void registerAudioPlaybackCallback(@NonNull android.media.AudioManager.AudioPlaybackCallback, @Nullable android.os.Handler); + method public void registerAudioRecordingCallback(@NonNull android.media.AudioManager.AudioRecordingCallback, @Nullable android.os.Handler); method @Deprecated public void registerMediaButtonEventReceiver(android.content.ComponentName); method @Deprecated public void registerMediaButtonEventReceiver(android.app.PendingIntent); method @Deprecated public void registerRemoteControlClient(android.media.RemoteControlClient); @@ -23383,6 +24285,7 @@ package android.media { field public static final int GET_DEVICES_ALL = 3; // 0x3 field public static final int GET_DEVICES_INPUTS = 1; // 0x1 field public static final int GET_DEVICES_OUTPUTS = 2; // 0x2 + field public static final int MODE_CALL_SCREENING = 4; // 0x4 field public static final int MODE_CURRENT = -1; // 0xffffffff field public static final int MODE_INVALID = -2; // 0xfffffffe field public static final int MODE_IN_CALL = 2; // 0x2 @@ -23441,6 +24344,37 @@ package android.media { method public void onAudioFocusChange(int); } + public final class AudioMetadata { + method @NonNull public static android.media.AudioMetadataMap createMap(); + } + + public static class AudioMetadata.Format { + field @NonNull public static final android.media.AudioMetadata.Key<java.lang.Boolean> KEY_ATMOS_PRESENT; + field @NonNull public static final android.media.AudioMetadata.Key<java.lang.Integer> KEY_AUDIO_ENCODING; + field @NonNull public static final android.media.AudioMetadata.Key<java.lang.Integer> KEY_BIT_RATE; + field @NonNull public static final android.media.AudioMetadata.Key<java.lang.Integer> KEY_BIT_WIDTH; + field @NonNull public static final android.media.AudioMetadata.Key<java.lang.Integer> KEY_CHANNEL_MASK; + field @NonNull public static final android.media.AudioMetadata.Key<java.lang.String> KEY_MIME; + field @NonNull public static final android.media.AudioMetadata.Key<java.lang.Integer> KEY_SAMPLE_RATE; + } + + public static interface AudioMetadata.Key<T> { + method @NonNull public String getName(); + method @NonNull public Class<T> getValueClass(); + } + + public interface AudioMetadataMap extends android.media.AudioMetadataReadMap { + method @Nullable public <T> T remove(@NonNull android.media.AudioMetadata.Key<T>); + method @Nullable public <T> T set(@NonNull android.media.AudioMetadata.Key<T>, @NonNull T); + } + + public interface AudioMetadataReadMap { + method public <T> boolean containsKey(@NonNull android.media.AudioMetadata.Key<T>); + method @NonNull public android.media.AudioMetadataMap dup(); + method @Nullable public <T> T get(@NonNull android.media.AudioMetadata.Key<T>); + method @IntRange(from=0) public int size(); + } + public final class AudioPlaybackCaptureConfiguration { method @NonNull public int[] getExcludeUids(); method @NonNull public int[] getExcludeUsages(); @@ -23517,6 +24451,7 @@ package android.media { method public int getSampleRate(); method public int getState(); method public int getTimestamp(@NonNull android.media.AudioTimestamp, int); + method public boolean isPrivacySensitive(); method public int read(@NonNull byte[], int, int); method public int read(@NonNull byte[], int, int, int); method public int read(@NonNull short[], int, int); @@ -23559,6 +24494,7 @@ package android.media { method @NonNull public android.media.AudioRecord.Builder setAudioPlaybackCaptureConfig(@NonNull android.media.AudioPlaybackCaptureConfiguration); method public android.media.AudioRecord.Builder setAudioSource(int) throws java.lang.IllegalArgumentException; method public android.media.AudioRecord.Builder setBufferSizeInBytes(int) throws java.lang.IllegalArgumentException; + method @NonNull public android.media.AudioRecord.Builder setPrivacySensitive(boolean); } public static final class AudioRecord.MetricsConstants { @@ -23624,6 +24560,7 @@ package android.media { ctor @Deprecated public AudioTrack(int, int, int, int, int, int) throws java.lang.IllegalArgumentException; ctor @Deprecated public AudioTrack(int, int, int, int, int, int, int) throws java.lang.IllegalArgumentException; ctor public AudioTrack(android.media.AudioAttributes, android.media.AudioFormat, int, int, int) throws java.lang.IllegalArgumentException; + method public void addOnCodecFormatChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioTrack.OnCodecFormatChangedListener); method public void addOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener, android.os.Handler); method @Deprecated public void addOnRoutingChangedListener(android.media.AudioTrack.OnRoutingChangedListener, android.os.Handler); method public int attachAuxEffect(int); @@ -23631,12 +24568,14 @@ package android.media { method protected void finalize(); method public void flush(); method @NonNull public android.media.AudioAttributes getAudioAttributes(); + method public float getAudioDescriptionMixLeveldB(); method public int getAudioFormat(); method public int getAudioSessionId(); method @IntRange(from=0) public int getBufferCapacityInFrames(); method @IntRange(from=0) public int getBufferSizeInFrames(); method public int getChannelConfiguration(); method public int getChannelCount(); + method public int getDualMonoMode(); method @NonNull public android.media.AudioFormat getFormat(); method public static float getMaxVolume(); method public android.os.PersistableBundle getMetrics(); @@ -23667,10 +24606,13 @@ package android.media { method public void registerStreamEventCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioTrack.StreamEventCallback); method public void release(); method public int reloadStaticData(); + method public void removeOnCodecFormatChangedListener(@NonNull android.media.AudioTrack.OnCodecFormatChangedListener); method public void removeOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener); method @Deprecated public void removeOnRoutingChangedListener(android.media.AudioTrack.OnRoutingChangedListener); + method public boolean setAudioDescriptionMixLeveldB(@FloatRange(to=48.0f, toInclusive=true) float); method public int setAuxEffectSendLevel(@FloatRange(from=0.0) float); method public int setBufferSizeInFrames(@IntRange(from=0) int); + method public boolean setDualMonoMode(int); method public int setLoopPoints(@IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0xffffffff) int); method public int setNotificationMarkerPosition(int); method public void setOffloadDelayPadding(@IntRange(from=0) int, @IntRange(from=0) int); @@ -23695,6 +24637,14 @@ package android.media { method public int write(@NonNull float[], int, int, int); method public int write(@NonNull java.nio.ByteBuffer, int, int); method public int write(@NonNull java.nio.ByteBuffer, int, int, long); + field public static final int DUAL_MONO_MODE_LL = 2; // 0x2 + field public static final int DUAL_MONO_MODE_LR = 1; // 0x1 + field public static final int DUAL_MONO_MODE_OFF = 0; // 0x0 + field public static final int DUAL_MONO_MODE_RR = 3; // 0x3 + field public static final int ENCAPSULATION_METADATA_TYPE_DVB_AD_DESCRIPTOR = 2; // 0x2 + field public static final int ENCAPSULATION_METADATA_TYPE_FRAMEWORK_TUNER = 1; // 0x1 + field public static final int ENCAPSULATION_MODE_ELEMENTARY_STREAM = 1; // 0x1 + field public static final int ENCAPSULATION_MODE_NONE = 0; // 0x0 field public static final int ERROR = -1; // 0xffffffff field public static final int ERROR_BAD_VALUE = -2; // 0xfffffffe field public static final int ERROR_DEAD_OBJECT = -6; // 0xfffffffa @@ -23721,6 +24671,7 @@ package android.media { method @NonNull public android.media.AudioTrack.Builder setAudioAttributes(@NonNull android.media.AudioAttributes) throws java.lang.IllegalArgumentException; method @NonNull public android.media.AudioTrack.Builder setAudioFormat(@NonNull android.media.AudioFormat) throws java.lang.IllegalArgumentException; method @NonNull public android.media.AudioTrack.Builder setBufferSizeInBytes(@IntRange(from=0) int) throws java.lang.IllegalArgumentException; + method @NonNull public android.media.AudioTrack.Builder setEncapsulationMode(int); method @NonNull public android.media.AudioTrack.Builder setOffloadedPlayback(boolean); method @NonNull public android.media.AudioTrack.Builder setPerformanceMode(int); method @NonNull public android.media.AudioTrack.Builder setSessionId(@IntRange(from=1) int) throws java.lang.IllegalArgumentException; @@ -23735,6 +24686,10 @@ package android.media { field public static final String USAGE = "android.media.audiotrack.usage"; } + public static interface AudioTrack.OnCodecFormatChangedListener { + method public void onCodecFormatChanged(@NonNull android.media.AudioTrack, @Nullable android.media.AudioMetadataReadMap); + } + public static interface AudioTrack.OnPlaybackPositionUpdateListener { method public void onMarkerReached(android.media.AudioTrack); method public void onPeriodicNotification(android.media.AudioTrack); @@ -23759,28 +24714,39 @@ package android.media { method public static boolean hasProfile(int, int); field public static final int QUALITY_1080P = 6; // 0x6 field public static final int QUALITY_2160P = 8; // 0x8 + field public static final int QUALITY_2K = 12; // 0xc field public static final int QUALITY_480P = 4; // 0x4 + field public static final int QUALITY_4KDCI = 10; // 0xa field public static final int QUALITY_720P = 5; // 0x5 field public static final int QUALITY_CIF = 3; // 0x3 field public static final int QUALITY_HIGH = 1; // 0x1 field public static final int QUALITY_HIGH_SPEED_1080P = 2004; // 0x7d4 field public static final int QUALITY_HIGH_SPEED_2160P = 2005; // 0x7d5 field public static final int QUALITY_HIGH_SPEED_480P = 2002; // 0x7d2 + field public static final int QUALITY_HIGH_SPEED_4KDCI = 2008; // 0x7d8 field public static final int QUALITY_HIGH_SPEED_720P = 2003; // 0x7d3 + field public static final int QUALITY_HIGH_SPEED_CIF = 2006; // 0x7d6 field public static final int QUALITY_HIGH_SPEED_HIGH = 2001; // 0x7d1 field public static final int QUALITY_HIGH_SPEED_LOW = 2000; // 0x7d0 + field public static final int QUALITY_HIGH_SPEED_VGA = 2007; // 0x7d7 field public static final int QUALITY_LOW = 0; // 0x0 field public static final int QUALITY_QCIF = 2; // 0x2 + field public static final int QUALITY_QHD = 11; // 0xb field public static final int QUALITY_QVGA = 7; // 0x7 field public static final int QUALITY_TIME_LAPSE_1080P = 1006; // 0x3ee field public static final int QUALITY_TIME_LAPSE_2160P = 1008; // 0x3f0 + field public static final int QUALITY_TIME_LAPSE_2K = 1012; // 0x3f4 field public static final int QUALITY_TIME_LAPSE_480P = 1004; // 0x3ec + field public static final int QUALITY_TIME_LAPSE_4KDCI = 1010; // 0x3f2 field public static final int QUALITY_TIME_LAPSE_720P = 1005; // 0x3ed field public static final int QUALITY_TIME_LAPSE_CIF = 1003; // 0x3eb field public static final int QUALITY_TIME_LAPSE_HIGH = 1001; // 0x3e9 field public static final int QUALITY_TIME_LAPSE_LOW = 1000; // 0x3e8 field public static final int QUALITY_TIME_LAPSE_QCIF = 1002; // 0x3ea + field public static final int QUALITY_TIME_LAPSE_QHD = 1011; // 0x3f3 field public static final int QUALITY_TIME_LAPSE_QVGA = 1007; // 0x3ef + field public static final int QUALITY_TIME_LAPSE_VGA = 1009; // 0x3f1 + field public static final int QUALITY_VGA = 9; // 0x9 field public int audioBitRate; field public int audioChannels; field public int audioCodec; @@ -23809,12 +24775,16 @@ package android.media { } public abstract class DrmInitData { - method public abstract android.media.DrmInitData.SchemeInitData get(java.util.UUID); + method @Deprecated public abstract android.media.DrmInitData.SchemeInitData get(java.util.UUID); + method @NonNull public android.media.DrmInitData.SchemeInitData getSchemeInitDataAt(int); + method public int getSchemeInitDataCount(); } public static final class DrmInitData.SchemeInitData { + field @NonNull public static final java.util.UUID UUID_NIL; field public final byte[] data; field public final String mimeType; + field @NonNull public final java.util.UUID uuid; } public class ExifInterface { @@ -23822,6 +24792,7 @@ package android.media { ctor public ExifInterface(@NonNull String) throws java.io.IOException; ctor public ExifInterface(@NonNull java.io.FileDescriptor) throws java.io.IOException; ctor public ExifInterface(@NonNull java.io.InputStream) throws java.io.IOException; + ctor public ExifInterface(@NonNull java.io.InputStream, int) throws java.io.IOException; method public double getAltitude(double); method @Nullable public String getAttribute(@NonNull String); method @Nullable public byte[] getAttributeBytes(@NonNull String); @@ -23835,6 +24806,7 @@ package android.media { method @Nullable public long[] getThumbnailRange(); method public boolean hasAttribute(@NonNull String); method public boolean hasThumbnail(); + method public static boolean isSupportedMimeType(@NonNull String); method public boolean isThumbnailCompressed(); method public void saveAttributes() throws java.io.IOException; method public void setAttribute(@NonNull String, @Nullable String); @@ -23847,6 +24819,8 @@ package android.media { field public static final int ORIENTATION_TRANSPOSE = 5; // 0x5 field public static final int ORIENTATION_TRANSVERSE = 7; // 0x7 field public static final int ORIENTATION_UNDEFINED = 0; // 0x0 + field public static final int STREAM_TYPE_EXIF_DATA_ONLY = 1; // 0x1 + field public static final int STREAM_TYPE_FULL_IMAGE_DATA = 0; // 0x0 field @Deprecated public static final String TAG_APERTURE = "FNumber"; field public static final String TAG_APERTURE_VALUE = "ApertureValue"; field public static final String TAG_ARTIST = "Artist"; @@ -23932,6 +24906,9 @@ package android.media { field public static final String TAG_MODEL = "Model"; field public static final String TAG_NEW_SUBFILE_TYPE = "NewSubfileType"; field public static final String TAG_OECF = "OECF"; + field public static final String TAG_OFFSET_TIME = "OffsetTime"; + field public static final String TAG_OFFSET_TIME_DIGITIZED = "OffsetTimeDigitized"; + field public static final String TAG_OFFSET_TIME_ORIGINAL = "OffsetTimeOriginal"; field public static final String TAG_ORF_ASPECT_FRAME = "AspectFrame"; field public static final String TAG_ORF_PREVIEW_IMAGE_LENGTH = "PreviewImageLength"; field public static final String TAG_ORF_PREVIEW_IMAGE_START = "PreviewImageStart"; @@ -23976,6 +24953,7 @@ package android.media { field public static final String TAG_SUBSEC_TIME_ORIGINAL = "SubSecTimeOriginal"; field public static final String TAG_THUMBNAIL_IMAGE_LENGTH = "ThumbnailImageLength"; field public static final String TAG_THUMBNAIL_IMAGE_WIDTH = "ThumbnailImageWidth"; + field public static final String TAG_THUMBNAIL_ORIENTATION = "ThumbnailOrientation"; field public static final String TAG_TRANSFER_FUNCTION = "TransferFunction"; field public static final String TAG_USER_COMMENT = "UserComment"; field public static final String TAG_WHITE_BALANCE = "WhiteBalance"; @@ -24101,11 +25079,13 @@ package android.media { public final class MediaCas implements java.lang.AutoCloseable { ctor public MediaCas(int) throws android.media.MediaCasException.UnsupportedCasException; + ctor public MediaCas(@NonNull android.content.Context, int, @Nullable String, int) throws android.media.MediaCasException.UnsupportedCasException; method public void close(); method public static android.media.MediaCas.PluginDescriptor[] enumeratePlugins(); method protected void finalize(); method public static boolean isSystemIdSupported(int); method public android.media.MediaCas.Session openSession() throws android.media.MediaCasException; + method @Nullable public android.media.MediaCas.Session openSession(int, int) throws android.media.MediaCasException; method public void processEmm(@NonNull byte[], int, int) throws android.media.MediaCasException; method public void processEmm(@NonNull byte[]) throws android.media.MediaCasException; method public void provision(@NonNull String) throws android.media.MediaCasException; @@ -24113,10 +25093,32 @@ package android.media { method public void sendEvent(int, int, @Nullable byte[]) throws android.media.MediaCasException; method public void setEventListener(@Nullable android.media.MediaCas.EventListener, @Nullable android.os.Handler); method public void setPrivateData(@NonNull byte[]) throws android.media.MediaCasException; + field public static final int PLUGIN_STATUS_PHYSICAL_MODULE_CHANGED = 0; // 0x0 + field public static final int PLUGIN_STATUS_SESSION_NUMBER_CHANGED = 1; // 0x1 + field public static final int SCRAMBLING_MODE_AES128 = 9; // 0x9 + field public static final int SCRAMBLING_MODE_AES_ECB = 10; // 0xa + field public static final int SCRAMBLING_MODE_AES_SCTE52 = 11; // 0xb + field public static final int SCRAMBLING_MODE_DVB_CISSA_V1 = 6; // 0x6 + field public static final int SCRAMBLING_MODE_DVB_CSA1 = 1; // 0x1 + field public static final int SCRAMBLING_MODE_DVB_CSA2 = 2; // 0x2 + field public static final int SCRAMBLING_MODE_DVB_CSA3_ENHANCE = 5; // 0x5 + field public static final int SCRAMBLING_MODE_DVB_CSA3_MINIMAL = 4; // 0x4 + field public static final int SCRAMBLING_MODE_DVB_CSA3_STANDARD = 3; // 0x3 + field public static final int SCRAMBLING_MODE_DVB_IDSA = 7; // 0x7 + field public static final int SCRAMBLING_MODE_MULTI2 = 8; // 0x8 + field public static final int SCRAMBLING_MODE_RESERVED = 0; // 0x0 + field public static final int SCRAMBLING_MODE_TDES_ECB = 12; // 0xc + field public static final int SCRAMBLING_MODE_TDES_SCTE52 = 13; // 0xd + field public static final int SESSION_USAGE_LIVE = 0; // 0x0 + field public static final int SESSION_USAGE_PLAYBACK = 1; // 0x1 + field public static final int SESSION_USAGE_RECORD = 2; // 0x2 + field public static final int SESSION_USAGE_TIMESHIFT = 3; // 0x3 } public static interface MediaCas.EventListener { method public void onEvent(@NonNull android.media.MediaCas, int, int, @Nullable byte[]); + method public default void onPluginStatusUpdate(@NonNull android.media.MediaCas, int, int); + method public default void onResourceLost(@NonNull android.media.MediaCas); method public default void onSessionEvent(@NonNull android.media.MediaCas, @NonNull android.media.MediaCas.Session, int, int, @Nullable byte[]); } @@ -24127,6 +25129,7 @@ package android.media { public final class MediaCas.Session implements java.lang.AutoCloseable { method public void close(); + method @NonNull public byte[] getSessionId(); method public void processEcm(@NonNull byte[], int, int) throws android.media.MediaCasException; method public void processEcm(@NonNull byte[]) throws android.media.MediaCasException; method public void sendSessionEvent(int, int, @Nullable byte[]) throws android.media.MediaCasException; @@ -24139,6 +25142,9 @@ package android.media { public static final class MediaCasException.DeniedByServerException extends android.media.MediaCasException { } + public static final class MediaCasException.InsufficientResourceException extends android.media.MediaCasException { + } + public static final class MediaCasException.NotProvisionedException extends android.media.MediaCasException { } @@ -24176,7 +25182,10 @@ package android.media { method @Deprecated @NonNull public java.nio.ByteBuffer[] getOutputBuffers(); method @NonNull public android.media.MediaFormat getOutputFormat(); method @NonNull public android.media.MediaFormat getOutputFormat(int); + method @NonNull public android.media.MediaCodec.OutputFrame getOutputFrame(int); method @Nullable public android.media.Image getOutputImage(int); + method @NonNull public android.media.MediaCodec.QueueRequest getQueueRequest(int); + method @Nullable public static android.media.Image mapHardwareBuffer(@NonNull android.hardware.HardwareBuffer); method public void queueInputBuffer(int, int, int, long, int) throws android.media.MediaCodec.CryptoException; method public void queueSecureInputBuffer(int, int, @NonNull android.media.MediaCodec.CryptoInfo, long, int) throws android.media.MediaCodec.CryptoException; method public void release(); @@ -24200,6 +25209,7 @@ package android.media { field public static final int BUFFER_FLAG_PARTIAL_FRAME = 8; // 0x8 field @Deprecated public static final int BUFFER_FLAG_SYNC_FRAME = 1; // 0x1 field public static final int CONFIGURE_FLAG_ENCODE = 1; // 0x1 + field public static final int CONFIGURE_FLAG_USE_BLOCK_MODEL = 2; // 0x2 field public static final int CRYPTO_MODE_AES_CBC = 2; // 0x2 field public static final int CRYPTO_MODE_AES_CTR = 1; // 0x1 field public static final int CRYPTO_MODE_UNENCRYPTED = 0; // 0x0 @@ -24207,6 +25217,7 @@ package android.media { field public static final int INFO_OUTPUT_FORMAT_CHANGED = -2; // 0xfffffffe field public static final int INFO_TRY_AGAIN_LATER = -1; // 0xffffffff field public static final String PARAMETER_KEY_HDR10_PLUS_INFO = "hdr10-plus-info"; + field public static final String PARAMETER_KEY_LOW_LATENCY = "low-latency"; field public static final String PARAMETER_KEY_OFFSET_TIME = "time-offset-us"; field public static final String PARAMETER_KEY_REQUEST_SYNC_FRAME = "request-sync"; field public static final String PARAMETER_KEY_SUSPEND = "drop-input-frames"; @@ -24275,6 +25286,18 @@ package android.media { method public void set(int, int); } + public class MediaCodec.IncompatibleWithBlockModelException extends java.lang.RuntimeException { + } + + public static final class MediaCodec.LinearBlock { + method protected void finalize(); + method public static boolean isCodecCopyFreeCompatible(@NonNull String[]); + method public boolean isMappable(); + method @NonNull public java.nio.ByteBuffer map(); + method @Nullable public static android.media.MediaCodec.LinearBlock obtain(int, @NonNull String[]); + method public void recycle(); + } + public static final class MediaCodec.MetricsConstants { field public static final String CODEC = "android.media.mediacodec.codec"; field public static final String ENCODER = "android.media.mediacodec.encoder"; @@ -24292,6 +25315,29 @@ package android.media { method public void onFrameRendered(@NonNull android.media.MediaCodec, long, long); } + public static final class MediaCodec.OutputFrame { + method @NonNull public java.util.Set<java.lang.String> getChangedKeys(); + method public int getFlags(); + method @NonNull public android.media.MediaFormat getFormat(); + method @Nullable public android.hardware.HardwareBuffer getHardwareBuffer(); + method @Nullable public android.media.MediaCodec.LinearBlock getLinearBlock(); + method public long getPresentationTimeUs(); + } + + public final class MediaCodec.QueueRequest { + method public void queue(); + method @NonNull public android.media.MediaCodec.QueueRequest setByteBufferParameter(@NonNull String, @NonNull java.nio.ByteBuffer); + method @NonNull public android.media.MediaCodec.QueueRequest setEncryptedLinearBlock(@NonNull android.media.MediaCodec.LinearBlock, int, int, @NonNull android.media.MediaCodec.CryptoInfo); + method @NonNull public android.media.MediaCodec.QueueRequest setFlags(int); + method @NonNull public android.media.MediaCodec.QueueRequest setFloatParameter(@NonNull String, float); + method @NonNull public android.media.MediaCodec.QueueRequest setHardwareBuffer(@NonNull android.hardware.HardwareBuffer); + method @NonNull public android.media.MediaCodec.QueueRequest setIntegerParameter(@NonNull String, int); + method @NonNull public android.media.MediaCodec.QueueRequest setLinearBlock(@NonNull android.media.MediaCodec.LinearBlock, int, int); + method @NonNull public android.media.MediaCodec.QueueRequest setLongParameter(@NonNull String, long); + method @NonNull public android.media.MediaCodec.QueueRequest setPresentationTimeUs(long); + method @NonNull public android.media.MediaCodec.QueueRequest setStringParameter(@NonNull String, @NonNull String); + } + public final class MediaCodecInfo { method @NonNull public String getCanonicalName(); method public android.media.MediaCodecInfo.CodecCapabilities getCapabilitiesForType(String); @@ -24380,6 +25426,7 @@ package android.media { field public static final String FEATURE_DynamicTimestamp = "dynamic-timestamp"; field public static final String FEATURE_FrameParsing = "frame-parsing"; field public static final String FEATURE_IntraRefresh = "intra-refresh"; + field public static final String FEATURE_LowLatency = "low-latency"; field public static final String FEATURE_MultipleFrames = "multiple-frames"; field public static final String FEATURE_PartialFrame = "partial-frame"; field public static final String FEATURE_SecurePlayback = "secure-playback"; @@ -24468,6 +25515,7 @@ package android.media { field public static final int DolbyVisionLevelUhd30 = 64; // 0x40 field public static final int DolbyVisionLevelUhd48 = 128; // 0x80 field public static final int DolbyVisionLevelUhd60 = 256; // 0x100 + field public static final int DolbyVisionProfileDvav110 = 1024; // 0x400 field public static final int DolbyVisionProfileDvavPen = 2; // 0x2 field public static final int DolbyVisionProfileDvavPer = 1; // 0x1 field public static final int DolbyVisionProfileDvavSe = 512; // 0x200 @@ -24786,6 +25834,7 @@ package android.media { method @NonNull public java.util.List<byte[]> getSecureStopIds(); method @NonNull public java.util.List<byte[]> getSecureStops(); method @android.media.MediaDrm.SecurityLevel public int getSecurityLevel(@NonNull byte[]); + method @NonNull public static java.util.List<java.util.UUID> getSupportedCryptoSchemes(); method public static boolean isCryptoSchemeSupported(@NonNull java.util.UUID); method public static boolean isCryptoSchemeSupported(@NonNull java.util.UUID, @NonNull String); method public static boolean isCryptoSchemeSupported(@NonNull java.util.UUID, @NonNull String, @android.media.MediaDrm.SecurityLevel int); @@ -25051,10 +26100,12 @@ package android.media { field public static final int COLOR_TRANSFER_LINEAR = 1; // 0x1 field public static final int COLOR_TRANSFER_SDR_VIDEO = 3; // 0x3 field public static final int COLOR_TRANSFER_ST2084 = 6; // 0x6 + field public static final String KEY_AAC_DRC_ALBUM_MODE = "aac-drc-album-mode"; field public static final String KEY_AAC_DRC_ATTENUATION_FACTOR = "aac-drc-cut-level"; field public static final String KEY_AAC_DRC_BOOST_FACTOR = "aac-drc-boost-level"; field public static final String KEY_AAC_DRC_EFFECT_TYPE = "aac-drc-effect-type"; field public static final String KEY_AAC_DRC_HEAVY_COMPRESSION = "aac-drc-heavy-compression"; + field public static final String KEY_AAC_DRC_OUTPUT_LOUDNESS = "aac-drc-output-loudness"; field public static final String KEY_AAC_DRC_TARGET_REFERENCE_LEVEL = "aac-target-ref-level"; field public static final String KEY_AAC_ENCODED_TARGET_LEVEL = "aac-encoded-target-level"; field public static final String KEY_AAC_MAX_OUTPUT_CHANNEL_COUNT = "aac-max-output-channel_count"; @@ -25063,9 +26114,11 @@ package android.media { field public static final String KEY_AUDIO_SESSION_ID = "audio-session-id"; field public static final String KEY_BITRATE_MODE = "bitrate-mode"; field public static final String KEY_BIT_RATE = "bitrate"; + field public static final String KEY_CAPTION_SERVICE_NUMBER = "caption-service-number"; field public static final String KEY_CAPTURE_RATE = "capture-rate"; field public static final String KEY_CHANNEL_COUNT = "channel-count"; field public static final String KEY_CHANNEL_MASK = "channel-mask"; + field public static final String KEY_CODECS_STRING = "codecs-string"; field public static final String KEY_COLOR_FORMAT = "color-format"; field public static final String KEY_COLOR_RANGE = "color-range"; field public static final String KEY_COLOR_STANDARD = "color-standard"; @@ -25073,11 +26126,14 @@ package android.media { field public static final String KEY_COMPLEXITY = "complexity"; field public static final String KEY_CREATE_INPUT_SURFACE_SUSPENDED = "create-input-buffers-suspended"; field public static final String KEY_DURATION = "durationUs"; + field public static final String KEY_ENCODER_DELAY = "encoder-delay"; + field public static final String KEY_ENCODER_PADDING = "encoder-padding"; field public static final String KEY_FLAC_COMPRESSION_LEVEL = "flac-compression-level"; field public static final String KEY_FRAME_RATE = "frame-rate"; field public static final String KEY_GRID_COLUMNS = "grid-cols"; field public static final String KEY_GRID_ROWS = "grid-rows"; field public static final String KEY_HAPTIC_CHANNEL_COUNT = "haptic-channel-count"; + field public static final String KEY_HARDWARE_AV_SYNC_ID = "hw-av-sync-id"; field public static final String KEY_HDR10_PLUS_INFO = "hdr10-plus-info"; field public static final String KEY_HDR_STATIC_INFO = "hdr-static-info"; field public static final String KEY_HEIGHT = "height"; @@ -25090,6 +26146,7 @@ package android.media { field public static final String KEY_LANGUAGE = "language"; field public static final String KEY_LATENCY = "latency"; field public static final String KEY_LEVEL = "level"; + field public static final String KEY_LOW_LATENCY = "low-latency"; field public static final String KEY_MAX_B_FRAMES = "max-bframes"; field public static final String KEY_MAX_FPS_TO_ENCODER = "max-fps-to-encoder"; field public static final String KEY_MAX_HEIGHT = "max-height"; @@ -25100,6 +26157,8 @@ package android.media { field public static final String KEY_OPERATING_RATE = "operating-rate"; field public static final String KEY_OUTPUT_REORDER_DEPTH = "output-reorder-depth"; field public static final String KEY_PCM_ENCODING = "pcm-encoding"; + field public static final String KEY_PIXEL_ASPECT_RATIO_HEIGHT = "sar-height"; + field public static final String KEY_PIXEL_ASPECT_RATIO_WIDTH = "sar-width"; field public static final String KEY_PREPEND_HEADER_TO_SYNC_FRAMES = "prepend-sps-pps-to-idr-frames"; field public static final String KEY_PRIORITY = "priority"; field public static final String KEY_PROFILE = "profile"; @@ -25233,20 +26292,22 @@ package android.media { public class MediaMetadataRetriever implements java.lang.AutoCloseable { ctor public MediaMetadataRetriever(); method public void close(); - method public String extractMetadata(int); - method public byte[] getEmbeddedPicture(); - method public android.graphics.Bitmap getFrameAtIndex(int, @NonNull android.media.MediaMetadataRetriever.BitmapParams); - method public android.graphics.Bitmap getFrameAtIndex(int); - method public android.graphics.Bitmap getFrameAtTime(long, int); - method public android.graphics.Bitmap getFrameAtTime(long); - method public android.graphics.Bitmap getFrameAtTime(); + method @Nullable public String extractMetadata(int); + method @Nullable public byte[] getEmbeddedPicture(); + method @Nullable public android.graphics.Bitmap getFrameAtIndex(int, @NonNull android.media.MediaMetadataRetriever.BitmapParams); + method @Nullable public android.graphics.Bitmap getFrameAtIndex(int); + method @Nullable public android.graphics.Bitmap getFrameAtTime(long, int); + method @Nullable public android.graphics.Bitmap getFrameAtTime(long, int, @NonNull android.media.MediaMetadataRetriever.BitmapParams); + method @Nullable public android.graphics.Bitmap getFrameAtTime(long); + method @Nullable public android.graphics.Bitmap getFrameAtTime(); method @NonNull public java.util.List<android.graphics.Bitmap> getFramesAtIndex(int, int, @NonNull android.media.MediaMetadataRetriever.BitmapParams); method @NonNull public java.util.List<android.graphics.Bitmap> getFramesAtIndex(int, int); - method public android.graphics.Bitmap getImageAtIndex(int, @NonNull android.media.MediaMetadataRetriever.BitmapParams); - method public android.graphics.Bitmap getImageAtIndex(int); - method public android.graphics.Bitmap getPrimaryImage(@NonNull android.media.MediaMetadataRetriever.BitmapParams); - method public android.graphics.Bitmap getPrimaryImage(); - method public android.graphics.Bitmap getScaledFrameAtTime(long, int, int, int); + method @Nullable public android.graphics.Bitmap getImageAtIndex(int, @NonNull android.media.MediaMetadataRetriever.BitmapParams); + method @Nullable public android.graphics.Bitmap getImageAtIndex(int); + method @Nullable public android.graphics.Bitmap getPrimaryImage(@NonNull android.media.MediaMetadataRetriever.BitmapParams); + method @Nullable public android.graphics.Bitmap getPrimaryImage(); + method @Nullable public android.graphics.Bitmap getScaledFrameAtTime(long, int, @IntRange(from=1) int, @IntRange(from=1) int); + method @Nullable public android.graphics.Bitmap getScaledFrameAtTime(long, int, @IntRange(from=1) int, @IntRange(from=1) int, @NonNull android.media.MediaMetadataRetriever.BitmapParams); method public void release(); method public void setDataSource(String) throws java.lang.IllegalArgumentException; method public void setDataSource(String, java.util.Map<java.lang.String,java.lang.String>) throws java.lang.IllegalArgumentException; @@ -25261,6 +26322,9 @@ package android.media { field public static final int METADATA_KEY_BITRATE = 20; // 0x14 field public static final int METADATA_KEY_CAPTURE_FRAMERATE = 25; // 0x19 field public static final int METADATA_KEY_CD_TRACK_NUMBER = 0; // 0x0 + field public static final int METADATA_KEY_COLOR_RANGE = 37; // 0x25 + field public static final int METADATA_KEY_COLOR_STANDARD = 35; // 0x23 + field public static final int METADATA_KEY_COLOR_TRANSFER = 36; // 0x24 field public static final int METADATA_KEY_COMPILATION = 15; // 0xf field public static final int METADATA_KEY_COMPOSER = 4; // 0x4 field public static final int METADATA_KEY_DATE = 5; // 0x5 @@ -25320,6 +26384,97 @@ package android.media { field public static final int MUXER_OUTPUT_WEBM = 1; // 0x1 } + public final class MediaParser { + method public boolean advance(@NonNull android.media.MediaParser.SeekableInputReader) throws java.io.IOException; + method @NonNull public static android.media.MediaParser create(@NonNull android.media.MediaParser.OutputConsumer, @NonNull java.lang.String...); + method @NonNull public static android.media.MediaParser createByName(@NonNull String, @NonNull android.media.MediaParser.OutputConsumer); + method @NonNull public String getParserName(); + method @NonNull public static java.util.List<java.lang.String> getParserNames(@NonNull android.media.MediaFormat); + method public void release(); + method public void seek(@NonNull android.media.MediaParser.SeekPoint); + method @NonNull public android.media.MediaParser setParameter(@NonNull String, @NonNull Object); + method public boolean supportsParameter(@NonNull String); + field public static final String PARAMETER_ADTS_ENABLE_CBR_SEEKING = "android.media.mediaparser.adts.enableCbrSeeking"; + field public static final String PARAMETER_AMR_ENABLE_CBR_SEEKING = "android.media.mediaparser.amr.enableCbrSeeking"; + field public static final String PARAMETER_FLAC_DISABLE_ID3 = "android.media.mediaparser.flac.disableId3"; + field public static final String PARAMETER_MATROSKA_DISABLE_CUES_SEEKING = "android.media.mediaparser.matroska.disableCuesSeeking"; + field public static final String PARAMETER_MP3_DISABLE_ID3 = "android.media.mediaparser.mp3.disableId3"; + field public static final String PARAMETER_MP3_ENABLE_CBR_SEEKING = "android.media.mediaparser.mp3.enableCbrSeeking"; + field public static final String PARAMETER_MP3_ENABLE_INDEX_SEEKING = "android.media.mediaparser.mp3.enableIndexSeeking"; + field public static final String PARAMETER_MP4_IGNORE_EDIT_LISTS = "android.media.mediaparser.mp4.ignoreEditLists"; + field public static final String PARAMETER_MP4_IGNORE_TFDT_BOX = "android.media.mediaparser.mp4.ignoreTfdtBox"; + field public static final String PARAMETER_MP4_TREAT_VIDEO_FRAMES_AS_KEYFRAMES = "android.media.mediaparser.mp4.treatVideoFramesAsKeyframes"; + field public static final String PARAMETER_TS_ALLOW_NON_IDR_AVC_KEYFRAMES = "android.media.mediaparser.ts.allowNonIdrAvcKeyframes"; + field public static final String PARAMETER_TS_DETECT_ACCESS_UNITS = "android.media.mediaparser.ts.ignoreDetectAccessUnits"; + field public static final String PARAMETER_TS_ENABLE_HDMV_DTS_AUDIO_STREAMS = "android.media.mediaparser.ts.enableHdmvDtsAudioStreams"; + field public static final String PARAMETER_TS_IGNORE_AAC_STREAM = "android.media.mediaparser.ts.ignoreAacStream"; + field public static final String PARAMETER_TS_IGNORE_AVC_STREAM = "android.media.mediaparser.ts.ignoreAvcStream"; + field public static final String PARAMETER_TS_IGNORE_SPLICE_INFO_STREAM = "android.media.mediaparser.ts.ignoreSpliceInfoStream"; + field public static final String PARAMETER_TS_MODE = "android.media.mediaparser.ts.mode"; + field public static final String PARSER_NAME_AC3 = "android.media.mediaparser.Ac3Parser"; + field public static final String PARSER_NAME_AC4 = "android.media.mediaparser.Ac4Parser"; + field public static final String PARSER_NAME_ADTS = "android.media.mediaparser.AdtsParser"; + field public static final String PARSER_NAME_AMR = "android.media.mediaparser.AmrParser"; + field public static final String PARSER_NAME_FLAC = "android.media.mediaparser.FlacParser"; + field public static final String PARSER_NAME_FLV = "android.media.mediaparser.FlvParser"; + field public static final String PARSER_NAME_FMP4 = "android.media.mediaparser.FragmentedMp4Parser"; + field public static final String PARSER_NAME_MATROSKA = "android.media.mediaparser.MatroskaParser"; + field public static final String PARSER_NAME_MP3 = "android.media.mediaparser.Mp3Parser"; + field public static final String PARSER_NAME_MP4 = "android.media.mediaparser.Mp4Parser"; + field public static final String PARSER_NAME_OGG = "android.media.mediaparser.OggParser"; + field public static final String PARSER_NAME_PS = "android.media.mediaparser.PsParser"; + field public static final String PARSER_NAME_TS = "android.media.mediaparser.TsParser"; + field public static final String PARSER_NAME_UNKNOWN = "android.media.mediaparser.UNKNOWN"; + field public static final String PARSER_NAME_WAV = "android.media.mediaparser.WavParser"; + field public static final int SAMPLE_FLAG_DECODE_ONLY = -2147483648; // 0x80000000 + field public static final int SAMPLE_FLAG_ENCRYPTED = 1073741824; // 0x40000000 + field public static final int SAMPLE_FLAG_HAS_SUPPLEMENTAL_DATA = 268435456; // 0x10000000 + field public static final int SAMPLE_FLAG_KEY_FRAME = 1; // 0x1 + field public static final int SAMPLE_FLAG_LAST_SAMPLE = 536870912; // 0x20000000 + } + + public static interface MediaParser.InputReader { + method public long getLength(); + method public long getPosition(); + method public int read(@NonNull byte[], int, int) throws java.io.IOException; + } + + public static interface MediaParser.OutputConsumer { + method public void onSampleCompleted(int, long, int, int, int, @Nullable android.media.MediaCodec.CryptoInfo); + method public void onSampleDataFound(int, @NonNull android.media.MediaParser.InputReader) throws java.io.IOException; + method public void onSeekMapFound(@NonNull android.media.MediaParser.SeekMap); + method public void onTrackCountFound(int); + method public void onTrackDataFound(int, @NonNull android.media.MediaParser.TrackData); + } + + public static final class MediaParser.ParsingException extends java.io.IOException { + } + + public static final class MediaParser.SeekMap { + method public long getDurationMicros(); + method @NonNull public android.util.Pair<android.media.MediaParser.SeekPoint,android.media.MediaParser.SeekPoint> getSeekPoints(long); + method public boolean isSeekable(); + field public static final int UNKNOWN_DURATION = -2147483648; // 0x80000000 + } + + public static final class MediaParser.SeekPoint { + field @NonNull public static final android.media.MediaParser.SeekPoint START; + field public final long position; + field public final long timeMicros; + } + + public static interface MediaParser.SeekableInputReader extends android.media.MediaParser.InputReader { + method public void seekToPosition(long); + } + + public static final class MediaParser.TrackData { + field @Nullable public final android.media.DrmInitData drmInitData; + field @NonNull public final android.media.MediaFormat mediaFormat; + } + + public static final class MediaParser.UnrecognizedInputFormatException extends java.io.IOException { + } + public class MediaPlayer implements android.media.AudioRouting android.media.VolumeAutomation { ctor public MediaPlayer(); method public void addOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener, android.os.Handler); @@ -25560,6 +26715,7 @@ package android.media { method public android.media.AudioDeviceInfo getPreferredDevice(); method public android.media.AudioDeviceInfo getRoutedDevice(); method public android.view.Surface getSurface(); + method public boolean isPrivacySensitive(); method public void pause() throws java.lang.IllegalStateException; method public void prepare() throws java.io.IOException, java.lang.IllegalStateException; method public void registerAudioRecordingCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.AudioRecordingCallback); @@ -25591,6 +26747,7 @@ package android.media { method public boolean setPreferredMicrophoneDirection(int); method public boolean setPreferredMicrophoneFieldDimension(@FloatRange(from=-1.0, to=1.0) float); method public void setPreviewDisplay(android.view.Surface); + method public void setPrivacySensitive(boolean); method public void setProfile(android.media.CamcorderProfile); method public void setVideoEncoder(int) throws java.lang.IllegalStateException; method public void setVideoEncodingBitRate(int); @@ -25690,6 +26847,78 @@ package android.media { field public static final int SURFACE = 2; // 0x2 } + public final class MediaRoute2Info implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public String getClientPackageName(); + method public int getConnectionState(); + method @Nullable public CharSequence getDescription(); + method @Nullable public android.os.Bundle getExtras(); + method @NonNull public java.util.List<java.lang.String> getFeatures(); + method @Nullable public android.net.Uri getIconUri(); + method @NonNull public String getId(); + method @NonNull public CharSequence getName(); + method public int getVolume(); + method public int getVolumeHandling(); + method public int getVolumeMax(); + method public boolean isSystemRoute(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final int CONNECTION_STATE_CONNECTED = 2; // 0x2 + field public static final int CONNECTION_STATE_CONNECTING = 1; // 0x1 + field public static final int CONNECTION_STATE_DISCONNECTED = 0; // 0x0 + field @NonNull public static final android.os.Parcelable.Creator<android.media.MediaRoute2Info> CREATOR; + field public static final String FEATURE_LIVE_AUDIO = "android.media.route.feature.LIVE_AUDIO"; + field public static final String FEATURE_LIVE_VIDEO = "android.media.route.feature.LIVE_VIDEO"; + field public static final String FEATURE_REMOTE_AUDIO_PLAYBACK = "android.media.route.feature.REMOTE_AUDIO_PLAYBACK"; + field public static final String FEATURE_REMOTE_PLAYBACK = "android.media.route.feature.REMOTE_PLAYBACK"; + field public static final String FEATURE_REMOTE_VIDEO_PLAYBACK = "android.media.route.feature.REMOTE_VIDEO_PLAYBACK"; + field public static final int PLAYBACK_VOLUME_FIXED = 0; // 0x0 + field public static final int PLAYBACK_VOLUME_VARIABLE = 1; // 0x1 + } + + public static final class MediaRoute2Info.Builder { + ctor public MediaRoute2Info.Builder(@NonNull String, @NonNull CharSequence); + ctor public MediaRoute2Info.Builder(@NonNull android.media.MediaRoute2Info); + method @NonNull public android.media.MediaRoute2Info.Builder addFeature(@NonNull String); + method @NonNull public android.media.MediaRoute2Info.Builder addFeatures(@NonNull java.util.Collection<java.lang.String>); + method @NonNull public android.media.MediaRoute2Info build(); + method @NonNull public android.media.MediaRoute2Info.Builder clearFeatures(); + method @NonNull public android.media.MediaRoute2Info.Builder setClientPackageName(@Nullable String); + method @NonNull public android.media.MediaRoute2Info.Builder setConnectionState(int); + method @NonNull public android.media.MediaRoute2Info.Builder setDescription(@Nullable CharSequence); + method @NonNull public android.media.MediaRoute2Info.Builder setExtras(@Nullable android.os.Bundle); + method @NonNull public android.media.MediaRoute2Info.Builder setIconUri(@Nullable android.net.Uri); + method @NonNull public android.media.MediaRoute2Info.Builder setVolume(int); + method @NonNull public android.media.MediaRoute2Info.Builder setVolumeHandling(int); + method @NonNull public android.media.MediaRoute2Info.Builder setVolumeMax(int); + } + + public abstract class MediaRoute2ProviderService extends android.app.Service { + ctor public MediaRoute2ProviderService(); + method @NonNull public final java.util.List<android.media.RoutingSessionInfo> getAllSessionInfo(); + method @Nullable public final android.media.RoutingSessionInfo getSessionInfo(@NonNull String); + method public final void notifyRequestFailed(long, int); + method public final void notifyRoutes(@NonNull java.util.Collection<android.media.MediaRoute2Info>); + method public final void notifySessionCreated(long, @NonNull android.media.RoutingSessionInfo); + method public final void notifySessionReleased(@NonNull String); + method public final void notifySessionUpdated(@NonNull android.media.RoutingSessionInfo); + method @CallSuper @Nullable public android.os.IBinder onBind(@NonNull android.content.Intent); + method public abstract void onCreateSession(long, @NonNull String, @NonNull String, @Nullable android.os.Bundle); + method public abstract void onDeselectRoute(long, @NonNull String, @NonNull String); + method public void onDiscoveryPreferenceChanged(@NonNull android.media.RouteDiscoveryPreference); + method public abstract void onReleaseSession(long, @NonNull String); + method public abstract void onSelectRoute(long, @NonNull String, @NonNull String); + method public abstract void onSetRouteVolume(long, @NonNull String, int); + method public abstract void onSetSessionVolume(long, @NonNull String, int); + method public abstract void onTransferToRoute(long, @NonNull String, @NonNull String); + field public static final int REASON_INVALID_COMMAND = 4; // 0x4 + field public static final int REASON_NETWORK_ERROR = 2; // 0x2 + field public static final int REASON_REJECTED = 1; // 0x1 + field public static final int REASON_ROUTE_NOT_AVAILABLE = 3; // 0x3 + field public static final int REASON_UNKNOWN_ERROR = 0; // 0x0 + field public static final long REQUEST_ID_NONE = 0L; // 0x0L + field public static final String SERVICE_INTERFACE = "android.media.MediaRoute2ProviderService"; + } + public class MediaRouter { method public void addCallback(int, android.media.MediaRouter.Callback); method public void addCallback(int, android.media.MediaRouter.Callback, int); @@ -25813,6 +27042,61 @@ package android.media { method public abstract void onVolumeUpdateRequest(android.media.MediaRouter.RouteInfo, int); } + public final class MediaRouter2 { + method @NonNull public java.util.List<android.media.MediaRouter2.RoutingController> getControllers(); + method @NonNull public static android.media.MediaRouter2 getInstance(@NonNull android.content.Context); + method @NonNull public java.util.List<android.media.MediaRoute2Info> getRoutes(); + method @NonNull public android.media.MediaRouter2.RoutingController getSystemController(); + method public void registerControllerCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.MediaRouter2.ControllerCallback); + method public void registerRouteCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.MediaRouter2.RouteCallback, @NonNull android.media.RouteDiscoveryPreference); + method public void registerTransferCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.MediaRouter2.TransferCallback); + method public void setOnGetControllerHintsListener(@Nullable android.media.MediaRouter2.OnGetControllerHintsListener); + method public void stop(); + method public void transferTo(@NonNull android.media.MediaRoute2Info); + method public void unregisterControllerCallback(@NonNull android.media.MediaRouter2.ControllerCallback); + method public void unregisterRouteCallback(@NonNull android.media.MediaRouter2.RouteCallback); + method public void unregisterTransferCallback(@NonNull android.media.MediaRouter2.TransferCallback); + } + + public abstract static class MediaRouter2.ControllerCallback { + ctor public MediaRouter2.ControllerCallback(); + method public void onControllerUpdated(@NonNull android.media.MediaRouter2.RoutingController); + } + + public static interface MediaRouter2.OnGetControllerHintsListener { + method @Nullable public android.os.Bundle onGetControllerHints(@NonNull android.media.MediaRoute2Info); + } + + public abstract static class MediaRouter2.RouteCallback { + ctor public MediaRouter2.RouteCallback(); + method public void onRoutesAdded(@NonNull java.util.List<android.media.MediaRoute2Info>); + method public void onRoutesChanged(@NonNull java.util.List<android.media.MediaRoute2Info>); + method public void onRoutesRemoved(@NonNull java.util.List<android.media.MediaRoute2Info>); + } + + public class MediaRouter2.RoutingController { + method public void deselectRoute(@NonNull android.media.MediaRoute2Info); + method @Nullable public android.os.Bundle getControlHints(); + method @NonNull public java.util.List<android.media.MediaRoute2Info> getDeselectableRoutes(); + method @NonNull public String getId(); + method @NonNull public java.util.List<android.media.MediaRoute2Info> getSelectableRoutes(); + method @NonNull public java.util.List<android.media.MediaRoute2Info> getSelectedRoutes(); + method public int getVolume(); + method public int getVolumeHandling(); + method public int getVolumeMax(); + method public boolean isReleased(); + method public void release(); + method public void selectRoute(@NonNull android.media.MediaRoute2Info); + method public void setVolume(int); + } + + public abstract static class MediaRouter2.TransferCallback { + ctor public MediaRouter2.TransferCallback(); + method public void onStop(@NonNull android.media.MediaRouter2.RoutingController); + method public void onTransfer(@NonNull android.media.MediaRouter2.RoutingController, @NonNull android.media.MediaRouter2.RoutingController); + method public void onTransferFailure(@NonNull android.media.MediaRoute2Info); + } + public class MediaScannerConnection implements android.content.ServiceConnection { ctor public MediaScannerConnection(android.content.Context, android.media.MediaScannerConnection.MediaScannerConnectionClient); method public void connect(); @@ -26171,6 +27455,62 @@ package android.media { field public static final int URI_COLUMN_INDEX = 2; // 0x2 } + public final class RouteDiscoveryPreference implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public java.util.List<java.lang.String> getPreferredFeatures(); + method public boolean shouldPerformActiveScan(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.media.RouteDiscoveryPreference> CREATOR; + } + + public static final class RouteDiscoveryPreference.Builder { + ctor public RouteDiscoveryPreference.Builder(@NonNull java.util.List<java.lang.String>, boolean); + ctor public RouteDiscoveryPreference.Builder(@NonNull android.media.RouteDiscoveryPreference); + method @NonNull public android.media.RouteDiscoveryPreference build(); + method @NonNull public android.media.RouteDiscoveryPreference.Builder setPreferredFeatures(@NonNull java.util.List<java.lang.String>); + method @NonNull public android.media.RouteDiscoveryPreference.Builder setShouldPerformActiveScan(boolean); + } + + public final class RoutingSessionInfo implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public String getClientPackageName(); + method @Nullable public android.os.Bundle getControlHints(); + method @NonNull public java.util.List<java.lang.String> getDeselectableRoutes(); + method @NonNull public String getId(); + method @Nullable public CharSequence getName(); + method @NonNull public java.util.List<java.lang.String> getSelectableRoutes(); + method @NonNull public java.util.List<java.lang.String> getSelectedRoutes(); + method @NonNull public java.util.List<java.lang.String> getTransferableRoutes(); + method public int getVolume(); + method public int getVolumeHandling(); + method public int getVolumeMax(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.media.RoutingSessionInfo> CREATOR; + } + + public static final class RoutingSessionInfo.Builder { + ctor public RoutingSessionInfo.Builder(@NonNull String, @NonNull String); + ctor public RoutingSessionInfo.Builder(@NonNull android.media.RoutingSessionInfo); + method @NonNull public android.media.RoutingSessionInfo.Builder addDeselectableRoute(@NonNull String); + method @NonNull public android.media.RoutingSessionInfo.Builder addSelectableRoute(@NonNull String); + method @NonNull public android.media.RoutingSessionInfo.Builder addSelectedRoute(@NonNull String); + method @NonNull public android.media.RoutingSessionInfo.Builder addTransferableRoute(@NonNull String); + method @NonNull public android.media.RoutingSessionInfo build(); + method @NonNull public android.media.RoutingSessionInfo.Builder clearDeselectableRoutes(); + method @NonNull public android.media.RoutingSessionInfo.Builder clearSelectableRoutes(); + method @NonNull public android.media.RoutingSessionInfo.Builder clearSelectedRoutes(); + method @NonNull public android.media.RoutingSessionInfo.Builder clearTransferableRoutes(); + method @NonNull public android.media.RoutingSessionInfo.Builder removeDeselectableRoute(@NonNull String); + method @NonNull public android.media.RoutingSessionInfo.Builder removeSelectableRoute(@NonNull String); + method @NonNull public android.media.RoutingSessionInfo.Builder removeSelectedRoute(@NonNull String); + method @NonNull public android.media.RoutingSessionInfo.Builder removeTransferableRoute(@NonNull String); + method @NonNull public android.media.RoutingSessionInfo.Builder setControlHints(@Nullable android.os.Bundle); + method @NonNull public android.media.RoutingSessionInfo.Builder setName(@Nullable CharSequence); + method @NonNull public android.media.RoutingSessionInfo.Builder setVolume(int); + method @NonNull public android.media.RoutingSessionInfo.Builder setVolumeHandling(int); + method @NonNull public android.media.RoutingSessionInfo.Builder setVolumeMax(int); + } + public final class Session2Command implements android.os.Parcelable { ctor public Session2Command(int); ctor public Session2Command(@NonNull String, @Nullable android.os.Bundle); @@ -26429,9 +27769,11 @@ package android.media { public abstract class VolumeProvider { ctor public VolumeProvider(int, int, int); + ctor public VolumeProvider(int, int, int, @Nullable String); method public final int getCurrentVolume(); method public final int getMaxVolume(); method public final int getVolumeControl(); + method @Nullable public final String getVolumeControlId(); method public void onAdjustVolume(int); method public void onSetVolumeTo(int); method public final void setCurrentVolume(int); @@ -26518,6 +27860,8 @@ package android.media.audiofx { field public static final int CONTENT_TYPE_VOICE = 3; // 0x3 field public static final String EFFECT_AUXILIARY = "Auxiliary"; field public static final String EFFECT_INSERT = "Insert"; + field public static final String EFFECT_POST_PROCESSING = "Post Processing"; + field public static final String EFFECT_PRE_PROCESSING = "Pre Processing"; field public static final java.util.UUID EFFECT_TYPE_AEC; field public static final java.util.UUID EFFECT_TYPE_AGC; field public static final java.util.UUID EFFECT_TYPE_BASS_BOOST; @@ -27263,6 +28607,7 @@ package android.media.session { method @Nullable public android.app.PendingIntent getSessionActivity(); method @NonNull public android.os.Bundle getSessionInfo(); method @NonNull public android.media.session.MediaSession.Token getSessionToken(); + method @NonNull public String getTag(); method @NonNull public android.media.session.MediaController.TransportControls getTransportControls(); method public void registerCallback(@NonNull android.media.session.MediaController.Callback); method public void registerCallback(@NonNull android.media.session.MediaController.Callback, @Nullable android.os.Handler); @@ -27290,6 +28635,7 @@ package android.media.session { method public int getMaxVolume(); method public int getPlaybackType(); method public int getVolumeControl(); + method @Nullable public String getVolumeControlId(); method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.media.session.MediaController.PlaybackInfo> CREATOR; field public static final int PLAYBACK_TYPE_LOCAL = 1; // 0x1 @@ -27558,6 +28904,7 @@ package android.media.tv { field public static final String COLUMN_DESCRIPTION = "description"; field public static final String COLUMN_DISPLAY_NAME = "display_name"; field public static final String COLUMN_DISPLAY_NUMBER = "display_number"; + field public static final String COLUMN_GLOBAL_CONTENT_ID = "global_content_id"; field public static final String COLUMN_INPUT_ID = "input_id"; field public static final String COLUMN_INTERNAL_PROVIDER_DATA = "internal_provider_data"; field public static final String COLUMN_INTERNAL_PROVIDER_FLAG1 = "internal_provider_flag1"; @@ -27583,6 +28930,7 @@ package android.media.tv { field public static final String SERVICE_TYPE_AUDIO_VIDEO = "SERVICE_TYPE_AUDIO_VIDEO"; field public static final String SERVICE_TYPE_OTHER = "SERVICE_TYPE_OTHER"; field public static final String TYPE_1SEG = "TYPE_1SEG"; + field public static final String TYPE_ATSC3_T = "TYPE_ATSC3_T"; field public static final String TYPE_ATSC_C = "TYPE_ATSC_C"; field public static final String TYPE_ATSC_M_H = "TYPE_ATSC_M_H"; field public static final String TYPE_ATSC_T = "TYPE_ATSC_T"; @@ -27676,6 +29024,7 @@ package android.media.tv { field public static final String COLUMN_SEASON_TITLE = "season_title"; field public static final String COLUMN_SERIES_ID = "series_id"; field public static final String COLUMN_SHORT_DESCRIPTION = "short_description"; + field public static final String COLUMN_SPLIT_ID = "split_id"; field public static final String COLUMN_STARTING_PRICE = "starting_price"; field public static final String COLUMN_THUMBNAIL_ASPECT_RATIO = "poster_thumbnail_aspect_ratio"; field public static final String COLUMN_THUMBNAIL_URI = "thumbnail_uri"; @@ -27723,6 +29072,8 @@ package android.media.tv { field public static final String COLUMN_EPISODE_DISPLAY_NUMBER = "episode_display_number"; field @Deprecated public static final String COLUMN_EPISODE_NUMBER = "episode_number"; field public static final String COLUMN_EPISODE_TITLE = "episode_title"; + field public static final String COLUMN_EVENT_ID = "event_id"; + field public static final String COLUMN_GLOBAL_CONTENT_ID = "global_content_id"; field public static final String COLUMN_INTERNAL_PROVIDER_DATA = "internal_provider_data"; field public static final String COLUMN_INTERNAL_PROVIDER_FLAG1 = "internal_provider_flag1"; field public static final String COLUMN_INTERNAL_PROVIDER_FLAG2 = "internal_provider_flag2"; @@ -27739,6 +29090,7 @@ package android.media.tv { field public static final String COLUMN_SEASON_TITLE = "season_title"; field public static final String COLUMN_SERIES_ID = "series_id"; field public static final String COLUMN_SHORT_DESCRIPTION = "short_description"; + field public static final String COLUMN_SPLIT_ID = "split_id"; field public static final String COLUMN_START_TIME_UTC_MILLIS = "start_time_utc_millis"; field public static final String COLUMN_THUMBNAIL_URI = "thumbnail_uri"; field public static final String COLUMN_TITLE = "title"; @@ -27804,6 +29156,7 @@ package android.media.tv { field public static final String COLUMN_SEASON_TITLE = "season_title"; field public static final String COLUMN_SERIES_ID = "series_id"; field public static final String COLUMN_SHORT_DESCRIPTION = "short_description"; + field public static final String COLUMN_SPLIT_ID = "split_id"; field public static final String COLUMN_START_TIME_UTC_MILLIS = "start_time_utc_millis"; field public static final String COLUMN_THUMBNAIL_URI = "thumbnail_uri"; field public static final String COLUMN_TITLE = "title"; @@ -27864,6 +29217,7 @@ package android.media.tv { field public static final String COLUMN_SEASON_TITLE = "season_title"; field public static final String COLUMN_SERIES_ID = "series_id"; field public static final String COLUMN_SHORT_DESCRIPTION = "short_description"; + field public static final String COLUMN_SPLIT_ID = "split_id"; field public static final String COLUMN_STARTING_PRICE = "starting_price"; field public static final String COLUMN_THUMBNAIL_ASPECT_RATIO = "poster_thumbnail_aspect_ratio"; field public static final String COLUMN_THUMBNAIL_URI = "thumbnail_uri"; @@ -27973,6 +29327,19 @@ package android.media.tv { field public static final int TIME_SHIFT_STATUS_UNSUPPORTED = 1; // 0x1 field public static final int VIDEO_UNAVAILABLE_REASON_AUDIO_ONLY = 4; // 0x4 field public static final int VIDEO_UNAVAILABLE_REASON_BUFFERING = 3; // 0x3 + field public static final int VIDEO_UNAVAILABLE_REASON_CAS_BLACKOUT = 16; // 0x10 + field public static final int VIDEO_UNAVAILABLE_REASON_CAS_CARD_INVALID = 15; // 0xf + field public static final int VIDEO_UNAVAILABLE_REASON_CAS_CARD_MUTE = 14; // 0xe + field public static final int VIDEO_UNAVAILABLE_REASON_CAS_INSUFFICIENT_OUTPUT_PROTECTION = 7; // 0x7 + field public static final int VIDEO_UNAVAILABLE_REASON_CAS_LICENSE_EXPIRED = 10; // 0xa + field public static final int VIDEO_UNAVAILABLE_REASON_CAS_NEED_ACTIVATION = 11; // 0xb + field public static final int VIDEO_UNAVAILABLE_REASON_CAS_NEED_PAIRING = 12; // 0xc + field public static final int VIDEO_UNAVAILABLE_REASON_CAS_NO_CARD = 13; // 0xd + field public static final int VIDEO_UNAVAILABLE_REASON_CAS_PVR_RECORDING_NOT_ALLOWED = 8; // 0x8 + field public static final int VIDEO_UNAVAILABLE_REASON_CAS_REBOOTING = 17; // 0x11 + field public static final int VIDEO_UNAVAILABLE_REASON_CAS_UNKNOWN = 18; // 0x12 + field public static final int VIDEO_UNAVAILABLE_REASON_INSUFFICIENT_RESOURCE = 6; // 0x6 + field public static final int VIDEO_UNAVAILABLE_REASON_NOT_CONNECTED = 5; // 0x5 field public static final int VIDEO_UNAVAILABLE_REASON_TUNING = 1; // 0x1 field public static final int VIDEO_UNAVAILABLE_REASON_UNKNOWN = 0; // 0x0 field public static final int VIDEO_UNAVAILABLE_REASON_WEAK_SIGNAL = 2; // 0x2 @@ -27990,8 +29357,15 @@ package android.media.tv { public abstract class TvInputService extends android.app.Service { ctor public TvInputService(); method public final android.os.IBinder onBind(android.content.Intent); - method @Nullable public android.media.tv.TvInputService.RecordingSession onCreateRecordingSession(String); - method @Nullable public abstract android.media.tv.TvInputService.Session onCreateSession(String); + method @Nullable public android.media.tv.TvInputService.RecordingSession onCreateRecordingSession(@NonNull String); + method @Nullable public android.media.tv.TvInputService.RecordingSession onCreateRecordingSession(@NonNull String, @NonNull String); + method @Nullable public abstract android.media.tv.TvInputService.Session onCreateSession(@NonNull String); + method @Nullable public android.media.tv.TvInputService.Session onCreateSession(@NonNull String, @NonNull String); + field public static final int PRIORITY_HINT_USE_CASE_TYPE_BACKGROUND = 100; // 0x64 + field public static final int PRIORITY_HINT_USE_CASE_TYPE_LIVE = 400; // 0x190 + field public static final int PRIORITY_HINT_USE_CASE_TYPE_PLAYBACK = 300; // 0x12c + field public static final int PRIORITY_HINT_USE_CASE_TYPE_RECORD = 500; // 0x1f4 + field public static final int PRIORITY_HINT_USE_CASE_TYPE_SCAN = 200; // 0xc8 field public static final String SERVICE_INTERFACE = "android.media.tv.TvInputService"; field public static final String SERVICE_META_DATA = "android.media.tv.input"; } @@ -28012,6 +29386,7 @@ package android.media.tv { method public void onAppPrivateCommand(@NonNull String, android.os.Bundle); method public abstract void onRelease(); method public abstract void onStartRecording(@Nullable android.net.Uri); + method public void onStartRecording(@Nullable android.net.Uri, @NonNull android.os.Bundle); method public abstract void onStopRecording(); method public abstract void onTune(android.net.Uri); method public void onTune(android.net.Uri, android.os.Bundle); @@ -28062,6 +29437,7 @@ package android.media.tv { method public void release(); method public void sendAppPrivateCommand(@NonNull String, android.os.Bundle); method public void startRecording(@Nullable android.net.Uri); + method public void startRecording(@Nullable android.net.Uri, @NonNull android.os.Bundle); method public void stopRecording(); method public void tune(String, android.net.Uri); method public void tune(String, android.net.Uri, android.os.Bundle); @@ -28081,6 +29457,7 @@ package android.media.tv { method public int getAudioChannelCount(); method public int getAudioSampleRate(); method public CharSequence getDescription(); + method @Nullable public String getEncoding(); method public android.os.Bundle getExtra(); method public String getId(); method public String getLanguage(); @@ -28090,7 +29467,11 @@ package android.media.tv { method public int getVideoHeight(); method public float getVideoPixelAspectRatio(); method public int getVideoWidth(); - method public void writeToParcel(android.os.Parcel, int); + method public boolean isAudioDescription(); + method public boolean isEncrypted(); + method public boolean isHardOfHearing(); + method public boolean isSpokenSubtitle(); + method public void writeToParcel(@NonNull android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.media.tv.TvTrackInfo> CREATOR; field public static final int TYPE_AUDIO = 0; // 0x0 field public static final int TYPE_SUBTITLE = 2; // 0x2 @@ -28099,17 +29480,22 @@ package android.media.tv { public static final class TvTrackInfo.Builder { ctor public TvTrackInfo.Builder(int, @NonNull String); - method public android.media.tv.TvTrackInfo build(); - method public android.media.tv.TvTrackInfo.Builder setAudioChannelCount(int); - method public android.media.tv.TvTrackInfo.Builder setAudioSampleRate(int); - method public android.media.tv.TvTrackInfo.Builder setDescription(CharSequence); - method public android.media.tv.TvTrackInfo.Builder setExtra(android.os.Bundle); - method public android.media.tv.TvTrackInfo.Builder setLanguage(String); - method public android.media.tv.TvTrackInfo.Builder setVideoActiveFormatDescription(byte); - method public android.media.tv.TvTrackInfo.Builder setVideoFrameRate(float); - method public android.media.tv.TvTrackInfo.Builder setVideoHeight(int); - method public android.media.tv.TvTrackInfo.Builder setVideoPixelAspectRatio(float); - method public android.media.tv.TvTrackInfo.Builder setVideoWidth(int); + method @NonNull public android.media.tv.TvTrackInfo build(); + method @NonNull public android.media.tv.TvTrackInfo.Builder setAudioChannelCount(int); + method @NonNull public android.media.tv.TvTrackInfo.Builder setAudioDescription(boolean); + method @NonNull public android.media.tv.TvTrackInfo.Builder setAudioSampleRate(int); + method @NonNull public android.media.tv.TvTrackInfo.Builder setDescription(@NonNull CharSequence); + method @NonNull public android.media.tv.TvTrackInfo.Builder setEncoding(@Nullable String); + method @NonNull public android.media.tv.TvTrackInfo.Builder setEncrypted(boolean); + method @NonNull public android.media.tv.TvTrackInfo.Builder setExtra(@NonNull android.os.Bundle); + method @NonNull public android.media.tv.TvTrackInfo.Builder setHardOfHearing(boolean); + method @NonNull public android.media.tv.TvTrackInfo.Builder setLanguage(@NonNull String); + method @NonNull public android.media.tv.TvTrackInfo.Builder setSpokenSubtitle(boolean); + method @NonNull public android.media.tv.TvTrackInfo.Builder setVideoActiveFormatDescription(byte); + method @NonNull public android.media.tv.TvTrackInfo.Builder setVideoFrameRate(float); + method @NonNull public android.media.tv.TvTrackInfo.Builder setVideoHeight(int); + method @NonNull public android.media.tv.TvTrackInfo.Builder setVideoPixelAspectRatio(float); + method @NonNull public android.media.tv.TvTrackInfo.Builder setVideoWidth(int); } public class TvView extends android.view.ViewGroup { @@ -28416,21 +29802,75 @@ package android.net { field @NonNull public static final android.os.Parcelable.Creator<android.net.CaptivePortal> CREATOR; } + public class ConnectivityDiagnosticsManager { + method public void registerConnectivityDiagnosticsCallback(@NonNull android.net.NetworkRequest, @NonNull java.util.concurrent.Executor, @NonNull android.net.ConnectivityDiagnosticsManager.ConnectivityDiagnosticsCallback); + method public void unregisterConnectivityDiagnosticsCallback(@NonNull android.net.ConnectivityDiagnosticsManager.ConnectivityDiagnosticsCallback); + } + + public abstract static class ConnectivityDiagnosticsManager.ConnectivityDiagnosticsCallback { + ctor public ConnectivityDiagnosticsManager.ConnectivityDiagnosticsCallback(); + method public void onConnectivityReportAvailable(@NonNull android.net.ConnectivityDiagnosticsManager.ConnectivityReport); + method public void onDataStallSuspected(@NonNull android.net.ConnectivityDiagnosticsManager.DataStallReport); + method public void onNetworkConnectivityReported(@NonNull android.net.Network, boolean); + } + + public static final class ConnectivityDiagnosticsManager.ConnectivityReport implements android.os.Parcelable { + ctor public ConnectivityDiagnosticsManager.ConnectivityReport(@NonNull android.net.Network, long, @NonNull android.net.LinkProperties, @NonNull android.net.NetworkCapabilities, @NonNull android.os.PersistableBundle); + method public int describeContents(); + method @NonNull public android.os.PersistableBundle getAdditionalInfo(); + method @NonNull public android.net.LinkProperties getLinkProperties(); + method @NonNull public android.net.Network getNetwork(); + method @NonNull public android.net.NetworkCapabilities getNetworkCapabilities(); + method public long getReportTimestamp(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.net.ConnectivityDiagnosticsManager.ConnectivityReport> CREATOR; + field public static final String KEY_NETWORK_PROBES_ATTEMPTED_BITMASK = "networkProbesAttempted"; + field public static final String KEY_NETWORK_PROBES_SUCCEEDED_BITMASK = "networkProbesSucceeded"; + field public static final String KEY_NETWORK_VALIDATION_RESULT = "networkValidationResult"; + field public static final int NETWORK_PROBE_DNS = 4; // 0x4 + field public static final int NETWORK_PROBE_FALLBACK = 32; // 0x20 + field public static final int NETWORK_PROBE_HTTP = 8; // 0x8 + field public static final int NETWORK_PROBE_HTTPS = 16; // 0x10 + field public static final int NETWORK_PROBE_PRIVATE_DNS = 64; // 0x40 + field public static final int NETWORK_VALIDATION_RESULT_INVALID = 0; // 0x0 + field public static final int NETWORK_VALIDATION_RESULT_PARTIALLY_VALID = 2; // 0x2 + field public static final int NETWORK_VALIDATION_RESULT_SKIPPED = 3; // 0x3 + field public static final int NETWORK_VALIDATION_RESULT_VALID = 1; // 0x1 + } + + public static final class ConnectivityDiagnosticsManager.DataStallReport implements android.os.Parcelable { + ctor public ConnectivityDiagnosticsManager.DataStallReport(@NonNull android.net.Network, long, int, @NonNull android.net.LinkProperties, @NonNull android.net.NetworkCapabilities, @NonNull android.os.PersistableBundle); + method public int describeContents(); + method public int getDetectionMethod(); + method @NonNull public android.net.LinkProperties getLinkProperties(); + method @NonNull public android.net.Network getNetwork(); + method @NonNull public android.net.NetworkCapabilities getNetworkCapabilities(); + method public long getReportTimestamp(); + method @NonNull public android.os.PersistableBundle getStallDetails(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.net.ConnectivityDiagnosticsManager.DataStallReport> CREATOR; + field public static final int DETECTION_METHOD_DNS_EVENTS = 1; // 0x1 + field public static final int DETECTION_METHOD_TCP_METRICS = 2; // 0x2 + field public static final String KEY_DNS_CONSECUTIVE_TIMEOUTS = "dnsConsecutiveTimeouts"; + field public static final String KEY_TCP_METRICS_COLLECTION_PERIOD_MILLIS = "tcpMetricsCollectionPeriodMillis"; + field public static final String KEY_TCP_PACKET_FAIL_RATE = "tcpPacketFailRate"; + } + public class ConnectivityManager { method public void addDefaultNetworkActiveListener(android.net.ConnectivityManager.OnNetworkActiveListener); method public boolean bindProcessToNetwork(@Nullable android.net.Network); method @NonNull public android.net.SocketKeepalive createSocketKeepalive(@NonNull android.net.Network, @NonNull android.net.IpSecManager.UdpEncapsulationSocket, @NonNull java.net.InetAddress, @NonNull java.net.InetAddress, @NonNull java.util.concurrent.Executor, @NonNull android.net.SocketKeepalive.Callback); - method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) @Nullable public android.net.Network getActiveNetwork(); + method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public android.net.Network getActiveNetwork(); method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public android.net.NetworkInfo getActiveNetworkInfo(); method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public android.net.NetworkInfo[] getAllNetworkInfo(); - method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) @NonNull public android.net.Network[] getAllNetworks(); + method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public android.net.Network[] getAllNetworks(); method @Deprecated public boolean getBackgroundDataSetting(); method @Nullable public android.net.Network getBoundNetworkForProcess(); method public int getConnectionOwnerUid(int, @NonNull java.net.InetSocketAddress, @NonNull java.net.InetSocketAddress); method @Nullable public android.net.ProxyInfo getDefaultProxy(); - method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) @Nullable public android.net.LinkProperties getLinkProperties(@Nullable android.net.Network); + method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public android.net.LinkProperties getLinkProperties(@Nullable android.net.Network); method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public int getMultipathPreference(@Nullable android.net.Network); - method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) @Nullable public android.net.NetworkCapabilities getNetworkCapabilities(@Nullable android.net.Network); + method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public android.net.NetworkCapabilities getNetworkCapabilities(@Nullable android.net.Network); method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public android.net.NetworkInfo getNetworkInfo(int); method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public android.net.NetworkInfo getNetworkInfo(@Nullable android.net.Network); method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public int getNetworkPreference(); @@ -28520,6 +29960,7 @@ package android.net { ctor public DhcpInfo(); method public int describeContents(); method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.net.DhcpInfo> CREATOR; field public int dns1; field public int dns2; field public int gateway; @@ -28555,6 +29996,35 @@ package android.net { field public final int code; } + public final class Ikev2VpnProfile extends android.net.PlatformVpnProfile { + method @NonNull public java.util.List<java.lang.String> getAllowedAlgorithms(); + method public int getMaxMtu(); + method @Nullable public String getPassword(); + method @Nullable public byte[] getPresharedKey(); + method @Nullable public android.net.ProxyInfo getProxyInfo(); + method @Nullable public java.security.PrivateKey getRsaPrivateKey(); + method @NonNull public String getServerAddr(); + method @Nullable public java.security.cert.X509Certificate getServerRootCaCert(); + method @Nullable public java.security.cert.X509Certificate getUserCert(); + method @NonNull public String getUserIdentity(); + method @Nullable public String getUsername(); + method public boolean isBypassable(); + method public boolean isMetered(); + } + + public static final class Ikev2VpnProfile.Builder { + ctor public Ikev2VpnProfile.Builder(@NonNull String, @NonNull String); + method @NonNull public android.net.Ikev2VpnProfile build(); + method @NonNull public android.net.Ikev2VpnProfile.Builder setAllowedAlgorithms(@NonNull java.util.List<java.lang.String>); + method @NonNull public android.net.Ikev2VpnProfile.Builder setAuthDigitalSignature(@NonNull java.security.cert.X509Certificate, @NonNull java.security.PrivateKey, @Nullable java.security.cert.X509Certificate); + method @NonNull public android.net.Ikev2VpnProfile.Builder setAuthPsk(@NonNull byte[]); + method @NonNull public android.net.Ikev2VpnProfile.Builder setAuthUsernamePassword(@NonNull String, @NonNull String, @Nullable java.security.cert.X509Certificate); + method @NonNull public android.net.Ikev2VpnProfile.Builder setBypassable(boolean); + method @NonNull public android.net.Ikev2VpnProfile.Builder setMaxMtu(int); + method @NonNull public android.net.Ikev2VpnProfile.Builder setMetered(boolean); + method @NonNull public android.net.Ikev2VpnProfile.Builder setProxy(@Nullable android.net.ProxyInfo); + } + public class InetAddresses { method public static boolean isNumericAddress(@NonNull String); method @NonNull public static java.net.InetAddress parseNumericAddress(@NonNull String); @@ -28649,21 +30119,26 @@ package android.net { method public boolean addRoute(@NonNull android.net.RouteInfo); method public void clear(); method public int describeContents(); + method @Nullable public java.net.Inet4Address getDhcpServerAddress(); method @NonNull public java.util.List<java.net.InetAddress> getDnsServers(); method @Nullable public String getDomains(); method @Nullable public android.net.ProxyInfo getHttpProxy(); method @Nullable public String getInterfaceName(); method @NonNull public java.util.List<android.net.LinkAddress> getLinkAddresses(); method public int getMtu(); + method @Nullable public android.net.IpPrefix getNat64Prefix(); method @Nullable public String getPrivateDnsServerName(); method @NonNull public java.util.List<android.net.RouteInfo> getRoutes(); method public boolean isPrivateDnsActive(); + method public boolean isWakeOnLanSupported(); + method public void setDhcpServerAddress(@Nullable java.net.Inet4Address); method public void setDnsServers(@NonNull java.util.Collection<java.net.InetAddress>); method public void setDomains(@Nullable String); method public void setHttpProxy(@Nullable android.net.ProxyInfo); method public void setInterfaceName(@Nullable String); method public void setLinkAddresses(@NonNull java.util.Collection<android.net.LinkAddress>); method public void setMtu(int); + method public void setNat64Prefix(@Nullable android.net.IpPrefix); method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.net.LinkProperties> CREATOR; } @@ -28728,7 +30203,9 @@ package android.net { method @NonNull public static android.net.MacAddress fromBytes(@NonNull byte[]); method @NonNull public static android.net.MacAddress fromString(@NonNull String); method public int getAddressType(); + method @Nullable public java.net.Inet6Address getLinkLocalIpv6FromEui48Mac(); method public boolean isLocallyAssigned(); + method public boolean matches(@NonNull android.net.MacAddress, @NonNull android.net.MacAddress); method @NonNull public byte[] toByteArray(); method @NonNull public String toOuiString(); method public void writeToParcel(android.os.Parcel, int); @@ -28767,10 +30244,13 @@ package android.net { } public final class NetworkCapabilities implements android.os.Parcelable { + ctor public NetworkCapabilities(); ctor public NetworkCapabilities(android.net.NetworkCapabilities); method public int describeContents(); method public int getLinkDownstreamBandwidthKbps(); method public int getLinkUpstreamBandwidthKbps(); + method @Nullable public android.net.NetworkSpecifier getNetworkSpecifier(); + method public int getOwnerUid(); method public int getSignalStrength(); method @Nullable public android.net.TransportInfo getTransportInfo(); method public boolean hasCapability(int); @@ -28796,6 +30276,7 @@ package android.net { field public static final int NET_CAPABILITY_NOT_VPN = 15; // 0xf field public static final int NET_CAPABILITY_RCS = 8; // 0x8 field public static final int NET_CAPABILITY_SUPL = 1; // 0x1 + field public static final int NET_CAPABILITY_TEMPORARILY_NOT_METERED = 25; // 0x19 field public static final int NET_CAPABILITY_TRUSTED = 14; // 0xe field public static final int NET_CAPABILITY_VALIDATED = 16; // 0x10 field public static final int NET_CAPABILITY_WIFI_P2P = 6; // 0x6 @@ -28811,6 +30292,7 @@ package android.net { } @Deprecated public class NetworkInfo implements android.os.Parcelable { + ctor @Deprecated public NetworkInfo(int, int, @Nullable String, @Nullable String); method @Deprecated public int describeContents(); method @Deprecated @NonNull public android.net.NetworkInfo.DetailedState getDetailedState(); method @Deprecated public String getExtraInfo(); @@ -28825,6 +30307,7 @@ package android.net { method @Deprecated public boolean isConnectedOrConnecting(); method @Deprecated public boolean isFailover(); method @Deprecated public boolean isRoaming(); + method @Deprecated public void setDetailedState(@NonNull android.net.NetworkInfo.DetailedState, @Nullable String, @Nullable String); method @Deprecated public void writeToParcel(android.os.Parcel, int); field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.net.NetworkInfo> CREATOR; } @@ -28855,7 +30338,9 @@ package android.net { } public class NetworkRequest implements android.os.Parcelable { + method public boolean canBeSatisfiedBy(@Nullable android.net.NetworkCapabilities); method public int describeContents(); + method @Nullable public android.net.NetworkSpecifier getNetworkSpecifier(); method public boolean hasCapability(int); method public boolean hasTransport(int); method public void writeToParcel(android.os.Parcel, int); @@ -28867,9 +30352,10 @@ package android.net { method public android.net.NetworkRequest.Builder addCapability(int); method public android.net.NetworkRequest.Builder addTransportType(int); method public android.net.NetworkRequest build(); + method @NonNull public android.net.NetworkRequest.Builder clearCapabilities(); method public android.net.NetworkRequest.Builder removeCapability(int); method public android.net.NetworkRequest.Builder removeTransportType(int); - method public android.net.NetworkRequest.Builder setNetworkSpecifier(String); + method @Deprecated public android.net.NetworkRequest.Builder setNetworkSpecifier(String); method public android.net.NetworkRequest.Builder setNetworkSpecifier(android.net.NetworkSpecifier); } @@ -28881,6 +30367,14 @@ package android.net { field public String response; } + public abstract class PlatformVpnProfile { + method public final int getType(); + method @NonNull public final String getTypeString(); + field public static final int TYPE_IKEV2_IPSEC_PSK = 7; // 0x7 + field public static final int TYPE_IKEV2_IPSEC_RSA = 8; // 0x8 + field public static final int TYPE_IKEV2_IPSEC_USER_PASS = 6; // 0x6 + } + public final class Proxy { ctor public Proxy(); method @Deprecated public static String getDefaultHost(); @@ -28892,14 +30386,17 @@ package android.net { } public class ProxyInfo implements android.os.Parcelable { + ctor public ProxyInfo(@Nullable android.net.ProxyInfo); method public static android.net.ProxyInfo buildDirectProxy(String, int); method public static android.net.ProxyInfo buildDirectProxy(String, int, java.util.List<java.lang.String>); method public static android.net.ProxyInfo buildPacProxy(android.net.Uri); + method @NonNull public static android.net.ProxyInfo buildPacProxy(@NonNull android.net.Uri, int); method public int describeContents(); method public String[] getExclusionList(); method public String getHost(); method public android.net.Uri getPacFileUrl(); method public int getPort(); + method public boolean isValid(); method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.net.ProxyInfo> CREATOR; } @@ -28965,6 +30462,19 @@ package android.net { method public void onStopped(); } + public final class TelephonyNetworkSpecifier extends android.net.NetworkSpecifier implements android.os.Parcelable { + method public int describeContents(); + method public int getSubscriptionId(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.net.TelephonyNetworkSpecifier> CREATOR; + } + + public static final class TelephonyNetworkSpecifier.Builder { + ctor public TelephonyNetworkSpecifier.Builder(); + method @NonNull public android.net.TelephonyNetworkSpecifier build(); + method @NonNull public android.net.TelephonyNetworkSpecifier.Builder setSubscriptionId(int); + } + public class TrafficStats { ctor public TrafficStats(); method public static void clearThreadStatsTag(); @@ -28974,12 +30484,14 @@ package android.net { method public static long getMobileRxPackets(); method public static long getMobileTxBytes(); method public static long getMobileTxPackets(); + method public static long getRxPackets(@NonNull String); method public static int getThreadStatsTag(); method public static int getThreadStatsUid(); method public static long getTotalRxBytes(); method public static long getTotalRxPackets(); method public static long getTotalTxBytes(); method public static long getTotalTxPackets(); + method public static long getTxPackets(@NonNull String); method public static long getUidRxBytes(int); method public static long getUidRxPackets(int); method @Deprecated public static long getUidTcpRxBytes(int); @@ -29143,6 +30655,13 @@ package android.net { method public String sanitize(String); } + public class VpnManager { + method public void deleteProvisionedVpnProfile(); + method @Nullable public android.content.Intent provisionVpnProfile(@NonNull android.net.PlatformVpnProfile); + method public void startProvisionedVpnProfile(); + method public void stopProvisionedVpnProfile(); + } + public class VpnService extends android.app.Service { ctor public VpnService(); method public final boolean isAlwaysOn(); @@ -29326,7 +30845,8 @@ package android.net.rtp { } public class AudioGroup { - ctor public AudioGroup(); + ctor @Deprecated public AudioGroup(); + ctor public AudioGroup(@NonNull android.content.Context); method public void clear(); method public int getMode(); method public android.net.rtp.AudioStream[] getStreams(); @@ -29469,6 +30989,7 @@ package android.net.sip { method public String getSipDomain(); method public String getUriString(); method public String getUserName(); + method public void setCallingUid(int); method public void writeToParcel(android.os.Parcel, int); field public static final android.os.Parcelable.Creator<android.net.sip.SipProfile> CREATOR; } @@ -29560,8 +31081,27 @@ package android.net.ssl { package android.net.wifi { - public class ScanResult implements android.os.Parcelable { + public abstract class EasyConnectStatusCallback { + field public static final int EASY_CONNECT_EVENT_FAILURE_AUTHENTICATION = -2; // 0xfffffffe + field public static final int EASY_CONNECT_EVENT_FAILURE_BUSY = -5; // 0xfffffffb + field public static final int EASY_CONNECT_EVENT_FAILURE_CANNOT_FIND_NETWORK = -10; // 0xfffffff6 + field public static final int EASY_CONNECT_EVENT_FAILURE_CONFIGURATION = -4; // 0xfffffffc + field public static final int EASY_CONNECT_EVENT_FAILURE_ENROLLEE_AUTHENTICATION = -11; // 0xfffffff5 + field public static final int EASY_CONNECT_EVENT_FAILURE_ENROLLEE_REJECTED_CONFIGURATION = -12; // 0xfffffff4 + field public static final int EASY_CONNECT_EVENT_FAILURE_GENERIC = -7; // 0xfffffff9 + field public static final int EASY_CONNECT_EVENT_FAILURE_INVALID_NETWORK = -9; // 0xfffffff7 + field public static final int EASY_CONNECT_EVENT_FAILURE_INVALID_URI = -1; // 0xffffffff + field public static final int EASY_CONNECT_EVENT_FAILURE_NOT_COMPATIBLE = -3; // 0xfffffffd + field public static final int EASY_CONNECT_EVENT_FAILURE_NOT_SUPPORTED = -8; // 0xfffffff8 + field public static final int EASY_CONNECT_EVENT_FAILURE_TIMEOUT = -6; // 0xfffffffa + } + + public final class ScanResult implements android.os.Parcelable { + ctor public ScanResult(@NonNull android.net.wifi.ScanResult); + ctor public ScanResult(); method public int describeContents(); + method @NonNull public java.util.List<android.net.wifi.ScanResult.InformationElement> getInformationElements(); + method public int getWifiStandard(); method public boolean is80211mcResponder(); method public boolean isPasspointNetwork(); method public void writeToParcel(android.os.Parcel, int); @@ -29571,7 +31111,13 @@ package android.net.wifi { field public static final int CHANNEL_WIDTH_40MHZ = 1; // 0x1 field public static final int CHANNEL_WIDTH_80MHZ = 2; // 0x2 field public static final int CHANNEL_WIDTH_80MHZ_PLUS_MHZ = 4; // 0x4 + field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.ScanResult> CREATOR; field public String SSID; + field public static final int WIFI_STANDARD_11AC = 5; // 0x5 + field public static final int WIFI_STANDARD_11AX = 6; // 0x6 + field public static final int WIFI_STANDARD_11N = 4; // 0x4 + field public static final int WIFI_STANDARD_LEGACY = 1; // 0x1 + field public static final int WIFI_STANDARD_UNKNOWN = 0; // 0x0 field public String capabilities; field public int centerFreq0; field public int centerFreq1; @@ -29583,6 +31129,28 @@ package android.net.wifi { field public CharSequence venueName; } + public static class ScanResult.InformationElement { + ctor public ScanResult.InformationElement(@NonNull android.net.wifi.ScanResult.InformationElement); + method @NonNull public java.nio.ByteBuffer getBytes(); + method public int getId(); + method public int getIdExt(); + } + + public final class SoftApConfiguration implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public android.net.MacAddress getBssid(); + method @Nullable public String getPassphrase(); + method public int getSecurityType(); + method @Nullable public String getSsid(); + method public boolean isHiddenSsid(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.SoftApConfiguration> CREATOR; + field public static final int SECURITY_TYPE_OPEN = 0; // 0x0 + field public static final int SECURITY_TYPE_WPA2_PSK = 1; // 0x1 + field public static final int SECURITY_TYPE_WPA3_SAE = 3; // 0x3 + field public static final int SECURITY_TYPE_WPA3_SAE_TRANSITION = 2; // 0x2 + } + public enum SupplicantState implements android.os.Parcelable { method public int describeContents(); method public static boolean isValidState(android.net.wifi.SupplicantState); @@ -29604,14 +31172,26 @@ package android.net.wifi { @Deprecated public class WifiConfiguration implements android.os.Parcelable { ctor @Deprecated public WifiConfiguration(); + ctor @Deprecated public WifiConfiguration(@NonNull android.net.wifi.WifiConfiguration); method public int describeContents(); method @Deprecated public android.net.ProxyInfo getHttpProxy(); + method @Deprecated @NonNull public String getKey(); method @Deprecated @NonNull public android.net.MacAddress getRandomizedMacAddress(); method @Deprecated public boolean isPasspoint(); method @Deprecated public void setHttpProxy(android.net.ProxyInfo); + method @Deprecated public void setSecurityParams(int); method public void writeToParcel(android.os.Parcel, int); field @Deprecated public String BSSID; field @Deprecated public String FQDN; + field @Deprecated public static final int SECURITY_TYPE_EAP = 3; // 0x3 + field @Deprecated public static final int SECURITY_TYPE_EAP_SUITE_B = 5; // 0x5 + field @Deprecated public static final int SECURITY_TYPE_OPEN = 0; // 0x0 + field @Deprecated public static final int SECURITY_TYPE_OWE = 6; // 0x6 + field @Deprecated public static final int SECURITY_TYPE_PSK = 2; // 0x2 + field @Deprecated public static final int SECURITY_TYPE_SAE = 4; // 0x4 + field @Deprecated public static final int SECURITY_TYPE_WAPI_CERT = 8; // 0x8 + field @Deprecated public static final int SECURITY_TYPE_WAPI_PSK = 7; // 0x7 + field @Deprecated public static final int SECURITY_TYPE_WEP = 1; // 0x1 field @Deprecated public String SSID; field @Deprecated @NonNull public java.util.BitSet allowedAuthAlgorithms; field @Deprecated @NonNull public java.util.BitSet allowedGroupCiphers; @@ -29636,6 +31216,7 @@ package android.net.wifi { @Deprecated public static class WifiConfiguration.AuthAlgorithm { field @Deprecated public static final int LEAP = 2; // 0x2 field @Deprecated public static final int OPEN = 0; // 0x0 + field @Deprecated public static final int SAE = 3; // 0x3 field @Deprecated public static final int SHARED = 1; // 0x1 field @Deprecated public static final String[] strings; field @Deprecated public static final String varName = "auth_alg"; @@ -29644,6 +31225,7 @@ package android.net.wifi { @Deprecated public static class WifiConfiguration.GroupCipher { field @Deprecated public static final int CCMP = 3; // 0x3 field @Deprecated public static final int GCMP_256 = 5; // 0x5 + field @Deprecated public static final int SMS4 = 6; // 0x6 field @Deprecated public static final int TKIP = 2; // 0x2 field @Deprecated public static final int WEP104 = 1; // 0x1 field @Deprecated public static final int WEP40 = 0; // 0x0 @@ -29673,6 +31255,7 @@ package android.net.wifi { field @Deprecated public static final int CCMP = 2; // 0x2 field @Deprecated public static final int GCMP_256 = 3; // 0x3 field @Deprecated public static final int NONE = 0; // 0x0 + field @Deprecated public static final int SMS4 = 4; // 0x4 field @Deprecated public static final int TKIP = 1; // 0x1 field @Deprecated public static final String[] strings; field @Deprecated public static final String varName = "pairwise"; @@ -29680,6 +31263,7 @@ package android.net.wifi { @Deprecated public static class WifiConfiguration.Protocol { field @Deprecated public static final int RSN = 1; // 0x1 + field @Deprecated public static final int WAPI = 3; // 0x3 field @Deprecated public static final int WPA = 0; // 0x0 field @Deprecated public static final String[] strings; field @Deprecated public static final String varName = "proto"; @@ -29702,6 +31286,7 @@ package android.net.wifi { method @Nullable public java.security.cert.X509Certificate[] getCaCertificates(); method public java.security.cert.X509Certificate getClientCertificate(); method @Nullable public java.security.cert.X509Certificate[] getClientCertificateChain(); + method @Nullable public java.security.PrivateKey getClientPrivateKey(); method public String getDomainSuffixMatch(); method public int getEapMethod(); method public String getIdentity(); @@ -29710,6 +31295,7 @@ package android.net.wifi { method public String getPlmn(); method public String getRealm(); method @Deprecated public String getSubjectMatch(); + method public boolean isAuthenticationSimBased(); method public void setAltSubjectMatch(String); method public void setAnonymousIdentity(String); method public void setCaCertificate(@Nullable java.security.cert.X509Certificate); @@ -29726,6 +31312,12 @@ package android.net.wifi { method @Deprecated public void setSubjectMatch(String); method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiEnterpriseConfig> CREATOR; + field public static final String EXTRA_WAPI_AS_CERTIFICATE_DATA = "android.net.wifi.extra.WAPI_AS_CERTIFICATE_DATA"; + field public static final String EXTRA_WAPI_AS_CERTIFICATE_NAME = "android.net.wifi.extra.WAPI_AS_CERTIFICATE_NAME"; + field public static final String EXTRA_WAPI_USER_CERTIFICATE_DATA = "android.net.wifi.extra.WAPI_USER_CERTIFICATE_DATA"; + field public static final String EXTRA_WAPI_USER_CERTIFICATE_NAME = "android.net.wifi.extra.WAPI_USER_CERTIFICATE_NAME"; + field public static final String WAPI_AS_CERTIFICATE = "WAPIAS_"; + field public static final String WAPI_USER_CERTIFICATE = "WAPIUSR_"; } public static final class WifiEnterpriseConfig.Eap { @@ -29738,6 +31330,7 @@ package android.net.wifi { field public static final int TLS = 1; // 0x1 field public static final int TTLS = 2; // 0x2 field public static final int UNAUTH_TLS = 7; // 0x7 + field public static final int WAPI_CERT = 8; // 0x8 } public static final class WifiEnterpriseConfig.Phase2 { @@ -29760,6 +31353,8 @@ package android.net.wifi { method public int getIpAddress(); method public int getLinkSpeed(); method public String getMacAddress(); + method public int getMaxSupportedRxLinkSpeedMbps(); + method public int getMaxSupportedTxLinkSpeedMbps(); method public int getNetworkId(); method @Nullable public String getPasspointFqdn(); method @Nullable public String getPasspointProviderFriendlyName(); @@ -29768,17 +31363,29 @@ package android.net.wifi { method public String getSSID(); method public android.net.wifi.SupplicantState getSupplicantState(); method @IntRange(from=0xffffffff) public int getTxLinkSpeedMbps(); + method public int getWifiStandard(); method public void writeToParcel(android.os.Parcel, int); field public static final String FREQUENCY_UNITS = "MHz"; field public static final String LINK_SPEED_UNITS = "Mbps"; field public static final int LINK_SPEED_UNKNOWN = -1; // 0xffffffff } + public static final class WifiInfo.Builder { + ctor public WifiInfo.Builder(); + method @NonNull public android.net.wifi.WifiInfo build(); + method @NonNull public android.net.wifi.WifiInfo.Builder setBssid(@NonNull String); + method @NonNull public android.net.wifi.WifiInfo.Builder setNetworkId(int); + method @NonNull public android.net.wifi.WifiInfo.Builder setRssi(int); + method @NonNull public android.net.wifi.WifiInfo.Builder setSsid(@NonNull byte[]); + } + public class WifiManager { method @Deprecated public int addNetwork(android.net.wifi.WifiConfiguration); method @RequiresPermission(android.Manifest.permission.CHANGE_WIFI_STATE) public int addNetworkSuggestions(@NonNull java.util.List<android.net.wifi.WifiNetworkSuggestion>); method public void addOrUpdatePasspointConfiguration(android.net.wifi.hotspot2.PasspointConfiguration); - method public static int calculateSignalLevel(int, int); + method @RequiresPermission(allOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_WIFI_STATE}) public void addSuggestionConnectionStatusListener(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.SuggestionConnectionStatusListener); + method @Deprecated public static int calculateSignalLevel(int, int); + method @IntRange(from=0) public int calculateSignalLevel(int); method @Deprecated public void cancelWps(android.net.wifi.WifiManager.WpsCallback); method public static int compareSignalLevel(int, int); method public android.net.wifi.WifiManager.MulticastLock createMulticastLock(String); @@ -29791,10 +31398,14 @@ package android.net.wifi { method public android.net.wifi.WifiInfo getConnectionInfo(); method public android.net.DhcpInfo getDhcpInfo(); method public int getMaxNumberOfNetworkSuggestionsPerApp(); + method @IntRange(from=0) public int getMaxSignalLevel(); + method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public java.util.List<android.net.wifi.WifiNetworkSuggestion> getNetworkSuggestions(); method @Deprecated @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", "android.permission.NETWORK_SETUP_WIZARD"}) public java.util.List<android.net.wifi.hotspot2.PasspointConfiguration> getPasspointConfigurations(); method public java.util.List<android.net.wifi.ScanResult> getScanResults(); method public int getWifiState(); method public boolean is5GHzBandSupported(); + method public boolean is6GHzBandSupported(); + method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isAutoWakeupEnabled(); method @Deprecated public boolean isDeviceToApRttSupported(); method public boolean isEasyConnectSupported(); method public boolean isEnhancedOpenSupported(); @@ -29802,27 +31413,35 @@ package android.net.wifi { method public boolean isP2pSupported(); method public boolean isPreferredNetworkOffloadSupported(); method @Deprecated public boolean isScanAlwaysAvailable(); + method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isScanThrottleEnabled(); + method public boolean isStaApConcurrencySupported(); method public boolean isTdlsSupported(); + method public boolean isWapiSupported(); method public boolean isWifiEnabled(); + method public boolean isWifiStandardSupported(int); method public boolean isWpa3SaeSupported(); method public boolean isWpa3SuiteBSupported(); method @Deprecated public boolean pingSupplicant(); method @Deprecated public boolean reassociate(); method @Deprecated public boolean reconnect(); + method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public void registerScanResultsCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.ScanResultsCallback); method @Deprecated public boolean removeNetwork(int); method @RequiresPermission(android.Manifest.permission.CHANGE_WIFI_STATE) public int removeNetworkSuggestions(@NonNull java.util.List<android.net.wifi.WifiNetworkSuggestion>); - method @Deprecated @RequiresPermission("android.permission.NETWORK_SETTINGS") public void removePasspointConfiguration(String); + method @Deprecated @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", "android.permission.NETWORK_CARRIER_PROVISIONING"}) public void removePasspointConfiguration(String); + method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public void removeSuggestionConnectionStatusListener(@NonNull android.net.wifi.WifiManager.SuggestionConnectionStatusListener); method @Deprecated public boolean saveConfiguration(); method public void setTdlsEnabled(java.net.InetAddress, boolean); method public void setTdlsEnabledWithMacAddress(String, boolean); method @Deprecated public boolean setWifiEnabled(boolean); - method public void startLocalOnlyHotspot(android.net.wifi.WifiManager.LocalOnlyHotspotCallback, @Nullable android.os.Handler); + method @RequiresPermission(allOf={android.Manifest.permission.CHANGE_WIFI_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void startLocalOnlyHotspot(android.net.wifi.WifiManager.LocalOnlyHotspotCallback, @Nullable android.os.Handler); method @Deprecated public boolean startScan(); method @Deprecated public void startWps(android.net.wifi.WpsInfo, android.net.wifi.WifiManager.WpsCallback); + method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public void unregisterScanResultsCallback(@NonNull android.net.wifi.WifiManager.ScanResultsCallback); method @Deprecated public int updateNetwork(android.net.wifi.WifiConfiguration); field public static final String ACTION_PICK_WIFI_NETWORK = "android.net.wifi.PICK_WIFI_NETWORK"; field public static final String ACTION_REQUEST_SCAN_ALWAYS_AVAILABLE = "android.net.wifi.action.REQUEST_SCAN_ALWAYS_AVAILABLE"; field public static final String ACTION_WIFI_NETWORK_SUGGESTION_POST_CONNECTION = "android.net.wifi.action.WIFI_NETWORK_SUGGESTION_POST_CONNECTION"; + field public static final String ACTION_WIFI_SCAN_AVAILABILITY_CHANGED = "android.net.wifi.action.WIFI_SCAN_AVAILABILITY_CHANGED"; field @Deprecated public static final int ERROR_AUTHENTICATING = 1; // 0x1 field @Deprecated public static final String EXTRA_BSSID = "bssid"; field public static final String EXTRA_NETWORK_INFO = "networkInfo"; @@ -29831,6 +31450,7 @@ package android.net.wifi { field @Deprecated public static final String EXTRA_NEW_STATE = "newState"; field public static final String EXTRA_PREVIOUS_WIFI_STATE = "previous_wifi_state"; field public static final String EXTRA_RESULTS_UPDATED = "resultsUpdated"; + field public static final String EXTRA_SCAN_AVAILABLE = "android.net.wifi.extra.SCAN_AVAILABLE"; field @Deprecated public static final String EXTRA_SUPPLICANT_CONNECTED = "connected"; field @Deprecated public static final String EXTRA_SUPPLICANT_ERROR = "supplicantError"; field @Deprecated public static final String EXTRA_WIFI_INFO = "wifiInfo"; @@ -29841,12 +31461,19 @@ package android.net.wifi { field public static final String SCAN_RESULTS_AVAILABLE_ACTION = "android.net.wifi.SCAN_RESULTS"; field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_ADD_DUPLICATE = 3; // 0x3 field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_ADD_EXCEEDS_MAX_PER_APP = 4; // 0x4 + field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_ADD_INVALID = 7; // 0x7 + field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_ADD_NOT_ALLOWED = 6; // 0x6 field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_APP_DISALLOWED = 2; // 0x2 field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_INTERNAL = 1; // 0x1 field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_REMOVE_INVALID = 5; // 0x5 field public static final int STATUS_NETWORK_SUGGESTIONS_SUCCESS = 0; // 0x0 + field public static final int STATUS_SUGGESTION_CONNECTION_FAILURE_ASSOCIATION = 1; // 0x1 + field public static final int STATUS_SUGGESTION_CONNECTION_FAILURE_AUTHENTICATION = 2; // 0x2 + field public static final int STATUS_SUGGESTION_CONNECTION_FAILURE_IP_PROVISIONING = 3; // 0x3 + field public static final int STATUS_SUGGESTION_CONNECTION_FAILURE_UNKNOWN = 0; // 0x0 field @Deprecated public static final String SUPPLICANT_CONNECTION_CHANGE_ACTION = "android.net.wifi.supplicant.CONNECTION_CHANGE"; field @Deprecated public static final String SUPPLICANT_STATE_CHANGED_ACTION = "android.net.wifi.supplicant.STATE_CHANGE"; + field public static final String UNKNOWN_SSID = "<unknown ssid>"; field @Deprecated public static final int WIFI_MODE_FULL = 1; // 0x1 field public static final int WIFI_MODE_FULL_HIGH_PERF = 3; // 0x3 field public static final int WIFI_MODE_FULL_LOW_LATENCY = 4; // 0x4 @@ -29877,7 +31504,8 @@ package android.net.wifi { public class WifiManager.LocalOnlyHotspotReservation implements java.lang.AutoCloseable { method public void close(); - method public android.net.wifi.WifiConfiguration getWifiConfiguration(); + method @NonNull public android.net.wifi.SoftApConfiguration getSoftApConfiguration(); + method @Deprecated @Nullable public android.net.wifi.WifiConfiguration getWifiConfiguration(); } public class WifiManager.MulticastLock { @@ -29887,6 +31515,15 @@ package android.net.wifi { method public void setReferenceCounted(boolean); } + public abstract static class WifiManager.ScanResultsCallback { + ctor public WifiManager.ScanResultsCallback(); + method public abstract void onScanResultsAvailable(); + } + + public static interface WifiManager.SuggestionConnectionStatusListener { + method public void onConnectionStatus(@NonNull android.net.wifi.WifiNetworkSuggestion, int); + } + public class WifiManager.WifiLock { method public void acquire(); method public boolean isHeld(); @@ -29925,6 +31562,20 @@ package android.net.wifi { public final class WifiNetworkSuggestion implements android.os.Parcelable { method public int describeContents(); + method @Nullable public android.net.MacAddress getBssid(); + method @Nullable public android.net.wifi.WifiEnterpriseConfig getEnterpriseConfig(); + method @Nullable public String getPassphrase(); + method @Nullable public android.net.wifi.hotspot2.PasspointConfiguration getPasspointConfig(); + method @IntRange(from=0) public int getPriority(); + method @Nullable public String getSsid(); + method public boolean isAppInteractionRequired(); + method public boolean isCredentialSharedWithUser(); + method public boolean isEnhancedOpen(); + method public boolean isHiddenSsid(); + method public boolean isInitialAutojoinEnabled(); + method public boolean isMetered(); + method public boolean isUntrusted(); + method public boolean isUserInteractionRequired(); method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiNetworkSuggestion> CREATOR; } @@ -29933,13 +31584,19 @@ package android.net.wifi { ctor public WifiNetworkSuggestion.Builder(); method @NonNull public android.net.wifi.WifiNetworkSuggestion build(); method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setBssid(@NonNull android.net.MacAddress); + method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setCredentialSharedWithUser(boolean); method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setIsAppInteractionRequired(boolean); method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setIsEnhancedOpen(boolean); method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setIsHiddenSsid(boolean); + method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setIsInitialAutojoinEnabled(boolean); method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setIsMetered(boolean); method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setIsUserInteractionRequired(boolean); + method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setPasspointConfig(@NonNull android.net.wifi.hotspot2.PasspointConfiguration); method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setPriority(@IntRange(from=0) int); method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setSsid(@NonNull String); + method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setUntrusted(boolean); + method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWapiEnterpriseConfig(@NonNull android.net.wifi.WifiEnterpriseConfig); + method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWapiPassphrase(@NonNull String); method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWpa2EnterpriseConfig(@NonNull android.net.wifi.WifiEnterpriseConfig); method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWpa2Passphrase(@NonNull String); method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWpa3EnterpriseConfig(@NonNull android.net.wifi.WifiEnterpriseConfig); @@ -29977,8 +31634,11 @@ package android.net.wifi.aware { method public int getMaxMatchFilterLength(); method public int getMaxServiceNameLength(); method public int getMaxServiceSpecificInfoLength(); + method public int getSupportedCipherSuites(); method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.Characteristics> CREATOR; + field public static final int WIFI_AWARE_CIPHER_SUITE_NCS_SK_128 = 1; // 0x1 + field public static final int WIFI_AWARE_CIPHER_SUITE_NCS_SK_256 = 2; // 0x2 } public class DiscoverySession implements java.lang.AutoCloseable { @@ -30094,6 +31754,7 @@ package android.net.wifi.aware { public static final class WifiAwareNetworkSpecifier.Builder { ctor public WifiAwareNetworkSpecifier.Builder(@NonNull android.net.wifi.aware.DiscoverySession, @NonNull android.net.wifi.aware.PeerHandle); method @NonNull public android.net.wifi.aware.WifiAwareNetworkSpecifier build(); + method @NonNull public android.net.wifi.aware.WifiAwareNetworkSpecifier.Builder setPmk(@NonNull byte[]); method @NonNull public android.net.wifi.aware.WifiAwareNetworkSpecifier.Builder setPort(@IntRange(from=0, to=65535) int); method @NonNull public android.net.wifi.aware.WifiAwareNetworkSpecifier.Builder setPskPassphrase(@NonNull String); method @NonNull public android.net.wifi.aware.WifiAwareNetworkSpecifier.Builder setTransportProtocol(@IntRange(from=0, to=255) int); @@ -30121,6 +31782,9 @@ package android.net.wifi.hotspot2 { method public int describeContents(); method public android.net.wifi.hotspot2.pps.Credential getCredential(); method public android.net.wifi.hotspot2.pps.HomeSp getHomeSp(); + method public long getSubscriptionExpirationTimeMillis(); + method @NonNull public String getUniqueId(); + method public boolean isOsuProvisioned(); method public void setCredential(android.net.wifi.hotspot2.pps.Credential); method public void setHomeSp(android.net.wifi.hotspot2.pps.HomeSp); method public void writeToParcel(android.os.Parcel, int); @@ -30223,13 +31887,20 @@ package android.net.wifi.p2p { ctor public WifiP2pConfig(); ctor public WifiP2pConfig(android.net.wifi.p2p.WifiP2pConfig); method public int describeContents(); + method public int getGroupOwnerBand(); + method public int getNetworkId(); + method @Nullable public String getNetworkName(); + method @Nullable public String getPassphrase(); method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pConfig> CREATOR; field public static final int GROUP_OWNER_BAND_2GHZ = 1; // 0x1 field public static final int GROUP_OWNER_BAND_5GHZ = 2; // 0x2 field public static final int GROUP_OWNER_BAND_AUTO = 0; // 0x0 + field public static final int GROUP_OWNER_INTENT_AUTO = -1; // 0xffffffff + field public static final int GROUP_OWNER_INTENT_MAX = 15; // 0xf + field public static final int GROUP_OWNER_INTENT_MIN = 0; // 0x0 field public String deviceAddress; - field public int groupOwnerIntent; + field @IntRange(from=0, to=15) public int groupOwnerIntent; field public android.net.wifi.WpsInfo wps; } @@ -30248,8 +31919,10 @@ package android.net.wifi.p2p { ctor public WifiP2pDevice(); ctor public WifiP2pDevice(android.net.wifi.p2p.WifiP2pDevice); method public int describeContents(); + method @Nullable public android.net.wifi.p2p.WifiP2pWfdInfo getWfdInfo(); method public boolean isGroupOwner(); method public boolean isServiceDiscoveryCapable(); + method public void update(@NonNull android.net.wifi.p2p.WifiP2pDevice); method public boolean wpsDisplaySupported(); method public boolean wpsKeypadSupported(); method public boolean wpsPbcSupported(); @@ -30284,12 +31957,15 @@ package android.net.wifi.p2p { method public java.util.Collection<android.net.wifi.p2p.WifiP2pDevice> getClientList(); method public int getFrequency(); method public String getInterface(); + method public int getNetworkId(); method public String getNetworkName(); method public android.net.wifi.p2p.WifiP2pDevice getOwner(); method public String getPassphrase(); method public boolean isGroupOwner(); method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pGroup> CREATOR; + field public static final int NETWORK_ID_PERSISTENT = -2; // 0xfffffffe + field public static final int NETWORK_ID_TEMPORARY = -1; // 0xffffffff } public class WifiP2pInfo implements android.os.Parcelable { @@ -30408,6 +32084,30 @@ package android.net.wifi.p2p { method public void onUpnpServiceAvailable(java.util.List<java.lang.String>, android.net.wifi.p2p.WifiP2pDevice); } + public final class WifiP2pWfdInfo implements android.os.Parcelable { + ctor public WifiP2pWfdInfo(); + ctor public WifiP2pWfdInfo(@Nullable android.net.wifi.p2p.WifiP2pWfdInfo); + method public int describeContents(); + method public int getControlPort(); + method public int getDeviceType(); + method public int getMaxThroughput(); + method public boolean isContentProtectionSupported(); + method public boolean isEnabled(); + method public boolean isSessionAvailable(); + method public void setContentProtectionSupported(boolean); + method public void setControlPort(@IntRange(from=0) int); + method public boolean setDeviceType(int); + method public void setEnabled(boolean); + method public void setMaxThroughput(@IntRange(from=0) int); + method public void setSessionAvailable(boolean); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pWfdInfo> CREATOR; + field public static final int DEVICE_TYPE_PRIMARY_SINK = 1; // 0x1 + field public static final int DEVICE_TYPE_SECONDARY_SINK = 2; // 0x2 + field public static final int DEVICE_TYPE_SOURCE_OR_PRIMARY_SINK = 3; // 0x3 + field public static final int DEVICE_TYPE_WFD_SOURCE = 0; // 0x0 + } + } package android.net.wifi.p2p.nsd { @@ -30551,7 +32251,7 @@ package android.net.wifi.rtt { method public boolean isLciSubelementValid(); method public boolean isZaxisSubelementValid(); method @Nullable public android.location.Address toCivicLocationAddress(); - method @Nullable public android.util.SparseArray toCivicLocationSparseArray(); + method @Nullable public android.util.SparseArray<java.lang.String> toCivicLocationSparseArray(); method @NonNull public android.location.Location toLocation(); method public void writeToParcel(android.os.Parcel, int); field public static final int ALTITUDE_FLOORS = 2; // 0x2 @@ -30653,6 +32353,7 @@ package android.nfc { method @Deprecated public void setOnNdefPushCompleteCallback(android.nfc.NfcAdapter.OnNdefPushCompleteCallback, android.app.Activity, android.app.Activity...); field public static final String ACTION_ADAPTER_STATE_CHANGED = "android.nfc.action.ADAPTER_STATE_CHANGED"; field public static final String ACTION_NDEF_DISCOVERED = "android.nfc.action.NDEF_DISCOVERED"; + field @RequiresPermission(android.Manifest.permission.NFC_PREFERRED_PAYMENT_INFO) public static final String ACTION_PREFERRED_PAYMENT_CHANGED = "android.nfc.action.PREFERRED_PAYMENT_CHANGED"; field public static final String ACTION_TAG_DISCOVERED = "android.nfc.action.TAG_DISCOVERED"; field public static final String ACTION_TECH_DISCOVERED = "android.nfc.action.TECH_DISCOVERED"; field @RequiresPermission(android.Manifest.permission.NFC_TRANSACTION_EVENT) public static final String ACTION_TRANSACTION_DETECTED = "android.nfc.action.TRANSACTION_DETECTED"; @@ -30661,6 +32362,7 @@ package android.nfc { field public static final String EXTRA_DATA = "android.nfc.extra.DATA"; field public static final String EXTRA_ID = "android.nfc.extra.ID"; field public static final String EXTRA_NDEF_MESSAGES = "android.nfc.extra.NDEF_MESSAGES"; + field public static final String EXTRA_PREFERRED_PAYMENT_CHANGED_REASON = "android.nfc.extra.PREFERRED_PAYMENT_CHANGED_REASON"; field public static final String EXTRA_READER_PRESENCE_CHECK_DELAY = "presence"; field public static final String EXTRA_SECURE_ELEMENT_NAME = "android.nfc.extra.SECURE_ELEMENT_NAME"; field public static final String EXTRA_TAG = "android.nfc.extra.TAG"; @@ -30671,6 +32373,9 @@ package android.nfc { field public static final int FLAG_READER_NFC_V = 8; // 0x8 field public static final int FLAG_READER_NO_PLATFORM_SOUNDS = 256; // 0x100 field public static final int FLAG_READER_SKIP_NDEF_CHECK = 128; // 0x80 + field public static final int PREFERRED_PAYMENT_CHANGED = 2; // 0x2 + field public static final int PREFERRED_PAYMENT_LOADED = 1; // 0x1 + field public static final int PREFERRED_PAYMENT_UPDATED = 3; // 0x3 field public static final int STATE_OFF = 1; // 0x1 field public static final int STATE_ON = 3; // 0x3 field public static final int STATE_TURNING_OFF = 4; // 0x4 @@ -30726,17 +32431,20 @@ package android.nfc.cardemulation { public final class CardEmulation { method public boolean categoryAllowsForegroundPreference(String); + method @Nullable @RequiresPermission(android.Manifest.permission.NFC_PREFERRED_PAYMENT_INFO) public java.util.List<java.lang.String> getAidsForPreferredPaymentService(); method public java.util.List<java.lang.String> getAidsForService(android.content.ComponentName, String); + method @Nullable @RequiresPermission(android.Manifest.permission.NFC_PREFERRED_PAYMENT_INFO) public CharSequence getDescriptionForPreferredPaymentService(); method public static android.nfc.cardemulation.CardEmulation getInstance(android.nfc.NfcAdapter); + method @Nullable @RequiresPermission(android.Manifest.permission.NFC_PREFERRED_PAYMENT_INFO) public String getRouteDestinationForPreferredPaymentService(); method public int getSelectionModeForCategory(String); method public boolean isDefaultServiceForAid(android.content.ComponentName, String); method public boolean isDefaultServiceForCategory(android.content.ComponentName, String); method public boolean registerAidsForService(android.content.ComponentName, String, java.util.List<java.lang.String>); method public boolean removeAidsForService(android.content.ComponentName, String); - method @RequiresPermission(android.Manifest.permission.NFC) @NonNull public boolean setOffHostForService(@NonNull android.content.ComponentName, @NonNull String); + method @NonNull @RequiresPermission(android.Manifest.permission.NFC) public boolean setOffHostForService(@NonNull android.content.ComponentName, @NonNull String); method public boolean setPreferredService(android.app.Activity, android.content.ComponentName); method public boolean supportsAidPrefixRegistration(); - method @RequiresPermission(android.Manifest.permission.NFC) @NonNull public boolean unsetOffHostForService(@NonNull android.content.ComponentName); + method @NonNull @RequiresPermission(android.Manifest.permission.NFC) public boolean unsetOffHostForService(@NonNull android.content.ComponentName); method public boolean unsetPreferredService(android.app.Activity); field public static final String ACTION_CHANGE_DEFAULT = "android.nfc.cardemulation.action.ACTION_CHANGE_DEFAULT"; field public static final String CATEGORY_OTHER = "other"; @@ -33942,31 +35650,31 @@ package android.opengl { package android.os { - public abstract class AsyncTask<Params, Progress, Result> { - ctor public AsyncTask(); - method public final boolean cancel(boolean); - method @WorkerThread protected abstract Result doInBackground(Params...); - method @MainThread public final android.os.AsyncTask<Params,Progress,Result> execute(Params...); - method @MainThread public static void execute(Runnable); - method @MainThread public final android.os.AsyncTask<Params,Progress,Result> executeOnExecutor(java.util.concurrent.Executor, Params...); - method public final Result get() throws java.util.concurrent.ExecutionException, java.lang.InterruptedException; - method public final Result get(long, java.util.concurrent.TimeUnit) throws java.util.concurrent.ExecutionException, java.lang.InterruptedException, java.util.concurrent.TimeoutException; - method public final android.os.AsyncTask.Status getStatus(); - method public final boolean isCancelled(); - method @MainThread protected void onCancelled(Result); - method @MainThread protected void onCancelled(); - method @MainThread protected void onPostExecute(Result); - method @MainThread protected void onPreExecute(); - method @MainThread protected void onProgressUpdate(Progress...); - method @WorkerThread protected final void publishProgress(Progress...); - field public static final java.util.concurrent.Executor SERIAL_EXECUTOR; - field public static final java.util.concurrent.Executor THREAD_POOL_EXECUTOR; - } - - public enum AsyncTask.Status { - enum_constant public static final android.os.AsyncTask.Status FINISHED; - enum_constant public static final android.os.AsyncTask.Status PENDING; - enum_constant public static final android.os.AsyncTask.Status RUNNING; + @Deprecated public abstract class AsyncTask<Params, Progress, Result> { + ctor @Deprecated public AsyncTask(); + method @Deprecated public final boolean cancel(boolean); + method @Deprecated @WorkerThread protected abstract Result doInBackground(Params...); + method @Deprecated @MainThread public final android.os.AsyncTask<Params,Progress,Result> execute(Params...); + method @Deprecated @MainThread public static void execute(Runnable); + method @Deprecated @MainThread public final android.os.AsyncTask<Params,Progress,Result> executeOnExecutor(java.util.concurrent.Executor, Params...); + method @Deprecated public final Result get() throws java.util.concurrent.ExecutionException, java.lang.InterruptedException; + method @Deprecated public final Result get(long, java.util.concurrent.TimeUnit) throws java.util.concurrent.ExecutionException, java.lang.InterruptedException, java.util.concurrent.TimeoutException; + method @Deprecated public final android.os.AsyncTask.Status getStatus(); + method @Deprecated public final boolean isCancelled(); + method @Deprecated @MainThread protected void onCancelled(Result); + method @Deprecated @MainThread protected void onCancelled(); + method @Deprecated @MainThread protected void onPostExecute(Result); + method @Deprecated @MainThread protected void onPreExecute(); + method @Deprecated @MainThread protected void onProgressUpdate(Progress...); + method @Deprecated @WorkerThread protected final void publishProgress(Progress...); + field @Deprecated public static final java.util.concurrent.Executor SERIAL_EXECUTOR; + field @Deprecated public static final java.util.concurrent.Executor THREAD_POOL_EXECUTOR; + } + + @Deprecated public enum AsyncTask.Status { + enum_constant @Deprecated public static final android.os.AsyncTask.Status FINISHED; + enum_constant @Deprecated public static final android.os.AsyncTask.Status PENDING; + enum_constant @Deprecated public static final android.os.AsyncTask.Status RUNNING; } public class BadParcelableException extends android.util.AndroidRuntimeException { @@ -34125,6 +35833,7 @@ package android.os { field public static final String INCREMENTAL; field public static final int PREVIEW_SDK_INT; field public static final String RELEASE; + field @NonNull public static final String RELEASE_OR_CODENAME; field @Deprecated public static final String SDK; field public static final int SDK_INT; field public static final String SECURITY_PATCH; @@ -34162,6 +35871,7 @@ package android.os { field public static final int O_MR1 = 27; // 0x1b field public static final int P = 28; // 0x1c field public static final int Q = 29; // 0x1d + field public static final int R = 30; // 0x1e } public final class Bundle extends android.os.BaseBundle implements java.lang.Cloneable android.os.Parcelable { @@ -34391,7 +36101,7 @@ package android.os { method public void addData(String, byte[], int); method public void addFile(String, java.io.File, int) throws java.io.IOException; method public void addText(String, String); - method @RequiresPermission(allOf={android.Manifest.permission.READ_LOGS, android.Manifest.permission.PACKAGE_USAGE_STATS}) @Nullable public android.os.DropBoxManager.Entry getNextEntry(String, long); + method @Nullable @RequiresPermission(allOf={android.Manifest.permission.READ_LOGS, android.Manifest.permission.PACKAGE_USAGE_STATS}) public android.os.DropBoxManager.Entry getNextEntry(String, long); method public boolean isTagEnabled(String); field public static final String ACTION_DROPBOX_ENTRY_ADDED = "android.intent.action.DROPBOX_ENTRY_ADDED"; field public static final String EXTRA_DROPPED_COUNT = "android.os.extra.DROPPED_COUNT"; @@ -34428,11 +36138,14 @@ package android.os { method public static String getExternalStorageState(); method public static String getExternalStorageState(java.io.File); method @NonNull public static java.io.File getRootDirectory(); + method @NonNull public static java.io.File getStorageDirectory(); method @Deprecated public static String getStorageState(java.io.File); method public static boolean isExternalStorageEmulated(); method public static boolean isExternalStorageEmulated(@NonNull java.io.File); method public static boolean isExternalStorageLegacy(); method public static boolean isExternalStorageLegacy(@NonNull java.io.File); + method public static boolean isExternalStorageManager(); + method public static boolean isExternalStorageManager(@NonNull java.io.File); method public static boolean isExternalStorageRemovable(); method public static boolean isExternalStorageRemovable(@NonNull java.io.File); field public static String DIRECTORY_ALARMS; @@ -34491,8 +36204,8 @@ package android.os { } public final class FileUtils { - method public static void closeQuietly(@Nullable AutoCloseable); - method public static void closeQuietly(@Nullable java.io.FileDescriptor); + method @Deprecated public static void closeQuietly(@Nullable AutoCloseable); + method @Deprecated public static void closeQuietly(@Nullable java.io.FileDescriptor); method public static long copy(@NonNull java.io.InputStream, @NonNull java.io.OutputStream) throws java.io.IOException; method public static long copy(@NonNull java.io.InputStream, @NonNull java.io.OutputStream, @Nullable android.os.CancellationSignal, @Nullable java.util.concurrent.Executor, @Nullable android.os.FileUtils.ProgressListener) throws java.io.IOException; method public static long copy(@NonNull java.io.FileDescriptor, @NonNull java.io.FileDescriptor) throws java.io.IOException; @@ -34504,8 +36217,8 @@ package android.os { } public class Handler { - ctor public Handler(); - ctor public Handler(@Nullable android.os.Handler.Callback); + ctor @Deprecated public Handler(); + ctor @Deprecated public Handler(@Nullable android.os.Handler.Callback); ctor public Handler(@NonNull android.os.Looper); ctor public Handler(@NonNull android.os.Looper, @Nullable android.os.Handler.Callback); method @NonNull public static android.os.Handler createAsync(@NonNull android.os.Looper); @@ -34576,6 +36289,7 @@ package android.os { method public void dump(@NonNull java.io.FileDescriptor, @Nullable String[]) throws android.os.RemoteException; method public void dumpAsync(@NonNull java.io.FileDescriptor, @Nullable String[]) throws android.os.RemoteException; method @Nullable public String getInterfaceDescriptor() throws android.os.RemoteException; + method public static int getSuggestedMaxIpcSizeBytes(); method public boolean isBinderAlive(); method public void linkToDeath(@NonNull android.os.IBinder.DeathRecipient, int) throws android.os.RemoteException; method public boolean pingBinder(); @@ -34600,6 +36314,11 @@ package android.os { method public android.os.IBinder asBinder(); } + public class LimitExceededException extends java.lang.IllegalStateException { + ctor public LimitExceededException(); + ctor public LimitExceededException(@NonNull String); + } + public final class LocaleList implements android.os.Parcelable { ctor public LocaleList(@NonNull java.util.Locale...); method public int describeContents(); @@ -34629,7 +36348,7 @@ package android.os { method @Nullable public static android.os.Looper myLooper(); method @NonNull public static android.os.MessageQueue myQueue(); method public static void prepare(); - method public static void prepareMainLooper(); + method @Deprecated public static void prepareMainLooper(); method public void quit(); method public void quitSafely(); method public void setMessageLogging(@Nullable android.util.Printer); @@ -34772,6 +36491,7 @@ package android.os { method public void readMap(@NonNull java.util.Map, @Nullable ClassLoader); method @Nullable public <T extends android.os.Parcelable> T readParcelable(@Nullable ClassLoader); method @Nullable public android.os.Parcelable[] readParcelableArray(@Nullable ClassLoader); + method @Nullable public android.os.Parcelable.Creator<?> readParcelableCreator(@Nullable ClassLoader); method @NonNull public <T extends android.os.Parcelable> java.util.List<T> readParcelableList(@NonNull java.util.List<T>, @Nullable ClassLoader); method @Nullable public android.os.PersistableBundle readPersistableBundle(); method @Nullable public android.os.PersistableBundle readPersistableBundle(@Nullable ClassLoader); @@ -34819,6 +36539,7 @@ package android.os { method public void writeNoException(); method public void writeParcelable(@Nullable android.os.Parcelable, int); method public <T extends android.os.Parcelable> void writeParcelableArray(@Nullable T[], int); + method public void writeParcelableCreator(@NonNull android.os.Parcelable); method public <T extends android.os.Parcelable> void writeParcelableList(@Nullable java.util.List<T>, int); method public void writePersistableBundle(@Nullable android.os.PersistableBundle); method public void writeSerializable(@Nullable java.io.Serializable); @@ -34864,6 +36585,7 @@ package android.os { method public static android.os.ParcelFileDescriptor open(java.io.File, int) throws java.io.FileNotFoundException; method public static android.os.ParcelFileDescriptor open(java.io.File, int, android.os.Handler, android.os.ParcelFileDescriptor.OnCloseListener) throws java.io.IOException; method public static int parseMode(String); + method @NonNull public static android.os.ParcelFileDescriptor wrap(@NonNull android.os.ParcelFileDescriptor, @NonNull android.os.Handler, @NonNull android.os.ParcelFileDescriptor.OnCloseListener) throws java.io.IOException; method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.os.ParcelFileDescriptor> CREATOR; field public static final int MODE_APPEND = 33554432; // 0x2000000 @@ -34946,7 +36668,9 @@ package android.os { method public int describeContents(); method @Nullable public android.os.PersistableBundle getPersistableBundle(@Nullable String); method public void putPersistableBundle(@Nullable String, @Nullable android.os.PersistableBundle); + method @NonNull public static android.os.PersistableBundle readFromStream(@NonNull java.io.InputStream) throws java.io.IOException; method public void writeToParcel(android.os.Parcel, int); + method public void writeToStream(@NonNull java.io.OutputStream) throws java.io.IOException; field @NonNull public static final android.os.Parcelable.Creator<android.os.PersistableBundle> CREATOR; field public static final android.os.PersistableBundle EMPTY; } @@ -34956,15 +36680,17 @@ package android.os { method public void addThermalStatusListener(@NonNull java.util.concurrent.Executor, @NonNull android.os.PowerManager.OnThermalStatusChangedListener); method public int getCurrentThermalStatus(); method public int getLocationPowerSaveMode(); + method public float getThermalHeadroom(@IntRange(from=0, to=60) int); method public boolean isDeviceIdleMode(); method public boolean isIgnoringBatteryOptimizations(String); method public boolean isInteractive(); method public boolean isPowerSaveMode(); + method public boolean isRebootingUserspaceSupported(); method @Deprecated public boolean isScreenOn(); method public boolean isSustainedPerformanceModeSupported(); method public boolean isWakeLockLevelSupported(int); method public android.os.PowerManager.WakeLock newWakeLock(int, String); - method public void reboot(String); + method @RequiresPermission(android.Manifest.permission.REBOOT) public void reboot(@Nullable String); method public void removeThermalStatusListener(@NonNull android.os.PowerManager.OnThermalStatusChangedListener); field public static final int ACQUIRE_CAUSES_WAKEUP = 268435456; // 0x10000000 field public static final String ACTION_DEVICE_IDLE_MODE_CHANGED = "android.os.action.DEVICE_IDLE_MODE_CHANGED"; @@ -35047,6 +36773,7 @@ package android.os { field public static final int THREAD_PRIORITY_URGENT_AUDIO = -19; // 0xffffffed field public static final int THREAD_PRIORITY_URGENT_DISPLAY = -8; // 0xfffffff8 field public static final int THREAD_PRIORITY_VIDEO = -10; // 0xfffffff6 + field public static final int WIFI_UID = 1010; // 0x3f2 } public abstract class ProxyFileDescriptorCallback { @@ -35089,6 +36816,8 @@ package android.os { public class RemoteException extends android.util.AndroidException { ctor public RemoteException(); ctor public RemoteException(String); + method @NonNull public RuntimeException rethrowAsRuntimeException(); + method @NonNull public RuntimeException rethrowFromSystemServer(); } public class ResultReceiver implements android.os.Parcelable { @@ -35270,30 +36999,32 @@ package android.os { method public static android.content.Intent createUserCreationIntent(@Nullable String, @Nullable String, @Nullable String, @Nullable android.os.PersistableBundle); method @WorkerThread public android.os.Bundle getApplicationRestrictions(String); method public long getSerialNumberForUser(android.os.UserHandle); - method public int getUserCount(); + method @RequiresPermission("android.permission.MANAGE_USERS") public int getUserCount(); method public long getUserCreationTime(android.os.UserHandle); method public android.os.UserHandle getUserForSerialNumber(long); - method public String getUserName(); + method @NonNull @RequiresPermission(anyOf={"android.permission.MANAGE_USERS", android.Manifest.permission.GET_ACCOUNTS_PRIVILEGED}, conditional=true) public String getUserName(); method public java.util.List<android.os.UserHandle> getUserProfiles(); method public android.os.Bundle getUserRestrictions(); - method public android.os.Bundle getUserRestrictions(android.os.UserHandle); + method @RequiresPermission(anyOf={"android.permission.MANAGE_USERS", "android.permission.INTERACT_ACROSS_USERS"}, conditional=true) public android.os.Bundle getUserRestrictions(android.os.UserHandle); method public boolean hasUserRestriction(String); method public boolean isDemoUser(); + method public boolean isManagedProfile(); method public boolean isQuietModeEnabled(android.os.UserHandle); method public boolean isSystemUser(); method public boolean isUserAGoat(); - method public boolean isUserRunning(android.os.UserHandle); - method public boolean isUserRunningOrStopping(android.os.UserHandle); + method @RequiresPermission(anyOf={"android.permission.MANAGE_USERS", "android.permission.INTERACT_ACROSS_USERS"}, conditional=true) public boolean isUserRunning(android.os.UserHandle); + method @RequiresPermission(anyOf={"android.permission.MANAGE_USERS", "android.permission.INTERACT_ACROSS_USERS"}, conditional=true) public boolean isUserRunningOrStopping(android.os.UserHandle); method public boolean isUserUnlocked(); - method public boolean isUserUnlocked(android.os.UserHandle); - method public boolean requestQuietModeEnabled(boolean, @NonNull android.os.UserHandle); + method @RequiresPermission(anyOf={"android.permission.MANAGE_USERS", "android.permission.INTERACT_ACROSS_USERS"}, conditional=true) public boolean isUserUnlocked(android.os.UserHandle); + method @RequiresPermission(anyOf={"android.permission.MANAGE_USERS", "android.permission.MODIFY_QUIET_MODE"}, conditional=true) public boolean requestQuietModeEnabled(boolean, @NonNull android.os.UserHandle); + method public boolean requestQuietModeEnabled(boolean, @NonNull android.os.UserHandle, int); method @Deprecated public boolean setRestrictionsChallenge(String); - method @Deprecated public void setUserRestriction(String, boolean); + method @Deprecated @RequiresPermission("android.permission.MANAGE_USERS") public void setUserRestriction(String, boolean); method @Deprecated public void setUserRestrictions(android.os.Bundle); method @Deprecated public void setUserRestrictions(android.os.Bundle, android.os.UserHandle); method public static boolean supportsMultipleUsers(); field public static final String ALLOW_PARENT_PROFILE_APP_LINKING = "allow_parent_profile_app_linking"; - field public static final String DISALLOW_ADD_MANAGED_PROFILE = "no_add_managed_profile"; + field @Deprecated public static final String DISALLOW_ADD_MANAGED_PROFILE = "no_add_managed_profile"; field public static final String DISALLOW_ADD_USER = "no_add_user"; field public static final String DISALLOW_ADJUST_VOLUME = "no_adjust_volume"; field public static final String DISALLOW_AIRPLANE_MODE = "no_airplane_mode"; @@ -35332,7 +37063,7 @@ package android.os { field public static final String DISALLOW_OUTGOING_BEAM = "no_outgoing_beam"; field public static final String DISALLOW_OUTGOING_CALLS = "no_outgoing_calls"; field public static final String DISALLOW_PRINTING = "no_printing"; - field public static final String DISALLOW_REMOVE_MANAGED_PROFILE = "no_remove_managed_profile"; + field @Deprecated public static final String DISALLOW_REMOVE_MANAGED_PROFILE = "no_remove_managed_profile"; field public static final String DISALLOW_REMOVE_USER = "no_remove_user"; field public static final String DISALLOW_SAFE_BOOT = "no_safe_boot"; field public static final String DISALLOW_SET_USER_ICON = "no_set_user_icon"; @@ -35348,6 +37079,7 @@ package android.os { field public static final String DISALLOW_USER_SWITCH = "no_user_switch"; field public static final String ENSURE_VERIFY_APPS = "ensure_verify_apps"; field public static final String KEY_RESTRICTIONS_PENDING = "restrictions_pending"; + field public static final int QUIET_MODE_DISABLE_ONLY_IF_CREDENTIAL_NOT_REQUIRED = 1; // 0x1 field public static final int USER_CREATION_FAILED_NOT_PERMITTED = 1; // 0x1 field public static final int USER_CREATION_FAILED_NO_MORE_USERS = 2; // 0x2 field public static final int USER_OPERATION_ERROR_CURRENT_USER = 4; // 0x4 @@ -35363,12 +37095,44 @@ package android.os { method public int getUserOperationResult(); } + public final class VibrationAttributes implements android.os.Parcelable { + method public int describeContents(); + method public int getFlags(); + method public int getUsage(); + method public int getUsageClass(); + method public boolean isFlagSet(int); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.os.VibrationAttributes> CREATOR; + field public static final int FLAG_BYPASS_INTERRUPTION_POLICY = 1; // 0x1 + field public static final int USAGE_ALARM = 17; // 0x11 + field public static final int USAGE_CLASS_ALARM = 1; // 0x1 + field public static final int USAGE_CLASS_FEEDBACK = 2; // 0x2 + field public static final int USAGE_CLASS_MASK = 15; // 0xf + field public static final int USAGE_CLASS_UNKNOWN = 0; // 0x0 + field public static final int USAGE_COMMUNICATION_REQUEST = 65; // 0x41 + field public static final int USAGE_HARDWARE_FEEDBACK = 50; // 0x32 + field public static final int USAGE_NOTIFICATION = 49; // 0x31 + field public static final int USAGE_PHYSICAL_EMULATION = 34; // 0x22 + field public static final int USAGE_RINGTONE = 33; // 0x21 + field public static final int USAGE_TOUCH = 18; // 0x12 + field public static final int USAGE_UNKNOWN = 0; // 0x0 + } + + public static final class VibrationAttributes.Builder { + ctor public VibrationAttributes.Builder(); + ctor public VibrationAttributes.Builder(@Nullable android.os.VibrationAttributes); + method @NonNull public android.os.VibrationAttributes build(); + method @NonNull public android.os.VibrationAttributes.Builder setFlags(int, int); + method @NonNull public android.os.VibrationAttributes.Builder setUsage(int); + } + public abstract class VibrationEffect implements android.os.Parcelable { method public static android.os.VibrationEffect createOneShot(long, int); method @NonNull public static android.os.VibrationEffect createPredefined(int); method public static android.os.VibrationEffect createWaveform(long[], int); method public static android.os.VibrationEffect createWaveform(long[], int[], int); method public int describeContents(); + method @NonNull public static android.os.VibrationEffect.Composition startComposition(); field @NonNull public static final android.os.Parcelable.Creator<android.os.VibrationEffect> CREATOR; field public static final int DEFAULT_AMPLITUDE = -1; // 0xffffffff field public static final int EFFECT_CLICK = 0; // 0x0 @@ -35377,7 +37141,23 @@ package android.os { field public static final int EFFECT_TICK = 2; // 0x2 } + public static final class VibrationEffect.Composition { + method @NonNull public android.os.VibrationEffect.Composition addPrimitive(int); + method @NonNull public android.os.VibrationEffect.Composition addPrimitive(int, @FloatRange(from=0.0f, to=1.0f) float); + method @NonNull public android.os.VibrationEffect.Composition addPrimitive(int, @FloatRange(from=0.0f, to=1.0f) float, @IntRange(from=0) int); + method @NonNull public android.os.VibrationEffect compose(); + field public static final int PRIMITIVE_CLICK = 1; // 0x1 + field public static final int PRIMITIVE_QUICK_FALL = 6; // 0x6 + field public static final int PRIMITIVE_QUICK_RISE = 4; // 0x4 + field public static final int PRIMITIVE_SLOW_RISE = 5; // 0x5 + field public static final int PRIMITIVE_TICK = 7; // 0x7 + } + public abstract class Vibrator { + method public final int areAllEffectsSupported(@NonNull int...); + method public final boolean areAllPrimitivesSupported(@NonNull int...); + method @NonNull public int[] areEffectsSupported(@NonNull int...); + method @NonNull public boolean[] arePrimitivesSupported(@NonNull int...); method @RequiresPermission(android.Manifest.permission.VIBRATE) public abstract void cancel(); method public abstract boolean hasAmplitudeControl(); method public abstract boolean hasVibrator(); @@ -35387,6 +37167,9 @@ package android.os { method @Deprecated @RequiresPermission(android.Manifest.permission.VIBRATE) public void vibrate(long[], int, android.media.AudioAttributes); method @RequiresPermission(android.Manifest.permission.VIBRATE) public void vibrate(android.os.VibrationEffect); method @RequiresPermission(android.Manifest.permission.VIBRATE) public void vibrate(android.os.VibrationEffect, android.media.AudioAttributes); + field public static final int VIBRATION_EFFECT_SUPPORT_NO = 2; // 0x2 + field public static final int VIBRATION_EFFECT_SUPPORT_UNKNOWN = 0; // 0x0 + field public static final int VIBRATION_EFFECT_SUPPORT_YES = 1; // 0x1 } public class WorkSource implements android.os.Parcelable { @@ -35567,31 +37350,43 @@ package android.os.storage { method @WorkerThread public long getCacheSizeBytes(@NonNull java.util.UUID) throws java.io.IOException; method public String getMountedObbPath(String); method @NonNull public android.os.storage.StorageVolume getPrimaryStorageVolume(); - method @Nullable public android.os.storage.StorageVolume getStorageVolume(java.io.File); + method @NonNull public java.util.List<android.os.storage.StorageVolume> getRecentStorageVolumes(); + method @Nullable public android.os.storage.StorageVolume getStorageVolume(@NonNull java.io.File); method @NonNull public android.os.storage.StorageVolume getStorageVolume(@NonNull android.net.Uri); method @NonNull public java.util.List<android.os.storage.StorageVolume> getStorageVolumes(); method @NonNull public java.util.UUID getUuidForPath(@NonNull java.io.File) throws java.io.IOException; method public boolean isAllocationSupported(@NonNull java.io.FileDescriptor); method public boolean isCacheBehaviorGroup(java.io.File) throws java.io.IOException; method public boolean isCacheBehaviorTombstone(java.io.File) throws java.io.IOException; + method public boolean isCheckpointSupported(); method public boolean isEncrypted(java.io.File); method public boolean isObbMounted(String); method public boolean mountObb(String, String, android.os.storage.OnObbStateChangeListener); method @NonNull public android.os.ParcelFileDescriptor openProxyFileDescriptor(int, android.os.ProxyFileDescriptorCallback, android.os.Handler) throws java.io.IOException; + method public void registerStorageVolumeCallback(@NonNull java.util.concurrent.Executor, @NonNull android.os.storage.StorageManager.StorageVolumeCallback); method public void setCacheBehaviorGroup(java.io.File, boolean) throws java.io.IOException; method public void setCacheBehaviorTombstone(java.io.File, boolean) throws java.io.IOException; method public boolean unmountObb(String, boolean, android.os.storage.OnObbStateChangeListener); + method public void unregisterStorageVolumeCallback(@NonNull android.os.storage.StorageManager.StorageVolumeCallback); + field @RequiresPermission(android.Manifest.permission.MANAGE_EXTERNAL_STORAGE) public static final String ACTION_CLEAR_APP_CACHE = "android.os.storage.action.CLEAR_APP_CACHE"; field public static final String ACTION_MANAGE_STORAGE = "android.os.storage.action.MANAGE_STORAGE"; field public static final String EXTRA_REQUESTED_BYTES = "android.os.storage.extra.REQUESTED_BYTES"; field public static final String EXTRA_UUID = "android.os.storage.extra.UUID"; field public static final java.util.UUID UUID_DEFAULT; } + public static class StorageManager.StorageVolumeCallback { + ctor public StorageManager.StorageVolumeCallback(); + method public void onStateChanged(@NonNull android.os.storage.StorageVolume); + } + public final class StorageVolume implements android.os.Parcelable { method @Deprecated @Nullable public android.content.Intent createAccessIntent(String); method @NonNull public android.content.Intent createOpenDocumentTreeIntent(); method public int describeContents(); method public String getDescription(android.content.Context); + method @Nullable public java.io.File getDirectory(); + method @Nullable public String getMediaStoreVolumeName(); method public String getState(); method @Nullable public String getUuid(); method public boolean isEmulated(); @@ -36869,10 +38664,12 @@ package android.provider { field public static final String DURATION = "duration"; field public static final String EXTRA_CALL_TYPE_FILTER = "android.provider.extra.CALL_TYPE_FILTER"; field public static final String FEATURES = "features"; + field public static final int FEATURES_ASSISTED_DIALING_USED = 16; // 0x10 field public static final int FEATURES_HD_CALL = 4; // 0x4 field public static final int FEATURES_PULLED_EXTERNALLY = 2; // 0x2 field public static final int FEATURES_RTT = 32; // 0x20 field public static final int FEATURES_VIDEO = 1; // 0x1 + field public static final int FEATURES_VOLTE = 64; // 0x40 field public static final int FEATURES_WIFI = 8; // 0x8 field public static final String GEOCODED_LOCATION = "geocoded_location"; field public static final int INCOMING_TYPE = 1; // 0x1 @@ -37913,6 +39710,8 @@ package android.provider { public static final class ContactsContract.RawContacts implements android.provider.BaseColumns android.provider.ContactsContract.ContactNameColumns android.provider.ContactsContract.ContactOptionsColumns android.provider.ContactsContract.RawContactsColumns android.provider.ContactsContract.SyncColumns { method public static android.net.Uri getContactLookupUri(android.content.ContentResolver, android.net.Uri); + method @Nullable public static String getLocalAccountName(@NonNull android.content.Context); + method @Nullable public static String getLocalAccountType(@NonNull android.content.Context); method public static android.content.EntityIterator newEntityIterator(android.database.Cursor); field public static final int AGGREGATION_MODE_DEFAULT = 0; // 0x0 field public static final int AGGREGATION_MODE_DISABLED = 3; // 0x3 @@ -37943,7 +39742,7 @@ package android.provider { field public static final String CONTACT_ID = "contact_id"; field public static final String DATA_SET = "data_set"; field public static final String DELETED = "deleted"; - field public static final String METADATA_DIRTY = "metadata_dirty"; + field @Deprecated public static final String METADATA_DIRTY = "metadata_dirty"; field public static final String RAW_CONTACT_IS_READ_ONLY = "raw_contact_is_read_only"; field public static final String RAW_CONTACT_IS_USER_PROFILE = "raw_contact_is_user_profile"; } @@ -38084,6 +39883,7 @@ package android.provider { field public static final String COLUMN_MIME_TYPE = "mime_type"; field public static final String COLUMN_SIZE = "_size"; field public static final String COLUMN_SUMMARY = "summary"; + field public static final int FLAG_DIR_BLOCKS_OPEN_DOCUMENT_TREE = 32768; // 0x8000 field public static final int FLAG_DIR_PREFERS_GRID = 16; // 0x10 field public static final int FLAG_DIR_PREFERS_LAST_MODIFIED = 32; // 0x20 field public static final int FLAG_DIR_SUPPORTS_CREATE = 8; // 0x8 @@ -38249,14 +40049,21 @@ package android.provider { public final class MediaStore { ctor public MediaStore(); + method @NonNull public static android.app.PendingIntent createDeleteRequest(@NonNull android.content.ContentResolver, @NonNull java.util.Collection<android.net.Uri>); + method @NonNull public static android.app.PendingIntent createFavoriteRequest(@NonNull android.content.ContentResolver, @NonNull java.util.Collection<android.net.Uri>, boolean); + method @NonNull public static android.app.PendingIntent createTrashRequest(@NonNull android.content.ContentResolver, @NonNull java.util.Collection<android.net.Uri>, boolean); + method @NonNull public static android.app.PendingIntent createWriteRequest(@NonNull android.content.ContentResolver, @NonNull java.util.Collection<android.net.Uri>); method @Nullable public static android.net.Uri getDocumentUri(@NonNull android.content.Context, @NonNull android.net.Uri); method @NonNull public static java.util.Set<java.lang.String> getExternalVolumeNames(@NonNull android.content.Context); + method public static long getGeneration(@NonNull android.content.Context, @NonNull String); method public static android.net.Uri getMediaScannerUri(); method @Nullable public static android.net.Uri getMediaUri(@NonNull android.content.Context, @NonNull android.net.Uri); + method @NonNull public static java.util.Set<java.lang.String> getRecentExternalVolumeNames(@NonNull android.content.Context); + method public static boolean getRequireOriginal(@NonNull android.net.Uri); method @NonNull public static String getVersion(@NonNull android.content.Context); method @NonNull public static String getVersion(@NonNull android.content.Context, @NonNull String); method @NonNull public static String getVolumeName(@NonNull android.net.Uri); - method @NonNull public static android.net.Uri setIncludePending(@NonNull android.net.Uri); + method @Deprecated @NonNull public static android.net.Uri setIncludePending(@NonNull android.net.Uri); method @NonNull public static android.net.Uri setRequireOriginal(@NonNull android.net.Uri); field public static final String ACTION_IMAGE_CAPTURE = "android.media.action.IMAGE_CAPTURE"; field public static final String ACTION_IMAGE_CAPTURE_SECURE = "android.media.action.IMAGE_CAPTURE_SECURE"; @@ -38289,9 +40096,18 @@ package android.provider { field public static final String INTENT_ACTION_TEXT_OPEN_FROM_SEARCH = "android.media.action.TEXT_OPEN_FROM_SEARCH"; field public static final String INTENT_ACTION_VIDEO_CAMERA = "android.media.action.VIDEO_CAMERA"; field public static final String INTENT_ACTION_VIDEO_PLAY_FROM_SEARCH = "android.media.action.VIDEO_PLAY_FROM_SEARCH"; + field public static final int MATCH_DEFAULT = 0; // 0x0 + field public static final int MATCH_EXCLUDE = 2; // 0x2 + field public static final int MATCH_INCLUDE = 1; // 0x1 + field public static final int MATCH_ONLY = 3; // 0x3 field public static final String MEDIA_IGNORE_FILENAME = ".nomedia"; field public static final String MEDIA_SCANNER_VOLUME = "volume"; + field public static final String META_DATA_REVIEW_GALLERY_PREWARM_SERVICE = "android.media.review_gallery_prewarm_service"; field public static final String META_DATA_STILL_IMAGE_CAMERA_PREWARM_SERVICE = "android.media.still_image_camera_preview_service"; + field public static final String QUERY_ARG_MATCH_FAVORITE = "android:query-arg-match-favorite"; + field public static final String QUERY_ARG_MATCH_PENDING = "android:query-arg-match-pending"; + field public static final String QUERY_ARG_MATCH_TRASHED = "android:query-arg-match-trashed"; + field public static final String QUERY_ARG_RELATED_URI = "android:query-arg-related-uri"; field public static final String UNKNOWN_STRING = "<unknown>"; field public static final String VOLUME_EXTERNAL = "external"; field public static final String VOLUME_EXTERNAL_PRIMARY = "external_primary"; @@ -38300,16 +40116,17 @@ package android.provider { public static final class MediaStore.Audio { ctor public MediaStore.Audio(); - method public static String keyFor(String); + method @Deprecated @Nullable public static String keyFor(@Nullable String); } public static interface MediaStore.Audio.AlbumColumns { field public static final String ALBUM = "album"; field @Deprecated public static final String ALBUM_ART = "album_art"; field public static final String ALBUM_ID = "album_id"; - field public static final String ALBUM_KEY = "album_key"; + field @Deprecated public static final String ALBUM_KEY = "album_key"; field public static final String ARTIST = "artist"; field public static final String ARTIST_ID = "artist_id"; + field @Deprecated public static final String ARTIST_KEY = "artist_key"; field public static final String FIRST_YEAR = "minyear"; field public static final String LAST_YEAR = "maxyear"; field public static final String NUMBER_OF_SONGS = "numsongs"; @@ -38328,7 +40145,7 @@ package android.provider { public static interface MediaStore.Audio.ArtistColumns { field public static final String ARTIST = "artist"; - field public static final String ARTIST_KEY = "artist_key"; + field @Deprecated public static final String ARTIST_KEY = "artist_key"; field public static final String NUMBER_OF_ALBUMS = "number_of_albums"; field public static final String NUMBER_OF_TRACKS = "number_of_tracks"; } @@ -38349,21 +40166,22 @@ package android.provider { } public static interface MediaStore.Audio.AudioColumns extends android.provider.MediaStore.MediaColumns { - field public static final String ALBUM = "album"; field public static final String ALBUM_ID = "album_id"; - field public static final String ALBUM_KEY = "album_key"; - field public static final String ARTIST = "artist"; + field @Deprecated public static final String ALBUM_KEY = "album_key"; field public static final String ARTIST_ID = "artist_id"; - field public static final String ARTIST_KEY = "artist_key"; + field @Deprecated public static final String ARTIST_KEY = "artist_key"; field public static final String BOOKMARK = "bookmark"; - field public static final String COMPOSER = "composer"; + field public static final String GENRE = "genre"; + field public static final String GENRE_ID = "genre_id"; + field @Deprecated public static final String GENRE_KEY = "genre_key"; field public static final String IS_ALARM = "is_alarm"; field public static final String IS_AUDIOBOOK = "is_audiobook"; field public static final String IS_MUSIC = "is_music"; field public static final String IS_NOTIFICATION = "is_notification"; field public static final String IS_PODCAST = "is_podcast"; field public static final String IS_RINGTONE = "is_ringtone"; - field public static final String TITLE_KEY = "title_key"; + field @Deprecated public static final String TITLE_KEY = "title_key"; + field public static final String TITLE_RESOURCE_URI = "title_resource_uri"; field public static final String TRACK = "track"; field public static final String YEAR = "year"; } @@ -38395,6 +40213,7 @@ package android.provider { public static final class MediaStore.Audio.Media implements android.provider.MediaStore.Audio.AudioColumns { ctor public MediaStore.Audio.Media(); method public static android.net.Uri getContentUri(String); + method @NonNull public static android.net.Uri getContentUri(@NonNull String, long); method @Deprecated @Nullable public static android.net.Uri getContentUriForPath(@NonNull String); field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/audio"; field public static final String DEFAULT_SORT_ORDER = "title_key"; @@ -38427,7 +40246,7 @@ package android.provider { field public static final String _ID = "_id"; } - public static interface MediaStore.Audio.PlaylistsColumns { + public static interface MediaStore.Audio.PlaylistsColumns extends android.provider.MediaStore.MediaColumns { field @Deprecated public static final String DATA = "_data"; field public static final String DATE_ADDED = "date_added"; field public static final String DATE_MODIFIED = "date_modified"; @@ -38445,6 +40264,7 @@ package android.provider { public static final class MediaStore.Downloads implements android.provider.MediaStore.DownloadColumns { method @NonNull public static android.net.Uri getContentUri(@NonNull String); + method @NonNull public static android.net.Uri getContentUri(@NonNull String, long); field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/download"; field @NonNull public static final android.net.Uri EXTERNAL_CONTENT_URI; field @NonNull public static final android.net.Uri INTERNAL_CONTENT_URI; @@ -38459,13 +40279,14 @@ package android.provider { public static interface MediaStore.Files.FileColumns extends android.provider.MediaStore.MediaColumns { field public static final String MEDIA_TYPE = "media_type"; field public static final int MEDIA_TYPE_AUDIO = 2; // 0x2 + field public static final int MEDIA_TYPE_DOCUMENT = 6; // 0x6 field public static final int MEDIA_TYPE_IMAGE = 1; // 0x1 field public static final int MEDIA_TYPE_NONE = 0; // 0x0 field public static final int MEDIA_TYPE_PLAYLIST = 4; // 0x4 + field public static final int MEDIA_TYPE_SUBTITLE = 5; // 0x5 field public static final int MEDIA_TYPE_VIDEO = 3; // 0x3 field public static final String MIME_TYPE = "mime_type"; field public static final String PARENT = "parent"; - field public static final String TITLE = "title"; } public static final class MediaStore.Images { @@ -38474,17 +40295,22 @@ package android.provider { public static interface MediaStore.Images.ImageColumns extends android.provider.MediaStore.MediaColumns { field public static final String DESCRIPTION = "description"; + field public static final String EXPOSURE_TIME = "exposure_time"; + field public static final String F_NUMBER = "f_number"; + field public static final String ISO = "iso"; field public static final String IS_PRIVATE = "isprivate"; field @Deprecated public static final String LATITUDE = "latitude"; field @Deprecated public static final String LONGITUDE = "longitude"; field @Deprecated public static final String MINI_THUMB_MAGIC = "mini_thumb_magic"; field @Deprecated public static final String PICASA_ID = "picasa_id"; + field public static final String SCENE_CAPTURE_TYPE = "scene_capture_type"; } public static final class MediaStore.Images.Media implements android.provider.MediaStore.Images.ImageColumns { ctor public MediaStore.Images.Media(); method @Deprecated public static android.graphics.Bitmap getBitmap(android.content.ContentResolver, android.net.Uri) throws java.io.FileNotFoundException, java.io.IOException; method public static android.net.Uri getContentUri(String); + method @NonNull public static android.net.Uri getContentUri(@NonNull String, long); method @Deprecated public static String insertImage(android.content.ContentResolver, String, String, String) throws java.io.FileNotFoundException; method @Deprecated public static String insertImage(android.content.ContentResolver, android.graphics.Bitmap, String, String); method @Deprecated public static android.database.Cursor query(android.content.ContentResolver, android.net.Uri, String[]); @@ -38501,6 +40327,7 @@ package android.provider { method @Deprecated public static void cancelThumbnailRequest(android.content.ContentResolver, long); method @Deprecated public static void cancelThumbnailRequest(android.content.ContentResolver, long, long); method @Deprecated public static android.net.Uri getContentUri(String); + method @Deprecated @NonNull public static android.util.Size getKindSize(int); method @Deprecated public static android.graphics.Bitmap getThumbnail(android.content.ContentResolver, long, int, android.graphics.BitmapFactory.Options); method @Deprecated public static android.graphics.Bitmap getThumbnail(android.content.ContentResolver, long, long, int, android.graphics.BitmapFactory.Options); method @Deprecated public static final android.database.Cursor query(android.content.ContentResolver, android.net.Uri, String[]); @@ -38521,28 +40348,50 @@ package android.provider { } public static interface MediaStore.MediaColumns extends android.provider.BaseColumns { + field public static final String ALBUM = "album"; + field public static final String ALBUM_ARTIST = "album_artist"; + field public static final String ARTIST = "artist"; + field public static final String AUTHOR = "author"; + field public static final String BITRATE = "bitrate"; field public static final String BUCKET_DISPLAY_NAME = "bucket_display_name"; field public static final String BUCKET_ID = "bucket_id"; + field public static final String CAPTURE_FRAMERATE = "capture_framerate"; + field public static final String CD_TRACK_NUMBER = "cd_track_number"; + field public static final String COMPILATION = "compilation"; + field public static final String COMPOSER = "composer"; field @Deprecated public static final String DATA = "_data"; field public static final String DATE_ADDED = "date_added"; field public static final String DATE_EXPIRES = "date_expires"; field public static final String DATE_MODIFIED = "date_modified"; field public static final String DATE_TAKEN = "datetaken"; + field public static final String DISC_NUMBER = "disc_number"; field public static final String DISPLAY_NAME = "_display_name"; field public static final String DOCUMENT_ID = "document_id"; field public static final String DURATION = "duration"; + field public static final String GENERATION_ADDED = "generation_added"; + field public static final String GENERATION_MODIFIED = "generation_modified"; + field public static final String GENRE = "genre"; field public static final String HEIGHT = "height"; field public static final String INSTANCE_ID = "instance_id"; + field public static final String IS_DOWNLOAD = "is_download"; + field public static final String IS_DRM = "is_drm"; + field public static final String IS_FAVORITE = "is_favorite"; field public static final String IS_PENDING = "is_pending"; + field public static final String IS_TRASHED = "is_trashed"; field public static final String MIME_TYPE = "mime_type"; + field public static final String NUM_TRACKS = "num_tracks"; field public static final String ORIENTATION = "orientation"; field public static final String ORIGINAL_DOCUMENT_ID = "original_document_id"; field public static final String OWNER_PACKAGE_NAME = "owner_package_name"; field public static final String RELATIVE_PATH = "relative_path"; + field public static final String RESOLUTION = "resolution"; field public static final String SIZE = "_size"; field public static final String TITLE = "title"; field public static final String VOLUME_NAME = "volume_name"; field public static final String WIDTH = "width"; + field public static final String WRITER = "writer"; + field public static final String XMP = "xmp"; + field public static final String YEAR = "year"; } public static final class MediaStore.Video { @@ -38554,6 +40403,7 @@ package android.provider { public static final class MediaStore.Video.Media implements android.provider.MediaStore.Video.VideoColumns { ctor public MediaStore.Video.Media(); method public static android.net.Uri getContentUri(String); + method @NonNull public static android.net.Uri getContentUri(@NonNull String, long); field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/video"; field public static final String DEFAULT_SORT_ORDER = "title"; field public static final android.net.Uri EXTERNAL_CONTENT_URI; @@ -38565,6 +40415,7 @@ package android.provider { method @Deprecated public static void cancelThumbnailRequest(android.content.ContentResolver, long); method @Deprecated public static void cancelThumbnailRequest(android.content.ContentResolver, long, long); method @Deprecated public static android.net.Uri getContentUri(String); + method @Deprecated @NonNull public static android.util.Size getKindSize(int); method @Deprecated public static android.graphics.Bitmap getThumbnail(android.content.ContentResolver, long, int, android.graphics.BitmapFactory.Options); method @Deprecated public static android.graphics.Bitmap getThumbnail(android.content.ContentResolver, long, long, int, android.graphics.BitmapFactory.Options); field @Deprecated public static final String DATA = "_data"; @@ -38581,17 +40432,17 @@ package android.provider { } public static interface MediaStore.Video.VideoColumns extends android.provider.MediaStore.MediaColumns { - field public static final String ALBUM = "album"; - field public static final String ARTIST = "artist"; field public static final String BOOKMARK = "bookmark"; field public static final String CATEGORY = "category"; + field public static final String COLOR_RANGE = "color_range"; + field public static final String COLOR_STANDARD = "color_standard"; + field public static final String COLOR_TRANSFER = "color_transfer"; field public static final String DESCRIPTION = "description"; field public static final String IS_PRIVATE = "isprivate"; field public static final String LANGUAGE = "language"; field @Deprecated public static final String LATITUDE = "latitude"; field @Deprecated public static final String LONGITUDE = "longitude"; field @Deprecated public static final String MINI_THUMB_MAGIC = "mini_thumb_magic"; - field public static final String RESOLUTION = "resolution"; field public static final String TAGS = "tags"; } @@ -38628,17 +40479,19 @@ package android.provider { field public static final String ACTION_APP_SEARCH_SETTINGS = "android.settings.APP_SEARCH_SETTINGS"; field public static final String ACTION_APP_USAGE_SETTINGS = "android.settings.action.APP_USAGE_SETTINGS"; field public static final String ACTION_BATTERY_SAVER_SETTINGS = "android.settings.BATTERY_SAVER_SETTINGS"; + field public static final String ACTION_BIOMETRIC_ENROLL = "android.settings.BIOMETRIC_ENROLL"; field public static final String ACTION_BLUETOOTH_SETTINGS = "android.settings.BLUETOOTH_SETTINGS"; field public static final String ACTION_CAPTIONING_SETTINGS = "android.settings.CAPTIONING_SETTINGS"; field public static final String ACTION_CAST_SETTINGS = "android.settings.CAST_SETTINGS"; field public static final String ACTION_CHANNEL_NOTIFICATION_SETTINGS = "android.settings.CHANNEL_NOTIFICATION_SETTINGS"; + field public static final String ACTION_CONDITION_PROVIDER_SETTINGS = "android.settings.ACTION_CONDITION_PROVIDER_SETTINGS"; field public static final String ACTION_DATA_ROAMING_SETTINGS = "android.settings.DATA_ROAMING_SETTINGS"; field public static final String ACTION_DATA_USAGE_SETTINGS = "android.settings.DATA_USAGE_SETTINGS"; field public static final String ACTION_DATE_SETTINGS = "android.settings.DATE_SETTINGS"; field public static final String ACTION_DEVICE_INFO_SETTINGS = "android.settings.DEVICE_INFO_SETTINGS"; field public static final String ACTION_DISPLAY_SETTINGS = "android.settings.DISPLAY_SETTINGS"; field public static final String ACTION_DREAM_SETTINGS = "android.settings.DREAM_SETTINGS"; - field public static final String ACTION_FINGERPRINT_ENROLL = "android.settings.FINGERPRINT_ENROLL"; + field @Deprecated public static final String ACTION_FINGERPRINT_ENROLL = "android.settings.FINGERPRINT_ENROLL"; field public static final String ACTION_HARD_KEYBOARD_SETTINGS = "android.settings.HARD_KEYBOARD_SETTINGS"; field public static final String ACTION_HOME_SETTINGS = "android.settings.HOME_SETTINGS"; field public static final String ACTION_IGNORE_BACKGROUND_DATA_RESTRICTIONS_SETTINGS = "android.settings.IGNORE_BACKGROUND_DATA_RESTRICTIONS_SETTINGS"; @@ -38649,7 +40502,9 @@ package android.provider { field public static final String ACTION_LOCALE_SETTINGS = "android.settings.LOCALE_SETTINGS"; field public static final String ACTION_LOCATION_SOURCE_SETTINGS = "android.settings.LOCATION_SOURCE_SETTINGS"; field public static final String ACTION_MANAGE_ALL_APPLICATIONS_SETTINGS = "android.settings.MANAGE_ALL_APPLICATIONS_SETTINGS"; + field public static final String ACTION_MANAGE_ALL_FILES_ACCESS_PERMISSION = "android.settings.MANAGE_ALL_FILES_ACCESS_PERMISSION"; field public static final String ACTION_MANAGE_APPLICATIONS_SETTINGS = "android.settings.MANAGE_APPLICATIONS_SETTINGS"; + field public static final String ACTION_MANAGE_APP_ALL_FILES_ACCESS_PERMISSION = "android.settings.MANAGE_APP_ALL_FILES_ACCESS_PERMISSION"; field public static final String ACTION_MANAGE_DEFAULT_APPS_SETTINGS = "android.settings.MANAGE_DEFAULT_APPS_SETTINGS"; field public static final String ACTION_MANAGE_OVERLAY_PERMISSION = "android.settings.action.MANAGE_OVERLAY_PERMISSION"; field public static final String ACTION_MANAGE_UNKNOWN_APP_SOURCES = "android.settings.MANAGE_UNKNOWN_APP_SOURCES"; @@ -38661,11 +40516,13 @@ package android.provider { field public static final String ACTION_NFC_SETTINGS = "android.settings.NFC_SETTINGS"; field public static final String ACTION_NIGHT_DISPLAY_SETTINGS = "android.settings.NIGHT_DISPLAY_SETTINGS"; field public static final String ACTION_NOTIFICATION_ASSISTANT_SETTINGS = "android.settings.NOTIFICATION_ASSISTANT_SETTINGS"; + field public static final String ACTION_NOTIFICATION_LISTENER_DETAIL_SETTINGS = "android.settings.NOTIFICATION_LISTENER_DETAIL_SETTINGS"; field public static final String ACTION_NOTIFICATION_LISTENER_SETTINGS = "android.settings.ACTION_NOTIFICATION_LISTENER_SETTINGS"; field public static final String ACTION_NOTIFICATION_POLICY_ACCESS_SETTINGS = "android.settings.NOTIFICATION_POLICY_ACCESS_SETTINGS"; field public static final String ACTION_PRINT_SETTINGS = "android.settings.ACTION_PRINT_SETTINGS"; field public static final String ACTION_PRIVACY_SETTINGS = "android.settings.PRIVACY_SETTINGS"; field public static final String ACTION_PROCESS_WIFI_EASY_CONNECT_URI = "android.settings.PROCESS_WIFI_EASY_CONNECT_URI"; + field public static final String ACTION_QUICK_ACCESS_WALLET_SETTINGS = "android.settings.QUICK_ACCESS_WALLET_SETTINGS"; field public static final String ACTION_QUICK_LAUNCH_SETTINGS = "android.settings.QUICK_LAUNCH_SETTINGS"; field public static final String ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS = "android.settings.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS"; field public static final String ACTION_REQUEST_SET_AUTOFILL_SERVICE = "android.settings.REQUEST_SET_AUTOFILL_SERVICE"; @@ -38673,6 +40530,7 @@ package android.provider { field public static final String ACTION_SECURITY_SETTINGS = "android.settings.SECURITY_SETTINGS"; field public static final String ACTION_SETTINGS = "android.settings.SETTINGS"; field public static final String ACTION_SHOW_REGULATORY_INFO = "android.settings.SHOW_REGULATORY_INFO"; + field public static final String ACTION_SHOW_WORK_POLICY_INFO = "android.settings.SHOW_WORK_POLICY_INFO"; field public static final String ACTION_SOUND_SETTINGS = "android.settings.SOUND_SETTINGS"; field @Deprecated public static final String ACTION_STORAGE_VOLUME_ACCESS_SETTINGS = "android.settings.STORAGE_VOLUME_ACCESS_SETTINGS"; field public static final String ACTION_SYNC_SETTINGS = "android.settings.SYNC_SETTINGS"; @@ -38685,21 +40543,34 @@ package android.provider { field public static final String ACTION_VPN_SETTINGS = "android.settings.VPN_SETTINGS"; field public static final String ACTION_VR_LISTENER_SETTINGS = "android.settings.VR_LISTENER_SETTINGS"; field public static final String ACTION_WEBVIEW_SETTINGS = "android.settings.WEBVIEW_SETTINGS"; + field public static final String ACTION_WIFI_ADD_NETWORKS = "android.settings.WIFI_ADD_NETWORKS"; field public static final String ACTION_WIFI_IP_SETTINGS = "android.settings.WIFI_IP_SETTINGS"; field public static final String ACTION_WIFI_SETTINGS = "android.settings.WIFI_SETTINGS"; field public static final String ACTION_WIRELESS_SETTINGS = "android.settings.WIRELESS_SETTINGS"; field public static final String ACTION_ZEN_MODE_PRIORITY_SETTINGS = "android.settings.ZEN_MODE_PRIORITY_SETTINGS"; + field public static final int ADD_WIFI_RESULT_ADD_OR_UPDATE_FAILED = 1; // 0x1 + field public static final int ADD_WIFI_RESULT_ALREADY_EXISTS = 2; // 0x2 + field public static final int ADD_WIFI_RESULT_SUCCESS = 0; // 0x0 field public static final String AUTHORITY = "settings"; field public static final String EXTRA_ACCOUNT_TYPES = "account_types"; field public static final String EXTRA_AIRPLANE_MODE_ENABLED = "airplane_mode_enabled"; field public static final String EXTRA_APP_PACKAGE = "android.provider.extra.APP_PACKAGE"; field public static final String EXTRA_AUTHORITIES = "authorities"; field public static final String EXTRA_BATTERY_SAVER_MODE_ENABLED = "android.settings.extra.battery_saver_mode_enabled"; + field public static final String EXTRA_BIOMETRIC_AUTHENTICATORS_ALLOWED = "android.provider.extra.BIOMETRIC_AUTHENTICATORS_ALLOWED"; field public static final String EXTRA_CHANNEL_ID = "android.provider.extra.CHANNEL_ID"; + field public static final String EXTRA_CONVERSATION_ID = "android.provider.extra.CONVERSATION_ID"; field public static final String EXTRA_DO_NOT_DISTURB_MODE_ENABLED = "android.settings.extra.do_not_disturb_mode_enabled"; field public static final String EXTRA_DO_NOT_DISTURB_MODE_MINUTES = "android.settings.extra.do_not_disturb_mode_minutes"; + field public static final String EXTRA_EASY_CONNECT_ATTEMPTED_SSID = "android.provider.extra.EASY_CONNECT_ATTEMPTED_SSID"; + field public static final String EXTRA_EASY_CONNECT_BAND_LIST = "android.provider.extra.EASY_CONNECT_BAND_LIST"; + field public static final String EXTRA_EASY_CONNECT_CHANNEL_LIST = "android.provider.extra.EASY_CONNECT_CHANNEL_LIST"; + field public static final String EXTRA_EASY_CONNECT_ERROR_CODE = "android.provider.extra.EASY_CONNECT_ERROR_CODE"; field public static final String EXTRA_INPUT_METHOD_ID = "input_method_id"; + field public static final String EXTRA_NOTIFICATION_LISTENER_COMPONENT_NAME = "android.provider.extra.NOTIFICATION_LISTENER_COMPONENT_NAME"; field public static final String EXTRA_SUB_ID = "android.provider.extra.SUB_ID"; + field public static final String EXTRA_WIFI_NETWORK_LIST = "android.provider.extra.WIFI_NETWORK_LIST"; + field public static final String EXTRA_WIFI_NETWORK_RESULT_LIST = "android.provider.extra.WIFI_NETWORK_RESULT_LIST"; field public static final String INTENT_CATEGORY_USAGE_ACCESS_CONFIG = "android.intent.category.USAGE_ACCESS_CONFIG"; field public static final String METADATA_USAGE_ACCESS_REASON = "android.settings.metadata.USAGE_ACCESS_REASON"; } @@ -38753,13 +40624,13 @@ package android.provider { field public static final String WIFI_MAX_DHCP_RETRY_COUNT = "wifi_max_dhcp_retry_count"; field public static final String WIFI_MOBILE_DATA_TRANSITION_WAKELOCK_TIMEOUT_MS = "wifi_mobile_data_transition_wakelock_timeout_ms"; field @Deprecated public static final String WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON = "wifi_networks_available_notification_on"; - field public static final String WIFI_NETWORKS_AVAILABLE_REPEAT_DELAY = "wifi_networks_available_repeat_delay"; - field public static final String WIFI_NUM_OPEN_NETWORKS_KEPT = "wifi_num_open_networks_kept"; + field @Deprecated public static final String WIFI_NETWORKS_AVAILABLE_REPEAT_DELAY = "wifi_networks_available_repeat_delay"; + field @Deprecated public static final String WIFI_NUM_OPEN_NETWORKS_KEPT = "wifi_num_open_networks_kept"; field public static final String WIFI_ON = "wifi_on"; - field public static final String WIFI_SLEEP_POLICY = "wifi_sleep_policy"; - field public static final int WIFI_SLEEP_POLICY_DEFAULT = 0; // 0x0 - field public static final int WIFI_SLEEP_POLICY_NEVER = 2; // 0x2 - field public static final int WIFI_SLEEP_POLICY_NEVER_WHILE_PLUGGED = 1; // 0x1 + field @Deprecated public static final String WIFI_SLEEP_POLICY = "wifi_sleep_policy"; + field @Deprecated public static final int WIFI_SLEEP_POLICY_DEFAULT = 0; // 0x0 + field @Deprecated public static final int WIFI_SLEEP_POLICY_NEVER = 2; // 0x2 + field @Deprecated public static final int WIFI_SLEEP_POLICY_NEVER_WHILE_PLUGGED = 1; // 0x1 field public static final String WIFI_WATCHDOG_ON = "wifi_watchdog_on"; field public static final String WINDOW_ANIMATION_SCALE = "window_animation_scale"; } @@ -38829,6 +40700,7 @@ package android.provider { field public static final String PARENTAL_CONTROL_LAST_UPDATE = "parental_control_last_update"; field public static final String PARENTAL_CONTROL_REDIRECT_URL = "parental_control_redirect_url"; field public static final String RTT_CALLING_MODE = "rtt_calling_mode"; + field public static final String SECURE_FRP_MODE = "secure_frp_mode"; field public static final String SELECTED_INPUT_METHOD_SUBTYPE = "selected_input_method_subtype"; field public static final String SETTINGS_CLASSNAME = "settings_classname"; field public static final String SKIP_FIRST_USE_HINTS = "skip_first_use_hints"; @@ -39126,6 +40998,7 @@ package android.provider { } public static final class Telephony.Mms.Addr implements android.provider.BaseColumns { + method @NonNull public static android.net.Uri getAddrUriForMessage(@NonNull String); field public static final String ADDRESS = "address"; field public static final String CHARSET = "charset"; field public static final String CONTACT_ID = "contact_id"; @@ -39154,6 +41027,7 @@ package android.provider { } public static final class Telephony.Mms.Part implements android.provider.BaseColumns { + method @NonNull public static android.net.Uri getPartUriForMessage(@NonNull String); field public static final String CHARSET = "chset"; field public static final String CONTENT_DISPOSITION = "cd"; field public static final String CONTENT_ID = "cid"; @@ -39255,10 +41129,16 @@ package android.provider { field public static final String DATA_SMS_RECEIVED_ACTION = "android.intent.action.DATA_SMS_RECEIVED"; field public static final String EXTRA_IS_DEFAULT_SMS_APP = "android.provider.extra.IS_DEFAULT_SMS_APP"; field public static final String EXTRA_PACKAGE_NAME = "package"; + field public static final int RESULT_SMS_DATABASE_ERROR = 10; // 0xa + field public static final int RESULT_SMS_DISPATCH_FAILURE = 6; // 0x6 field public static final int RESULT_SMS_DUPLICATED = 5; // 0x5 field public static final int RESULT_SMS_GENERIC_ERROR = 2; // 0x2 field public static final int RESULT_SMS_HANDLED = 1; // 0x1 + field public static final int RESULT_SMS_INVALID_URI = 11; // 0xb + field public static final int RESULT_SMS_NULL_MESSAGE = 8; // 0x8 + field public static final int RESULT_SMS_NULL_PDU = 7; // 0x7 field public static final int RESULT_SMS_OUT_OF_MEMORY = 3; // 0x3 + field public static final int RESULT_SMS_RECEIVED_WHILE_ENCRYPTED = 9; // 0x9 field public static final int RESULT_SMS_UNSUPPORTED = 4; // 0x4 field @Deprecated public static final String SECRET_CODE_ACTION = "android.provider.Telephony.SECRET_CODE"; field public static final String SIM_FULL_ACTION = "android.provider.Telephony.SIM_FULL"; @@ -40560,6 +42440,7 @@ package android.se.omapi { public final class SEService { ctor public SEService(@NonNull android.content.Context, @NonNull java.util.concurrent.Executor, @NonNull android.se.omapi.SEService.OnConnectedListener); method @NonNull public android.se.omapi.Reader[] getReaders(); + method @NonNull public android.se.omapi.Reader getUiccReader(int); method @NonNull public String getVersion(); method public boolean isConnected(); method public void shutdown(); @@ -40586,8 +42467,9 @@ package android.se.omapi { package android.security { public final class AttestedKeyPair { - method public java.util.List<java.security.cert.Certificate> getAttestationRecord(); - method public java.security.KeyPair getKeyPair(); + ctor public AttestedKeyPair(@Nullable java.security.KeyPair, @NonNull java.util.List<java.security.cert.Certificate>); + method @NonNull public java.util.List<java.security.cert.Certificate> getAttestationRecord(); + method @Nullable public java.security.KeyPair getKeyPair(); } public class ConfirmationAlreadyPresentingException extends java.lang.Exception { @@ -40621,6 +42503,11 @@ package android.security { method public android.security.ConfirmationPrompt.Builder setPromptText(CharSequence); } + public final class FileIntegrityManager { + method public boolean isApkVeritySupported(); + method @RequiresPermission(anyOf={android.Manifest.permission.INSTALL_PACKAGES, android.Manifest.permission.REQUEST_INSTALL_PACKAGES}) public boolean isAppSourceCertificateTrusted(@NonNull java.security.cert.X509Certificate) throws java.security.cert.CertificateEncodingException; + } + public final class KeyChain { ctor public KeyChain(); method public static void choosePrivateKeyAlias(@NonNull android.app.Activity, @NonNull android.security.KeyChainAliasCallback, @Nullable String[], @Nullable java.security.Principal[], @Nullable String, int, @Nullable String); @@ -40639,6 +42526,7 @@ package android.security { field public static final String EXTRA_KEY_ALIAS = "android.security.extra.KEY_ALIAS"; field public static final String EXTRA_NAME = "name"; field public static final String EXTRA_PKCS12 = "PKCS12"; + field public static final String KEY_ALIAS_SELECTION_DENIED = "android:alias-selection-denied"; } public interface KeyChainAliasCallback { @@ -40697,6 +42585,138 @@ package android.security { } +package android.security.identity { + + public class AccessControlProfile { + } + + public static final class AccessControlProfile.Builder { + ctor public AccessControlProfile.Builder(@NonNull android.security.identity.AccessControlProfileId); + method @NonNull public android.security.identity.AccessControlProfile build(); + method @NonNull public android.security.identity.AccessControlProfile.Builder setReaderCertificate(@NonNull java.security.cert.X509Certificate); + method @NonNull public android.security.identity.AccessControlProfile.Builder setUserAuthenticationRequired(boolean); + method @NonNull public android.security.identity.AccessControlProfile.Builder setUserAuthenticationTimeout(long); + } + + public class AccessControlProfileId { + ctor public AccessControlProfileId(int); + method public int getId(); + } + + public class AlreadyPersonalizedException extends android.security.identity.IdentityCredentialException { + ctor public AlreadyPersonalizedException(@NonNull String); + ctor public AlreadyPersonalizedException(@NonNull String, @NonNull Throwable); + } + + public class CipherSuiteNotSupportedException extends android.security.identity.IdentityCredentialException { + ctor public CipherSuiteNotSupportedException(@NonNull String); + ctor public CipherSuiteNotSupportedException(@NonNull String, @NonNull Throwable); + } + + public class DocTypeNotSupportedException extends android.security.identity.IdentityCredentialException { + ctor public DocTypeNotSupportedException(@NonNull String); + ctor public DocTypeNotSupportedException(@NonNull String, @NonNull Throwable); + } + + public class EphemeralPublicKeyNotFoundException extends android.security.identity.IdentityCredentialException { + ctor public EphemeralPublicKeyNotFoundException(@NonNull String); + ctor public EphemeralPublicKeyNotFoundException(@NonNull String, @NonNull Throwable); + } + + public abstract class IdentityCredential { + method @NonNull public abstract java.security.KeyPair createEphemeralKeyPair(); + method @NonNull public abstract byte[] decryptMessageFromReader(@NonNull byte[]) throws android.security.identity.MessageDecryptionException; + method @NonNull public abstract byte[] encryptMessageToReader(@NonNull byte[]); + method @NonNull public abstract java.util.Collection<java.security.cert.X509Certificate> getAuthKeysNeedingCertification(); + method @NonNull public abstract int[] getAuthenticationDataUsageCount(); + method @NonNull public abstract java.util.Collection<java.security.cert.X509Certificate> getCredentialKeyCertificateChain(); + method @NonNull public abstract android.security.identity.ResultData getEntries(@Nullable byte[], @NonNull java.util.Map<java.lang.String,java.util.Collection<java.lang.String>>, @Nullable byte[], @Nullable byte[]) throws android.security.identity.EphemeralPublicKeyNotFoundException, android.security.identity.InvalidReaderSignatureException, android.security.identity.InvalidRequestMessageException, android.security.identity.NoAuthenticationKeyAvailableException, android.security.identity.SessionTranscriptMismatchException; + method public abstract void setAllowUsingExhaustedKeys(boolean); + method public abstract void setAvailableAuthenticationKeys(int, int); + method public abstract void setReaderEphemeralPublicKey(@NonNull java.security.PublicKey) throws java.security.InvalidKeyException; + method public abstract void storeStaticAuthenticationData(@NonNull java.security.cert.X509Certificate, @NonNull byte[]) throws android.security.identity.UnknownAuthenticationKeyException; + } + + public class IdentityCredentialException extends java.lang.Exception { + ctor public IdentityCredentialException(@NonNull String); + ctor public IdentityCredentialException(@NonNull String, @NonNull Throwable); + } + + public abstract class IdentityCredentialStore { + method @NonNull public abstract android.security.identity.WritableIdentityCredential createCredential(@NonNull String, @NonNull String) throws android.security.identity.AlreadyPersonalizedException, android.security.identity.DocTypeNotSupportedException; + method @Nullable public abstract byte[] deleteCredentialByName(@NonNull String); + method @Nullable public abstract android.security.identity.IdentityCredential getCredentialByName(@NonNull String, int) throws android.security.identity.CipherSuiteNotSupportedException; + method @Nullable public static android.security.identity.IdentityCredentialStore getDirectAccessInstance(@NonNull android.content.Context); + method @Nullable public static android.security.identity.IdentityCredentialStore getInstance(@NonNull android.content.Context); + method @NonNull public abstract String[] getSupportedDocTypes(); + field public static final int CIPHERSUITE_ECDHE_HKDF_ECDSA_WITH_AES_256_GCM_SHA256 = 1; // 0x1 + } + + public class InvalidReaderSignatureException extends android.security.identity.IdentityCredentialException { + ctor public InvalidReaderSignatureException(@NonNull String); + ctor public InvalidReaderSignatureException(@NonNull String, @NonNull Throwable); + } + + public class InvalidRequestMessageException extends android.security.identity.IdentityCredentialException { + ctor public InvalidRequestMessageException(@NonNull String); + ctor public InvalidRequestMessageException(@NonNull String, @NonNull Throwable); + } + + public class MessageDecryptionException extends android.security.identity.IdentityCredentialException { + ctor public MessageDecryptionException(@NonNull String); + ctor public MessageDecryptionException(@NonNull String, @NonNull Throwable); + } + + public class NoAuthenticationKeyAvailableException extends android.security.identity.IdentityCredentialException { + ctor public NoAuthenticationKeyAvailableException(@NonNull String); + ctor public NoAuthenticationKeyAvailableException(@NonNull String, @NonNull Throwable); + } + + public class PersonalizationData { + } + + public static final class PersonalizationData.Builder { + ctor public PersonalizationData.Builder(); + method @NonNull public android.security.identity.PersonalizationData.Builder addAccessControlProfile(@NonNull android.security.identity.AccessControlProfile); + method @NonNull public android.security.identity.PersonalizationData build(); + method @NonNull public android.security.identity.PersonalizationData.Builder putEntry(@NonNull String, @NonNull String, @NonNull java.util.Collection<android.security.identity.AccessControlProfileId>, @NonNull byte[]); + } + + public abstract class ResultData { + method @NonNull public abstract byte[] getAuthenticatedData(); + method @Nullable public abstract byte[] getEntry(@NonNull String, @NonNull String); + method @Nullable public abstract java.util.Collection<java.lang.String> getEntryNames(@NonNull String); + method @Nullable public abstract byte[] getMessageAuthenticationCode(); + method @NonNull public abstract java.util.Collection<java.lang.String> getNamespaces(); + method @Nullable public abstract java.util.Collection<java.lang.String> getRetrievedEntryNames(@NonNull String); + method @NonNull public abstract byte[] getStaticAuthenticationData(); + method public abstract int getStatus(@NonNull String, @NonNull String); + field public static final int STATUS_NOT_IN_REQUEST_MESSAGE = 3; // 0x3 + field public static final int STATUS_NOT_REQUESTED = 2; // 0x2 + field public static final int STATUS_NO_ACCESS_CONTROL_PROFILES = 6; // 0x6 + field public static final int STATUS_NO_SUCH_ENTRY = 1; // 0x1 + field public static final int STATUS_OK = 0; // 0x0 + field public static final int STATUS_READER_AUTHENTICATION_FAILED = 5; // 0x5 + field public static final int STATUS_USER_AUTHENTICATION_FAILED = 4; // 0x4 + } + + public class SessionTranscriptMismatchException extends android.security.identity.IdentityCredentialException { + ctor public SessionTranscriptMismatchException(@NonNull String); + ctor public SessionTranscriptMismatchException(@NonNull String, @NonNull Throwable); + } + + public class UnknownAuthenticationKeyException extends android.security.identity.IdentityCredentialException { + ctor public UnknownAuthenticationKeyException(@NonNull String); + ctor public UnknownAuthenticationKeyException(@NonNull String, @NonNull Throwable); + } + + public abstract class WritableIdentityCredential { + method @NonNull public abstract java.util.Collection<java.security.cert.X509Certificate> getCredentialKeyCertificateChain(@NonNull byte[]); + method @NonNull public abstract byte[] personalize(@NonNull android.security.identity.PersonalizationData); + } + +} + package android.security.keystore { public class KeyExpiredException extends java.security.InvalidKeyException { @@ -40722,6 +42742,7 @@ package android.security.keystore { method @NonNull public String getKeystoreAlias(); method public int getPurposes(); method @NonNull public String[] getSignaturePaddings(); + method public int getUserAuthenticationType(); method public int getUserAuthenticationValidityDurationSeconds(); method @NonNull public boolean isDigestsSpecified(); method public boolean isInvalidatedByBiometricEnrollment(); @@ -40756,9 +42777,10 @@ package android.security.keystore { method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setRandomizedEncryptionRequired(boolean); method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setSignaturePaddings(java.lang.String...); method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setUnlockedDeviceRequired(boolean); + method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setUserAuthenticationParameters(@IntRange(from=0) int, int); method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setUserAuthenticationRequired(boolean); method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setUserAuthenticationValidWhileOnBody(boolean); - method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setUserAuthenticationValidityDurationSeconds(@IntRange(from=0xffffffff) int); + method @Deprecated @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setUserAuthenticationValidityDurationSeconds(@IntRange(from=0xffffffff) int); method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setUserConfirmationRequired(boolean); method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setUserPresenceRequired(boolean); } @@ -40775,6 +42797,7 @@ package android.security.keystore { method public int getOrigin(); method public int getPurposes(); method @NonNull public String[] getSignaturePaddings(); + method public int getUserAuthenticationType(); method public int getUserAuthenticationValidityDurationSeconds(); method public boolean isInsideSecureHardware(); method public boolean isInvalidatedByBiometricEnrollment(); @@ -40798,6 +42821,8 @@ package android.security.keystore { } public abstract class KeyProperties { + field public static final int AUTH_BIOMETRIC_STRONG = 2; // 0x2 + field public static final int AUTH_DEVICE_CREDENTIAL = 1; // 0x1 field public static final String BLOCK_MODE_CBC = "CBC"; field public static final String BLOCK_MODE_CTR = "CTR"; field public static final String BLOCK_MODE_ECB = "ECB"; @@ -40844,6 +42869,7 @@ package android.security.keystore { method @Nullable public java.util.Date getKeyValidityStart(); method public int getPurposes(); method @NonNull public String[] getSignaturePaddings(); + method public int getUserAuthenticationType(); method public int getUserAuthenticationValidityDurationSeconds(); method public boolean isDigestsSpecified(); method public boolean isInvalidatedByBiometricEnrollment(); @@ -40869,9 +42895,10 @@ package android.security.keystore { method @NonNull public android.security.keystore.KeyProtection.Builder setRandomizedEncryptionRequired(boolean); method @NonNull public android.security.keystore.KeyProtection.Builder setSignaturePaddings(java.lang.String...); method @NonNull public android.security.keystore.KeyProtection.Builder setUnlockedDeviceRequired(boolean); + method @NonNull public android.security.keystore.KeyProtection.Builder setUserAuthenticationParameters(@IntRange(from=0) int, int); method @NonNull public android.security.keystore.KeyProtection.Builder setUserAuthenticationRequired(boolean); method @NonNull public android.security.keystore.KeyProtection.Builder setUserAuthenticationValidWhileOnBody(boolean); - method @NonNull public android.security.keystore.KeyProtection.Builder setUserAuthenticationValidityDurationSeconds(@IntRange(from=0xffffffff) int); + method @Deprecated @NonNull public android.security.keystore.KeyProtection.Builder setUserAuthenticationValidityDurationSeconds(@IntRange(from=0xffffffff) int); method @NonNull public android.security.keystore.KeyProtection.Builder setUserConfirmationRequired(boolean); method @NonNull public android.security.keystore.KeyProtection.Builder setUserPresenceRequired(boolean); } @@ -40977,10 +43004,13 @@ package android.service.autofill { method @NonNull public android.service.autofill.Dataset build(); method @NonNull public android.service.autofill.Dataset.Builder setAuthentication(@Nullable android.content.IntentSender); method @NonNull public android.service.autofill.Dataset.Builder setId(@Nullable String); + method @NonNull public android.service.autofill.Dataset.Builder setInlinePresentation(@NonNull android.service.autofill.InlinePresentation); method @NonNull public android.service.autofill.Dataset.Builder setValue(@NonNull android.view.autofill.AutofillId, @Nullable android.view.autofill.AutofillValue); method @NonNull public android.service.autofill.Dataset.Builder setValue(@NonNull android.view.autofill.AutofillId, @Nullable android.view.autofill.AutofillValue, @NonNull android.widget.RemoteViews); method @NonNull public android.service.autofill.Dataset.Builder setValue(@NonNull android.view.autofill.AutofillId, @Nullable android.view.autofill.AutofillValue, @Nullable java.util.regex.Pattern); method @NonNull public android.service.autofill.Dataset.Builder setValue(@NonNull android.view.autofill.AutofillId, @Nullable android.view.autofill.AutofillValue, @Nullable java.util.regex.Pattern, @NonNull android.widget.RemoteViews); + method @NonNull public android.service.autofill.Dataset.Builder setValue(@NonNull android.view.autofill.AutofillId, @Nullable android.view.autofill.AutofillValue, @NonNull android.widget.RemoteViews, @NonNull android.service.autofill.InlinePresentation); + method @NonNull public android.service.autofill.Dataset.Builder setValue(@NonNull android.view.autofill.AutofillId, @Nullable android.view.autofill.AutofillValue, @Nullable java.util.regex.Pattern, @NonNull android.widget.RemoteViews, @NonNull android.service.autofill.InlinePresentation); } public final class DateTransformation implements android.os.Parcelable android.service.autofill.Transformation { @@ -41039,6 +43069,7 @@ package android.service.autofill { method public int getType(); field public static final int TYPE_AUTHENTICATION_SELECTED = 2; // 0x2 field public static final int TYPE_CONTEXT_COMMITTED = 4; // 0x4 + field public static final int TYPE_DATASETS_SHOWN = 5; // 0x5 field public static final int TYPE_DATASET_AUTHENTICATION_SELECTED = 1; // 0x1 field public static final int TYPE_DATASET_SELECTED = 0; // 0x0 field public static final int TYPE_SAVE_SHOWN = 3; // 0x3 @@ -41050,7 +43081,8 @@ package android.service.autofill { method @NonNull public java.util.List<android.service.autofill.FillContext> getFillContexts(); method public int getFlags(); method public int getId(); - method public void writeToParcel(android.os.Parcel, int); + method @Nullable public android.view.inputmethod.InlineSuggestionsRequest getInlineSuggestionsRequest(); + method public void writeToParcel(@NonNull android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.service.autofill.FillRequest> CREATOR; field public static final int FLAG_COMPATIBILITY_MODE_REQUEST = 2; // 0x2 field public static final int FLAG_MANUAL_REQUEST = 1; // 0x1 @@ -41070,12 +43102,14 @@ package android.service.autofill { method @NonNull public android.service.autofill.FillResponse build(); method @NonNull public android.service.autofill.FillResponse.Builder disableAutofill(long); method @NonNull public android.service.autofill.FillResponse.Builder setAuthentication(@NonNull android.view.autofill.AutofillId[], @Nullable android.content.IntentSender, @Nullable android.widget.RemoteViews); + method @NonNull public android.service.autofill.FillResponse.Builder setAuthentication(@NonNull android.view.autofill.AutofillId[], @Nullable android.content.IntentSender, @Nullable android.widget.RemoteViews, @Nullable android.service.autofill.InlinePresentation); method @NonNull public android.service.autofill.FillResponse.Builder setClientState(@Nullable android.os.Bundle); method @NonNull public android.service.autofill.FillResponse.Builder setFieldClassificationIds(@NonNull android.view.autofill.AutofillId...); method @NonNull public android.service.autofill.FillResponse.Builder setFlags(int); method @NonNull public android.service.autofill.FillResponse.Builder setFooter(@NonNull android.widget.RemoteViews); method @NonNull public android.service.autofill.FillResponse.Builder setHeader(@NonNull android.widget.RemoteViews); method @NonNull public android.service.autofill.FillResponse.Builder setIgnoredIds(android.view.autofill.AutofillId...); + method @NonNull public android.service.autofill.FillResponse.Builder setPresentationCancelIds(@Nullable int[]); method @NonNull public android.service.autofill.FillResponse.Builder setSaveInfo(@NonNull android.service.autofill.SaveInfo); method @NonNull public android.service.autofill.FillResponse.Builder setUserData(@NonNull android.service.autofill.UserData); } @@ -41094,6 +43128,16 @@ package android.service.autofill { method public android.service.autofill.ImageTransformation build(); } + public final class InlinePresentation implements android.os.Parcelable { + ctor public InlinePresentation(@NonNull android.app.slice.Slice, @NonNull android.widget.inline.InlinePresentationSpec, boolean); + method public int describeContents(); + method @NonNull public android.widget.inline.InlinePresentationSpec getInlinePresentationSpec(); + method @NonNull public android.app.slice.Slice getSlice(); + method public boolean isPinned(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.service.autofill.InlinePresentation> CREATOR; + } + public final class LuhnChecksumValidator implements android.os.Parcelable android.service.autofill.Validator { ctor public LuhnChecksumValidator(@NonNull android.view.autofill.AutofillId...); method public int describeContents(); @@ -41128,12 +43172,18 @@ package android.service.autofill { field public static final int FLAG_DONT_SAVE_ON_FINISH = 2; // 0x2 field public static final int FLAG_SAVE_ON_ALL_VIEWS_INVISIBLE = 1; // 0x1 field public static final int NEGATIVE_BUTTON_STYLE_CANCEL = 0; // 0x0 + field public static final int NEGATIVE_BUTTON_STYLE_NEVER = 2; // 0x2 field public static final int NEGATIVE_BUTTON_STYLE_REJECT = 1; // 0x1 + field public static final int POSITIVE_BUTTON_STYLE_CONTINUE = 1; // 0x1 + field public static final int POSITIVE_BUTTON_STYLE_SAVE = 0; // 0x0 field public static final int SAVE_DATA_TYPE_ADDRESS = 2; // 0x2 field public static final int SAVE_DATA_TYPE_CREDIT_CARD = 4; // 0x4 + field public static final int SAVE_DATA_TYPE_DEBIT_CARD = 32; // 0x20 field public static final int SAVE_DATA_TYPE_EMAIL_ADDRESS = 16; // 0x10 field public static final int SAVE_DATA_TYPE_GENERIC = 0; // 0x0 + field public static final int SAVE_DATA_TYPE_GENERIC_CARD = 128; // 0x80 field public static final int SAVE_DATA_TYPE_PASSWORD = 1; // 0x1 + field public static final int SAVE_DATA_TYPE_PAYMENT_CARD = 64; // 0x40 field public static final int SAVE_DATA_TYPE_USERNAME = 8; // 0x8 } @@ -41147,6 +43197,7 @@ package android.service.autofill { method @NonNull public android.service.autofill.SaveInfo.Builder setFlags(int); method @NonNull public android.service.autofill.SaveInfo.Builder setNegativeAction(int, @Nullable android.content.IntentSender); method @NonNull public android.service.autofill.SaveInfo.Builder setOptionalIds(@NonNull android.view.autofill.AutofillId[]); + method @NonNull public android.service.autofill.SaveInfo.Builder setPositiveAction(int); method @NonNull public android.service.autofill.SaveInfo.Builder setTriggerId(@NonNull android.view.autofill.AutofillId); method @NonNull public android.service.autofill.SaveInfo.Builder setValidator(@NonNull android.service.autofill.Validator); } @@ -41307,25 +43358,289 @@ package android.service.carrier { package android.service.chooser { - public final class ChooserTarget implements android.os.Parcelable { - ctor public ChooserTarget(CharSequence, android.graphics.drawable.Icon, float, android.content.ComponentName, @Nullable android.os.Bundle); + @Deprecated public final class ChooserTarget implements android.os.Parcelable { + ctor @Deprecated public ChooserTarget(CharSequence, android.graphics.drawable.Icon, float, android.content.ComponentName, @Nullable android.os.Bundle); + method @Deprecated public int describeContents(); + method @Deprecated public android.content.ComponentName getComponentName(); + method @Deprecated public android.graphics.drawable.Icon getIcon(); + method @Deprecated public android.os.Bundle getIntentExtras(); + method @Deprecated public float getScore(); + method @Deprecated public CharSequence getTitle(); + method @Deprecated public void writeToParcel(android.os.Parcel, int); + field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.service.chooser.ChooserTarget> CREATOR; + } + + @Deprecated public abstract class ChooserTargetService extends android.app.Service { + ctor @Deprecated public ChooserTargetService(); + method @Deprecated public android.os.IBinder onBind(android.content.Intent); + method @Deprecated public abstract java.util.List<android.service.chooser.ChooserTarget> onGetChooserTargets(android.content.ComponentName, android.content.IntentFilter); + field @Deprecated public static final String BIND_PERMISSION = "android.permission.BIND_CHOOSER_TARGET_SERVICE"; + field @Deprecated public static final String META_DATA_NAME = "android.service.chooser.chooser_target_service"; + field @Deprecated public static final String SERVICE_INTERFACE = "android.service.chooser.ChooserTargetService"; + } + +} + +package android.service.controls { + + public final class Control implements android.os.Parcelable { method public int describeContents(); - method public android.content.ComponentName getComponentName(); - method public android.graphics.drawable.Icon getIcon(); - method public android.os.Bundle getIntentExtras(); - method public float getScore(); - method public CharSequence getTitle(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator<android.service.chooser.ChooserTarget> CREATOR; + method @NonNull public android.app.PendingIntent getAppIntent(); + method @NonNull public String getControlId(); + method @NonNull public android.service.controls.templates.ControlTemplate getControlTemplate(); + method @Nullable public android.content.res.ColorStateList getCustomColor(); + method @Nullable public android.graphics.drawable.Icon getCustomIcon(); + method public int getDeviceType(); + method public int getStatus(); + method @NonNull public CharSequence getStatusText(); + method @Nullable public CharSequence getStructure(); + method @NonNull public CharSequence getSubtitle(); + method @NonNull public CharSequence getTitle(); + method @Nullable public CharSequence getZone(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.service.controls.Control> CREATOR; + field public static final int STATUS_DISABLED = 4; // 0x4 + field public static final int STATUS_ERROR = 3; // 0x3 + field public static final int STATUS_NOT_FOUND = 2; // 0x2 + field public static final int STATUS_OK = 1; // 0x1 + field public static final int STATUS_UNKNOWN = 0; // 0x0 } - public abstract class ChooserTargetService extends android.app.Service { - ctor public ChooserTargetService(); - method public android.os.IBinder onBind(android.content.Intent); - method public abstract java.util.List<android.service.chooser.ChooserTarget> onGetChooserTargets(android.content.ComponentName, android.content.IntentFilter); - field public static final String BIND_PERMISSION = "android.permission.BIND_CHOOSER_TARGET_SERVICE"; - field public static final String META_DATA_NAME = "android.service.chooser.chooser_target_service"; - field public static final String SERVICE_INTERFACE = "android.service.chooser.ChooserTargetService"; + public static final class Control.StatefulBuilder { + ctor public Control.StatefulBuilder(@NonNull String, @NonNull android.app.PendingIntent); + ctor public Control.StatefulBuilder(@NonNull android.service.controls.Control); + method @NonNull public android.service.controls.Control build(); + method @NonNull public android.service.controls.Control.StatefulBuilder setAppIntent(@NonNull android.app.PendingIntent); + method @NonNull public android.service.controls.Control.StatefulBuilder setControlId(@NonNull String); + method @NonNull public android.service.controls.Control.StatefulBuilder setControlTemplate(@NonNull android.service.controls.templates.ControlTemplate); + method @NonNull public android.service.controls.Control.StatefulBuilder setCustomColor(@Nullable android.content.res.ColorStateList); + method @NonNull public android.service.controls.Control.StatefulBuilder setCustomIcon(@Nullable android.graphics.drawable.Icon); + method @NonNull public android.service.controls.Control.StatefulBuilder setDeviceType(int); + method @NonNull public android.service.controls.Control.StatefulBuilder setStatus(int); + method @NonNull public android.service.controls.Control.StatefulBuilder setStatusText(@NonNull CharSequence); + method @NonNull public android.service.controls.Control.StatefulBuilder setStructure(@Nullable CharSequence); + method @NonNull public android.service.controls.Control.StatefulBuilder setSubtitle(@NonNull CharSequence); + method @NonNull public android.service.controls.Control.StatefulBuilder setTitle(@NonNull CharSequence); + method @NonNull public android.service.controls.Control.StatefulBuilder setZone(@Nullable CharSequence); + } + + public static final class Control.StatelessBuilder { + ctor public Control.StatelessBuilder(@NonNull String, @NonNull android.app.PendingIntent); + ctor public Control.StatelessBuilder(@NonNull android.service.controls.Control); + method @NonNull public android.service.controls.Control build(); + method @NonNull public android.service.controls.Control.StatelessBuilder setAppIntent(@NonNull android.app.PendingIntent); + method @NonNull public android.service.controls.Control.StatelessBuilder setControlId(@NonNull String); + method @NonNull public android.service.controls.Control.StatelessBuilder setCustomColor(@Nullable android.content.res.ColorStateList); + method @NonNull public android.service.controls.Control.StatelessBuilder setCustomIcon(@Nullable android.graphics.drawable.Icon); + method @NonNull public android.service.controls.Control.StatelessBuilder setDeviceType(int); + method @NonNull public android.service.controls.Control.StatelessBuilder setStructure(@Nullable CharSequence); + method @NonNull public android.service.controls.Control.StatelessBuilder setSubtitle(@NonNull CharSequence); + method @NonNull public android.service.controls.Control.StatelessBuilder setTitle(@NonNull CharSequence); + method @NonNull public android.service.controls.Control.StatelessBuilder setZone(@Nullable CharSequence); + } + + public abstract class ControlsProviderService extends android.app.Service { + ctor public ControlsProviderService(); + method @NonNull public abstract java.util.concurrent.Flow.Publisher<android.service.controls.Control> createPublisherFor(@NonNull java.util.List<java.lang.String>); + method @NonNull public abstract java.util.concurrent.Flow.Publisher<android.service.controls.Control> createPublisherForAllAvailable(); + method @Nullable public java.util.concurrent.Flow.Publisher<android.service.controls.Control> createPublisherForSuggested(); + method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent); + method public final boolean onUnbind(@NonNull android.content.Intent); + method public abstract void performControlAction(@NonNull String, @NonNull android.service.controls.actions.ControlAction, @NonNull java.util.function.Consumer<java.lang.Integer>); + method public static void requestAddControl(@NonNull android.content.Context, @NonNull android.content.ComponentName, @NonNull android.service.controls.Control); + field public static final String SERVICE_CONTROLS = "android.service.controls.ControlsProviderService"; + field @NonNull public static final String TAG = "ControlsProviderService"; + } + + public class DeviceTypes { + method public static boolean validDeviceType(int); + field public static final int TYPE_AC_HEATER = 1; // 0x1 + field public static final int TYPE_AC_UNIT = 2; // 0x2 + field public static final int TYPE_AIR_FRESHENER = 3; // 0x3 + field public static final int TYPE_AIR_PURIFIER = 4; // 0x4 + field public static final int TYPE_AWNING = 33; // 0x21 + field public static final int TYPE_BLINDS = 34; // 0x22 + field public static final int TYPE_CAMERA = 50; // 0x32 + field public static final int TYPE_CLOSET = 35; // 0x23 + field public static final int TYPE_COFFEE_MAKER = 5; // 0x5 + field public static final int TYPE_CURTAIN = 36; // 0x24 + field public static final int TYPE_DEHUMIDIFIER = 6; // 0x6 + field public static final int TYPE_DISHWASHER = 24; // 0x18 + field public static final int TYPE_DISPLAY = 7; // 0x7 + field public static final int TYPE_DOOR = 37; // 0x25 + field public static final int TYPE_DOORBELL = 51; // 0x33 + field public static final int TYPE_DRAWER = 38; // 0x26 + field public static final int TYPE_DRYER = 25; // 0x19 + field public static final int TYPE_FAN = 8; // 0x8 + field public static final int TYPE_GARAGE = 39; // 0x27 + field public static final int TYPE_GATE = 40; // 0x28 + field public static final int TYPE_GENERIC_ARM_DISARM = -5; // 0xfffffffb + field public static final int TYPE_GENERIC_LOCK_UNLOCK = -4; // 0xfffffffc + field public static final int TYPE_GENERIC_ON_OFF = -1; // 0xffffffff + field public static final int TYPE_GENERIC_OPEN_CLOSE = -3; // 0xfffffffd + field public static final int TYPE_GENERIC_START_STOP = -2; // 0xfffffffe + field public static final int TYPE_GENERIC_TEMP_SETTING = -6; // 0xfffffffa + field public static final int TYPE_GENERIC_VIEWSTREAM = -7; // 0xfffffff9 + field public static final int TYPE_HEATER = 47; // 0x2f + field public static final int TYPE_HOOD = 10; // 0xa + field public static final int TYPE_HUMIDIFIER = 11; // 0xb + field public static final int TYPE_KETTLE = 12; // 0xc + field public static final int TYPE_LIGHT = 13; // 0xd + field public static final int TYPE_LOCK = 45; // 0x2d + field public static final int TYPE_MICROWAVE = 14; // 0xe + field public static final int TYPE_MOP = 26; // 0x1a + field public static final int TYPE_MOWER = 27; // 0x1b + field public static final int TYPE_MULTICOOKER = 28; // 0x1c + field public static final int TYPE_OUTLET = 15; // 0xf + field public static final int TYPE_PERGOLA = 41; // 0x29 + field public static final int TYPE_RADIATOR = 16; // 0x10 + field public static final int TYPE_REFRIGERATOR = 48; // 0x30 + field public static final int TYPE_REMOTE_CONTROL = 17; // 0x11 + field public static final int TYPE_ROUTINE = 52; // 0x34 + field public static final int TYPE_SECURITY_SYSTEM = 46; // 0x2e + field public static final int TYPE_SET_TOP = 18; // 0x12 + field public static final int TYPE_SHOWER = 29; // 0x1d + field public static final int TYPE_SHUTTER = 42; // 0x2a + field public static final int TYPE_SPRINKLER = 30; // 0x1e + field public static final int TYPE_STANDMIXER = 19; // 0x13 + field public static final int TYPE_STYLER = 20; // 0x14 + field public static final int TYPE_SWITCH = 21; // 0x15 + field public static final int TYPE_THERMOSTAT = 49; // 0x31 + field public static final int TYPE_TV = 22; // 0x16 + field public static final int TYPE_UNKNOWN = 0; // 0x0 + field public static final int TYPE_VACUUM = 32; // 0x20 + field public static final int TYPE_VALVE = 44; // 0x2c + field public static final int TYPE_WASHER = 31; // 0x1f + field public static final int TYPE_WATER_HEATER = 23; // 0x17 + field public static final int TYPE_WINDOW = 43; // 0x2b + } + +} + +package android.service.controls.actions { + + public final class BooleanAction extends android.service.controls.actions.ControlAction { + ctor public BooleanAction(@NonNull String, boolean); + ctor public BooleanAction(@NonNull String, boolean, @Nullable String); + method public int getActionType(); + method public boolean getNewState(); + } + + public final class CommandAction extends android.service.controls.actions.ControlAction { + ctor public CommandAction(@NonNull String, @Nullable String); + ctor public CommandAction(@NonNull String); + method public int getActionType(); + } + + public abstract class ControlAction { + method public abstract int getActionType(); + method @Nullable public String getChallengeValue(); + method @NonNull public static android.service.controls.actions.ControlAction getErrorAction(); + method @NonNull public String getTemplateId(); + method public static final boolean isValidResponse(int); + field public static final int RESPONSE_CHALLENGE_ACK = 3; // 0x3 + field public static final int RESPONSE_CHALLENGE_PASSPHRASE = 5; // 0x5 + field public static final int RESPONSE_CHALLENGE_PIN = 4; // 0x4 + field public static final int RESPONSE_FAIL = 2; // 0x2 + field public static final int RESPONSE_OK = 1; // 0x1 + field public static final int RESPONSE_UNKNOWN = 0; // 0x0 + field public static final int TYPE_BOOLEAN = 1; // 0x1 + field public static final int TYPE_COMMAND = 5; // 0x5 + field public static final int TYPE_ERROR = -1; // 0xffffffff + field public static final int TYPE_FLOAT = 2; // 0x2 + field public static final int TYPE_MODE = 4; // 0x4 + } + + public final class FloatAction extends android.service.controls.actions.ControlAction { + ctor public FloatAction(@NonNull String, float); + ctor public FloatAction(@NonNull String, float, @Nullable String); + method public int getActionType(); + method public float getNewValue(); + } + + public final class ModeAction extends android.service.controls.actions.ControlAction { + ctor public ModeAction(@NonNull String, int, @Nullable String); + ctor public ModeAction(@NonNull String, int); + method public int getActionType(); + method public int getNewMode(); + } + +} + +package android.service.controls.templates { + + public final class ControlButton implements android.os.Parcelable { + ctor public ControlButton(boolean, @NonNull CharSequence); + method public int describeContents(); + method @NonNull public CharSequence getActionDescription(); + method public boolean isChecked(); + method @NonNull public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.service.controls.templates.ControlButton> CREATOR; + } + + public abstract class ControlTemplate { + method @NonNull public static android.service.controls.templates.ControlTemplate getErrorTemplate(); + method @NonNull public static android.service.controls.templates.ControlTemplate getNoTemplateObject(); + method @NonNull public String getTemplateId(); + method public abstract int getTemplateType(); + field public static final int TYPE_ERROR = -1; // 0xffffffff + field public static final int TYPE_NO_TEMPLATE = 0; // 0x0 + field public static final int TYPE_RANGE = 2; // 0x2 + field public static final int TYPE_STATELESS = 8; // 0x8 + field public static final int TYPE_TEMPERATURE = 7; // 0x7 + field public static final int TYPE_TOGGLE = 1; // 0x1 + field public static final int TYPE_TOGGLE_RANGE = 6; // 0x6 + } + + public final class RangeTemplate extends android.service.controls.templates.ControlTemplate { + ctor public RangeTemplate(@NonNull String, float, float, float, float, @Nullable CharSequence); + method public float getCurrentValue(); + method @NonNull public CharSequence getFormatString(); + method public float getMaxValue(); + method public float getMinValue(); + method public float getStepValue(); + method public int getTemplateType(); + } + + public final class StatelessTemplate extends android.service.controls.templates.ControlTemplate { + ctor public StatelessTemplate(@NonNull String); + method public int getTemplateType(); + } + + public final class TemperatureControlTemplate extends android.service.controls.templates.ControlTemplate { + ctor public TemperatureControlTemplate(@NonNull String, @NonNull android.service.controls.templates.ControlTemplate, int, int, int); + method public int getCurrentActiveMode(); + method public int getCurrentMode(); + method public int getModes(); + method @NonNull public android.service.controls.templates.ControlTemplate getTemplate(); + method public int getTemplateType(); + field public static final int FLAG_MODE_COOL = 8; // 0x8 + field public static final int FLAG_MODE_ECO = 32; // 0x20 + field public static final int FLAG_MODE_HEAT = 4; // 0x4 + field public static final int FLAG_MODE_HEAT_COOL = 16; // 0x10 + field public static final int FLAG_MODE_OFF = 2; // 0x2 + field public static final int MODE_COOL = 3; // 0x3 + field public static final int MODE_ECO = 5; // 0x5 + field public static final int MODE_HEAT = 2; // 0x2 + field public static final int MODE_HEAT_COOL = 4; // 0x4 + field public static final int MODE_OFF = 1; // 0x1 + field public static final int MODE_UNKNOWN = 0; // 0x0 + } + + public final class ToggleRangeTemplate extends android.service.controls.templates.ControlTemplate { + ctor public ToggleRangeTemplate(@NonNull String, @NonNull android.service.controls.templates.ControlButton, @NonNull android.service.controls.templates.RangeTemplate); + ctor public ToggleRangeTemplate(@NonNull String, boolean, @NonNull CharSequence, @NonNull android.service.controls.templates.RangeTemplate); + method @NonNull public CharSequence getActionDescription(); + method @NonNull public android.service.controls.templates.RangeTemplate getRange(); + method public int getTemplateType(); + method public boolean isChecked(); + } + + public final class ToggleTemplate extends android.service.controls.templates.ControlTemplate { + ctor public ToggleTemplate(@NonNull String, @NonNull android.service.controls.templates.ControlButton); + method @NonNull public CharSequence getContentDescription(); + method public int getTemplateType(); + method public boolean isChecked(); } } @@ -41592,6 +43907,7 @@ package android.service.notification { method public int getUid(); method public android.os.UserHandle getUser(); method @Deprecated public int getUserId(); + method public boolean isAppGroup(); method public boolean isClearable(); method public boolean isGroup(); method public boolean isOngoing(); @@ -41605,12 +43921,14 @@ package android.service.notification { method public int getPriorityCallSenders(); method public int getPriorityCategoryAlarms(); method public int getPriorityCategoryCalls(); + method public int getPriorityCategoryConversations(); method public int getPriorityCategoryEvents(); method public int getPriorityCategoryMedia(); method public int getPriorityCategoryMessages(); method public int getPriorityCategoryReminders(); method public int getPriorityCategoryRepeatCallers(); method public int getPriorityCategorySystem(); + method public int getPriorityConversationSenders(); method public int getPriorityMessageSenders(); method public int getVisualEffectAmbient(); method public int getVisualEffectBadge(); @@ -41620,6 +43938,10 @@ package android.service.notification { method public int getVisualEffectPeek(); method public int getVisualEffectStatusBar(); method public void writeToParcel(android.os.Parcel, int); + field public static final int CONVERSATION_SENDERS_ANYONE = 1; // 0x1 + field public static final int CONVERSATION_SENDERS_IMPORTANT = 2; // 0x2 + field public static final int CONVERSATION_SENDERS_NONE = 3; // 0x3 + field public static final int CONVERSATION_SENDERS_UNSET = 0; // 0x0 field @NonNull public static final android.os.Parcelable.Creator<android.service.notification.ZenPolicy> CREATOR; field public static final int PEOPLE_TYPE_ANYONE = 1; // 0x1 field public static final int PEOPLE_TYPE_CONTACTS = 2; // 0x2 @@ -41636,6 +43958,7 @@ package android.service.notification { method @NonNull public android.service.notification.ZenPolicy.Builder allowAlarms(boolean); method @NonNull public android.service.notification.ZenPolicy.Builder allowAllSounds(); method @NonNull public android.service.notification.ZenPolicy.Builder allowCalls(int); + method @NonNull public android.service.notification.ZenPolicy.Builder allowConversations(int); method @NonNull public android.service.notification.ZenPolicy.Builder allowEvents(boolean); method @NonNull public android.service.notification.ZenPolicy.Builder allowMedia(boolean); method @NonNull public android.service.notification.ZenPolicy.Builder allowMessages(int); @@ -41657,6 +43980,93 @@ package android.service.notification { } +package android.service.quickaccesswallet { + + public interface GetWalletCardsCallback { + method public void onFailure(@NonNull android.service.quickaccesswallet.GetWalletCardsError); + method public void onSuccess(@NonNull android.service.quickaccesswallet.GetWalletCardsResponse); + } + + public final class GetWalletCardsError implements android.os.Parcelable { + ctor public GetWalletCardsError(@Nullable android.graphics.drawable.Icon, @Nullable CharSequence); + method public int describeContents(); + method @Nullable public android.graphics.drawable.Icon getIcon(); + method @Nullable public CharSequence getMessage(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.service.quickaccesswallet.GetWalletCardsError> CREATOR; + } + + public final class GetWalletCardsRequest implements android.os.Parcelable { + ctor public GetWalletCardsRequest(int, int, int, int); + method public int describeContents(); + method public int getCardHeightPx(); + method public int getCardWidthPx(); + method public int getIconSizePx(); + method public int getMaxCards(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.service.quickaccesswallet.GetWalletCardsRequest> CREATOR; + } + + public final class GetWalletCardsResponse implements android.os.Parcelable { + ctor public GetWalletCardsResponse(@NonNull java.util.List<android.service.quickaccesswallet.WalletCard>, int); + method public int describeContents(); + method public int getSelectedIndex(); + method @NonNull public java.util.List<android.service.quickaccesswallet.WalletCard> getWalletCards(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.service.quickaccesswallet.GetWalletCardsResponse> CREATOR; + } + + public abstract class QuickAccessWalletService extends android.app.Service { + ctor public QuickAccessWalletService(); + method @Nullable public android.os.IBinder onBind(@NonNull android.content.Intent); + method public abstract void onWalletCardSelected(@NonNull android.service.quickaccesswallet.SelectWalletCardRequest); + method public abstract void onWalletCardsRequested(@NonNull android.service.quickaccesswallet.GetWalletCardsRequest, @NonNull android.service.quickaccesswallet.GetWalletCardsCallback); + method public abstract void onWalletDismissed(); + method public final void sendWalletServiceEvent(@NonNull android.service.quickaccesswallet.WalletServiceEvent); + field public static final String ACTION_VIEW_WALLET = "android.service.quickaccesswallet.action.VIEW_WALLET"; + field public static final String ACTION_VIEW_WALLET_SETTINGS = "android.service.quickaccesswallet.action.VIEW_WALLET_SETTINGS"; + field public static final String SERVICE_INTERFACE = "android.service.quickaccesswallet.QuickAccessWalletService"; + field public static final String SERVICE_META_DATA = "android.quickaccesswallet"; + } + + public final class SelectWalletCardRequest implements android.os.Parcelable { + ctor public SelectWalletCardRequest(@NonNull String); + method public int describeContents(); + method @NonNull public String getCardId(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.service.quickaccesswallet.SelectWalletCardRequest> CREATOR; + } + + public final class WalletCard implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public android.graphics.drawable.Icon getCardIcon(); + method @NonNull public String getCardId(); + method @NonNull public android.graphics.drawable.Icon getCardImage(); + method @Nullable public CharSequence getCardLabel(); + method @NonNull public CharSequence getContentDescription(); + method @NonNull public android.app.PendingIntent getPendingIntent(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.service.quickaccesswallet.WalletCard> CREATOR; + } + + public static final class WalletCard.Builder { + ctor public WalletCard.Builder(@NonNull String, @NonNull android.graphics.drawable.Icon, @NonNull CharSequence, @NonNull android.app.PendingIntent); + method @NonNull public android.service.quickaccesswallet.WalletCard build(); + method @NonNull public android.service.quickaccesswallet.WalletCard.Builder setCardIcon(@Nullable android.graphics.drawable.Icon); + method @NonNull public android.service.quickaccesswallet.WalletCard.Builder setCardLabel(@Nullable CharSequence); + } + + public final class WalletServiceEvent implements android.os.Parcelable { + ctor public WalletServiceEvent(int); + method public int describeContents(); + method public int getEventType(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.service.quickaccesswallet.WalletServiceEvent> CREATOR; + field public static final int TYPE_NFC_PAYMENT_STARTED = 1; // 0x1 + } + +} + package android.service.quicksettings { public final class Tile implements android.os.Parcelable { @@ -41665,11 +44075,13 @@ package android.service.quicksettings { method public android.graphics.drawable.Icon getIcon(); method public CharSequence getLabel(); method public int getState(); + method @Nullable public CharSequence getStateDescription(); method @Nullable public CharSequence getSubtitle(); method public void setContentDescription(CharSequence); method public void setIcon(android.graphics.drawable.Icon); method public void setLabel(CharSequence); method public void setState(int); + method public void setStateDescription(@Nullable CharSequence); method public void setSubtitle(@Nullable CharSequence); method public void updateTile(); method public void writeToParcel(android.os.Parcel, int); @@ -41697,6 +44109,7 @@ package android.service.quicksettings { field public static final String ACTION_QS_TILE = "android.service.quicksettings.action.QS_TILE"; field public static final String ACTION_QS_TILE_PREFERENCES = "android.service.quicksettings.action.QS_TILE_PREFERENCES"; field public static final String META_DATA_ACTIVE_TILE = "android.service.quicksettings.ACTIVE_TILE"; + field public static final String META_DATA_TOGGLEABLE_TILE = "android.service.quicksettings.TOGGLEABLE_TILE"; } } @@ -41740,17 +44153,26 @@ package android.service.voice { method public android.content.Intent createEnrollIntent(); method public android.content.Intent createReEnrollIntent(); method public android.content.Intent createUnEnrollIntent(); + method public int getParameter(int); + method public int getSupportedAudioCapabilities(); method public int getSupportedRecognitionModes(); + method @Nullable public android.service.voice.AlwaysOnHotwordDetector.ModelParamRange queryParameter(int); + method public int setParameter(int, int); method public boolean startRecognition(int); method public boolean stopRecognition(); + field public static final int AUDIO_CAPABILITY_ECHO_CANCELLATION = 1; // 0x1 + field public static final int AUDIO_CAPABILITY_NOISE_SUPPRESSION = 2; // 0x2 + field public static final int MODEL_PARAM_THRESHOLD_FACTOR = 0; // 0x0 field public static final int RECOGNITION_FLAG_ALLOW_MULTIPLE_TRIGGERS = 2; // 0x2 field public static final int RECOGNITION_FLAG_CAPTURE_TRIGGER_AUDIO = 1; // 0x1 + field public static final int RECOGNITION_FLAG_ENABLE_AUDIO_ECHO_CANCELLATION = 4; // 0x4 + field public static final int RECOGNITION_FLAG_ENABLE_AUDIO_NOISE_SUPPRESSION = 8; // 0x8 field public static final int RECOGNITION_MODE_USER_IDENTIFICATION = 2; // 0x2 field public static final int RECOGNITION_MODE_VOICE_TRIGGER = 1; // 0x1 field public static final int STATE_HARDWARE_UNAVAILABLE = -2; // 0xfffffffe field public static final int STATE_KEYPHRASE_ENROLLED = 2; // 0x2 field public static final int STATE_KEYPHRASE_UNENROLLED = 1; // 0x1 - field public static final int STATE_KEYPHRASE_UNSUPPORTED = -1; // 0xffffffff + field @Deprecated public static final int STATE_KEYPHRASE_UNSUPPORTED = -1; // 0xffffffff } public abstract static class AlwaysOnHotwordDetector.Callback { @@ -41767,6 +44189,11 @@ package android.service.voice { method @Nullable public byte[] getTriggerAudio(); } + public static final class AlwaysOnHotwordDetector.ModelParamRange { + method public int getEnd(); + method public int getStart(); + } + public class VoiceInteractionService extends android.app.Service { ctor public VoiceInteractionService(); method public final android.service.voice.AlwaysOnHotwordDetector createAlwaysOnHotwordDetector(String, java.util.Locale, android.service.voice.AlwaysOnHotwordDetector.Callback); @@ -41964,6 +44391,7 @@ package android.service.wallpaper { method public void onSurfaceRedrawNeeded(android.view.SurfaceHolder); method public void onTouchEvent(android.view.MotionEvent); method public void onVisibilityChanged(boolean); + method public void onZoomChanged(@FloatRange(from=0.0f, to=1.0f) float); method public void setOffsetNotificationsEnabled(boolean); method public void setTouchEventsEnabled(boolean); } @@ -42144,6 +44572,7 @@ package android.speech.tts { method public int speak(CharSequence, int, android.os.Bundle, String); method @Deprecated public int speak(String, int, java.util.HashMap<java.lang.String,java.lang.String>); method public int stop(); + method public int synthesizeToFile(@NonNull CharSequence, @NonNull android.os.Bundle, @NonNull android.os.ParcelFileDescriptor, @NonNull String); method public int synthesizeToFile(CharSequence, android.os.Bundle, java.io.File, String); method @Deprecated public int synthesizeToFile(String, java.util.HashMap<java.lang.String,java.lang.String>, String); field public static final String ACTION_TTS_QUEUE_PROCESSING_COMPLETED = "android.speech.tts.TTS_QUEUE_PROCESSING_COMPLETED"; @@ -42272,6 +44701,8 @@ package android.system { public final class ErrnoException extends java.lang.Exception { ctor public ErrnoException(String, int); ctor public ErrnoException(String, int, Throwable); + method @NonNull public java.io.IOException rethrowAsIOException() throws java.io.IOException; + method @NonNull public java.net.SocketException rethrowAsSocketException() throws java.net.SocketException; field public final int errno; } @@ -42297,6 +44728,7 @@ package android.system { method public static void execve(String, String[], String[]) throws android.system.ErrnoException; method public static void fchmod(java.io.FileDescriptor, int) throws android.system.ErrnoException; method public static void fchown(java.io.FileDescriptor, int, int) throws android.system.ErrnoException; + method public static int fcntlInt(@NonNull java.io.FileDescriptor, int, int) throws android.system.ErrnoException; method public static void fdatasync(java.io.FileDescriptor) throws android.system.ErrnoException; method public static android.system.StructStat fstat(java.io.FileDescriptor) throws android.system.ErrnoException; method public static android.system.StructStatVfs fstatvfs(java.io.FileDescriptor) throws android.system.ErrnoException; @@ -42326,6 +44758,7 @@ package android.system { method public static String[] listxattr(String) throws android.system.ErrnoException; method public static long lseek(java.io.FileDescriptor, long, int) throws android.system.ErrnoException; method public static android.system.StructStat lstat(String) throws android.system.ErrnoException; + method @NonNull public static java.io.FileDescriptor memfd_create(@NonNull String, int) throws android.system.ErrnoException; method public static void mincore(long, long, byte[]) throws android.system.ErrnoException; method public static void mkdir(String, int) throws android.system.ErrnoException; method public static void mkfifo(String, int) throws android.system.ErrnoException; @@ -42622,6 +45055,7 @@ package android.system { field public static final int IP_MULTICAST_TTL; field public static final int IP_TOS; field public static final int IP_TTL; + field public static final int MAP_ANONYMOUS; field public static final int MAP_FIXED; field public static final int MAP_PRIVATE; field public static final int MAP_SHARED; @@ -42633,6 +45067,7 @@ package android.system { field public static final int MCAST_UNBLOCK_SOURCE; field public static final int MCL_CURRENT; field public static final int MCL_FUTURE; + field public static final int MFD_CLOEXEC; field public static final int MSG_CTRUNC; field public static final int MSG_DONTROUTE; field public static final int MSG_EOR; @@ -42644,6 +45079,7 @@ package android.system { field public static final int MS_INVALIDATE; field public static final int MS_SYNC; field public static final int NETLINK_INET_DIAG; + field public static final int NETLINK_NETFILTER; field public static final int NETLINK_ROUTE; field public static final int NI_DGRAM; field public static final int NI_NAMEREQD; @@ -42973,6 +45409,7 @@ package android.telecom { method public java.util.List<android.telecom.Call> getChildren(); method public java.util.List<android.telecom.Call> getConferenceableCalls(); method public android.telecom.Call.Details getDetails(); + method @Nullable public android.telecom.Call getGenericConferenceActiveChildCall(); method public android.telecom.Call getParent(); method public String getRemainingPostDialSequence(); method @Nullable public android.telecom.Call.RttCall getRttCall(); @@ -42990,6 +45427,7 @@ package android.telecom { method public void registerCallback(android.telecom.Call.Callback); method public void registerCallback(android.telecom.Call.Callback, android.os.Handler); method public void reject(boolean, String); + method public void reject(int); method public void removeExtras(java.util.List<java.lang.String>); method public void removeExtras(java.lang.String...); method public void respondToRttRequest(int, boolean); @@ -43005,7 +45443,10 @@ package android.telecom { field public static final String EXTRA_LAST_EMERGENCY_CALLBACK_TIME_MILLIS = "android.telecom.extra.LAST_EMERGENCY_CALLBACK_TIME_MILLIS"; field public static final String EXTRA_SILENT_RINGING_REQUESTED = "android.telecom.extra.SILENT_RINGING_REQUESTED"; field public static final String EXTRA_SUGGESTED_PHONE_ACCOUNTS = "android.telecom.extra.SUGGESTED_PHONE_ACCOUNTS"; + field public static final int REJECT_REASON_DECLINED = 1; // 0x1 + field public static final int REJECT_REASON_UNWANTED = 2; // 0x2 field public static final int STATE_ACTIVE = 4; // 0x4 + field public static final int STATE_AUDIO_PROCESSING = 12; // 0xc field public static final int STATE_CONNECTING = 9; // 0x9 field public static final int STATE_DIALING = 1; // 0x1 field public static final int STATE_DISCONNECTED = 7; // 0x7 @@ -43015,6 +45456,7 @@ package android.telecom { field public static final int STATE_PULLING_CALL = 11; // 0xb field public static final int STATE_RINGING = 2; // 0x2 field public static final int STATE_SELECT_PHONE_ACCOUNT = 8; // 0x8 + field public static final int STATE_SIMULATED_RINGING = 13; // 0xd } public abstract static class Call.Callback { @@ -43052,7 +45494,9 @@ package android.telecom { method public int getCallProperties(); method public String getCallerDisplayName(); method public int getCallerDisplayNamePresentation(); + method public int getCallerNumberVerificationStatus(); method public final long getConnectTimeMillis(); + method @Nullable public String getContactDisplayName(); method public long getCreationTimeMillis(); method public android.telecom.DisconnectCause getDisconnectCause(); method public android.os.Bundle getExtras(); @@ -43087,6 +45531,7 @@ package android.telecom { field public static final int DIRECTION_INCOMING = 0; // 0x0 field public static final int DIRECTION_OUTGOING = 1; // 0x1 field public static final int DIRECTION_UNKNOWN = -1; // 0xffffffff + field public static final int PROPERTY_ASSISTED_DIALING = 512; // 0x200 field public static final int PROPERTY_CONFERENCE = 1; // 0x1 field public static final int PROPERTY_EMERGENCY_CALLBACK_MODE = 4; // 0x4 field public static final int PROPERTY_ENTERPRISE_CALL = 32; // 0x20 @@ -43175,7 +45620,8 @@ package android.telecom { method public final java.util.List<android.telecom.Connection> getConferenceableConnections(); method public final int getConnectionCapabilities(); method public final int getConnectionProperties(); - method public final long getConnectionTime(); + method public final long getConnectionStartElapsedRealtimeMillis(); + method @IntRange(from=0) public final long getConnectionTime(); method public final java.util.List<android.telecom.Connection> getConnections(); method public final android.telecom.DisconnectCause getDisconnectCause(); method public final android.os.Bundle getExtras(); @@ -43200,12 +45646,14 @@ package android.telecom { method public final void removeConnection(android.telecom.Connection); method public final void removeExtras(java.util.List<java.lang.String>); method public final void removeExtras(java.lang.String...); + method public void sendConferenceEvent(@NonNull String, @Nullable android.os.Bundle); method public final void setActive(); method public final void setConferenceableConnections(java.util.List<android.telecom.Connection>); method public final void setConnectionCapabilities(int); method public final void setConnectionProperties(int); - method public final void setConnectionStartElapsedRealTime(long); - method public final void setConnectionTime(long); + method @Deprecated public final void setConnectionStartElapsedRealTime(long); + method public final void setConnectionStartElapsedRealtimeMillis(long); + method public final void setConnectionTime(@IntRange(from=0) long); method public final void setDialing(); method public final void setDisconnected(android.telecom.DisconnectCause); method public final void setExtras(@Nullable android.os.Bundle); @@ -43231,6 +45679,7 @@ package android.telecom { method public final android.telecom.CallAudioState getCallAudioState(); method public final String getCallerDisplayName(); method public final int getCallerDisplayNamePresentation(); + method public final int getCallerNumberVerificationStatus(); method public final android.telecom.Conference getConference(); method public final java.util.List<android.telecom.Conferenceable> getConferenceables(); method public final int getConnectionCapabilities(); @@ -43240,8 +45689,10 @@ package android.telecom { method public final int getState(); method public final android.telecom.StatusHints getStatusHints(); method public final android.telecom.Connection.VideoProvider getVideoProvider(); + method public final int getVideoState(); method public void handleRttUpgradeResponse(@Nullable android.telecom.Connection.RttTextStream); method public final boolean isRingbackRequested(); + method public final void notifyConferenceMergeFailed(); method public void onAbort(); method public void onAnswer(int); method public void onAnswer(); @@ -43256,6 +45707,7 @@ package android.telecom { method public void onPostDialContinue(boolean); method public void onPullExternalCall(); method public void onReject(); + method public void onReject(int); method public void onReject(String); method public void onSeparate(); method public void onShowIncomingCallUi(); @@ -43280,6 +45732,7 @@ package android.telecom { method public final void setAudioModeIsVoip(boolean); method public final void setAudioRoute(int); method public final void setCallerDisplayName(String, int); + method public final void setCallerNumberVerificationStatus(int); method public final void setConferenceableConnections(java.util.List<android.telecom.Connection>); method public final void setConferenceables(java.util.List<android.telecom.Conferenceable>); method public final void setConnectionCapabilities(int); @@ -43299,6 +45752,27 @@ package android.telecom { method public final void setVideoProvider(android.telecom.Connection.VideoProvider); method public final void setVideoState(int); method public static String stateToString(int); + field public static final int AUDIO_CODEC_AMR = 1; // 0x1 + field public static final int AUDIO_CODEC_AMR_WB = 2; // 0x2 + field public static final int AUDIO_CODEC_EVRC = 4; // 0x4 + field public static final int AUDIO_CODEC_EVRC_B = 5; // 0x5 + field public static final int AUDIO_CODEC_EVRC_NW = 7; // 0x7 + field public static final int AUDIO_CODEC_EVRC_WB = 6; // 0x6 + field public static final int AUDIO_CODEC_EVS_FB = 20; // 0x14 + field public static final int AUDIO_CODEC_EVS_NB = 17; // 0x11 + field public static final int AUDIO_CODEC_EVS_SWB = 19; // 0x13 + field public static final int AUDIO_CODEC_EVS_WB = 18; // 0x12 + field public static final int AUDIO_CODEC_G711A = 13; // 0xd + field public static final int AUDIO_CODEC_G711AB = 15; // 0xf + field public static final int AUDIO_CODEC_G711U = 11; // 0xb + field public static final int AUDIO_CODEC_G722 = 14; // 0xe + field public static final int AUDIO_CODEC_G723 = 12; // 0xc + field public static final int AUDIO_CODEC_G729 = 16; // 0x10 + field public static final int AUDIO_CODEC_GSM_EFR = 8; // 0x8 + field public static final int AUDIO_CODEC_GSM_FR = 9; // 0x9 + field public static final int AUDIO_CODEC_GSM_HR = 10; // 0xa + field public static final int AUDIO_CODEC_NONE = 0; // 0x0 + field public static final int AUDIO_CODEC_QCELP13K = 3; // 0x3 field public static final int CAPABILITY_CANNOT_DOWNGRADE_VIDEO_TO_AUDIO = 8388608; // 0x800000 field public static final int CAPABILITY_CAN_PAUSE_VIDEO = 1048576; // 0x100000 field public static final int CAPABILITY_CAN_PULL_CALL = 16777216; // 0x1000000 @@ -43320,20 +45794,33 @@ package android.telecom { field public static final int CAPABILITY_SUPPORT_DEFLECT = 33554432; // 0x2000000 field public static final int CAPABILITY_SUPPORT_HOLD = 2; // 0x2 field public static final int CAPABILITY_SWAP_CONFERENCE = 8; // 0x8 + field public static final String EVENT_CALL_HOLD_FAILED = "android.telecom.event.CALL_HOLD_FAILED"; field public static final String EVENT_CALL_MERGE_FAILED = "android.telecom.event.CALL_MERGE_FAILED"; field public static final String EVENT_CALL_PULL_FAILED = "android.telecom.event.CALL_PULL_FAILED"; + field public static final String EVENT_CALL_REMOTELY_HELD = "android.telecom.event.CALL_REMOTELY_HELD"; + field public static final String EVENT_CALL_REMOTELY_UNHELD = "android.telecom.event.CALL_REMOTELY_UNHELD"; + field public static final String EVENT_CALL_SWITCH_FAILED = "android.telecom.event.CALL_SWITCH_FAILED"; + field public static final String EVENT_MERGE_COMPLETE = "android.telecom.event.MERGE_COMPLETE"; + field public static final String EVENT_MERGE_START = "android.telecom.event.MERGE_START"; + field public static final String EVENT_ON_HOLD_TONE_END = "android.telecom.event.ON_HOLD_TONE_END"; + field public static final String EVENT_ON_HOLD_TONE_START = "android.telecom.event.ON_HOLD_TONE_START"; field public static final String EVENT_RTT_AUDIO_INDICATION_CHANGED = "android.telecom.event.RTT_AUDIO_INDICATION_CHANGED"; field public static final String EXTRA_ANSWERING_DROPS_FG_CALL = "android.telecom.extra.ANSWERING_DROPS_FG_CALL"; field public static final String EXTRA_ANSWERING_DROPS_FG_CALL_APP_NAME = "android.telecom.extra.ANSWERING_DROPS_FG_CALL_APP_NAME"; + field public static final String EXTRA_AUDIO_CODEC = "android.telecom.extra.AUDIO_CODEC"; field public static final String EXTRA_CALL_SUBJECT = "android.telecom.extra.CALL_SUBJECT"; field public static final String EXTRA_CHILD_ADDRESS = "android.telecom.extra.CHILD_ADDRESS"; field public static final String EXTRA_IS_RTT_AUDIO_PRESENT = "android.telecom.extra.IS_RTT_AUDIO_PRESENT"; field public static final String EXTRA_LAST_FORWARDED_NUMBER = "android.telecom.extra.LAST_FORWARDED_NUMBER"; field public static final String EXTRA_SIP_INVITE = "android.telecom.extra.SIP_INVITE"; + field public static final int PROPERTY_ASSISTED_DIALING = 512; // 0x200 field public static final int PROPERTY_HAS_CDMA_VOICE_PRIVACY = 32; // 0x20 + field public static final int PROPERTY_HIGH_DEF_AUDIO = 4; // 0x4 field public static final int PROPERTY_IS_EXTERNAL_CALL = 16; // 0x10 field public static final int PROPERTY_IS_RTT = 256; // 0x100 + field public static final int PROPERTY_NETWORK_IDENTIFIED_EMERGENCY_CALL = 1024; // 0x400 field public static final int PROPERTY_SELF_MANAGED = 128; // 0x80 + field public static final int PROPERTY_WIFI = 8; // 0x8 field public static final int STATE_ACTIVE = 4; // 0x4 field public static final int STATE_DIALING = 3; // 0x3 field public static final int STATE_DISCONNECTED = 6; // 0x6 @@ -43342,6 +45829,9 @@ package android.telecom { field public static final int STATE_NEW = 1; // 0x1 field public static final int STATE_PULLING_CALL = 7; // 0x7 field public static final int STATE_RINGING = 2; // 0x2 + field public static final int VERIFICATION_STATUS_FAILED = 2; // 0x2 + field public static final int VERIFICATION_STATUS_NOT_VERIFIED = 0; // 0x0 + field public static final int VERIFICATION_STATUS_PASSED = 1; // 0x1 } public static final class Connection.RttModifyStatus { @@ -43398,8 +45888,10 @@ package android.telecom { method public android.telecom.PhoneAccountHandle getAccountHandle(); method public android.net.Uri getAddress(); method public android.os.Bundle getExtras(); + method @Nullable public java.util.List<android.net.Uri> getParticipants(); method public android.telecom.Connection.RttTextStream getRttTextStream(); method public int getVideoState(); + method public boolean isAdhocConferenceCall(); method public boolean isRequestingRtt(); method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.telecom.ConnectionRequest> CREATOR; @@ -43453,6 +45945,7 @@ package android.telecom { field public static final int LOCAL = 2; // 0x2 field public static final int MISSED = 5; // 0x5 field public static final int OTHER = 9; // 0x9 + field public static final String REASON_EMERGENCY_CALL_PLACED = "REASON_EMERGENCY_CALL_PLACED"; field public static final int REJECTED = 6; // 0x6 field public static final int REMOTE = 3; // 0x3 field public static final int RESTRICTED = 8; // 0x8 @@ -43535,6 +46028,7 @@ package android.telecom { method public boolean supportsUriScheme(String); method public android.telecom.PhoneAccount.Builder toBuilder(); method public void writeToParcel(android.os.Parcel, int); + field public static final int CAPABILITY_ADHOC_CONFERENCE_CALLING = 16384; // 0x4000 field public static final int CAPABILITY_CALL_PROVIDER = 2; // 0x2 field public static final int CAPABILITY_CALL_SUBJECT = 64; // 0x40 field public static final int CAPABILITY_CONNECTION_MANAGER = 1; // 0x1 @@ -43737,12 +46231,13 @@ package android.telecom { method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public java.util.List<android.telecom.PhoneAccountHandle> getCallCapablePhoneAccounts(); method public String getDefaultDialerPackage(); method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public android.telecom.PhoneAccountHandle getDefaultOutgoingPhoneAccount(String); - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public String getLine1Number(android.telecom.PhoneAccountHandle); + method @RequiresPermission(anyOf={android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.READ_SMS, android.Manifest.permission.READ_PHONE_NUMBERS}, conditional=true) public String getLine1Number(android.telecom.PhoneAccountHandle); method public android.telecom.PhoneAccount getPhoneAccount(android.telecom.PhoneAccountHandle); method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public java.util.List<android.telecom.PhoneAccountHandle> getSelfManagedPhoneAccounts(); method public android.telecom.PhoneAccountHandle getSimCallManager(); + method @Nullable public android.telecom.PhoneAccountHandle getSimCallManagerForSubscription(int); method @Nullable public String getSystemDialerPackage(); - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) @Nullable public android.telecom.PhoneAccountHandle getUserSelectedOutgoingPhoneAccount(); + method @Nullable @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public android.telecom.PhoneAccountHandle getUserSelectedOutgoingPhoneAccount(); method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public String getVoiceMailNumber(android.telecom.PhoneAccountHandle); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean handleMmi(String); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean handleMmi(String, android.telecom.PhoneAccountHandle); @@ -43765,19 +46260,27 @@ package android.telecom { field @Deprecated public static final String ACTION_INCOMING_CALL = "android.telecom.action.INCOMING_CALL"; field public static final String ACTION_PHONE_ACCOUNT_REGISTERED = "android.telecom.action.PHONE_ACCOUNT_REGISTERED"; field public static final String ACTION_PHONE_ACCOUNT_UNREGISTERED = "android.telecom.action.PHONE_ACCOUNT_UNREGISTERED"; + field public static final String ACTION_POST_CALL = "android.telecom.action.POST_CALL"; field public static final String ACTION_SHOW_CALL_ACCESSIBILITY_SETTINGS = "android.telecom.action.SHOW_CALL_ACCESSIBILITY_SETTINGS"; field public static final String ACTION_SHOW_CALL_SETTINGS = "android.telecom.action.SHOW_CALL_SETTINGS"; field public static final String ACTION_SHOW_MISSED_CALLS_NOTIFICATION = "android.telecom.action.SHOW_MISSED_CALLS_NOTIFICATION"; field public static final String ACTION_SHOW_RESPOND_VIA_SMS_SETTINGS = "android.telecom.action.SHOW_RESPOND_VIA_SMS_SETTINGS"; field public static final char DTMF_CHARACTER_PAUSE = 44; // 0x002c ',' field public static final char DTMF_CHARACTER_WAIT = 59; // 0x003b ';' + field public static final int DURATION_LONG = 3; // 0x3 + field public static final int DURATION_MEDIUM = 2; // 0x2 + field public static final int DURATION_SHORT = 1; // 0x1 + field public static final int DURATION_VERY_SHORT = 0; // 0x0 field public static final String EXTRA_CALL_BACK_NUMBER = "android.telecom.extra.CALL_BACK_NUMBER"; field public static final String EXTRA_CALL_DISCONNECT_CAUSE = "android.telecom.extra.CALL_DISCONNECT_CAUSE"; field public static final String EXTRA_CALL_DISCONNECT_MESSAGE = "android.telecom.extra.CALL_DISCONNECT_MESSAGE"; + field public static final String EXTRA_CALL_DURATION = "android.telecom.extra.CALL_DURATION"; field public static final String EXTRA_CALL_NETWORK_TYPE = "android.telecom.extra.CALL_NETWORK_TYPE"; field public static final String EXTRA_CALL_SUBJECT = "android.telecom.extra.CALL_SUBJECT"; field public static final String EXTRA_CHANGE_DEFAULT_DIALER_PACKAGE_NAME = "android.telecom.extra.CHANGE_DEFAULT_DIALER_PACKAGE_NAME"; field public static final String EXTRA_DEFAULT_CALL_SCREENING_APP_COMPONENT_NAME = "android.telecom.extra.DEFAULT_CALL_SCREENING_APP_COMPONENT_NAME"; + field public static final String EXTRA_DISCONNECT_CAUSE = "android.telecom.extra.DISCONNECT_CAUSE"; + field public static final String EXTRA_HANDLE = "android.telecom.extra.HANDLE"; field public static final String EXTRA_INCOMING_CALL_ADDRESS = "android.telecom.extra.INCOMING_CALL_ADDRESS"; field public static final String EXTRA_INCOMING_CALL_EXTRAS = "android.telecom.extra.INCOMING_CALL_EXTRAS"; field public static final String EXTRA_INCOMING_VIDEO_STATE = "android.telecom.extra.INCOMING_VIDEO_STATE"; @@ -43789,6 +46292,7 @@ package android.telecom { field public static final String EXTRA_START_CALL_WITH_RTT = "android.telecom.extra.START_CALL_WITH_RTT"; field public static final String EXTRA_START_CALL_WITH_SPEAKERPHONE = "android.telecom.extra.START_CALL_WITH_SPEAKERPHONE"; field public static final String EXTRA_START_CALL_WITH_VIDEO_STATE = "android.telecom.extra.START_CALL_WITH_VIDEO_STATE"; + field public static final String EXTRA_USE_ASSISTED_DIALING = "android.telecom.extra.USE_ASSISTED_DIALING"; field public static final String GATEWAY_ORIGINAL_ADDRESS = "android.telecom.extra.GATEWAY_ORIGINAL_ADDRESS"; field public static final String GATEWAY_PROVIDER_PACKAGE = "android.telecom.extra.GATEWAY_PROVIDER_PACKAGE"; field public static final String METADATA_INCLUDE_EXTERNAL_CALLS = "android.telecom.INCLUDE_EXTERNAL_CALLS"; @@ -43845,6 +46349,8 @@ package android.telecom { package android.telephony { public final class AccessNetworkConstants { + field public static final int TRANSPORT_TYPE_WLAN = 2; // 0x2 + field public static final int TRANSPORT_TYPE_WWAN = 1; // 0x1 } public static final class AccessNetworkConstants.AccessNetworkType { @@ -43852,6 +46358,7 @@ package android.telephony { field public static final int EUTRAN = 3; // 0x3 field public static final int GERAN = 1; // 0x1 field public static final int IWLAN = 5; // 0x5 + field public static final int NGRAN = 6; // 0x6 field public static final int UNKNOWN = 0; // 0x0 field public static final int UTRAN = 2; // 0x2 } @@ -43896,14 +46403,26 @@ package android.telephony { field public static final int BAND_46 = 46; // 0x2e field public static final int BAND_47 = 47; // 0x2f field public static final int BAND_48 = 48; // 0x30 + field public static final int BAND_49 = 49; // 0x31 field public static final int BAND_5 = 5; // 0x5 + field public static final int BAND_50 = 50; // 0x32 + field public static final int BAND_51 = 51; // 0x33 + field public static final int BAND_52 = 52; // 0x34 + field public static final int BAND_53 = 53; // 0x35 field public static final int BAND_6 = 6; // 0x6 field public static final int BAND_65 = 65; // 0x41 field public static final int BAND_66 = 66; // 0x42 field public static final int BAND_68 = 68; // 0x44 field public static final int BAND_7 = 7; // 0x7 field public static final int BAND_70 = 70; // 0x46 + field public static final int BAND_71 = 71; // 0x47 + field public static final int BAND_72 = 72; // 0x48 + field public static final int BAND_73 = 73; // 0x49 + field public static final int BAND_74 = 74; // 0x4a field public static final int BAND_8 = 8; // 0x8 + field public static final int BAND_85 = 85; // 0x55 + field public static final int BAND_87 = 87; // 0x57 + field public static final int BAND_88 = 88; // 0x58 field public static final int BAND_9 = 9; // 0x9 } @@ -43924,6 +46443,58 @@ package android.telephony { field public static final int BAND_T810 = 7; // 0x7 } + public static final class AccessNetworkConstants.NgranBands { + field public static final int BAND_1 = 1; // 0x1 + field public static final int BAND_12 = 12; // 0xc + field public static final int BAND_14 = 14; // 0xe + field public static final int BAND_18 = 18; // 0x12 + field public static final int BAND_2 = 2; // 0x2 + field public static final int BAND_20 = 20; // 0x14 + field public static final int BAND_25 = 25; // 0x19 + field public static final int BAND_257 = 257; // 0x101 + field public static final int BAND_258 = 258; // 0x102 + field public static final int BAND_260 = 260; // 0x104 + field public static final int BAND_261 = 261; // 0x105 + field public static final int BAND_28 = 28; // 0x1c + field public static final int BAND_29 = 29; // 0x1d + field public static final int BAND_3 = 3; // 0x3 + field public static final int BAND_30 = 30; // 0x1e + field public static final int BAND_34 = 34; // 0x22 + field public static final int BAND_38 = 38; // 0x26 + field public static final int BAND_39 = 39; // 0x27 + field public static final int BAND_40 = 40; // 0x28 + field public static final int BAND_41 = 41; // 0x29 + field public static final int BAND_48 = 48; // 0x30 + field public static final int BAND_5 = 5; // 0x5 + field public static final int BAND_50 = 50; // 0x32 + field public static final int BAND_51 = 51; // 0x33 + field public static final int BAND_65 = 65; // 0x41 + field public static final int BAND_66 = 66; // 0x42 + field public static final int BAND_7 = 7; // 0x7 + field public static final int BAND_70 = 70; // 0x46 + field public static final int BAND_71 = 71; // 0x47 + field public static final int BAND_74 = 74; // 0x4a + field public static final int BAND_75 = 75; // 0x4b + field public static final int BAND_76 = 76; // 0x4c + field public static final int BAND_77 = 77; // 0x4d + field public static final int BAND_78 = 78; // 0x4e + field public static final int BAND_79 = 79; // 0x4f + field public static final int BAND_8 = 8; // 0x8 + field public static final int BAND_80 = 80; // 0x50 + field public static final int BAND_81 = 81; // 0x51 + field public static final int BAND_82 = 82; // 0x52 + field public static final int BAND_83 = 83; // 0x53 + field public static final int BAND_84 = 84; // 0x54 + field public static final int BAND_86 = 86; // 0x56 + field public static final int BAND_89 = 89; // 0x59 + field public static final int BAND_90 = 90; // 0x5a + field public static final int BAND_91 = 91; // 0x5b + field public static final int BAND_92 = 92; // 0x5c + field public static final int BAND_93 = 93; // 0x5d + field public static final int BAND_94 = 94; // 0x5e + field public static final int BAND_95 = 95; // 0x5f + } + public static final class AccessNetworkConstants.UtranBand { field public static final int BAND_1 = 1; // 0x1 field public static final int BAND_10 = 10; // 0xa @@ -43945,6 +46516,12 @@ package android.telephony { field public static final int BAND_7 = 7; // 0x7 field public static final int BAND_8 = 8; // 0x8 field public static final int BAND_9 = 9; // 0x9 + field public static final int BAND_A = 101; // 0x65 + field public static final int BAND_B = 102; // 0x66 + field public static final int BAND_C = 103; // 0x67 + field public static final int BAND_D = 104; // 0x68 + field public static final int BAND_E = 105; // 0x69 + field public static final int BAND_F = 106; // 0x6a } public final class AvailableNetworkInfo implements android.os.Parcelable { @@ -43961,37 +46538,93 @@ package android.telephony { field public static final int PRIORITY_MED = 2; // 0x2 } + public final class BarringInfo implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.telephony.BarringInfo.BarringServiceInfo getBarringServiceInfo(int); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final int BARRING_SERVICE_TYPE_CS_FALLBACK = 5; // 0x5 + field public static final int BARRING_SERVICE_TYPE_CS_SERVICE = 0; // 0x0 + field public static final int BARRING_SERVICE_TYPE_CS_VOICE = 2; // 0x2 + field public static final int BARRING_SERVICE_TYPE_EMERGENCY = 8; // 0x8 + field public static final int BARRING_SERVICE_TYPE_MMTEL_VIDEO = 7; // 0x7 + field public static final int BARRING_SERVICE_TYPE_MMTEL_VOICE = 6; // 0x6 + field public static final int BARRING_SERVICE_TYPE_MO_DATA = 4; // 0x4 + field public static final int BARRING_SERVICE_TYPE_MO_SIGNALLING = 3; // 0x3 + field public static final int BARRING_SERVICE_TYPE_PS_SERVICE = 1; // 0x1 + field public static final int BARRING_SERVICE_TYPE_SMS = 9; // 0x9 + field @NonNull public static final android.os.Parcelable.Creator<android.telephony.BarringInfo> CREATOR; + } + + public static final class BarringInfo.BarringServiceInfo implements android.os.Parcelable { + method public int describeContents(); + method public int getBarringType(); + method public int getConditionalBarringFactor(); + method public int getConditionalBarringTimeSeconds(); + method public boolean isBarred(); + method public boolean isConditionallyBarred(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final int BARRING_TYPE_CONDITIONAL = 1; // 0x1 + field public static final int BARRING_TYPE_NONE = 0; // 0x0 + field public static final int BARRING_TYPE_UNCONDITIONAL = 2; // 0x2 + field public static final int BARRING_TYPE_UNKNOWN = -1; // 0xffffffff + field @NonNull public static final android.os.Parcelable.Creator<android.telephony.BarringInfo.BarringServiceInfo> CREATOR; + } + public class CarrierConfigManager { method @Nullable public android.os.PersistableBundle getConfig(); + method @Nullable public android.os.PersistableBundle getConfigByComponentForSubId(@NonNull String, int); method @Nullable public android.os.PersistableBundle getConfigForSubId(int); method public static boolean isConfigForIdentifiedCarrier(android.os.PersistableBundle); method public void notifyConfigChangedForSubId(int); field public static final String ACTION_CARRIER_CONFIG_CHANGED = "android.telephony.action.CARRIER_CONFIG_CHANGED"; field public static final int DATA_CYCLE_THRESHOLD_DISABLED = -2; // 0xfffffffe + field public static final int DATA_CYCLE_USE_PLATFORM_DEFAULT = -1; // 0xffffffff + field public static final String ENABLE_EAP_METHOD_PREFIX_BOOL = "enable_eap_method_prefix_bool"; field public static final String EXTRA_SLOT_INDEX = "android.telephony.extra.SLOT_INDEX"; field public static final String EXTRA_SUBSCRIPTION_INDEX = "android.telephony.extra.SUBSCRIPTION_INDEX"; + field public static final String IMSI_KEY_AVAILABILITY_INT = "imsi_key_availability_int"; + field public static final String KEY_5G_NR_SSRSRP_THRESHOLDS_INT_ARRAY = "5g_nr_ssrsrp_thresholds_int_array"; + field public static final String KEY_5G_NR_SSRSRQ_THRESHOLDS_INT_ARRAY = "5g_nr_ssrsrq_thresholds_int_array"; + field public static final String KEY_5G_NR_SSSINR_THRESHOLDS_INT_ARRAY = "5g_nr_sssinr_thresholds_int_array"; field public static final String KEY_ADDITIONAL_CALL_SETTING_BOOL = "additional_call_setting_bool"; field public static final String KEY_ALLOW_ADDING_APNS_BOOL = "allow_adding_apns_bool"; field public static final String KEY_ALLOW_ADD_CALL_DURING_VIDEO_CALL_BOOL = "allow_add_call_during_video_call"; field public static final String KEY_ALLOW_EMERGENCY_NUMBERS_IN_CALL_LOG_BOOL = "allow_emergency_numbers_in_call_log_bool"; field public static final String KEY_ALLOW_EMERGENCY_VIDEO_CALLS_BOOL = "allow_emergency_video_calls_bool"; + field public static final String KEY_ALLOW_HOLD_CALL_DURING_EMERGENCY_BOOL = "allow_hold_call_during_emergency_bool"; + field public static final String KEY_ALLOW_HOLD_VIDEO_CALL_BOOL = "allow_hold_video_call_bool"; field public static final String KEY_ALLOW_LOCAL_DTMF_TONES_BOOL = "allow_local_dtmf_tones_bool"; field public static final String KEY_ALLOW_MERGE_WIFI_CALLS_WHEN_VOWIFI_OFF_BOOL = "allow_merge_wifi_calls_when_vowifi_off_bool"; field public static final String KEY_ALLOW_NON_EMERGENCY_CALLS_IN_ECM_BOOL = "allow_non_emergency_calls_in_ecm_bool"; - field public static final String KEY_ALWAYS_SHOW_EMERGENCY_ALERT_ONOFF_BOOL = "always_show_emergency_alert_onoff_bool"; + field public static final String KEY_ALLOW_VIDEO_CALLING_FALLBACK_BOOL = "allow_video_calling_fallback_bool"; + field public static final String KEY_ALWAYS_SHOW_DATA_RAT_ICON_BOOL = "always_show_data_rat_icon_bool"; + field @Deprecated public static final String KEY_ALWAYS_SHOW_EMERGENCY_ALERT_ONOFF_BOOL = "always_show_emergency_alert_onoff_bool"; + field public static final String KEY_ALWAYS_SHOW_PRIMARY_SIGNAL_BAR_IN_OPPORTUNISTIC_NETWORK_BOOLEAN = "always_show_primary_signal_bar_in_opportunistic_network_boolean"; field public static final String KEY_APN_EXPAND_BOOL = "apn_expand_bool"; + field public static final String KEY_APN_SETTINGS_DEFAULT_APN_TYPES_STRING_ARRAY = "apn_settings_default_apn_types_string_array"; field public static final String KEY_AUTO_RETRY_ENABLED_BOOL = "auto_retry_enabled_bool"; field public static final String KEY_CALL_BARRING_SUPPORTS_DEACTIVATE_ALL_BOOL = "call_barring_supports_deactivate_all_bool"; field public static final String KEY_CALL_BARRING_SUPPORTS_PASSWORD_CHANGE_BOOL = "call_barring_supports_password_change_bool"; field public static final String KEY_CALL_BARRING_VISIBILITY_BOOL = "call_barring_visibility_bool"; field public static final String KEY_CALL_FORWARDING_BLOCKS_WHILE_ROAMING_STRING_ARRAY = "call_forwarding_blocks_while_roaming_string_array"; + field public static final String KEY_CALL_REDIRECTION_SERVICE_COMPONENT_NAME_STRING = "call_redirection_service_component_name_string"; + field public static final String KEY_CARRIER_ALLOW_DEFLECT_IMS_CALL_BOOL = "carrier_allow_deflect_ims_call_bool"; field public static final String KEY_CARRIER_ALLOW_TURNOFF_IMS_BOOL = "carrier_allow_turnoff_ims_bool"; + field public static final String KEY_CARRIER_APP_REQUIRED_DURING_SIM_SETUP_BOOL = "carrier_app_required_during_setup_bool"; field public static final String KEY_CARRIER_CALL_SCREENING_APP_STRING = "call_screening_app"; + field public static final String KEY_CARRIER_CERTIFICATE_STRING_ARRAY = "carrier_certificate_string_array"; + field public static final String KEY_CARRIER_CONFIG_APPLIED_BOOL = "carrier_config_applied_bool"; field public static final String KEY_CARRIER_CONFIG_VERSION_STRING = "carrier_config_version_string"; field public static final String KEY_CARRIER_DATA_CALL_PERMANENT_FAILURE_STRINGS = "carrier_data_call_permanent_failure_strings"; + field public static final String KEY_CARRIER_DEFAULT_ACTIONS_ON_DCFAILURE_STRING_ARRAY = "carrier_default_actions_on_dcfailure_string_array"; + field public static final String KEY_CARRIER_DEFAULT_ACTIONS_ON_DEFAULT_NETWORK_AVAILABLE = "carrier_default_actions_on_default_network_available_string_array"; + field public static final String KEY_CARRIER_DEFAULT_ACTIONS_ON_REDIRECTION_STRING_ARRAY = "carrier_default_actions_on_redirection_string_array"; + field public static final String KEY_CARRIER_DEFAULT_ACTIONS_ON_RESET = "carrier_default_actions_on_reset_string_array"; + field public static final String KEY_CARRIER_DEFAULT_REDIRECTION_URL_STRING_ARRAY = "carrier_default_redirection_url_string_array"; + field public static final String KEY_CARRIER_DEFAULT_WFC_IMS_ENABLED_BOOL = "carrier_default_wfc_ims_enabled_bool"; field public static final String KEY_CARRIER_DEFAULT_WFC_IMS_MODE_INT = "carrier_default_wfc_ims_mode_int"; field public static final String KEY_CARRIER_DEFAULT_WFC_IMS_ROAMING_MODE_INT = "carrier_default_wfc_ims_roaming_mode_int"; - field public static final String KEY_CARRIER_FORCE_DISABLE_ETWS_CMAS_TEST_BOOL = "carrier_force_disable_etws_cmas_test_bool"; + field @Deprecated public static final String KEY_CARRIER_FORCE_DISABLE_ETWS_CMAS_TEST_BOOL = "carrier_force_disable_etws_cmas_test_bool"; field public static final String KEY_CARRIER_IMS_GBA_REQUIRED_BOOL = "carrier_ims_gba_required_bool"; field public static final String KEY_CARRIER_INSTANT_LETTERING_AVAILABLE_BOOL = "carrier_instant_lettering_available_bool"; field public static final String KEY_CARRIER_INSTANT_LETTERING_ENCODING_STRING = "carrier_instant_lettering_encoding_string"; @@ -44000,11 +46633,14 @@ package android.telephony { field public static final String KEY_CARRIER_INSTANT_LETTERING_LENGTH_LIMIT_INT = "carrier_instant_lettering_length_limit_int"; field public static final String KEY_CARRIER_NAME_OVERRIDE_BOOL = "carrier_name_override_bool"; field public static final String KEY_CARRIER_NAME_STRING = "carrier_name_string"; + field public static final String KEY_CARRIER_RCS_PROVISIONING_REQUIRED_BOOL = "carrier_rcs_provisioning_required_bool"; + field public static final String KEY_CARRIER_SETTINGS_ACTIVITY_COMPONENT_NAME_STRING = "carrier_settings_activity_component_name_string"; field public static final String KEY_CARRIER_SETTINGS_ENABLE_BOOL = "carrier_settings_enable_bool"; field public static final String KEY_CARRIER_SUPPORTS_SS_OVER_UT_BOOL = "carrier_supports_ss_over_ut_bool"; field public static final String KEY_CARRIER_USE_IMS_FIRST_FOR_EMERGENCY_BOOL = "carrier_use_ims_first_for_emergency_bool"; field public static final String KEY_CARRIER_UT_PROVISIONING_REQUIRED_BOOL = "carrier_ut_provisioning_required_bool"; field public static final String KEY_CARRIER_VOLTE_AVAILABLE_BOOL = "carrier_volte_available_bool"; + field public static final String KEY_CARRIER_VOLTE_OVERRIDE_WFC_PROVISIONING_BOOL = "carrier_volte_override_wfc_provisioning_bool"; field public static final String KEY_CARRIER_VOLTE_PROVISIONED_BOOL = "carrier_volte_provisioned_bool"; field public static final String KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL = "carrier_volte_provisioning_required_bool"; field public static final String KEY_CARRIER_VOLTE_TTY_SUPPORTED_BOOL = "carrier_volte_tty_supported_bool"; @@ -44018,20 +46654,32 @@ package android.telephony { field public static final String KEY_CDMA_NONROAMING_NETWORKS_STRING_ARRAY = "cdma_nonroaming_networks_string_array"; field public static final String KEY_CDMA_ROAMING_MODE_INT = "cdma_roaming_mode_int"; field public static final String KEY_CDMA_ROAMING_NETWORKS_STRING_ARRAY = "cdma_roaming_networks_string_array"; + field public static final String KEY_CHECK_PRICING_WITH_CARRIER_FOR_DATA_ROAMING_BOOL = "check_pricing_with_carrier_data_roaming_bool"; field public static final String KEY_CI_ACTION_ON_SYS_UPDATE_BOOL = "ci_action_on_sys_update_bool"; field public static final String KEY_CI_ACTION_ON_SYS_UPDATE_EXTRA_STRING = "ci_action_on_sys_update_extra_string"; field public static final String KEY_CI_ACTION_ON_SYS_UPDATE_EXTRA_VAL_STRING = "ci_action_on_sys_update_extra_val_string"; field public static final String KEY_CI_ACTION_ON_SYS_UPDATE_INTENT_STRING = "ci_action_on_sys_update_intent_string"; - field public static final String KEY_CONFIG_IMS_PACKAGE_OVERRIDE_STRING = "config_ims_package_override_string"; + field public static final String KEY_CONFIG_IMS_MMTEL_PACKAGE_OVERRIDE_STRING = "config_ims_mmtel_package_override_string"; + field @Deprecated public static final String KEY_CONFIG_IMS_PACKAGE_OVERRIDE_STRING = "config_ims_package_override_string"; + field public static final String KEY_CONFIG_IMS_RCS_PACKAGE_OVERRIDE_STRING = "config_ims_rcs_package_override_string"; field public static final String KEY_CONFIG_PLANS_PACKAGE_OVERRIDE_STRING = "config_plans_package_override_string"; field public static final String KEY_CONFIG_TELEPHONY_USE_OWN_NUMBER_FOR_VOICEMAIL_BOOL = "config_telephony_use_own_number_for_voicemail_bool"; + field public static final String KEY_CONFIG_WIFI_DISABLE_IN_ECBM = "config_wifi_disable_in_ecbm"; field public static final String KEY_CSP_ENABLED_BOOL = "csp_enabled_bool"; + field public static final String KEY_DATA_LIMIT_NOTIFICATION_BOOL = "data_limit_notification_bool"; field public static final String KEY_DATA_LIMIT_THRESHOLD_BYTES_LONG = "data_limit_threshold_bytes_long"; + field public static final String KEY_DATA_RAPID_NOTIFICATION_BOOL = "data_rapid_notification_bool"; + field public static final String KEY_DATA_SWITCH_VALIDATION_TIMEOUT_LONG = "data_switch_validation_timeout_long"; + field public static final String KEY_DATA_WARNING_NOTIFICATION_BOOL = "data_warning_notification_bool"; field public static final String KEY_DATA_WARNING_THRESHOLD_BYTES_LONG = "data_warning_threshold_bytes_long"; field public static final String KEY_DEFAULT_SIM_CALL_MANAGER_STRING = "default_sim_call_manager_string"; + field public static final String KEY_DEFAULT_VM_NUMBER_ROAMING_AND_IMS_UNREGISTERED_STRING = "default_vm_number_roaming_and_ims_unregistered_string"; field public static final String KEY_DEFAULT_VM_NUMBER_STRING = "default_vm_number_string"; field public static final String KEY_DIAL_STRING_REPLACE_STRING_ARRAY = "dial_string_replace_string_array"; field public static final String KEY_DISABLE_CDMA_ACTIVATION_CODE_BOOL = "disable_cdma_activation_code_bool"; + field public static final String KEY_DISABLE_CHARGE_INDICATION_BOOL = "disable_charge_indication_bool"; + field public static final String KEY_DISABLE_SUPPLEMENTARY_SERVICES_IN_AIRPLANE_MODE_BOOL = "disable_supplementary_services_in_airplane_mode_bool"; + field public static final String KEY_DISCONNECT_CAUSE_PLAY_BUSYTONE_INT_ARRAY = "disconnect_cause_play_busytone_int_array"; field public static final String KEY_DISPLAY_HD_AUDIO_PROPERTY_BOOL = "display_hd_audio_property_bool"; field public static final String KEY_DROP_VIDEO_CALL_WHEN_ANSWERING_AUDIO_CALL_BOOL = "drop_video_call_when_answering_audio_call_bool"; field public static final String KEY_DTMF_TYPE_ENABLED_BOOL = "dtmf_type_enabled_bool"; @@ -44039,9 +46687,13 @@ package android.telephony { field public static final String KEY_EDITABLE_ENHANCED_4G_LTE_BOOL = "editable_enhanced_4g_lte_bool"; field public static final String KEY_EDITABLE_VOICEMAIL_NUMBER_BOOL = "editable_voicemail_number_bool"; field public static final String KEY_EDITABLE_VOICEMAIL_NUMBER_SETTING_BOOL = "editable_voicemail_number_setting_bool"; + field public static final String KEY_EDITABLE_WFC_MODE_BOOL = "editable_wfc_mode_bool"; + field public static final String KEY_EDITABLE_WFC_ROAMING_MODE_BOOL = "editable_wfc_roaming_mode_bool"; + field public static final String KEY_EMERGENCY_NOTIFICATION_DELAY_INT = "emergency_notification_delay_int"; field public static final String KEY_EMERGENCY_NUMBER_PREFIX_STRING_ARRAY = "emergency_number_prefix_string_array"; field public static final String KEY_ENABLE_DIALER_KEY_VIBRATION_BOOL = "enable_dialer_key_vibration_bool"; field public static final String KEY_ENHANCED_4G_LTE_ON_BY_DEFAULT_BOOL = "enhanced_4g_lte_on_by_default_bool"; + field public static final String KEY_ENHANCED_4G_LTE_TITLE_VARIANT_INT = "enhanced_4g_lte_title_variant_int"; field public static final String KEY_FORCE_HOME_NETWORK_BOOL = "force_home_network_bool"; field public static final String KEY_GSM_DTMF_TONE_DELAY_INT = "gsm_dtmf_tone_delay_int"; field public static final String KEY_GSM_NONROAMING_NETWORKS_STRING_ARRAY = "gsm_nonroaming_networks_string_array"; @@ -44050,19 +46702,26 @@ package android.telephony { field public static final String KEY_HIDE_CARRIER_NETWORK_SETTINGS_BOOL = "hide_carrier_network_settings_bool"; field public static final String KEY_HIDE_ENHANCED_4G_LTE_BOOL = "hide_enhanced_4g_lte_bool"; field public static final String KEY_HIDE_IMS_APN_BOOL = "hide_ims_apn_bool"; + field public static final String KEY_HIDE_LTE_PLUS_DATA_ICON_BOOL = "hide_lte_plus_data_icon_bool"; field public static final String KEY_HIDE_PREFERRED_NETWORK_TYPE_BOOL = "hide_preferred_network_type_bool"; field public static final String KEY_HIDE_PRESET_APN_DETAILS_BOOL = "hide_preset_apn_details_bool"; field public static final String KEY_HIDE_SIM_LOCK_SETTINGS_BOOL = "hide_sim_lock_settings_bool"; + field public static final String KEY_IGNORE_DATA_ENABLED_CHANGED_FOR_VIDEO_CALLS = "ignore_data_enabled_changed_for_video_calls"; + field public static final String KEY_IGNORE_RTT_MODE_SETTING_BOOL = "ignore_rtt_mode_setting_bool"; field public static final String KEY_IGNORE_SIM_NETWORK_LOCKED_EVENTS_BOOL = "ignore_sim_network_locked_events_bool"; field public static final String KEY_IMS_CONFERENCE_SIZE_LIMIT_INT = "ims_conference_size_limit_int"; field public static final String KEY_IMS_DTMF_TONE_DELAY_INT = "ims_dtmf_tone_delay_int"; field public static final String KEY_IS_IMS_CONFERENCE_SIZE_ENFORCED_BOOL = "is_ims_conference_size_enforced_bool"; + field public static final String KEY_LTE_ENABLED_BOOL = "lte_enabled_bool"; + field public static final String KEY_LTE_RSRQ_THRESHOLDS_INT_ARRAY = "lte_rsrq_thresholds_int_array"; + field public static final String KEY_LTE_RSSNR_THRESHOLDS_INT_ARRAY = "lte_rssnr_thresholds_int_array"; field public static final String KEY_MDN_IS_ADDITIONAL_VOICEMAIL_NUMBER_BOOL = "mdn_is_additional_voicemail_number_bool"; field public static final String KEY_MMS_ALIAS_ENABLED_BOOL = "aliasEnabled"; field public static final String KEY_MMS_ALIAS_MAX_CHARS_INT = "aliasMaxChars"; field public static final String KEY_MMS_ALIAS_MIN_CHARS_INT = "aliasMinChars"; field public static final String KEY_MMS_ALLOW_ATTACH_AUDIO_BOOL = "allowAttachAudio"; field public static final String KEY_MMS_APPEND_TRANSACTION_ID_BOOL = "enabledTransID"; + field public static final String KEY_MMS_CLOSE_CONNECTION_BOOL = "mmsCloseConnection"; field public static final String KEY_MMS_EMAIL_GATEWAY_NUMBER_STRING = "emailGatewayNumber"; field public static final String KEY_MMS_GROUP_MMS_ENABLED_BOOL = "enableGroupMms"; field public static final String KEY_MMS_HTTP_PARAMS_STRING = "httpParams"; @@ -44090,8 +46749,11 @@ package android.telephony { field public static final String KEY_MMS_UA_PROF_URL_STRING = "uaProfUrl"; field public static final String KEY_MMS_USER_AGENT_STRING = "userAgent"; field public static final String KEY_MONTHLY_DATA_CYCLE_DAY_INT = "monthly_data_cycle_day_int"; + field public static final String KEY_ONLY_AUTO_SELECT_IN_HOME_NETWORK_BOOL = "only_auto_select_in_home_network"; field public static final String KEY_ONLY_SINGLE_DC_ALLOWED_INT_ARRAY = "only_single_dc_allowed_int_array"; field public static final String KEY_OPERATOR_SELECTION_EXPAND_BOOL = "operator_selection_expand_bool"; + field public static final String KEY_OPPORTUNISTIC_NETWORK_BACKOFF_TIME_LONG = "opportunistic_network_backoff_time_long"; + field public static final String KEY_OPPORTUNISTIC_NETWORK_DATA_SWITCH_EXIT_HYSTERESIS_TIME_LONG = "opportunistic_network_data_switch_exit_hysteresis_time_long"; field public static final String KEY_OPPORTUNISTIC_NETWORK_DATA_SWITCH_HYSTERESIS_TIME_LONG = "opportunistic_network_data_switch_hysteresis_time_long"; field public static final String KEY_OPPORTUNISTIC_NETWORK_ENTRY_OR_EXIT_HYSTERESIS_TIME_LONG = "opportunistic_network_entry_or_exit_hysteresis_time_long"; field public static final String KEY_OPPORTUNISTIC_NETWORK_ENTRY_THRESHOLD_BANDWIDTH_INT = "opportunistic_network_entry_threshold_bandwidth_int"; @@ -44099,18 +46761,31 @@ package android.telephony { field public static final String KEY_OPPORTUNISTIC_NETWORK_ENTRY_THRESHOLD_RSSNR_INT = "opportunistic_network_entry_threshold_rssnr_int"; field public static final String KEY_OPPORTUNISTIC_NETWORK_EXIT_THRESHOLD_RSRP_INT = "opportunistic_network_exit_threshold_rsrp_int"; field public static final String KEY_OPPORTUNISTIC_NETWORK_EXIT_THRESHOLD_RSSNR_INT = "opportunistic_network_exit_threshold_rssnr_int"; + field public static final String KEY_OPPORTUNISTIC_NETWORK_MAX_BACKOFF_TIME_LONG = "opportunistic_network_max_backoff_time_long"; + field public static final String KEY_OPPORTUNISTIC_NETWORK_PING_PONG_TIME_LONG = "opportunistic_network_ping_pong_time_long"; + field public static final String KEY_PING_TEST_BEFORE_DATA_SWITCH_BOOL = "ping_test_before_data_switch_bool"; field public static final String KEY_PREFER_2G_BOOL = "prefer_2g_bool"; + field public static final String KEY_PREVENT_CLIR_ACTIVATION_AND_DEACTIVATION_CODE_BOOL = "prevent_clir_activation_and_deactivation_code_bool"; field public static final String KEY_RADIO_RESTART_FAILURE_CAUSES_INT_ARRAY = "radio_restart_failure_causes_int_array"; field public static final String KEY_RCS_CONFIG_SERVER_URL_STRING = "rcs_config_server_url_string"; + field public static final String KEY_READ_ONLY_APN_FIELDS_STRING_ARRAY = "read_only_apn_fields_string_array"; + field public static final String KEY_READ_ONLY_APN_TYPES_STRING_ARRAY = "read_only_apn_types_string_array"; field public static final String KEY_REQUIRE_ENTITLEMENT_CHECKS_BOOL = "require_entitlement_checks_bool"; field @Deprecated public static final String KEY_RESTART_RADIO_ON_PDP_FAIL_REGULAR_DEACTIVATION_BOOL = "restart_radio_on_pdp_fail_regular_deactivation_bool"; field public static final String KEY_RTT_SUPPORTED_BOOL = "rtt_supported_bool"; + field public static final String KEY_SHOW_4G_FOR_3G_DATA_ICON_BOOL = "show_4g_for_3g_data_icon_bool"; + field public static final String KEY_SHOW_4G_FOR_LTE_DATA_ICON_BOOL = "show_4g_for_lte_data_icon_bool"; field public static final String KEY_SHOW_APN_SETTING_CDMA_BOOL = "show_apn_setting_cdma_bool"; + field public static final String KEY_SHOW_BLOCKING_PAY_PHONE_OPTION_BOOL = "show_blocking_pay_phone_option_bool"; field public static final String KEY_SHOW_CALL_BLOCKING_DISABLED_NOTIFICATION_ALWAYS_BOOL = "show_call_blocking_disabled_notification_always_bool"; field public static final String KEY_SHOW_CDMA_CHOICES_BOOL = "show_cdma_choices_bool"; + field public static final String KEY_SHOW_FORWARDED_NUMBER_BOOL = "show_forwarded_number_bool"; field public static final String KEY_SHOW_ICCID_IN_SIM_STATUS_BOOL = "show_iccid_in_sim_status_bool"; + field public static final String KEY_SHOW_IMS_REGISTRATION_STATUS_BOOL = "show_ims_registration_status_bool"; field public static final String KEY_SHOW_ONSCREEN_DIAL_BUTTON_BOOL = "show_onscreen_dial_button_bool"; field public static final String KEY_SHOW_SIGNAL_STRENGTH_IN_SIM_STATUS_BOOL = "show_signal_strength_in_sim_status_bool"; + field public static final String KEY_SHOW_VIDEO_CALL_CHARGES_ALERT_DIALOG_BOOL = "show_video_call_charges_alert_dialog_bool"; + field public static final String KEY_SHOW_WFC_LOCATION_PRIVACY_POLICY_BOOL = "show_wfc_location_privacy_policy_bool"; field public static final String KEY_SIMPLIFIED_NETWORK_SETTINGS_BOOL = "simplified_network_settings_bool"; field public static final String KEY_SIM_NETWORK_UNLOCK_ALLOW_DISMISS_BOOL = "sim_network_unlock_allow_dismiss_bool"; field public static final String KEY_SMS_REQUIRES_DESTINATION_NUMBER_CONVERSION_BOOL = "sms_requires_destination_number_conversion_bool"; @@ -44118,13 +46793,21 @@ package android.telephony { field public static final String KEY_SUPPORT_CLIR_NETWORK_DEFAULT_BOOL = "support_clir_network_default_bool"; field public static final String KEY_SUPPORT_CONFERENCE_CALL_BOOL = "support_conference_call_bool"; field public static final String KEY_SUPPORT_EMERGENCY_SMS_OVER_IMS_BOOL = "support_emergency_sms_over_ims_bool"; + field public static final String KEY_SUPPORT_ENHANCED_CALL_BLOCKING_BOOL = "support_enhanced_call_blocking_bool"; + field public static final String KEY_SUPPORT_IMS_CONFERENCE_EVENT_PACKAGE_BOOL = "support_ims_conference_event_package_bool"; field public static final String KEY_SUPPORT_PAUSE_IMS_VIDEO_CALLS_BOOL = "support_pause_ims_video_calls_bool"; field public static final String KEY_SUPPORT_SWAP_AFTER_MERGE_BOOL = "support_swap_after_merge_bool"; + field public static final String KEY_SUPPORT_TDSCDMA_BOOL = "support_tdscdma_bool"; + field public static final String KEY_SUPPORT_TDSCDMA_ROAMING_NETWORKS_STRING_ARRAY = "support_tdscdma_roaming_networks_string_array"; + field public static final String KEY_SWITCH_DATA_TO_PRIMARY_IF_PRIMARY_IS_OOS_BOOL = "switch_data_to_primary_if_primary_is_oos_bool"; field public static final String KEY_TREAT_DOWNGRADED_VIDEO_CALLS_AS_VIDEO_CALLS_BOOL = "treat_downgraded_video_calls_as_video_calls_bool"; field public static final String KEY_TTY_SUPPORTED_BOOL = "tty_supported_bool"; + field public static final String KEY_UNLOGGABLE_NUMBERS_STRING_ARRAY = "unloggable_numbers_string_array"; field public static final String KEY_USE_HFA_FOR_PROVISIONING_BOOL = "use_hfa_for_provisioning_bool"; field public static final String KEY_USE_OTASP_FOR_PROVISIONING_BOOL = "use_otasp_for_provisioning_bool"; field public static final String KEY_USE_RCS_PRESENCE_BOOL = "use_rcs_presence_bool"; + field public static final String KEY_USE_RCS_SIP_OPTIONS_BOOL = "use_rcs_sip_options_bool"; + field public static final String KEY_USE_WFC_HOME_NETWORK_MODE_IN_ROAMING_NETWORK_BOOL = "use_wfc_home_network_mode_in_roaming_network_bool"; field public static final String KEY_VOICEMAIL_NOTIFICATION_PERSISTENT_BOOL = "voicemail_notification_persistent_bool"; field public static final String KEY_VOICE_PRIVACY_DISABLE_UI_BOOL = "voice_privacy_disable_ui_bool"; field public static final String KEY_VOLTE_REPLACEMENT_RAT_INT = "volte_replacement_rat_int"; @@ -44137,9 +46820,30 @@ package android.telephony { field public static final String KEY_VVM_PREFETCH_BOOL = "vvm_prefetch_bool"; field public static final String KEY_VVM_SSL_ENABLED_BOOL = "vvm_ssl_enabled_bool"; field public static final String KEY_VVM_TYPE_STRING = "vvm_type_string"; + field public static final String KEY_WFC_EMERGENCY_ADDRESS_CARRIER_APP_STRING = "wfc_emergency_address_carrier_app_string"; + field public static final String KEY_WORLD_MODE_ENABLED_BOOL = "world_mode_enabled_bool"; field public static final String KEY_WORLD_PHONE_BOOL = "world_phone_bool"; } + public static final class CarrierConfigManager.Apn { + field public static final String KEY_PREFIX = "apn."; + field public static final String KEY_SETTINGS_DEFAULT_PROTOCOL_STRING = "apn.settings_default_protocol_string"; + field public static final String KEY_SETTINGS_DEFAULT_ROAMING_PROTOCOL_STRING = "apn.settings_default_roaming_protocol_string"; + field public static final String PROTOCOL_IPV4 = "IP"; + field public static final String PROTOCOL_IPV4V6 = "IPV4V6"; + field public static final String PROTOCOL_IPV6 = "IPV6"; + } + + public static final class CarrierConfigManager.Gps { + field public static final String KEY_PERSIST_LPP_MODE_BOOL = "gps.persist_lpp_mode_bool"; + field public static final String KEY_PREFIX = "gps."; + } + + public static final class CarrierConfigManager.Ims { + field public static final String KEY_PREFIX = "ims."; + field public static final String KEY_WIFI_OFF_DEFERRING_TIME_MILLIS_INT = "ims.wifi_off_deferring_time_millis_int"; + } + public abstract class CellIdentity implements android.os.Parcelable { method public int describeContents(); method @Nullable public CharSequence getOperatorAlphaLong(); @@ -44159,6 +46863,7 @@ package android.telephony { } public final class CellIdentityGsm extends android.telephony.CellIdentity { + method @NonNull public java.util.Set<java.lang.String> getAdditionalPlmns(); method public int getArfcn(); method public int getBsic(); method public int getCid(); @@ -44174,8 +46879,11 @@ package android.telephony { } public final class CellIdentityLte extends android.telephony.CellIdentity { + method @NonNull public java.util.Set<java.lang.String> getAdditionalPlmns(); + method @NonNull public int[] getBands(); method public int getBandwidth(); method public int getCi(); + method @Nullable public android.telephony.ClosedSubscriberGroupInfo getClosedSubscriberGroupInfo(); method public int getEarfcn(); method @Deprecated public int getMcc(); method @Nullable public String getMccString(); @@ -44189,6 +46897,8 @@ package android.telephony { } public final class CellIdentityNr extends android.telephony.CellIdentity { + method @NonNull public java.util.Set<java.lang.String> getAdditionalPlmns(); + method @NonNull public int[] getBands(); method @Nullable public String getMccString(); method @Nullable public String getMncString(); method public long getNci(); @@ -44200,7 +46910,9 @@ package android.telephony { } public final class CellIdentityTdscdma extends android.telephony.CellIdentity { + method @NonNull public java.util.Set<java.lang.String> getAdditionalPlmns(); method public int getCid(); + method @Nullable public android.telephony.ClosedSubscriberGroupInfo getClosedSubscriberGroupInfo(); method public int getCpid(); method public int getLac(); method @Nullable public String getMccString(); @@ -44212,7 +46924,9 @@ package android.telephony { } public final class CellIdentityWcdma extends android.telephony.CellIdentity { + method @NonNull public java.util.Set<java.lang.String> getAdditionalPlmns(); method public int getCid(); + method @Nullable public android.telephony.ClosedSubscriberGroupInfo getClosedSubscriberGroupInfo(); method public int getLac(); method @Deprecated public int getMcc(); method @Nullable public String getMccString(); @@ -44228,7 +46942,10 @@ package android.telephony { public abstract class CellInfo implements android.os.Parcelable { method public int describeContents(); method public int getCellConnectionStatus(); - method public long getTimeStamp(); + method @NonNull public abstract android.telephony.CellIdentity getCellIdentity(); + method @NonNull public abstract android.telephony.CellSignalStrength getCellSignalStrength(); + method @Deprecated public long getTimeStamp(); + method public long getTimestampMillis(); method public boolean isRegistered(); field public static final int CONNECTION_NONE = 0; // 0x0 field public static final int CONNECTION_PRIMARY_SERVING = 1; // 0x1 @@ -44322,6 +47039,7 @@ package android.telephony { method public int getBitErrorRate(); method public int getDbm(); method @IntRange(from=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_NONE_OR_UNKNOWN, to=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_GREAT) public int getLevel(); + method public int getRssi(); method public int getTimingAdvance(); method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.telephony.CellSignalStrengthGsm> CREATOR; @@ -44371,11 +47089,365 @@ package android.telephony { method public int describeContents(); method public int getAsuLevel(); method public int getDbm(); + method public int getEcNo(); method @IntRange(from=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_NONE_OR_UNKNOWN, to=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_GREAT) public int getLevel(); method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.telephony.CellSignalStrengthWcdma> CREATOR; } + public final class ClosedSubscriberGroupInfo implements android.os.Parcelable { + method public int describeContents(); + method @IntRange(from=0, to=134217727) public int getCsgIdentity(); + method public boolean getCsgIndicator(); + method @NonNull public String getHomeNodebName(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ClosedSubscriberGroupInfo> CREATOR; + } + + public final class DataFailCause { + field public static final int ACCESS_ATTEMPT_ALREADY_IN_PROGRESS = 2219; // 0x8ab + field public static final int ACCESS_BLOCK = 2087; // 0x827 + field public static final int ACCESS_BLOCK_ALL = 2088; // 0x828 + field public static final int ACCESS_CLASS_DSAC_REJECTION = 2108; // 0x83c + field public static final int ACCESS_CONTROL_LIST_CHECK_FAILURE = 2128; // 0x850 + field public static final int ACTIVATION_REJECTED_BCM_VIOLATION = 48; // 0x30 + field public static final int ACTIVATION_REJECT_GGSN = 30; // 0x1e + field public static final int ACTIVATION_REJECT_UNSPECIFIED = 31; // 0x1f + field public static final int ACTIVE_PDP_CONTEXT_MAX_NUMBER_REACHED = 65; // 0x41 + field public static final int APN_DISABLED = 2045; // 0x7fd + field public static final int APN_DISALLOWED_ON_ROAMING = 2059; // 0x80b + field public static final int APN_MISMATCH = 2054; // 0x806 + field public static final int APN_PARAMETERS_CHANGED = 2060; // 0x80c + field public static final int APN_PENDING_HANDOVER = 2041; // 0x7f9 + field public static final int APN_TYPE_CONFLICT = 112; // 0x70 + field public static final int AUTH_FAILURE_ON_EMERGENCY_CALL = 122; // 0x7a + field public static final int BEARER_HANDLING_NOT_SUPPORTED = 60; // 0x3c + field public static final int CALL_DISALLOWED_IN_ROAMING = 2068; // 0x814 + field public static final int CALL_PREEMPT_BY_EMERGENCY_APN = 127; // 0x7f + field public static final int CANNOT_ENCODE_OTA_MESSAGE = 2159; // 0x86f + field public static final int CDMA_ALERT_STOP = 2077; // 0x81d + field public static final int CDMA_INCOMING_CALL = 2076; // 0x81c + field public static final int CDMA_INTERCEPT = 2073; // 0x819 + field public static final int CDMA_LOCK = 2072; // 0x818 + field public static final int CDMA_RELEASE_DUE_TO_SO_REJECTION = 2075; // 0x81b + field public static final int CDMA_REORDER = 2074; // 0x81a + field public static final int CDMA_RETRY_ORDER = 2086; // 0x826 + field public static final int CHANNEL_ACQUISITION_FAILURE = 2078; // 0x81e + field public static final int CLOSE_IN_PROGRESS = 2030; // 0x7ee + field public static final int COLLISION_WITH_NETWORK_INITIATED_REQUEST = 56; // 0x38 + field public static final int COMPANION_IFACE_IN_USE = 118; // 0x76 + field public static final int CONCURRENT_SERVICES_INCOMPATIBLE = 2083; // 0x823 + field public static final int CONCURRENT_SERVICES_NOT_ALLOWED = 2091; // 0x82b + field public static final int CONCURRENT_SERVICE_NOT_SUPPORTED_BY_BASE_STATION = 2080; // 0x820 + field public static final int CONDITIONAL_IE_ERROR = 100; // 0x64 + field public static final int CONGESTION = 2106; // 0x83a + field public static final int CONNECTION_RELEASED = 2113; // 0x841 + field public static final int CS_DOMAIN_NOT_AVAILABLE = 2181; // 0x885 + field public static final int CS_FALLBACK_CALL_ESTABLISHMENT_NOT_ALLOWED = 2188; // 0x88c + field public static final int DATA_PLAN_EXPIRED = 2198; // 0x896 + field public static final int DATA_ROAMING_SETTINGS_DISABLED = 2064; // 0x810 + field public static final int DATA_SETTINGS_DISABLED = 2063; // 0x80f + field public static final int DBM_OR_SMS_IN_PROGRESS = 2211; // 0x8a3 + field public static final int DDS_SWITCHED = 2065; // 0x811 + field public static final int DDS_SWITCH_IN_PROGRESS = 2067; // 0x813 + field public static final int DRB_RELEASED_BY_RRC = 2112; // 0x840 + field public static final int DS_EXPLICIT_DEACTIVATION = 2125; // 0x84d + field public static final int DUAL_SWITCH = 2227; // 0x8b3 + field public static final int DUN_CALL_DISALLOWED = 2056; // 0x808 + field public static final int DUPLICATE_BEARER_ID = 2118; // 0x846 + field public static final int EHRPD_TO_HRPD_FALLBACK = 2049; // 0x801 + field public static final int EMBMS_NOT_ENABLED = 2193; // 0x891 + field public static final int EMBMS_REGULAR_DEACTIVATION = 2195; // 0x893 + field public static final int EMERGENCY_IFACE_ONLY = 116; // 0x74 + field public static final int EMERGENCY_MODE = 2221; // 0x8ad + field public static final int EMM_ACCESS_BARRED = 115; // 0x73 + field public static final int EMM_ACCESS_BARRED_INFINITE_RETRY = 121; // 0x79 + field public static final int EMM_ATTACH_FAILED = 2115; // 0x843 + field public static final int EMM_ATTACH_STARTED = 2116; // 0x844 + field public static final int EMM_DETACHED = 2114; // 0x842 + field public static final int EMM_T3417_EXPIRED = 2130; // 0x852 + field public static final int EMM_T3417_EXT_EXPIRED = 2131; // 0x853 + field public static final int EPS_SERVICES_AND_NON_EPS_SERVICES_NOT_ALLOWED = 2178; // 0x882 + field public static final int EPS_SERVICES_NOT_ALLOWED_IN_PLMN = 2179; // 0x883 + field public static final int ERROR_UNSPECIFIED = 65535; // 0xffff + field public static final int ESM_BAD_OTA_MESSAGE = 2122; // 0x84a + field public static final int ESM_BEARER_DEACTIVATED_TO_SYNC_WITH_NETWORK = 2120; // 0x848 + field public static final int ESM_COLLISION_SCENARIOS = 2119; // 0x847 + field public static final int ESM_CONTEXT_TRANSFERRED_DUE_TO_IRAT = 2124; // 0x84c + field public static final int ESM_DOWNLOAD_SERVER_REJECTED_THE_CALL = 2123; // 0x84b + field public static final int ESM_FAILURE = 2182; // 0x886 + field public static final int ESM_INFO_NOT_RECEIVED = 53; // 0x35 + field public static final int ESM_LOCAL_CAUSE_NONE = 2126; // 0x84e + field public static final int ESM_NW_ACTIVATED_DED_BEARER_WITH_ID_OF_DEF_BEARER = 2121; // 0x849 + field public static final int ESM_PROCEDURE_TIME_OUT = 2155; // 0x86b + field public static final int ESM_UNKNOWN_EPS_BEARER_CONTEXT = 2111; // 0x83f + field public static final int EVDO_CONNECTION_DENY_BY_BILLING_OR_AUTHENTICATION_FAILURE = 2201; // 0x899 + field public static final int EVDO_CONNECTION_DENY_BY_GENERAL_OR_NETWORK_BUSY = 2200; // 0x898 + field public static final int EVDO_HDR_CHANGED = 2202; // 0x89a + field public static final int EVDO_HDR_CONNECTION_SETUP_TIMEOUT = 2206; // 0x89e + field public static final int EVDO_HDR_EXITED = 2203; // 0x89b + field public static final int EVDO_HDR_NO_SESSION = 2204; // 0x89c + field public static final int EVDO_USING_GPS_FIX_INSTEAD_OF_HDR_CALL = 2205; // 0x89d + field public static final int FADE = 2217; // 0x8a9 + field public static final int FAILED_TO_ACQUIRE_COLOCATED_HDR = 2207; // 0x89f + field public static final int FEATURE_NOT_SUPP = 40; // 0x28 + field public static final int FILTER_SEMANTIC_ERROR = 44; // 0x2c + field public static final int FILTER_SYTAX_ERROR = 45; // 0x2d + field public static final int FORBIDDEN_APN_NAME = 2066; // 0x812 + field public static final int GPRS_REGISTRATION_FAIL = -2; // 0xfffffffe + field public static final int GPRS_SERVICES_AND_NON_GPRS_SERVICES_NOT_ALLOWED = 2097; // 0x831 + field public static final int GPRS_SERVICES_NOT_ALLOWED = 2098; // 0x832 + field public static final int GPRS_SERVICES_NOT_ALLOWED_IN_THIS_PLMN = 2103; // 0x837 + field public static final int HANDOFF_PREFERENCE_CHANGED = 2251; // 0x8cb + field public static final int HDR_ACCESS_FAILURE = 2213; // 0x8a5 + field public static final int HDR_FADE = 2212; // 0x8a4 + field public static final int HDR_NO_LOCK_GRANTED = 2210; // 0x8a2 + field public static final int IFACE_AND_POL_FAMILY_MISMATCH = 120; // 0x78 + field public static final int IFACE_MISMATCH = 117; // 0x75 + field public static final int ILLEGAL_ME = 2096; // 0x830 + field public static final int ILLEGAL_MS = 2095; // 0x82f + field public static final int IMEI_NOT_ACCEPTED = 2177; // 0x881 + field public static final int IMPLICITLY_DETACHED = 2100; // 0x834 + field public static final int IMSI_UNKNOWN_IN_HOME_SUBSCRIBER_SERVER = 2176; // 0x880 + field public static final int INCOMING_CALL_REJECTED = 2092; // 0x82c + field public static final int INSUFFICIENT_RESOURCES = 26; // 0x1a + field public static final int INTERFACE_IN_USE = 2058; // 0x80a + field public static final int INTERNAL_CALL_PREEMPT_BY_HIGH_PRIO_APN = 114; // 0x72 + field public static final int INTERNAL_EPC_NONEPC_TRANSITION = 2057; // 0x809 + field public static final int INVALID_CONNECTION_ID = 2156; // 0x86c + field public static final int INVALID_DNS_ADDR = 123; // 0x7b + field public static final int INVALID_EMM_STATE = 2190; // 0x88e + field public static final int INVALID_MANDATORY_INFO = 96; // 0x60 + field public static final int INVALID_MODE = 2223; // 0x8af + field public static final int INVALID_PCSCF_ADDR = 113; // 0x71 + field public static final int INVALID_PCSCF_OR_DNS_ADDRESS = 124; // 0x7c + field public static final int INVALID_PRIMARY_NSAPI = 2158; // 0x86e + field public static final int INVALID_SIM_STATE = 2224; // 0x8b0 + field public static final int INVALID_TRANSACTION_ID = 81; // 0x51 + field public static final int IPV6_ADDRESS_TRANSFER_FAILED = 2047; // 0x7ff + field public static final int IPV6_PREFIX_UNAVAILABLE = 2250; // 0x8ca + field public static final int IP_ADDRESS_MISMATCH = 119; // 0x77 + field public static final int IP_VERSION_MISMATCH = 2055; // 0x807 + field public static final int IRAT_HANDOVER_FAILED = 2194; // 0x892 + field public static final int IS707B_MAX_ACCESS_PROBES = 2089; // 0x829 + field public static final int LIMITED_TO_IPV4 = 2234; // 0x8ba + field public static final int LIMITED_TO_IPV6 = 2235; // 0x8bb + field public static final int LLC_SNDCP = 25; // 0x19 + field public static final int LOCAL_END = 2215; // 0x8a7 + field public static final int LOCATION_AREA_NOT_ALLOWED = 2102; // 0x836 + field public static final int LOST_CONNECTION = 65540; // 0x10004 + field public static final int LOWER_LAYER_REGISTRATION_FAILURE = 2197; // 0x895 + field public static final int LOW_POWER_MODE_OR_POWERING_DOWN = 2044; // 0x7fc + field public static final int LTE_NAS_SERVICE_REQUEST_FAILED = 2117; // 0x845 + field public static final int LTE_THROTTLING_NOT_REQUIRED = 2127; // 0x84f + field public static final int MAC_FAILURE = 2183; // 0x887 + field public static final int MAXIMIUM_NSAPIS_EXCEEDED = 2157; // 0x86d + field public static final int MAXINUM_SIZE_OF_L2_MESSAGE_EXCEEDED = 2166; // 0x876 + field public static final int MAX_ACCESS_PROBE = 2079; // 0x81f + field public static final int MAX_IPV4_CONNECTIONS = 2052; // 0x804 + field public static final int MAX_IPV6_CONNECTIONS = 2053; // 0x805 + field public static final int MAX_PPP_INACTIVITY_TIMER_EXPIRED = 2046; // 0x7fe + field public static final int MESSAGE_INCORRECT_SEMANTIC = 95; // 0x5f + field public static final int MESSAGE_TYPE_UNSUPPORTED = 97; // 0x61 + field public static final int MIP_CONFIG_FAILURE = 2050; // 0x802 + field public static final int MIP_FA_ADMIN_PROHIBITED = 2001; // 0x7d1 + field public static final int MIP_FA_DELIVERY_STYLE_NOT_SUPPORTED = 2012; // 0x7dc + field public static final int MIP_FA_ENCAPSULATION_UNAVAILABLE = 2008; // 0x7d8 + field public static final int MIP_FA_HOME_AGENT_AUTHENTICATION_FAILURE = 2004; // 0x7d4 + field public static final int MIP_FA_INSUFFICIENT_RESOURCES = 2002; // 0x7d2 + field public static final int MIP_FA_MALFORMED_REPLY = 2007; // 0x7d7 + field public static final int MIP_FA_MALFORMED_REQUEST = 2006; // 0x7d6 + field public static final int MIP_FA_MISSING_CHALLENGE = 2017; // 0x7e1 + field public static final int MIP_FA_MISSING_HOME_ADDRESS = 2015; // 0x7df + field public static final int MIP_FA_MISSING_HOME_AGENT = 2014; // 0x7de + field public static final int MIP_FA_MISSING_NAI = 2013; // 0x7dd + field public static final int MIP_FA_MOBILE_NODE_AUTHENTICATION_FAILURE = 2003; // 0x7d3 + field public static final int MIP_FA_REASON_UNSPECIFIED = 2000; // 0x7d0 + field public static final int MIP_FA_REQUESTED_LIFETIME_TOO_LONG = 2005; // 0x7d5 + field public static final int MIP_FA_REVERSE_TUNNEL_IS_MANDATORY = 2011; // 0x7db + field public static final int MIP_FA_REVERSE_TUNNEL_UNAVAILABLE = 2010; // 0x7da + field public static final int MIP_FA_STALE_CHALLENGE = 2018; // 0x7e2 + field public static final int MIP_FA_UNKNOWN_CHALLENGE = 2016; // 0x7e0 + field public static final int MIP_FA_VJ_HEADER_COMPRESSION_UNAVAILABLE = 2009; // 0x7d9 + field public static final int MIP_HA_ADMIN_PROHIBITED = 2020; // 0x7e4 + field public static final int MIP_HA_ENCAPSULATION_UNAVAILABLE = 2029; // 0x7ed + field public static final int MIP_HA_FOREIGN_AGENT_AUTHENTICATION_FAILURE = 2023; // 0x7e7 + field public static final int MIP_HA_INSUFFICIENT_RESOURCES = 2021; // 0x7e5 + field public static final int MIP_HA_MALFORMED_REQUEST = 2025; // 0x7e9 + field public static final int MIP_HA_MOBILE_NODE_AUTHENTICATION_FAILURE = 2022; // 0x7e6 + field public static final int MIP_HA_REASON_UNSPECIFIED = 2019; // 0x7e3 + field public static final int MIP_HA_REGISTRATION_ID_MISMATCH = 2024; // 0x7e8 + field public static final int MIP_HA_REVERSE_TUNNEL_IS_MANDATORY = 2028; // 0x7ec + field public static final int MIP_HA_REVERSE_TUNNEL_UNAVAILABLE = 2027; // 0x7eb + field public static final int MIP_HA_UNKNOWN_HOME_AGENT_ADDRESS = 2026; // 0x7ea + field public static final int MISSING_UNKNOWN_APN = 27; // 0x1b + field public static final int MODEM_APP_PREEMPTED = 2032; // 0x7f0 + field public static final int MODEM_RESTART = 2037; // 0x7f5 + field public static final int MSC_TEMPORARILY_NOT_REACHABLE = 2180; // 0x884 + field public static final int MSG_AND_PROTOCOL_STATE_UNCOMPATIBLE = 101; // 0x65 + field public static final int MSG_TYPE_NONCOMPATIBLE_STATE = 98; // 0x62 + field public static final int MS_IDENTITY_CANNOT_BE_DERIVED_BY_THE_NETWORK = 2099; // 0x833 + field public static final int MULTIPLE_PDP_CALL_NOT_ALLOWED = 2192; // 0x890 + field public static final int MULTI_CONN_TO_SAME_PDN_NOT_ALLOWED = 55; // 0x37 + field public static final int NAS_LAYER_FAILURE = 2191; // 0x88f + field public static final int NAS_REQUEST_REJECTED_BY_NETWORK = 2167; // 0x877 + field public static final int NAS_SIGNALLING = 14; // 0xe + field public static final int NETWORK_FAILURE = 38; // 0x26 + field public static final int NETWORK_INITIATED_DETACH_NO_AUTO_REATTACH = 2154; // 0x86a + field public static final int NETWORK_INITIATED_DETACH_WITH_AUTO_REATTACH = 2153; // 0x869 + field public static final int NETWORK_INITIATED_TERMINATION = 2031; // 0x7ef + field public static final int NONE = 0; // 0x0 + field public static final int NON_IP_NOT_SUPPORTED = 2069; // 0x815 + field public static final int NORMAL_RELEASE = 2218; // 0x8aa + field public static final int NO_CDMA_SERVICE = 2084; // 0x824 + field public static final int NO_COLLOCATED_HDR = 2225; // 0x8b1 + field public static final int NO_EPS_BEARER_CONTEXT_ACTIVATED = 2189; // 0x88d + field public static final int NO_GPRS_CONTEXT = 2094; // 0x82e + field public static final int NO_HYBRID_HDR_SERVICE = 2209; // 0x8a1 + field public static final int NO_PDP_CONTEXT_ACTIVATED = 2107; // 0x83b + field public static final int NO_RESPONSE_FROM_BASE_STATION = 2081; // 0x821 + field public static final int NO_SERVICE = 2216; // 0x8a8 + field public static final int NO_SERVICE_ON_GATEWAY = 2093; // 0x82d + field public static final int NSAPI_IN_USE = 35; // 0x23 + field public static final int NULL_APN_DISALLOWED = 2061; // 0x80d + field public static final int OEM_DCFAILCAUSE_1 = 4097; // 0x1001 + field public static final int OEM_DCFAILCAUSE_10 = 4106; // 0x100a + field public static final int OEM_DCFAILCAUSE_11 = 4107; // 0x100b + field public static final int OEM_DCFAILCAUSE_12 = 4108; // 0x100c + field public static final int OEM_DCFAILCAUSE_13 = 4109; // 0x100d + field public static final int OEM_DCFAILCAUSE_14 = 4110; // 0x100e + field public static final int OEM_DCFAILCAUSE_15 = 4111; // 0x100f + field public static final int OEM_DCFAILCAUSE_2 = 4098; // 0x1002 + field public static final int OEM_DCFAILCAUSE_3 = 4099; // 0x1003 + field public static final int OEM_DCFAILCAUSE_4 = 4100; // 0x1004 + field public static final int OEM_DCFAILCAUSE_5 = 4101; // 0x1005 + field public static final int OEM_DCFAILCAUSE_6 = 4102; // 0x1006 + field public static final int OEM_DCFAILCAUSE_7 = 4103; // 0x1007 + field public static final int OEM_DCFAILCAUSE_8 = 4104; // 0x1008 + field public static final int OEM_DCFAILCAUSE_9 = 4105; // 0x1009 + field public static final int ONLY_IPV4V6_ALLOWED = 57; // 0x39 + field public static final int ONLY_IPV4_ALLOWED = 50; // 0x32 + field public static final int ONLY_IPV6_ALLOWED = 51; // 0x33 + field public static final int ONLY_NON_IP_ALLOWED = 58; // 0x3a + field public static final int ONLY_SINGLE_BEARER_ALLOWED = 52; // 0x34 + field public static final int OPERATOR_BARRED = 8; // 0x8 + field public static final int OTASP_COMMIT_IN_PROGRESS = 2208; // 0x8a0 + field public static final int PDN_CONN_DOES_NOT_EXIST = 54; // 0x36 + field public static final int PDN_INACTIVITY_TIMER_EXPIRED = 2051; // 0x803 + field public static final int PDN_IPV4_CALL_DISALLOWED = 2033; // 0x7f1 + field public static final int PDN_IPV4_CALL_THROTTLED = 2034; // 0x7f2 + field public static final int PDN_IPV6_CALL_DISALLOWED = 2035; // 0x7f3 + field public static final int PDN_IPV6_CALL_THROTTLED = 2036; // 0x7f4 + field public static final int PDN_NON_IP_CALL_DISALLOWED = 2071; // 0x817 + field public static final int PDN_NON_IP_CALL_THROTTLED = 2070; // 0x816 + field public static final int PDP_ACTIVATE_MAX_RETRY_FAILED = 2109; // 0x83d + field public static final int PDP_DUPLICATE = 2104; // 0x838 + field public static final int PDP_ESTABLISH_TIMEOUT_EXPIRED = 2161; // 0x871 + field public static final int PDP_INACTIVE_TIMEOUT_EXPIRED = 2163; // 0x873 + field public static final int PDP_LOWERLAYER_ERROR = 2164; // 0x874 + field public static final int PDP_MODIFY_COLLISION = 2165; // 0x875 + field public static final int PDP_MODIFY_TIMEOUT_EXPIRED = 2162; // 0x872 + field public static final int PDP_PPP_NOT_SUPPORTED = 2038; // 0x7f6 + field public static final int PDP_WITHOUT_ACTIVE_TFT = 46; // 0x2e + field public static final int PHONE_IN_USE = 2222; // 0x8ae + field public static final int PHYSICAL_LINK_CLOSE_IN_PROGRESS = 2040; // 0x7f8 + field public static final int PLMN_NOT_ALLOWED = 2101; // 0x835 + field public static final int PPP_AUTH_FAILURE = 2229; // 0x8b5 + field public static final int PPP_CHAP_FAILURE = 2232; // 0x8b8 + field public static final int PPP_CLOSE_IN_PROGRESS = 2233; // 0x8b9 + field public static final int PPP_OPTION_MISMATCH = 2230; // 0x8b6 + field public static final int PPP_PAP_FAILURE = 2231; // 0x8b7 + field public static final int PPP_TIMEOUT = 2228; // 0x8b4 + field public static final int PREF_RADIO_TECH_CHANGED = -4; // 0xfffffffc + field public static final int PROFILE_BEARER_INCOMPATIBLE = 2042; // 0x7fa + field public static final int PROTOCOL_ERRORS = 111; // 0x6f + field public static final int QOS_NOT_ACCEPTED = 37; // 0x25 + field public static final int RADIO_ACCESS_BEARER_FAILURE = 2110; // 0x83e + field public static final int RADIO_ACCESS_BEARER_SETUP_FAILURE = 2160; // 0x870 + field public static final int RADIO_NOT_AVAILABLE = 65537; // 0x10001 + field public static final int RADIO_POWER_OFF = -5; // 0xfffffffb + field public static final int REDIRECTION_OR_HANDOFF_IN_PROGRESS = 2220; // 0x8ac + field public static final int REGISTRATION_FAIL = -1; // 0xffffffff + field public static final int REGULAR_DEACTIVATION = 36; // 0x24 + field public static final int REJECTED_BY_BASE_STATION = 2082; // 0x822 + field public static final int RRC_CONNECTION_ABORTED_AFTER_HANDOVER = 2173; // 0x87d + field public static final int RRC_CONNECTION_ABORTED_AFTER_IRAT_CELL_CHANGE = 2174; // 0x87e + field public static final int RRC_CONNECTION_ABORTED_DUE_TO_IRAT_CHANGE = 2171; // 0x87b + field public static final int RRC_CONNECTION_ABORTED_DURING_IRAT_CELL_CHANGE = 2175; // 0x87f + field public static final int RRC_CONNECTION_ABORT_REQUEST = 2151; // 0x867 + field public static final int RRC_CONNECTION_ACCESS_BARRED = 2139; // 0x85b + field public static final int RRC_CONNECTION_ACCESS_STRATUM_FAILURE = 2137; // 0x859 + field public static final int RRC_CONNECTION_ANOTHER_PROCEDURE_IN_PROGRESS = 2138; // 0x85a + field public static final int RRC_CONNECTION_CELL_NOT_CAMPED = 2144; // 0x860 + field public static final int RRC_CONNECTION_CELL_RESELECTION = 2140; // 0x85c + field public static final int RRC_CONNECTION_CONFIG_FAILURE = 2141; // 0x85d + field public static final int RRC_CONNECTION_INVALID_REQUEST = 2168; // 0x878 + field public static final int RRC_CONNECTION_LINK_FAILURE = 2143; // 0x85f + field public static final int RRC_CONNECTION_NORMAL_RELEASE = 2147; // 0x863 + field public static final int RRC_CONNECTION_OUT_OF_SERVICE_DURING_CELL_REGISTER = 2150; // 0x866 + field public static final int RRC_CONNECTION_RADIO_LINK_FAILURE = 2148; // 0x864 + field public static final int RRC_CONNECTION_REESTABLISHMENT_FAILURE = 2149; // 0x865 + field public static final int RRC_CONNECTION_REJECT_BY_NETWORK = 2146; // 0x862 + field public static final int RRC_CONNECTION_RELEASED_SECURITY_NOT_ACTIVE = 2172; // 0x87c + field public static final int RRC_CONNECTION_RF_UNAVAILABLE = 2170; // 0x87a + field public static final int RRC_CONNECTION_SYSTEM_INFORMATION_BLOCK_READ_ERROR = 2152; // 0x868 + field public static final int RRC_CONNECTION_SYSTEM_INTERVAL_FAILURE = 2145; // 0x861 + field public static final int RRC_CONNECTION_TIMER_EXPIRED = 2142; // 0x85e + field public static final int RRC_CONNECTION_TRACKING_AREA_ID_CHANGED = 2169; // 0x879 + field public static final int RRC_UPLINK_CONNECTION_RELEASE = 2134; // 0x856 + field public static final int RRC_UPLINK_DATA_TRANSMISSION_FAILURE = 2132; // 0x854 + field public static final int RRC_UPLINK_DELIVERY_FAILED_DUE_TO_HANDOVER = 2133; // 0x855 + field public static final int RRC_UPLINK_ERROR_REQUEST_FROM_NAS = 2136; // 0x858 + field public static final int RRC_UPLINK_RADIO_LINK_FAILURE = 2135; // 0x857 + field public static final int RUIM_NOT_PRESENT = 2085; // 0x825 + field public static final int SECURITY_MODE_REJECTED = 2186; // 0x88a + field public static final int SERVICE_NOT_ALLOWED_ON_PLMN = 2129; // 0x851 + field public static final int SERVICE_OPTION_NOT_SUBSCRIBED = 33; // 0x21 + field public static final int SERVICE_OPTION_NOT_SUPPORTED = 32; // 0x20 + field public static final int SERVICE_OPTION_OUT_OF_ORDER = 34; // 0x22 + field public static final int SIGNAL_LOST = -3; // 0xfffffffd + field public static final int SIM_CARD_CHANGED = 2043; // 0x7fb + field public static final int SYNCHRONIZATION_FAILURE = 2184; // 0x888 + field public static final int TEST_LOOPBACK_REGULAR_DEACTIVATION = 2196; // 0x894 + field public static final int TETHERED_CALL_ACTIVE = -6; // 0xfffffffa + field public static final int TFT_SEMANTIC_ERROR = 41; // 0x29 + field public static final int TFT_SYTAX_ERROR = 42; // 0x2a + field public static final int THERMAL_EMERGENCY = 2090; // 0x82a + field public static final int THERMAL_MITIGATION = 2062; // 0x80e + field public static final int TRAT_SWAP_FAILED = 2048; // 0x800 + field public static final int UE_INITIATED_DETACH_OR_DISCONNECT = 128; // 0x80 + field public static final int UE_IS_ENTERING_POWERSAVE_MODE = 2226; // 0x8b2 + field public static final int UE_RAT_CHANGE = 2105; // 0x839 + field public static final int UE_SECURITY_CAPABILITIES_MISMATCH = 2185; // 0x889 + field public static final int UMTS_HANDOVER_TO_IWLAN = 2199; // 0x897 + field public static final int UMTS_REACTIVATION_REQ = 39; // 0x27 + field public static final int UNACCEPTABLE_NETWORK_PARAMETER = 65538; // 0x10002 + field public static final int UNACCEPTABLE_NON_EPS_AUTHENTICATION = 2187; // 0x88b + field public static final int UNKNOWN = 65536; // 0x10000 + field public static final int UNKNOWN_INFO_ELEMENT = 99; // 0x63 + field public static final int UNKNOWN_PDP_ADDRESS_TYPE = 28; // 0x1c + field public static final int UNKNOWN_PDP_CONTEXT = 43; // 0x2b + field public static final int UNPREFERRED_RAT = 2039; // 0x7f7 + field public static final int UNSUPPORTED_1X_PREV = 2214; // 0x8a6 + field public static final int UNSUPPORTED_APN_IN_CURRENT_PLMN = 66; // 0x42 + field public static final int UNSUPPORTED_QCI_VALUE = 59; // 0x3b + field public static final int USER_AUTHENTICATION = 29; // 0x1d + field public static final int VSNCP_ADMINISTRATIVELY_PROHIBITED = 2245; // 0x8c5 + field public static final int VSNCP_APN_UNAUTHORIZED = 2238; // 0x8be + field public static final int VSNCP_GEN_ERROR = 2237; // 0x8bd + field public static final int VSNCP_INSUFFICIENT_PARAMETERS = 2243; // 0x8c3 + field public static final int VSNCP_NO_PDN_GATEWAY_ADDRESS = 2240; // 0x8c0 + field public static final int VSNCP_PDN_EXISTS_FOR_THIS_APN = 2248; // 0x8c8 + field public static final int VSNCP_PDN_GATEWAY_REJECT = 2242; // 0x8c2 + field public static final int VSNCP_PDN_GATEWAY_UNREACHABLE = 2241; // 0x8c1 + field public static final int VSNCP_PDN_ID_IN_USE = 2246; // 0x8c6 + field public static final int VSNCP_PDN_LIMIT_EXCEEDED = 2239; // 0x8bf + field public static final int VSNCP_RECONNECT_NOT_ALLOWED = 2249; // 0x8c9 + field public static final int VSNCP_RESOURCE_UNAVAILABLE = 2244; // 0x8c4 + field public static final int VSNCP_SUBSCRIBER_LIMITATION = 2247; // 0x8c7 + field public static final int VSNCP_TIMEOUT = 2236; // 0x8bc + } + public class IccOpenLogicalChannelResponse implements android.os.Parcelable { method public int describeContents(); method public int getChannel(); @@ -44460,6 +47532,35 @@ package android.telephony { field @Deprecated public static final int UNKNOWN_RSSI = 99; // 0x63 } + public final class NetworkRegistrationInfo implements android.os.Parcelable { + method public int describeContents(); + method public int getAccessNetworkTechnology(); + method @NonNull public java.util.List<java.lang.Integer> getAvailableServices(); + method @Nullable public android.telephony.CellIdentity getCellIdentity(); + method public int getDomain(); + method @Nullable public String getRegisteredPlmn(); + method public int getTransportType(); + method public boolean isRegistered(); + method public boolean isRoaming(); + method public boolean isSearching(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.telephony.NetworkRegistrationInfo> CREATOR; + field public static final int DOMAIN_CS = 1; // 0x1 + field public static final int DOMAIN_CS_PS = 3; // 0x3 + field public static final int DOMAIN_PS = 2; // 0x2 + field public static final int DOMAIN_UNKNOWN = 0; // 0x0 + field public static final int NR_STATE_CONNECTED = 3; // 0x3 + field public static final int NR_STATE_NONE = 0; // 0x0 + field public static final int NR_STATE_NOT_RESTRICTED = 2; // 0x2 + field public static final int NR_STATE_RESTRICTED = 1; // 0x1 + field public static final int SERVICE_TYPE_DATA = 2; // 0x2 + field public static final int SERVICE_TYPE_EMERGENCY = 5; // 0x5 + field public static final int SERVICE_TYPE_SMS = 3; // 0x3 + field public static final int SERVICE_TYPE_UNKNOWN = 0; // 0x0 + field public static final int SERVICE_TYPE_VIDEO = 4; // 0x4 + field public static final int SERVICE_TYPE_VOICE = 1; // 0x1 + } + public class NetworkScan { method public void stopScan(); field public static final int ERROR_INTERRUPTED = 10002; // 0x2712 @@ -44558,6 +47659,8 @@ package android.telephony { ctor public PhoneStateListener(); ctor public PhoneStateListener(@NonNull java.util.concurrent.Executor); method public void onActiveDataSubscriptionIdChanged(int); + method public void onBarringInfoChanged(@NonNull android.telephony.BarringInfo); + method @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public void onCallDisconnectCauseChanged(int, int); method public void onCallForwardingIndicatorChanged(boolean); method public void onCallStateChanged(int, String); method public void onCellInfoChanged(java.util.List<android.telephony.CellInfo>); @@ -44565,27 +47668,48 @@ package android.telephony { method public void onDataActivity(int); method public void onDataConnectionStateChanged(int); method public void onDataConnectionStateChanged(int, int); + method @RequiresPermission("android.permission.READ_PHONE_STATE") public void onDisplayInfoChanged(@NonNull android.telephony.TelephonyDisplayInfo); + method @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public void onImsCallDisconnectCauseChanged(@NonNull android.telephony.ims.ImsReasonInfo); method public void onMessageWaitingIndicatorChanged(boolean); + method @RequiresPermission("android.permission.MODIFY_PHONE_STATE") public void onPreciseDataConnectionStateChanged(@NonNull android.telephony.PreciseDataConnectionState); + method public void onRegistrationFailed(@NonNull android.telephony.CellIdentity, @NonNull String, int, int, int); method public void onServiceStateChanged(android.telephony.ServiceState); method @Deprecated public void onSignalStrengthChanged(int); method public void onSignalStrengthsChanged(android.telephony.SignalStrength); method public void onUserMobileDataStateChanged(boolean); field public static final int LISTEN_ACTIVE_DATA_SUBSCRIPTION_ID_CHANGE = 4194304; // 0x400000 + field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int LISTEN_BARRING_INFO = -2147483648; // 0x80000000 + field @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public static final int LISTEN_CALL_DISCONNECT_CAUSES = 33554432; // 0x2000000 field public static final int LISTEN_CALL_FORWARDING_INDICATOR = 8; // 0x8 field public static final int LISTEN_CALL_STATE = 32; // 0x20 field public static final int LISTEN_CELL_INFO = 1024; // 0x400 field public static final int LISTEN_CELL_LOCATION = 16; // 0x10 field public static final int LISTEN_DATA_ACTIVITY = 128; // 0x80 field public static final int LISTEN_DATA_CONNECTION_STATE = 64; // 0x40 + field public static final int LISTEN_DISPLAY_INFO_CHANGED = 1048576; // 0x100000 field public static final int LISTEN_EMERGENCY_NUMBER_LIST = 16777216; // 0x1000000 + field @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public static final int LISTEN_IMS_CALL_DISCONNECT_CAUSES = 134217728; // 0x8000000 field public static final int LISTEN_MESSAGE_WAITING_INDICATOR = 4; // 0x4 field public static final int LISTEN_NONE = 0; // 0x0 + field @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public static final int LISTEN_PRECISE_DATA_CONNECTION_STATE = 4096; // 0x1000 + field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int LISTEN_REGISTRATION_FAILURE = 1073741824; // 0x40000000 field public static final int LISTEN_SERVICE_STATE = 1; // 0x1 field @Deprecated public static final int LISTEN_SIGNAL_STRENGTH = 2; // 0x2 field public static final int LISTEN_SIGNAL_STRENGTHS = 256; // 0x100 field public static final int LISTEN_USER_MOBILE_DATA_STATE = 524288; // 0x80000 } + public final class PreciseDataConnectionState implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public android.telephony.data.ApnSetting getApnSetting(); + method public int getLastCauseCode(); + method @Nullable public android.net.LinkProperties getLinkProperties(); + method public int getNetworkType(); + method public int getState(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.telephony.PreciseDataConnectionState> CREATOR; + } + public final class RadioAccessSpecifier implements android.os.Parcelable { ctor public RadioAccessSpecifier(int, int[], int[]); method public int describeContents(); @@ -44608,11 +47732,13 @@ package android.telephony { method public int getChannelNumber(); method public int getDuplexMode(); method public boolean getIsManualSelection(); + method @NonNull public java.util.List<android.telephony.NetworkRegistrationInfo> getNetworkRegistrationInfoList(); method public String getOperatorAlphaLong(); method public String getOperatorAlphaShort(); method public String getOperatorNumeric(); method public boolean getRoaming(); method public int getState(); + method public boolean isSearching(); method public void setIsManualSelection(boolean); method public void setOperatorName(String, String, String); method public void setRoaming(boolean); @@ -44643,8 +47769,10 @@ package android.telephony { method @Deprecated public int getGsmBitErrorRate(); method @Deprecated public int getGsmSignalStrength(); method public int getLevel(); + method public long getTimestampMillis(); method @Deprecated public boolean isGsm(); method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.telephony.SignalStrength> CREATOR; field public static final int INVALID = 2147483647; // 0x7fffffff } @@ -44653,18 +47781,23 @@ package android.telephony { method @Nullable public String createAppSpecificSmsTokenWithPackageInfo(@Nullable String, @NonNull android.app.PendingIntent); method public java.util.ArrayList<java.lang.String> divideMessage(String); method public void downloadMultimediaMessage(android.content.Context, String, android.net.Uri, android.os.Bundle, android.app.PendingIntent); - method public android.os.Bundle getCarrierConfigValues(); + method @NonNull public android.os.Bundle getCarrierConfigValues(); method public static android.telephony.SmsManager getDefault(); method public static int getDefaultSmsSubscriptionId(); method public static android.telephony.SmsManager getSmsManagerForSubscriptionId(int); method @RequiresPermission(android.Manifest.permission.SMS_FINANCIAL_TRANSACTIONS) public void getSmsMessagesForFinancialApp(android.os.Bundle, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.SmsManager.FinancialSmsCallback); + method @Nullable @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getSmscAddress(); method public int getSubscriptionId(); method public void injectSmsPdu(byte[], String, android.app.PendingIntent); method public void sendDataMessage(String, String, short, byte[], android.app.PendingIntent, android.app.PendingIntent); method public void sendMultimediaMessage(android.content.Context, android.net.Uri, String, android.os.Bundle, android.app.PendingIntent); method public void sendMultipartTextMessage(String, String, java.util.ArrayList<java.lang.String>, java.util.ArrayList<android.app.PendingIntent>, java.util.ArrayList<android.app.PendingIntent>); + method public void sendMultipartTextMessage(@NonNull String, @Nullable String, @NonNull java.util.List<java.lang.String>, @Nullable java.util.List<android.app.PendingIntent>, @Nullable java.util.List<android.app.PendingIntent>, long); + method public void sendMultipartTextMessage(@NonNull String, @Nullable String, @NonNull java.util.List<java.lang.String>, @Nullable java.util.List<android.app.PendingIntent>, @Nullable java.util.List<android.app.PendingIntent>, @NonNull String, @Nullable String); method public void sendTextMessage(String, String, String, android.app.PendingIntent, android.app.PendingIntent); + method public void sendTextMessage(@NonNull String, @Nullable String, @NonNull String, @Nullable android.app.PendingIntent, @Nullable android.app.PendingIntent, long); method @RequiresPermission(allOf={android.Manifest.permission.MODIFY_PHONE_STATE, android.Manifest.permission.SEND_SMS}) public void sendTextMessageWithoutPersisting(String, String, String, android.app.PendingIntent, android.app.PendingIntent); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setSmscAddress(@NonNull String); field public static final String EXTRA_MMS_DATA = "android.telephony.extra.MMS_DATA"; field public static final String EXTRA_MMS_HTTP_STATUS = "android.telephony.extra.MMS_HTTP_STATUS"; field public static final String MMS_CONFIG_ALIAS_ENABLED = "aliasEnabled"; @@ -44706,13 +47839,67 @@ package android.telephony { field public static final int MMS_ERROR_RETRY = 6; // 0x6 field public static final int MMS_ERROR_UNABLE_CONNECT_MMS = 3; // 0x3 field public static final int MMS_ERROR_UNSPECIFIED = 1; // 0x1 + field public static final int RESULT_BLUETOOTH_DISCONNECTED = 27; // 0x1b + field public static final int RESULT_CANCELLED = 23; // 0x17 + field public static final int RESULT_ENCODING_ERROR = 18; // 0x12 + field public static final int RESULT_ERROR_FDN_CHECK_FAILURE = 6; // 0x6 field public static final int RESULT_ERROR_GENERIC_FAILURE = 1; // 0x1 field public static final int RESULT_ERROR_LIMIT_EXCEEDED = 5; // 0x5 + field public static final int RESULT_ERROR_NONE = 0; // 0x0 field public static final int RESULT_ERROR_NO_SERVICE = 4; // 0x4 field public static final int RESULT_ERROR_NULL_PDU = 3; // 0x3 field public static final int RESULT_ERROR_RADIO_OFF = 2; // 0x2 field public static final int RESULT_ERROR_SHORT_CODE_NEVER_ALLOWED = 8; // 0x8 field public static final int RESULT_ERROR_SHORT_CODE_NOT_ALLOWED = 7; // 0x7 + field public static final int RESULT_INTERNAL_ERROR = 21; // 0x15 + field public static final int RESULT_INVALID_ARGUMENTS = 11; // 0xb + field public static final int RESULT_INVALID_BLUETOOTH_ADDRESS = 26; // 0x1a + field public static final int RESULT_INVALID_SMSC_ADDRESS = 19; // 0x13 + field public static final int RESULT_INVALID_SMS_FORMAT = 14; // 0xe + field public static final int RESULT_INVALID_STATE = 12; // 0xc + field public static final int RESULT_MODEM_ERROR = 16; // 0x10 + field public static final int RESULT_NETWORK_ERROR = 17; // 0x11 + field public static final int RESULT_NETWORK_REJECT = 10; // 0xa + field public static final int RESULT_NO_BLUETOOTH_SERVICE = 25; // 0x19 + field public static final int RESULT_NO_DEFAULT_SMS_APP = 32; // 0x20 + field public static final int RESULT_NO_MEMORY = 13; // 0xd + field public static final int RESULT_NO_RESOURCES = 22; // 0x16 + field public static final int RESULT_OPERATION_NOT_ALLOWED = 20; // 0x14 + field public static final int RESULT_RADIO_NOT_AVAILABLE = 9; // 0x9 + field public static final int RESULT_RECEIVE_DISPATCH_FAILURE = 500; // 0x1f4 + field public static final int RESULT_RECEIVE_INJECTED_NULL_PDU = 501; // 0x1f5 + field public static final int RESULT_RECEIVE_NULL_MESSAGE_FROM_RIL = 503; // 0x1f7 + field public static final int RESULT_RECEIVE_RUNTIME_EXCEPTION = 502; // 0x1f6 + field public static final int RESULT_RECEIVE_SQL_EXCEPTION = 505; // 0x1f9 + field public static final int RESULT_RECEIVE_URI_EXCEPTION = 506; // 0x1fa + field public static final int RESULT_RECEIVE_WHILE_ENCRYPTED = 504; // 0x1f8 + field public static final int RESULT_REMOTE_EXCEPTION = 31; // 0x1f + field public static final int RESULT_REQUEST_NOT_SUPPORTED = 24; // 0x18 + field public static final int RESULT_RIL_CANCELLED = 119; // 0x77 + field public static final int RESULT_RIL_ENCODING_ERR = 109; // 0x6d + field public static final int RESULT_RIL_INTERNAL_ERR = 113; // 0x71 + field public static final int RESULT_RIL_INVALID_ARGUMENTS = 104; // 0x68 + field public static final int RESULT_RIL_INVALID_MODEM_STATE = 115; // 0x73 + field public static final int RESULT_RIL_INVALID_SMSC_ADDRESS = 110; // 0x6e + field public static final int RESULT_RIL_INVALID_SMS_FORMAT = 107; // 0x6b + field public static final int RESULT_RIL_INVALID_STATE = 103; // 0x67 + field public static final int RESULT_RIL_MODEM_ERR = 111; // 0x6f + field public static final int RESULT_RIL_NETWORK_ERR = 112; // 0x70 + field public static final int RESULT_RIL_NETWORK_NOT_READY = 116; // 0x74 + field public static final int RESULT_RIL_NETWORK_REJECT = 102; // 0x66 + field public static final int RESULT_RIL_NO_MEMORY = 105; // 0x69 + field public static final int RESULT_RIL_NO_RESOURCES = 118; // 0x76 + field public static final int RESULT_RIL_OPERATION_NOT_ALLOWED = 117; // 0x75 + field public static final int RESULT_RIL_RADIO_NOT_AVAILABLE = 100; // 0x64 + field public static final int RESULT_RIL_REQUEST_NOT_SUPPORTED = 114; // 0x72 + field public static final int RESULT_RIL_REQUEST_RATE_LIMITED = 106; // 0x6a + field public static final int RESULT_RIL_SIM_ABSENT = 120; // 0x78 + field public static final int RESULT_RIL_SMS_SEND_FAIL_RETRY = 101; // 0x65 + field public static final int RESULT_RIL_SYSTEM_ERR = 108; // 0x6c + field public static final int RESULT_SMS_BLOCKED_DURING_EMERGENCY = 29; // 0x1d + field public static final int RESULT_SMS_SEND_RETRY_FAILED = 30; // 0x1e + field public static final int RESULT_SYSTEM_ERROR = 15; // 0xf + field public static final int RESULT_UNEXPECTED_EVENT_STOP_SENDING = 28; // 0x1c field public static final int STATUS_ON_ICC_FREE = 0; // 0x0 field public static final int STATUS_ON_ICC_READ = 1; // 0x1 field public static final int STATUS_ON_ICC_SENT = 5; // 0x5 @@ -44813,16 +48000,19 @@ package android.telephony { public class SubscriptionManager { method public void addOnOpportunisticSubscriptionsChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.SubscriptionManager.OnOpportunisticSubscriptionsChangedListener); method public void addOnSubscriptionsChangedListener(android.telephony.SubscriptionManager.OnSubscriptionsChangedListener); + method public void addOnSubscriptionsChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.SubscriptionManager.OnSubscriptionsChangedListener); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void addSubscriptionsIntoGroup(@NonNull java.util.List<java.lang.Integer>, @NonNull android.os.ParcelUuid); method public boolean canManageSubscription(android.telephony.SubscriptionInfo); method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.os.ParcelUuid createSubscriptionGroup(@NonNull java.util.List<java.lang.Integer>); method @Deprecated public static android.telephony.SubscriptionManager from(android.content.Context); method public java.util.List<android.telephony.SubscriptionInfo> getAccessibleSubscriptionInfoList(); + method public static int getActiveDataSubscriptionId(); method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public android.telephony.SubscriptionInfo getActiveSubscriptionInfo(int); method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public int getActiveSubscriptionInfoCount(); method public int getActiveSubscriptionInfoCountMax(); method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public android.telephony.SubscriptionInfo getActiveSubscriptionInfoForSimSlotIndex(int); method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public java.util.List<android.telephony.SubscriptionInfo> getActiveSubscriptionInfoList(); + method @NonNull public java.util.List<android.telephony.SubscriptionInfo> getCompleteActiveSubscriptionInfoList(); method public static int getDefaultDataSubscriptionId(); method public static int getDefaultSmsSubscriptionId(); method public static int getDefaultSubscriptionId(); @@ -44851,6 +48041,7 @@ package android.telephony { field public static final int DATA_ROAMING_DISABLE = 0; // 0x0 field public static final int DATA_ROAMING_ENABLE = 1; // 0x1 field public static final int DEFAULT_SUBSCRIPTION_ID = 2147483647; // 0x7fffffff + field public static final String EXTRA_SLOT_INDEX = "android.telephony.extra.SLOT_INDEX"; field public static final String EXTRA_SUBSCRIPTION_INDEX = "android.telephony.extra.SUBSCRIPTION_INDEX"; field public static final int INVALID_SIM_SLOT_INDEX = -1; // 0xffffffff field public static final int INVALID_SUBSCRIPTION_ID = -1; // 0xffffffff @@ -44875,6 +48066,7 @@ package android.telephony { method public long getDataLimitBytes(); method public long getDataUsageBytes(); method public long getDataUsageTime(); + method @NonNull public int[] getNetworkTypes(); method @Nullable public CharSequence getSummary(); method @Nullable public CharSequence getTitle(); method public void writeToParcel(android.os.Parcel, int); @@ -44892,17 +48084,33 @@ package android.telephony { method public android.telephony.SubscriptionPlan build(); method public static android.telephony.SubscriptionPlan.Builder createNonrecurring(java.time.ZonedDateTime, java.time.ZonedDateTime); method public static android.telephony.SubscriptionPlan.Builder createRecurring(java.time.ZonedDateTime, java.time.Period); + method @NonNull public android.telephony.SubscriptionPlan.Builder resetNetworkTypes(); method public android.telephony.SubscriptionPlan.Builder setDataLimit(long, int); method public android.telephony.SubscriptionPlan.Builder setDataUsage(long, long); + method @NonNull public android.telephony.SubscriptionPlan.Builder setNetworkTypes(@NonNull int[]); method public android.telephony.SubscriptionPlan.Builder setSummary(@Nullable CharSequence); method public android.telephony.SubscriptionPlan.Builder setTitle(@Nullable CharSequence); } + public final class TelephonyDisplayInfo implements android.os.Parcelable { + method public int describeContents(); + method public int getNetworkType(); + method public int getOverrideNetworkType(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.telephony.TelephonyDisplayInfo> CREATOR; + field public static final int OVERRIDE_NETWORK_TYPE_LTE_ADVANCED_PRO = 2; // 0x2 + field public static final int OVERRIDE_NETWORK_TYPE_LTE_CA = 1; // 0x1 + field public static final int OVERRIDE_NETWORK_TYPE_NONE = 0; // 0x0 + field public static final int OVERRIDE_NETWORK_TYPE_NR_NSA = 3; // 0x3 + field public static final int OVERRIDE_NETWORK_TYPE_NR_NSA_MMWAVE = 4; // 0x4 + } + public class TelephonyManager { method public boolean canChangeDtmfToneLength(); method @Nullable public android.telephony.TelephonyManager createForPhoneAccountHandle(android.telecom.PhoneAccountHandle); method public android.telephony.TelephonyManager createForSubscriptionId(int); method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public boolean doesSwitchMultiSimConfigTriggerReboot(); + method public int getActiveModemCount(); method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public java.util.List<android.telephony.CellInfo> getAllCellInfo(); method public int getCallState(); method public int getCardIdForDefaultEuicc(); @@ -44914,28 +48122,31 @@ package android.telephony { method public int getDataState(); method @Deprecated @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getDeviceId(); method @Deprecated @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getDeviceId(int); - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public String getDeviceSoftwareVersion(); - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) @NonNull public java.util.Map<java.lang.Integer,java.util.List<android.telephony.emergency.EmergencyNumber>> getEmergencyNumberList(); - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) @NonNull public java.util.Map<java.lang.Integer,java.util.List<android.telephony.emergency.EmergencyNumber>> getEmergencyNumberList(int); + method @Nullable @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public String getDeviceSoftwareVersion(); + method @NonNull @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public java.util.Map<java.lang.Integer,java.util.List<android.telephony.emergency.EmergencyNumber>> getEmergencyNumberList(); + method @NonNull @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public java.util.Map<java.lang.Integer,java.util.List<android.telephony.emergency.EmergencyNumber>> getEmergencyNumberList(int); method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public String[] getForbiddenPlmns(); method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public String getGroupIdLevel1(); method public String getIccAuthentication(int, int, String); method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getImei(); method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getImei(int); method @RequiresPermission(anyOf={android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.READ_SMS, android.Manifest.permission.READ_PHONE_NUMBERS}) public String getLine1Number(); + method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public String getManualNetworkSelectionPlmn(); method @Nullable public String getManufacturerCode(); method @Nullable public String getManufacturerCode(int); method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getMeid(); method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getMeid(int); method public String getMmsUAProfUrl(); method public String getMmsUserAgent(); - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public String getNai(); + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getNai(); method public String getNetworkCountryIso(); + method @NonNull public String getNetworkCountryIso(int); method public String getNetworkOperator(); method public String getNetworkOperatorName(); + method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public int getNetworkSelectionMode(); method public String getNetworkSpecifier(); - method public int getNetworkType(); - method public int getPhoneCount(); + method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public int getNetworkType(); + method @Deprecated public int getPhoneCount(); method public int getPhoneType(); method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PHONE_STATE}) public int getPreferredOpportunisticDataSubscription(); method @RequiresPermission(allOf={android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.ACCESS_COARSE_LOCATION}) public android.telephony.ServiceState getServiceState(); @@ -44951,9 +48162,12 @@ package android.telephony { method public int getSimState(); method public int getSimState(int); method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getSubscriberId(); + method public int getSubscriptionId(); + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public int getSubscriptionId(@NonNull android.telecom.PhoneAccountHandle); + method public int getSupportedModemCount(); method @Nullable public String getTypeAllocationCode(); method @Nullable public String getTypeAllocationCode(int); - method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") @NonNull public java.util.List<android.telephony.UiccCardInfo> getUiccCardsInfo(); + method @NonNull @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public java.util.List<android.telephony.UiccCardInfo> getUiccCardsInfo(); method @Nullable @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public String getVisualVoicemailPackageName(); method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public String getVoiceMailAlphaTag(); method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public String getVoiceMailNumber(); @@ -44961,17 +48175,19 @@ package android.telephony { method public android.net.Uri getVoicemailRingtoneUri(android.telecom.PhoneAccountHandle); method public boolean hasCarrierPrivileges(); method public boolean hasIccCard(); - method public boolean iccCloseLogicalChannel(int); - method public byte[] iccExchangeSimIO(int, int, int, int, int, String); + method @Deprecated public boolean iccCloseLogicalChannel(int); + method @Deprecated public byte[] iccExchangeSimIO(int, int, int, int, int, String); method @Deprecated public android.telephony.IccOpenLogicalChannelResponse iccOpenLogicalChannel(String); - method public android.telephony.IccOpenLogicalChannelResponse iccOpenLogicalChannel(String, int); - method public String iccTransmitApduBasicChannel(int, int, int, int, int, String); - method public String iccTransmitApduLogicalChannel(int, int, int, int, int, int, String); + method @Deprecated public android.telephony.IccOpenLogicalChannelResponse iccOpenLogicalChannel(String, int); + method @Deprecated public String iccTransmitApduBasicChannel(int, int, int, int, int, String); + method @Deprecated public String iccTransmitApduLogicalChannel(int, int, int, int, int, int, String); method public boolean isConcurrentVoiceAndDataSupported(); method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_NETWORK_STATE, android.Manifest.permission.MODIFY_PHONE_STATE}) public boolean isDataEnabled(); method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_NETWORK_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isDataRoamingEnabled(); method public boolean isEmergencyNumber(@NonNull String); method public boolean isHearingAidCompatibilitySupported(); + method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRECISE_PHONE_STATE, "android.permission.READ_PRIVILEGED_PHONE_STATE"}) public boolean isManualNetworkSelectionAllowed(); + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public boolean isModemEnabledForSlot(int); method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public int isMultiSimSupported(); method public boolean isNetworkRoaming(); method public boolean isRttSupported(); @@ -44984,13 +48200,15 @@ package android.telephony { method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public void requestCellInfoUpdate(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.TelephonyManager.CellInfoCallback); method @RequiresPermission(allOf={android.Manifest.permission.MODIFY_PHONE_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}) public android.telephony.NetworkScan requestNetworkScan(android.telephony.NetworkScanRequest, java.util.concurrent.Executor, android.telephony.TelephonyScanManager.NetworkScanCallback); method public void sendDialerSpecialCode(String); - method public String sendEnvelopeWithStatus(String); + method @Deprecated public String sendEnvelopeWithStatus(String); method @RequiresPermission(android.Manifest.permission.CALL_PHONE) public void sendUssdRequest(String, android.telephony.TelephonyManager.UssdResponseCallback, android.os.Handler); method public void sendVisualVoicemailSms(String, int, String, android.app.PendingIntent); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataEnabled(boolean); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int setForbiddenPlmns(@NonNull java.util.List<java.lang.String>); method public boolean setLine1NumberForDisplay(String, String); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setNetworkSelectionModeAutomatic(); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setNetworkSelectionModeManual(String, boolean); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setNetworkSelectionModeManual(@NonNull String, boolean, int); method public boolean setOperatorBrandOverride(String); method public boolean setPreferredNetworkTypeToGlobal(); method public void setPreferredOpportunisticDataSubscription(int, boolean, @Nullable java.util.concurrent.Executor, @Nullable java.util.function.Consumer<java.lang.Integer>); @@ -45002,6 +48220,7 @@ package android.telephony { method public void updateAvailableNetworks(@NonNull java.util.List<android.telephony.AvailableNetworkInfo>, @Nullable java.util.concurrent.Executor, @Nullable java.util.function.Consumer<java.lang.Integer>); field public static final String ACTION_CARRIER_MESSAGING_CLIENT_SERVICE = "android.telephony.action.CARRIER_MESSAGING_CLIENT_SERVICE"; field public static final String ACTION_CONFIGURE_VOICEMAIL = "android.telephony.action.CONFIGURE_VOICEMAIL"; + field public static final String ACTION_MULTI_SIM_CONFIG_CHANGED = "android.telephony.action.MULTI_SIM_CONFIG_CHANGED"; field public static final String ACTION_NETWORK_COUNTRY_CHANGED = "android.telephony.action.NETWORK_COUNTRY_CHANGED"; field @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public static final String ACTION_PHONE_STATE_CHANGED = "android.intent.action.PHONE_STATE"; field public static final String ACTION_RESPOND_VIA_MESSAGE = "android.intent.action.RESPOND_VIA_MESSAGE"; @@ -45031,8 +48250,10 @@ package android.telephony { field public static final int DATA_CONNECTED = 2; // 0x2 field public static final int DATA_CONNECTING = 1; // 0x1 field public static final int DATA_DISCONNECTED = 0; // 0x0 + field public static final int DATA_DISCONNECTING = 4; // 0x4 field public static final int DATA_SUSPENDED = 3; // 0x3 field public static final int DATA_UNKNOWN = -1; // 0xffffffff + field public static final String EXTRA_ACTIVE_SIM_SUPPORTED_COUNT = "android.telephony.extra.ACTIVE_SIM_SUPPORTED_COUNT"; field public static final String EXTRA_CALL_VOICEMAIL_INTENT = "android.telephony.extra.CALL_VOICEMAIL_INTENT"; field public static final String EXTRA_CARRIER_ID = "android.telephony.extra.CARRIER_ID"; field public static final String EXTRA_CARRIER_NAME = "android.telephony.extra.CARRIER_NAME"; @@ -45055,6 +48276,9 @@ package android.telephony { field public static final int MULTISIM_ALLOWED = 0; // 0x0 field public static final int MULTISIM_NOT_SUPPORTED_BY_CARRIER = 2; // 0x2 field public static final int MULTISIM_NOT_SUPPORTED_BY_HARDWARE = 1; // 0x1 + field public static final int NETWORK_SELECTION_MODE_AUTO = 1; // 0x1 + field public static final int NETWORK_SELECTION_MODE_MANUAL = 2; // 0x2 + field public static final int NETWORK_SELECTION_MODE_UNKNOWN = 0; // 0x0 field public static final int NETWORK_TYPE_1xRTT = 7; // 0x7 field public static final int NETWORK_TYPE_CDMA = 4; // 0x4 field public static final int NETWORK_TYPE_EDGE = 2; // 0x2 @@ -45080,6 +48304,8 @@ package android.telephony { field public static final int PHONE_TYPE_NONE = 0; // 0x0 field public static final int PHONE_TYPE_SIP = 3; // 0x3 field public static final int SET_OPPORTUNISTIC_SUB_INACTIVE_SUBSCRIPTION = 2; // 0x2 + field public static final int SET_OPPORTUNISTIC_SUB_NO_OPPORTUNISTIC_SUB_AVAILABLE = 3; // 0x3 + field public static final int SET_OPPORTUNISTIC_SUB_REMOTE_SERVICE_EXCEPTION = 4; // 0x4 field public static final int SET_OPPORTUNISTIC_SUB_SUCCESS = 0; // 0x0 field public static final int SET_OPPORTUNISTIC_SUB_VALIDATION_FAILED = 1; // 0x1 field public static final int SIM_STATE_ABSENT = 1; // 0x1 @@ -45096,8 +48322,14 @@ package android.telephony { field public static final int UNKNOWN_CARRIER_ID = -1; // 0xffffffff field public static final int UNSUPPORTED_CARD_ID = -1; // 0xffffffff field public static final int UPDATE_AVAILABLE_NETWORKS_ABORTED = 2; // 0x2 + field public static final int UPDATE_AVAILABLE_NETWORKS_DISABLE_MODEM_FAIL = 5; // 0x5 + field public static final int UPDATE_AVAILABLE_NETWORKS_ENABLE_MODEM_FAIL = 6; // 0x6 field public static final int UPDATE_AVAILABLE_NETWORKS_INVALID_ARGUMENTS = 3; // 0x3 + field public static final int UPDATE_AVAILABLE_NETWORKS_MULTIPLE_NETWORKS_NOT_SUPPORTED = 7; // 0x7 field public static final int UPDATE_AVAILABLE_NETWORKS_NO_CARRIER_PRIVILEGE = 4; // 0x4 + field public static final int UPDATE_AVAILABLE_NETWORKS_NO_OPPORTUNISTIC_SUB_AVAILABLE = 8; // 0x8 + field public static final int UPDATE_AVAILABLE_NETWORKS_REMOTE_SERVICE_EXCEPTION = 9; // 0x9 + field public static final int UPDATE_AVAILABLE_NETWORKS_SERVICE_IS_DISABLED = 10; // 0xa field public static final int UPDATE_AVAILABLE_NETWORKS_SUCCESS = 0; // 0x0 field public static final int UPDATE_AVAILABLE_NETWORKS_UNKNOWN_FAILURE = 1; // 0x1 field public static final int USSD_ERROR_SERVICE_UNAVAIL = -2; // 0xfffffffe @@ -45259,6 +48491,7 @@ package android.telephony.data { field public static final int TYPE_MCX = 1024; // 0x400 field public static final int TYPE_MMS = 2; // 0x2 field public static final int TYPE_SUPL = 4; // 0x4 + field public static final int TYPE_XCAP = 2048; // 0x800 } public static class ApnSetting.Builder { @@ -45355,12 +48588,46 @@ package android.telephony.euicc { method @RequiresPermission("android.permission.WRITE_EMBEDDED_SUBSCRIPTIONS") public void updateSubscriptionNickname(int, @Nullable String, @NonNull android.app.PendingIntent); field public static final String ACTION_MANAGE_EMBEDDED_SUBSCRIPTIONS = "android.telephony.euicc.action.MANAGE_EMBEDDED_SUBSCRIPTIONS"; field public static final String ACTION_NOTIFY_CARRIER_SETUP_INCOMPLETE = "android.telephony.euicc.action.NOTIFY_CARRIER_SETUP_INCOMPLETE"; + field public static final String ACTION_START_EUICC_ACTIVATION = "android.telephony.euicc.action.START_EUICC_ACTIVATION"; field public static final int EMBEDDED_SUBSCRIPTION_RESULT_ERROR = 2; // 0x2 field public static final int EMBEDDED_SUBSCRIPTION_RESULT_OK = 0; // 0x0 field public static final int EMBEDDED_SUBSCRIPTION_RESULT_RESOLVABLE_ERROR = 1; // 0x1 + field public static final int ERROR_ADDRESS_MISSING = 10011; // 0x271b + field public static final int ERROR_CARRIER_LOCKED = 10000; // 0x2710 + field public static final int ERROR_CERTIFICATE_ERROR = 10012; // 0x271c + field public static final int ERROR_CONNECTION_ERROR = 10014; // 0x271e + field public static final int ERROR_DISALLOWED_BY_PPR = 10010; // 0x271a + field public static final int ERROR_EUICC_INSUFFICIENT_MEMORY = 10004; // 0x2714 + field public static final int ERROR_EUICC_MISSING = 10006; // 0x2716 + field public static final int ERROR_INCOMPATIBLE_CARRIER = 10003; // 0x2713 + field public static final int ERROR_INSTALL_PROFILE = 10009; // 0x2719 + field public static final int ERROR_INVALID_ACTIVATION_CODE = 10001; // 0x2711 + field public static final int ERROR_INVALID_CONFIRMATION_CODE = 10002; // 0x2712 + field public static final int ERROR_INVALID_RESPONSE = 10015; // 0x271f + field public static final int ERROR_NO_PROFILES_AVAILABLE = 10013; // 0x271d + field public static final int ERROR_OPERATION_BUSY = 10016; // 0x2720 + field public static final int ERROR_SIM_MISSING = 10008; // 0x2718 + field public static final int ERROR_TIME_OUT = 10005; // 0x2715 + field public static final int ERROR_UNSUPPORTED_VERSION = 10007; // 0x2717 field public static final String EXTRA_EMBEDDED_SUBSCRIPTION_DETAILED_CODE = "android.telephony.euicc.extra.EMBEDDED_SUBSCRIPTION_DETAILED_CODE"; field public static final String EXTRA_EMBEDDED_SUBSCRIPTION_DOWNLOADABLE_SUBSCRIPTION = "android.telephony.euicc.extra.EMBEDDED_SUBSCRIPTION_DOWNLOADABLE_SUBSCRIPTION"; + field public static final String EXTRA_EMBEDDED_SUBSCRIPTION_ERROR_CODE = "android.telephony.euicc.extra.EMBEDDED_SUBSCRIPTION_ERROR_CODE"; + field public static final String EXTRA_EMBEDDED_SUBSCRIPTION_OPERATION_CODE = "android.telephony.euicc.extra.EMBEDDED_SUBSCRIPTION_OPERATION_CODE"; + field public static final String EXTRA_EMBEDDED_SUBSCRIPTION_SMDX_REASON_CODE = "android.telephony.euicc.extra.EMBEDDED_SUBSCRIPTION_SMDX_REASON_CODE"; + field public static final String EXTRA_EMBEDDED_SUBSCRIPTION_SMDX_SUBJECT_CODE = "android.telephony.euicc.extra.EMBEDDED_SUBSCRIPTION_SMDX_SUBJECT_CODE"; + field public static final String EXTRA_USE_QR_SCANNER = "android.telephony.euicc.extra.USE_QR_SCANNER"; field public static final String META_DATA_CARRIER_ICON = "android.telephony.euicc.carriericon"; + field public static final int OPERATION_APDU = 8; // 0x8 + field public static final int OPERATION_DOWNLOAD = 5; // 0x5 + field public static final int OPERATION_EUICC_CARD = 3; // 0x3 + field public static final int OPERATION_EUICC_GSMA = 7; // 0x7 + field public static final int OPERATION_HTTP = 11; // 0xb + field public static final int OPERATION_METADATA = 6; // 0x6 + field public static final int OPERATION_SIM_SLOT = 2; // 0x2 + field public static final int OPERATION_SMDX = 9; // 0x9 + field public static final int OPERATION_SMDX_SUBJECT_REASON_CODE = 10; // 0xa + field public static final int OPERATION_SWITCH = 4; // 0x4 + field public static final int OPERATION_SYSTEM = 1; // 0x1 } } @@ -45452,6 +48719,273 @@ package android.telephony.gsm { } +package android.telephony.ims { + + public final class ImsException extends java.lang.Exception { + method public int getCode(); + field public static final int CODE_ERROR_INVALID_SUBSCRIPTION = 3; // 0x3 + field public static final int CODE_ERROR_SERVICE_UNAVAILABLE = 1; // 0x1 + field public static final int CODE_ERROR_UNSPECIFIED = 0; // 0x0 + field public static final int CODE_ERROR_UNSUPPORTED_OPERATION = 2; // 0x2 + } + + public class ImsManager { + method @NonNull public android.telephony.ims.ImsMmTelManager getImsMmTelManager(int); + method @NonNull public android.telephony.ims.ImsRcsManager getImsRcsManager(int); + field public static final String ACTION_WFC_IMS_REGISTRATION_ERROR = "android.telephony.ims.action.WFC_IMS_REGISTRATION_ERROR"; + field public static final String EXTRA_WFC_REGISTRATION_FAILURE_MESSAGE = "android.telephony.ims.extra.WFC_REGISTRATION_FAILURE_MESSAGE"; + field public static final String EXTRA_WFC_REGISTRATION_FAILURE_TITLE = "android.telephony.ims.extra.WFC_REGISTRATION_FAILURE_TITLE"; + } + + public class ImsMmTelManager implements android.telephony.ims.RegistrationManager { + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public void getRegistrationState(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>); + method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public void getRegistrationTransportType(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>); + method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public int getVoWiFiModeSetting(); + method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public boolean isAdvancedCallingSettingEnabled(); + method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public boolean isTtyOverVolteEnabled(); + method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public boolean isVoWiFiRoamingSettingEnabled(); + method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public boolean isVoWiFiSettingEnabled(); + method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public boolean isVtSettingEnabled(); + method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public void registerImsRegistrationCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.RegistrationManager.RegistrationCallback) throws android.telephony.ims.ImsException; + method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public void registerMmTelCapabilityCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.ImsMmTelManager.CapabilityCallback) throws android.telephony.ims.ImsException; + method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public void unregisterImsRegistrationCallback(@NonNull android.telephony.ims.RegistrationManager.RegistrationCallback); + method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public void unregisterMmTelCapabilityCallback(@NonNull android.telephony.ims.ImsMmTelManager.CapabilityCallback); + field public static final int WIFI_MODE_CELLULAR_PREFERRED = 1; // 0x1 + field public static final int WIFI_MODE_WIFI_ONLY = 0; // 0x0 + field public static final int WIFI_MODE_WIFI_PREFERRED = 2; // 0x2 + } + + public static class ImsMmTelManager.CapabilityCallback { + ctor public ImsMmTelManager.CapabilityCallback(); + method public void onCapabilitiesStatusChanged(@NonNull android.telephony.ims.feature.MmTelFeature.MmTelCapabilities); + } + + public class ImsRcsManager { + method @NonNull public android.telephony.ims.RcsUceAdapter getUceAdapter(); + field public static final String ACTION_SHOW_CAPABILITY_DISCOVERY_OPT_IN = "android.telephony.ims.action.SHOW_CAPABILITY_DISCOVERY_OPT_IN"; + } + + public final class ImsReasonInfo implements android.os.Parcelable { + ctor public ImsReasonInfo(int, int, @Nullable String); + method public int describeContents(); + method public int getCode(); + method public int getExtraCode(); + method @Nullable public String getExtraMessage(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final int CODE_ACCESS_CLASS_BLOCKED = 1512; // 0x5e8 + field public static final int CODE_ANSWERED_ELSEWHERE = 1014; // 0x3f6 + field public static final int CODE_BLACKLISTED_CALL_ID = 506; // 0x1fa + field public static final int CODE_CALL_BARRED = 240; // 0xf0 + field public static final int CODE_CALL_DROP_IWLAN_TO_LTE_UNAVAILABLE = 1100; // 0x44c + field public static final int CODE_CALL_END_CAUSE_CALL_PULL = 1016; // 0x3f8 + field public static final int CODE_CALL_PULL_OUT_OF_SYNC = 1015; // 0x3f7 + field public static final int CODE_DATA_DISABLED = 1406; // 0x57e + field public static final int CODE_DATA_LIMIT_REACHED = 1405; // 0x57d + field public static final int CODE_DIAL_MODIFIED_TO_DIAL = 246; // 0xf6 + field public static final int CODE_DIAL_MODIFIED_TO_DIAL_VIDEO = 247; // 0xf7 + field public static final int CODE_DIAL_MODIFIED_TO_SS = 245; // 0xf5 + field public static final int CODE_DIAL_MODIFIED_TO_USSD = 244; // 0xf4 + field public static final int CODE_DIAL_VIDEO_MODIFIED_TO_DIAL = 248; // 0xf8 + field public static final int CODE_DIAL_VIDEO_MODIFIED_TO_DIAL_VIDEO = 249; // 0xf9 + field public static final int CODE_DIAL_VIDEO_MODIFIED_TO_SS = 250; // 0xfa + field public static final int CODE_DIAL_VIDEO_MODIFIED_TO_USSD = 251; // 0xfb + field public static final int CODE_ECBM_NOT_SUPPORTED = 901; // 0x385 + field public static final int CODE_EMERGENCY_PERM_FAILURE = 364; // 0x16c + field public static final int CODE_EMERGENCY_TEMP_FAILURE = 363; // 0x16b + field public static final int CODE_EPDG_TUNNEL_ESTABLISH_FAILURE = 1400; // 0x578 + field public static final int CODE_EPDG_TUNNEL_LOST_CONNECTION = 1402; // 0x57a + field public static final int CODE_EPDG_TUNNEL_REKEY_FAILURE = 1401; // 0x579 + field public static final int CODE_FDN_BLOCKED = 241; // 0xf1 + field public static final int CODE_IKEV2_AUTH_FAILURE = 1408; // 0x580 + field public static final int CODE_IMEI_NOT_ACCEPTED = 243; // 0xf3 + field public static final int CODE_IWLAN_DPD_FAILURE = 1300; // 0x514 + field public static final int CODE_LOCAL_CALL_BUSY = 142; // 0x8e + field public static final int CODE_LOCAL_CALL_CS_RETRY_REQUIRED = 146; // 0x92 + field public static final int CODE_LOCAL_CALL_DECLINE = 143; // 0x8f + field public static final int CODE_LOCAL_CALL_EXCEEDED = 141; // 0x8d + field public static final int CODE_LOCAL_CALL_RESOURCE_RESERVATION_FAILED = 145; // 0x91 + field public static final int CODE_LOCAL_CALL_TERMINATED = 148; // 0x94 + field public static final int CODE_LOCAL_CALL_VCC_ON_PROGRESSING = 144; // 0x90 + field public static final int CODE_LOCAL_CALL_VOLTE_RETRY_REQUIRED = 147; // 0x93 + field public static final int CODE_LOCAL_ENDED_BY_CONFERENCE_MERGE = 108; // 0x6c + field public static final int CODE_LOCAL_HO_NOT_FEASIBLE = 149; // 0x95 + field public static final int CODE_LOCAL_ILLEGAL_ARGUMENT = 101; // 0x65 + field public static final int CODE_LOCAL_ILLEGAL_STATE = 102; // 0x66 + field public static final int CODE_LOCAL_IMS_SERVICE_DOWN = 106; // 0x6a + field public static final int CODE_LOCAL_INTERNAL_ERROR = 103; // 0x67 + field public static final int CODE_LOCAL_LOW_BATTERY = 112; // 0x70 + field public static final int CODE_LOCAL_NETWORK_IP_CHANGED = 124; // 0x7c + field public static final int CODE_LOCAL_NETWORK_NO_LTE_COVERAGE = 122; // 0x7a + field public static final int CODE_LOCAL_NETWORK_NO_SERVICE = 121; // 0x79 + field public static final int CODE_LOCAL_NETWORK_ROAMING = 123; // 0x7b + field public static final int CODE_LOCAL_NOT_REGISTERED = 132; // 0x84 + field public static final int CODE_LOCAL_NO_PENDING_CALL = 107; // 0x6b + field public static final int CODE_LOCAL_POWER_OFF = 111; // 0x6f + field public static final int CODE_LOCAL_SERVICE_UNAVAILABLE = 131; // 0x83 + field public static final int CODE_LOW_BATTERY = 505; // 0x1f9 + field public static final int CODE_MAXIMUM_NUMBER_OF_CALLS_REACHED = 1403; // 0x57b + field public static final int CODE_MEDIA_INIT_FAILED = 401; // 0x191 + field public static final int CODE_MEDIA_NOT_ACCEPTABLE = 403; // 0x193 + field public static final int CODE_MEDIA_NO_DATA = 402; // 0x192 + field public static final int CODE_MEDIA_UNSPECIFIED = 404; // 0x194 + field public static final int CODE_MULTIENDPOINT_NOT_SUPPORTED = 902; // 0x386 + field public static final int CODE_NETWORK_DETACH = 1513; // 0x5e9 + field public static final int CODE_NETWORK_REJECT = 1504; // 0x5e0 + field public static final int CODE_NETWORK_RESP_TIMEOUT = 1503; // 0x5df + field public static final int CODE_NO_CSFB_IN_CS_ROAM = 1516; // 0x5ec + field public static final int CODE_NO_VALID_SIM = 1501; // 0x5dd + field public static final int CODE_OEM_CAUSE_1 = 61441; // 0xf001 + field public static final int CODE_OEM_CAUSE_10 = 61450; // 0xf00a + field public static final int CODE_OEM_CAUSE_11 = 61451; // 0xf00b + field public static final int CODE_OEM_CAUSE_12 = 61452; // 0xf00c + field public static final int CODE_OEM_CAUSE_13 = 61453; // 0xf00d + field public static final int CODE_OEM_CAUSE_14 = 61454; // 0xf00e + field public static final int CODE_OEM_CAUSE_15 = 61455; // 0xf00f + field public static final int CODE_OEM_CAUSE_2 = 61442; // 0xf002 + field public static final int CODE_OEM_CAUSE_3 = 61443; // 0xf003 + field public static final int CODE_OEM_CAUSE_4 = 61444; // 0xf004 + field public static final int CODE_OEM_CAUSE_5 = 61445; // 0xf005 + field public static final int CODE_OEM_CAUSE_6 = 61446; // 0xf006 + field public static final int CODE_OEM_CAUSE_7 = 61447; // 0xf007 + field public static final int CODE_OEM_CAUSE_8 = 61448; // 0xf008 + field public static final int CODE_OEM_CAUSE_9 = 61449; // 0xf009 + field public static final int CODE_RADIO_ACCESS_FAILURE = 1505; // 0x5e1 + field public static final int CODE_RADIO_INTERNAL_ERROR = 1502; // 0x5de + field public static final int CODE_RADIO_LINK_FAILURE = 1506; // 0x5e2 + field public static final int CODE_RADIO_LINK_LOST = 1507; // 0x5e3 + field public static final int CODE_RADIO_OFF = 1500; // 0x5dc + field public static final int CODE_RADIO_RELEASE_ABNORMAL = 1511; // 0x5e7 + field public static final int CODE_RADIO_RELEASE_NORMAL = 1510; // 0x5e6 + field public static final int CODE_RADIO_SETUP_FAILURE = 1509; // 0x5e5 + field public static final int CODE_RADIO_UPLINK_FAILURE = 1508; // 0x5e4 + field public static final int CODE_REGISTRATION_ERROR = 1000; // 0x3e8 + field public static final int CODE_REJECTED_ELSEWHERE = 1017; // 0x3f9 + field public static final int CODE_REJECT_1X_COLLISION = 1603; // 0x643 + field public static final int CODE_REJECT_CALL_ON_OTHER_SUB = 1602; // 0x642 + field public static final int CODE_REJECT_CALL_TYPE_NOT_ALLOWED = 1605; // 0x645 + field public static final int CODE_REJECT_CONFERENCE_TTY_NOT_ALLOWED = 1617; // 0x651 + field public static final int CODE_REJECT_INTERNAL_ERROR = 1612; // 0x64c + field public static final int CODE_REJECT_MAX_CALL_LIMIT_REACHED = 1608; // 0x648 + field public static final int CODE_REJECT_ONGOING_CALL_SETUP = 1607; // 0x647 + field public static final int CODE_REJECT_ONGOING_CALL_TRANSFER = 1611; // 0x64b + field public static final int CODE_REJECT_ONGOING_CALL_UPGRADE = 1616; // 0x650 + field public static final int CODE_REJECT_ONGOING_CALL_WAITING_DISABLED = 1601; // 0x641 + field public static final int CODE_REJECT_ONGOING_CONFERENCE_CALL = 1618; // 0x652 + field public static final int CODE_REJECT_ONGOING_CS_CALL = 1621; // 0x655 + field public static final int CODE_REJECT_ONGOING_E911_CALL = 1606; // 0x646 + field public static final int CODE_REJECT_ONGOING_ENCRYPTED_CALL = 1620; // 0x654 + field public static final int CODE_REJECT_ONGOING_HANDOVER = 1614; // 0x64e + field public static final int CODE_REJECT_QOS_FAILURE = 1613; // 0x64d + field public static final int CODE_REJECT_SERVICE_NOT_REGISTERED = 1604; // 0x644 + field public static final int CODE_REJECT_UNKNOWN = 1600; // 0x640 + field public static final int CODE_REJECT_UNSUPPORTED_SDP_HEADERS = 1610; // 0x64a + field public static final int CODE_REJECT_UNSUPPORTED_SIP_HEADERS = 1609; // 0x649 + field public static final int CODE_REJECT_VT_AVPF_NOT_ALLOWED = 1619; // 0x653 + field public static final int CODE_REJECT_VT_TTY_NOT_ALLOWED = 1615; // 0x64f + field public static final int CODE_REMOTE_CALL_DECLINE = 1404; // 0x57c + field public static final int CODE_SESSION_MODIFICATION_FAILED = 1517; // 0x5ed + field public static final int CODE_SIP_ALTERNATE_EMERGENCY_CALL = 1514; // 0x5ea + field public static final int CODE_SIP_AMBIGUOUS = 376; // 0x178 + field public static final int CODE_SIP_BAD_ADDRESS = 337; // 0x151 + field public static final int CODE_SIP_BAD_REQUEST = 331; // 0x14b + field public static final int CODE_SIP_BUSY = 338; // 0x152 + field public static final int CODE_SIP_CALL_OR_TRANS_DOES_NOT_EXIST = 372; // 0x174 + field public static final int CODE_SIP_CLIENT_ERROR = 342; // 0x156 + field public static final int CODE_SIP_EXTENSION_REQUIRED = 370; // 0x172 + field public static final int CODE_SIP_FORBIDDEN = 332; // 0x14c + field public static final int CODE_SIP_GLOBAL_ERROR = 362; // 0x16a + field public static final int CODE_SIP_INTERVAL_TOO_BRIEF = 371; // 0x173 + field public static final int CODE_SIP_LOOP_DETECTED = 373; // 0x175 + field public static final int CODE_SIP_METHOD_NOT_ALLOWED = 366; // 0x16e + field public static final int CODE_SIP_NOT_ACCEPTABLE = 340; // 0x154 + field public static final int CODE_SIP_NOT_FOUND = 333; // 0x14d + field public static final int CODE_SIP_NOT_REACHABLE = 341; // 0x155 + field public static final int CODE_SIP_NOT_SUPPORTED = 334; // 0x14e + field public static final int CODE_SIP_PROXY_AUTHENTICATION_REQUIRED = 367; // 0x16f + field public static final int CODE_SIP_REDIRECTED = 321; // 0x141 + field public static final int CODE_SIP_REQUEST_CANCELLED = 339; // 0x153 + field public static final int CODE_SIP_REQUEST_ENTITY_TOO_LARGE = 368; // 0x170 + field public static final int CODE_SIP_REQUEST_PENDING = 377; // 0x179 + field public static final int CODE_SIP_REQUEST_TIMEOUT = 335; // 0x14f + field public static final int CODE_SIP_REQUEST_URI_TOO_LARGE = 369; // 0x171 + field public static final int CODE_SIP_SERVER_ERROR = 354; // 0x162 + field public static final int CODE_SIP_SERVER_INTERNAL_ERROR = 351; // 0x15f + field public static final int CODE_SIP_SERVER_TIMEOUT = 353; // 0x161 + field public static final int CODE_SIP_SERVICE_UNAVAILABLE = 352; // 0x160 + field public static final int CODE_SIP_TEMPRARILY_UNAVAILABLE = 336; // 0x150 + field public static final int CODE_SIP_TOO_MANY_HOPS = 374; // 0x176 + field public static final int CODE_SIP_TRANSACTION_DOES_NOT_EXIST = 343; // 0x157 + field public static final int CODE_SIP_UNDECIPHERABLE = 378; // 0x17a + field public static final int CODE_SIP_USER_MARKED_UNWANTED = 365; // 0x16d + field public static final int CODE_SIP_USER_REJECTED = 361; // 0x169 + field public static final int CODE_SUPP_SVC_CANCELLED = 1202; // 0x4b2 + field public static final int CODE_SUPP_SVC_FAILED = 1201; // 0x4b1 + field public static final int CODE_SUPP_SVC_REINVITE_COLLISION = 1203; // 0x4b3 + field public static final int CODE_TIMEOUT_1XX_WAITING = 201; // 0xc9 + field public static final int CODE_TIMEOUT_NO_ANSWER = 202; // 0xca + field public static final int CODE_TIMEOUT_NO_ANSWER_CALL_UPDATE = 203; // 0xcb + field public static final int CODE_UNSPECIFIED = 0; // 0x0 + field public static final int CODE_USER_CANCELLED_SESSION_MODIFICATION = 512; // 0x200 + field public static final int CODE_USER_DECLINE = 504; // 0x1f8 + field public static final int CODE_USER_IGNORE = 503; // 0x1f7 + field public static final int CODE_USER_NOANSWER = 502; // 0x1f6 + field public static final int CODE_USER_REJECTED_SESSION_MODIFICATION = 511; // 0x1ff + field public static final int CODE_USER_TERMINATED = 501; // 0x1f5 + field public static final int CODE_USER_TERMINATED_BY_REMOTE = 510; // 0x1fe + field public static final int CODE_UT_CB_PASSWORD_MISMATCH = 821; // 0x335 + field public static final int CODE_UT_NETWORK_ERROR = 804; // 0x324 + field public static final int CODE_UT_NOT_SUPPORTED = 801; // 0x321 + field public static final int CODE_UT_OPERATION_NOT_ALLOWED = 803; // 0x323 + field public static final int CODE_UT_SERVICE_UNAVAILABLE = 802; // 0x322 + field public static final int CODE_UT_SS_MODIFIED_TO_DIAL = 822; // 0x336 + field public static final int CODE_UT_SS_MODIFIED_TO_DIAL_VIDEO = 825; // 0x339 + field public static final int CODE_UT_SS_MODIFIED_TO_SS = 824; // 0x338 + field public static final int CODE_UT_SS_MODIFIED_TO_USSD = 823; // 0x337 + field public static final int CODE_WIFI_LOST = 1407; // 0x57f + field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsReasonInfo> CREATOR; + field public static final int EXTRA_CODE_CALL_RETRY_BY_SETTINGS = 3; // 0x3 + field public static final int EXTRA_CODE_CALL_RETRY_NORMAL = 1; // 0x1 + field public static final int EXTRA_CODE_CALL_RETRY_SILENT_REDIAL = 2; // 0x2 + } + + public class RcsUceAdapter { + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public boolean isUceSettingEnabled() throws android.telephony.ims.ImsException; + } + + public interface RegistrationManager { + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public void getRegistrationState(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>); + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public void getRegistrationTransportType(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>); + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public void registerImsRegistrationCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.RegistrationManager.RegistrationCallback) throws android.telephony.ims.ImsException; + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public void unregisterImsRegistrationCallback(@NonNull android.telephony.ims.RegistrationManager.RegistrationCallback); + field public static final int REGISTRATION_STATE_NOT_REGISTERED = 0; // 0x0 + field public static final int REGISTRATION_STATE_REGISTERED = 2; // 0x2 + field public static final int REGISTRATION_STATE_REGISTERING = 1; // 0x1 + } + + public static class RegistrationManager.RegistrationCallback { + ctor public RegistrationManager.RegistrationCallback(); + method public void onRegistered(int); + method public void onRegistering(int); + method public void onTechnologyChangeFailed(int, @NonNull android.telephony.ims.ImsReasonInfo); + method public void onUnregistered(@NonNull android.telephony.ims.ImsReasonInfo); + } + +} + +package android.telephony.ims.feature { + + public class MmTelFeature { + } + + public static class MmTelFeature.MmTelCapabilities { + field public static final int CAPABILITY_TYPE_SMS = 8; // 0x8 + field public static final int CAPABILITY_TYPE_UT = 4; // 0x4 + field public static final int CAPABILITY_TYPE_VIDEO = 2; // 0x2 + field public static final int CAPABILITY_TYPE_VOICE = 1; // 0x1 + } + +} + package android.telephony.mbms { public class DownloadProgressListener { @@ -45639,12 +49173,12 @@ package android.telephony.mbms { package android.text { - public class AlteredCharSequence implements java.lang.CharSequence android.text.GetChars { - method public char charAt(int); - method public void getChars(int, int, char[], int); - method public int length(); - method public static android.text.AlteredCharSequence make(CharSequence, char[], int, int); - method public CharSequence subSequence(int, int); + @Deprecated public class AlteredCharSequence implements java.lang.CharSequence android.text.GetChars { + method @Deprecated public char charAt(int); + method @Deprecated public void getChars(int, int, char[], int); + method @Deprecated public int length(); + method @Deprecated public static android.text.AlteredCharSequence make(CharSequence, char[], int, int); + method @Deprecated public CharSequence subSequence(int, int); } @Deprecated public class AndroidCharacter { @@ -45956,30 +49490,30 @@ package android.text { public static class Layout.Directions { } - public abstract class LoginFilter implements android.text.InputFilter { - method public CharSequence filter(CharSequence, int, int, android.text.Spanned, int, int); - method public abstract boolean isAllowed(char); - method public void onInvalidCharacter(char); - method public void onStart(); - method public void onStop(); + @Deprecated public abstract class LoginFilter implements android.text.InputFilter { + method @Deprecated public CharSequence filter(CharSequence, int, int, android.text.Spanned, int, int); + method @Deprecated public abstract boolean isAllowed(char); + method @Deprecated public void onInvalidCharacter(char); + method @Deprecated public void onStart(); + method @Deprecated public void onStop(); } - public static class LoginFilter.PasswordFilterGMail extends android.text.LoginFilter { - ctor public LoginFilter.PasswordFilterGMail(); - ctor public LoginFilter.PasswordFilterGMail(boolean); - method public boolean isAllowed(char); + @Deprecated public static class LoginFilter.PasswordFilterGMail extends android.text.LoginFilter { + ctor @Deprecated public LoginFilter.PasswordFilterGMail(); + ctor @Deprecated public LoginFilter.PasswordFilterGMail(boolean); + method @Deprecated public boolean isAllowed(char); } - public static class LoginFilter.UsernameFilterGMail extends android.text.LoginFilter { - ctor public LoginFilter.UsernameFilterGMail(); - ctor public LoginFilter.UsernameFilterGMail(boolean); - method public boolean isAllowed(char); + @Deprecated public static class LoginFilter.UsernameFilterGMail extends android.text.LoginFilter { + ctor @Deprecated public LoginFilter.UsernameFilterGMail(); + ctor @Deprecated public LoginFilter.UsernameFilterGMail(boolean); + method @Deprecated public boolean isAllowed(char); } - public static class LoginFilter.UsernameFilterGeneric extends android.text.LoginFilter { - ctor public LoginFilter.UsernameFilterGeneric(); - ctor public LoginFilter.UsernameFilterGeneric(boolean); - method public boolean isAllowed(char); + @Deprecated public static class LoginFilter.UsernameFilterGeneric extends android.text.LoginFilter { + ctor @Deprecated public LoginFilter.UsernameFilterGeneric(); + ctor @Deprecated public LoginFilter.UsernameFilterGeneric(boolean); + method @Deprecated public boolean isAllowed(char); } public interface NoCopySpan { @@ -46379,7 +49913,7 @@ package android.text.format { field public static final long WEEK_IN_MILLIS = 604800000L; // 0x240c8400L field public static final String YEAR_FORMAT = "%Y"; field public static final String YEAR_FORMAT_TWO_DIGITS = "%g"; - field public static final long YEAR_IN_MILLIS = 31449600000L; // 0x7528ad000L + field @Deprecated public static final long YEAR_IN_MILLIS = 31449600000L; // 0x7528ad000L field @Deprecated public static final int[] sameMonthTable; field @Deprecated public static final int[] sameYearTable; } @@ -46880,7 +50414,7 @@ package android.text.style { } public static class LineHeightSpan.Standard implements android.text.style.LineHeightSpan android.text.ParcelableSpan { - ctor public LineHeightSpan.Standard(@Px @IntRange(from=1) int); + ctor public LineHeightSpan.Standard(@IntRange(from=1) @Px int); ctor public LineHeightSpan.Standard(@NonNull android.os.Parcel); method public void chooseHeight(@NonNull CharSequence, int, int, int, int, @NonNull android.graphics.Paint.FontMetricsInt); method public int describeContents(); @@ -46953,7 +50487,9 @@ package android.text.style { public abstract class ReplacementSpan extends android.text.style.MetricAffectingSpan { ctor public ReplacementSpan(); method public abstract void draw(@NonNull android.graphics.Canvas, CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, float, int, int, int, @NonNull android.graphics.Paint); + method @Nullable public CharSequence getContentDescription(); method public abstract int getSize(@NonNull android.graphics.Paint, CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, @Nullable android.graphics.Paint.FontMetricsInt); + method public void setContentDescription(@Nullable CharSequence); method public void updateDrawState(android.text.TextPaint); method public void updateMeasureState(android.text.TextPaint); } @@ -47727,6 +51263,7 @@ package android.util { ctor public ArraySet(int); ctor public ArraySet(android.util.ArraySet<E>); ctor public ArraySet(java.util.Collection<? extends E>); + ctor public ArraySet(@Nullable E[]); method public boolean add(E); method public void addAll(android.util.ArraySet<? extends E>); method public boolean addAll(java.util.Collection<? extends E>); @@ -47815,6 +51352,13 @@ package android.util { ctor public Base64OutputStream(java.io.OutputStream, int); } + public final class CloseGuard { + ctor public CloseGuard(); + method public void close(); + method public void open(@NonNull String); + method public void warnIfOpen(); + } + @Deprecated public final class Config { field @Deprecated public static final boolean DEBUG = false; field @Deprecated public static final boolean LOGD = true; @@ -48271,6 +51815,7 @@ package android.util { method public void append(int, E); method public void clear(); method public android.util.SparseArray<E> clone(); + method public boolean contains(int); method public void delete(int); method public E get(int); method public E get(int, E); @@ -48371,14 +51916,15 @@ package android.util { method public static java.util.TimeZone getTimeZone(int, boolean, long, String); method public static String getTimeZoneDatabaseVersion(); method @Nullable public static java.util.List<java.lang.String> getTimeZoneIdsForCountryCode(@NonNull String); + method public static boolean isTimeBetween(@NonNull java.time.LocalTime, @NonNull java.time.LocalTime, @NonNull java.time.LocalTime); } - public class TimingLogger { - ctor public TimingLogger(String, String); - method public void addSplit(String); - method public void dumpToLog(); - method public void reset(String, String); - method public void reset(); + @Deprecated public class TimingLogger { + ctor @Deprecated public TimingLogger(String, String); + method @Deprecated public void addSplit(String); + method @Deprecated public void dumpToLog(); + method @Deprecated public void reset(String, String); + method @Deprecated public void reset(); } public class TypedValue { @@ -48467,6 +52013,71 @@ package android.util { } +package android.util.proto { + + public final class ProtoOutputStream { + ctor public ProtoOutputStream(); + ctor public ProtoOutputStream(int); + ctor public ProtoOutputStream(@NonNull java.io.OutputStream); + method public static int checkFieldId(long, long); + method public void dump(@NonNull String); + method public void end(long); + method public void flush(); + method @NonNull public byte[] getBytes(); + method @Nullable public static String getFieldCountString(long); + method @NonNull public static String getFieldIdString(long); + method @Nullable public static String getFieldTypeString(long); + method public int getRawSize(); + method @Nullable public static String getWireTypeString(int); + method public static long makeFieldId(int, long); + method public static long makeToken(int, boolean, int, int, int); + method public long start(long); + method @NonNull public static String token2String(long); + method public void write(long, double); + method public void write(long, float); + method public void write(long, int); + method public void write(long, long); + method public void write(long, boolean); + method public void write(long, @Nullable String); + method public void write(long, @Nullable byte[]); + method public void writeTag(int, int); + field public static final long FIELD_COUNT_MASK = 16492674416640L; // 0xf0000000000L + field public static final long FIELD_COUNT_PACKED = 5497558138880L; // 0x50000000000L + field public static final long FIELD_COUNT_REPEATED = 2199023255552L; // 0x20000000000L + field public static final int FIELD_COUNT_SHIFT = 40; // 0x28 + field public static final long FIELD_COUNT_SINGLE = 1099511627776L; // 0x10000000000L + field public static final long FIELD_COUNT_UNKNOWN = 0L; // 0x0L + field public static final int FIELD_ID_SHIFT = 3; // 0x3 + field public static final long FIELD_TYPE_BOOL = 34359738368L; // 0x800000000L + field public static final long FIELD_TYPE_BYTES = 51539607552L; // 0xc00000000L + field public static final long FIELD_TYPE_DOUBLE = 4294967296L; // 0x100000000L + field public static final long FIELD_TYPE_ENUM = 60129542144L; // 0xe00000000L + field public static final long FIELD_TYPE_FIXED32 = 30064771072L; // 0x700000000L + field public static final long FIELD_TYPE_FIXED64 = 25769803776L; // 0x600000000L + field public static final long FIELD_TYPE_FLOAT = 8589934592L; // 0x200000000L + field public static final long FIELD_TYPE_INT32 = 21474836480L; // 0x500000000L + field public static final long FIELD_TYPE_INT64 = 12884901888L; // 0x300000000L + field public static final long FIELD_TYPE_MASK = 1095216660480L; // 0xff00000000L + field public static final long FIELD_TYPE_MESSAGE = 47244640256L; // 0xb00000000L + field public static final long FIELD_TYPE_SFIXED32 = 64424509440L; // 0xf00000000L + field public static final long FIELD_TYPE_SFIXED64 = 68719476736L; // 0x1000000000L + field public static final int FIELD_TYPE_SHIFT = 32; // 0x20 + field public static final long FIELD_TYPE_SINT32 = 73014444032L; // 0x1100000000L + field public static final long FIELD_TYPE_SINT64 = 77309411328L; // 0x1200000000L + field public static final long FIELD_TYPE_STRING = 38654705664L; // 0x900000000L + field public static final long FIELD_TYPE_UINT32 = 55834574848L; // 0xd00000000L + field public static final long FIELD_TYPE_UINT64 = 17179869184L; // 0x400000000L + field public static final int WIRE_TYPE_END_GROUP = 4; // 0x4 + field public static final int WIRE_TYPE_FIXED32 = 5; // 0x5 + field public static final int WIRE_TYPE_FIXED64 = 1; // 0x1 + field public static final int WIRE_TYPE_LENGTH_DELIMITED = 2; // 0x2 + field public static final int WIRE_TYPE_MASK = 7; // 0x7 + field public static final int WIRE_TYPE_START_GROUP = 3; // 0x3 + field public static final int WIRE_TYPE_VARINT = 0; // 0x0 + } + +} + package android.view { public abstract class AbsSavedState implements android.os.Parcelable { @@ -48583,7 +52194,7 @@ package android.view { method public int getFlags(); method public android.view.Display.HdrCapabilities getHdrCapabilities(); method @Deprecated public int getHeight(); - method public void getMetrics(android.util.DisplayMetrics); + method @Deprecated public void getMetrics(android.util.DisplayMetrics); method public android.view.Display.Mode getMode(); method public String getName(); method @Deprecated public int getOrientation(); @@ -48592,15 +52203,16 @@ package android.view { method public long getPresentationDeadlineNanos(); method public void getRealMetrics(android.util.DisplayMetrics); method public void getRealSize(android.graphics.Point); - method public void getRectSize(android.graphics.Rect); + method @Deprecated public void getRectSize(android.graphics.Rect); method public float getRefreshRate(); method public int getRotation(); - method public void getSize(android.graphics.Point); + method @Deprecated public void getSize(android.graphics.Point); method public int getState(); method public android.view.Display.Mode[] getSupportedModes(); method @Deprecated public float[] getSupportedRefreshRates(); method @Deprecated public int getWidth(); method public boolean isHdr(); + method public boolean isMinimalPostProcessingSupported(); method public boolean isValid(); method public boolean isWideColorGamut(); field public static final int DEFAULT_DISPLAY = 0; // 0x0 @@ -48646,6 +52258,7 @@ package android.view { public final class DisplayCutout { ctor public DisplayCutout(@NonNull android.graphics.Insets, @Nullable android.graphics.Rect, @Nullable android.graphics.Rect, @Nullable android.graphics.Rect, @Nullable android.graphics.Rect); + ctor public DisplayCutout(@NonNull android.graphics.Insets, @Nullable android.graphics.Rect, @Nullable android.graphics.Rect, @Nullable android.graphics.Rect, @Nullable android.graphics.Rect, @NonNull android.graphics.Insets); ctor @Deprecated public DisplayCutout(@Nullable android.graphics.Rect, @Nullable java.util.List<android.graphics.Rect>); method @NonNull public android.graphics.Rect getBoundingRectBottom(); method @NonNull public android.graphics.Rect getBoundingRectLeft(); @@ -48656,6 +52269,7 @@ package android.view { method public int getSafeInsetLeft(); method public int getSafeInsetRight(); method public int getSafeInsetTop(); + method @NonNull public android.graphics.Insets getWaterfallInsets(); } public final class DragAndDropPermissions implements android.os.Parcelable { @@ -48808,13 +52422,17 @@ package android.view { public class HapticFeedbackConstants { field public static final int CLOCK_TICK = 4; // 0x4 + field public static final int CONFIRM = 16; // 0x10 field public static final int CONTEXT_CLICK = 6; // 0x6 field public static final int FLAG_IGNORE_GLOBAL_SETTING = 2; // 0x2 field public static final int FLAG_IGNORE_VIEW_SETTING = 1; // 0x1 + field public static final int GESTURE_END = 13; // 0xd + field public static final int GESTURE_START = 12; // 0xc field public static final int KEYBOARD_PRESS = 3; // 0x3 field public static final int KEYBOARD_RELEASE = 7; // 0x7 field public static final int KEYBOARD_TAP = 3; // 0x3 field public static final int LONG_PRESS = 0; // 0x0 + field public static final int REJECT = 17; // 0x11 field public static final int TEXT_HANDLE_MOVE = 9; // 0x9 field public static final int VIRTUAL_KEY = 1; // 0x1 field public static final int VIRTUAL_KEY_RELEASE = 8; // 0x8 @@ -49901,10 +53519,13 @@ package android.view { method public android.graphics.Canvas lockHardwareCanvas(); method public void readFromParcel(android.os.Parcel); method public void release(); + method public void setFrameRate(@FloatRange(from=0.0) float, int); method @Deprecated public void unlockCanvas(android.graphics.Canvas); method public void unlockCanvasAndPost(android.graphics.Canvas); method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.view.Surface> CREATOR; + field public static final int FRAME_RATE_COMPATIBILITY_DEFAULT = 0; // 0x0 + field public static final int FRAME_RATE_COMPATIBILITY_FIXED_SOURCE = 1; // 0x1 field public static final int ROTATION_0 = 0; // 0x0 field public static final int ROTATION_180 = 2; // 0x2 field public static final int ROTATION_270 = 3; // 0x3 @@ -49935,17 +53556,37 @@ package android.view { method @NonNull public android.view.SurfaceControl.Builder setParent(@Nullable android.view.SurfaceControl); } - public static class SurfaceControl.Transaction implements java.io.Closeable { + public static class SurfaceControl.Transaction implements java.io.Closeable android.os.Parcelable { ctor public SurfaceControl.Transaction(); method public void apply(); method public void close(); + method public int describeContents(); method @NonNull public android.view.SurfaceControl.Transaction merge(@NonNull android.view.SurfaceControl.Transaction); method @NonNull public android.view.SurfaceControl.Transaction reparent(@NonNull android.view.SurfaceControl, @Nullable android.view.SurfaceControl); method @NonNull public android.view.SurfaceControl.Transaction setAlpha(@NonNull android.view.SurfaceControl, @FloatRange(from=0.0, to=1.0) float); method @NonNull public android.view.SurfaceControl.Transaction setBufferSize(@NonNull android.view.SurfaceControl, @IntRange(from=0) int, @IntRange(from=0) int); + method @NonNull public android.view.SurfaceControl.Transaction setFrameRate(@NonNull android.view.SurfaceControl, @FloatRange(from=0.0) float, int); method @NonNull public android.view.SurfaceControl.Transaction setGeometry(@NonNull android.view.SurfaceControl, @Nullable android.graphics.Rect, @Nullable android.graphics.Rect, int); method @NonNull public android.view.SurfaceControl.Transaction setLayer(@NonNull android.view.SurfaceControl, @IntRange(from=java.lang.Integer.MIN_VALUE, to=java.lang.Integer.MAX_VALUE) int); method @NonNull public android.view.SurfaceControl.Transaction setVisibility(@NonNull android.view.SurfaceControl, boolean); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.view.SurfaceControl.Transaction> CREATOR; + } + + public class SurfaceControlViewHost { + ctor public SurfaceControlViewHost(@NonNull android.content.Context, @NonNull android.view.Display, @Nullable android.os.IBinder); + method @Nullable public android.view.SurfaceControlViewHost.SurfacePackage getSurfacePackage(); + method @Nullable public android.view.View getView(); + method public void relayout(int, int); + method public void release(); + method public void setView(@NonNull android.view.View, int, int); + } + + public static final class SurfaceControlViewHost.SurfacePackage implements android.os.Parcelable { + method public int describeContents(); + method public void release(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.view.SurfaceControlViewHost.SurfacePackage> CREATOR; } public interface SurfaceHolder { @@ -49975,14 +53616,14 @@ package android.view { } public static interface SurfaceHolder.Callback { - method public void surfaceChanged(android.view.SurfaceHolder, int, int, int); - method public void surfaceCreated(android.view.SurfaceHolder); - method public void surfaceDestroyed(android.view.SurfaceHolder); + method public void surfaceChanged(@NonNull android.view.SurfaceHolder, int, @IntRange(from=0) int, @IntRange(from=0) int); + method public void surfaceCreated(@NonNull android.view.SurfaceHolder); + method public void surfaceDestroyed(@NonNull android.view.SurfaceHolder); } public static interface SurfaceHolder.Callback2 extends android.view.SurfaceHolder.Callback { - method public void surfaceRedrawNeeded(android.view.SurfaceHolder); - method public default void surfaceRedrawNeededAsync(android.view.SurfaceHolder, Runnable); + method public void surfaceRedrawNeeded(@NonNull android.view.SurfaceHolder); + method public default void surfaceRedrawNeededAsync(@NonNull android.view.SurfaceHolder, @NonNull Runnable); } public class SurfaceView extends android.view.View { @@ -49992,41 +53633,43 @@ package android.view { ctor public SurfaceView(android.content.Context, android.util.AttributeSet, int, int); method public boolean gatherTransparentRegion(android.graphics.Region); method public android.view.SurfaceHolder getHolder(); + method @Nullable public android.os.IBinder getHostToken(); method public android.view.SurfaceControl getSurfaceControl(); + method public void setChildSurfacePackage(@NonNull android.view.SurfaceControlViewHost.SurfacePackage); method public void setSecure(boolean); method public void setZOrderMediaOverlay(boolean); method public void setZOrderOnTop(boolean); } public class TextureView extends android.view.View { - ctor public TextureView(android.content.Context); - ctor public TextureView(android.content.Context, android.util.AttributeSet); - ctor public TextureView(android.content.Context, android.util.AttributeSet, int); - ctor public TextureView(android.content.Context, android.util.AttributeSet, int, int); + ctor public TextureView(@NonNull android.content.Context); + ctor public TextureView(@NonNull android.content.Context, @Nullable android.util.AttributeSet); + ctor public TextureView(@NonNull android.content.Context, @Nullable android.util.AttributeSet, int); + ctor public TextureView(@NonNull android.content.Context, @Nullable android.util.AttributeSet, int, int); method public final void draw(android.graphics.Canvas); - method public android.graphics.Bitmap getBitmap(); - method public android.graphics.Bitmap getBitmap(int, int); - method public android.graphics.Bitmap getBitmap(android.graphics.Bitmap); - method public android.graphics.SurfaceTexture getSurfaceTexture(); - method public android.view.TextureView.SurfaceTextureListener getSurfaceTextureListener(); - method public android.graphics.Matrix getTransform(android.graphics.Matrix); + method @Nullable public android.graphics.Bitmap getBitmap(); + method @Nullable public android.graphics.Bitmap getBitmap(int, int); + method @NonNull public android.graphics.Bitmap getBitmap(@NonNull android.graphics.Bitmap); + method @Nullable public android.graphics.SurfaceTexture getSurfaceTexture(); + method @Nullable public android.view.TextureView.SurfaceTextureListener getSurfaceTextureListener(); + method @NonNull public android.graphics.Matrix getTransform(@Nullable android.graphics.Matrix); method public boolean isAvailable(); - method public android.graphics.Canvas lockCanvas(); - method public android.graphics.Canvas lockCanvas(android.graphics.Rect); + method @Nullable public android.graphics.Canvas lockCanvas(); + method @Nullable public android.graphics.Canvas lockCanvas(@Nullable android.graphics.Rect); method protected final void onDraw(android.graphics.Canvas); method public void setBackgroundDrawable(android.graphics.drawable.Drawable); method public void setOpaque(boolean); - method public void setSurfaceTexture(android.graphics.SurfaceTexture); - method public void setSurfaceTextureListener(android.view.TextureView.SurfaceTextureListener); - method public void setTransform(android.graphics.Matrix); - method public void unlockCanvasAndPost(android.graphics.Canvas); + method public void setSurfaceTexture(@NonNull android.graphics.SurfaceTexture); + method public void setSurfaceTextureListener(@Nullable android.view.TextureView.SurfaceTextureListener); + method public void setTransform(@Nullable android.graphics.Matrix); + method public void unlockCanvasAndPost(@NonNull android.graphics.Canvas); } public static interface TextureView.SurfaceTextureListener { - method public void onSurfaceTextureAvailable(android.graphics.SurfaceTexture, int, int); - method public boolean onSurfaceTextureDestroyed(android.graphics.SurfaceTexture); - method public void onSurfaceTextureSizeChanged(android.graphics.SurfaceTexture, int, int); - method public void onSurfaceTextureUpdated(android.graphics.SurfaceTexture); + method public void onSurfaceTextureAvailable(@NonNull android.graphics.SurfaceTexture, int, int); + method public boolean onSurfaceTextureDestroyed(@NonNull android.graphics.SurfaceTexture); + method public void onSurfaceTextureSizeChanged(@NonNull android.graphics.SurfaceTexture, int, int); + method public void onSurfaceTextureUpdated(@NonNull android.graphics.SurfaceTexture); } public class TouchDelegate { @@ -50053,6 +53696,38 @@ package android.view { method public void recycle(); } + public abstract class VerifiedInputEvent implements android.os.Parcelable { + method public int describeContents(); + method public int getDeviceId(); + method public int getDisplayId(); + method public long getEventTimeNanos(); + method public int getSource(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.view.VerifiedInputEvent> CREATOR; + } + + public final class VerifiedKeyEvent extends android.view.VerifiedInputEvent implements android.os.Parcelable { + method public int getAction(); + method public long getDownTimeNanos(); + method @Nullable public Boolean getFlag(int); + method public int getKeyCode(); + method public int getMetaState(); + method public int getRepeatCount(); + method public int getScanCode(); + field @NonNull public static final android.os.Parcelable.Creator<android.view.VerifiedKeyEvent> CREATOR; + } + + public final class VerifiedMotionEvent extends android.view.VerifiedInputEvent implements android.os.Parcelable { + method public int getActionMasked(); + method public int getButtonState(); + method public long getDownTimeNanos(); + method @Nullable public Boolean getFlag(int); + method public int getMetaState(); + method public float getRawX(); + method public float getRawY(); + field @NonNull public static final android.os.Parcelable.Creator<android.view.VerifiedMotionEvent> CREATOR; + } + @UiThread public class View implements android.view.accessibility.AccessibilityEventSource android.graphics.drawable.Drawable.Callback android.view.KeyEvent.Callback { ctor public View(android.content.Context); ctor public View(android.content.Context, @Nullable android.util.AttributeSet); @@ -50132,13 +53807,17 @@ package android.view { method protected void dispatchSetPressed(boolean); method protected void dispatchSetSelected(boolean); method @CallSuper public void dispatchStartTemporaryDetach(); - method public void dispatchSystemUiVisibilityChanged(int); + method @Deprecated public void dispatchSystemUiVisibilityChanged(int); method public boolean dispatchTouchEvent(android.view.MotionEvent); method public boolean dispatchTrackballEvent(android.view.MotionEvent); method public boolean dispatchUnhandledMove(android.view.View, int); method protected void dispatchVisibilityChanged(@NonNull android.view.View, int); method public void dispatchWindowFocusChanged(boolean); - method public void dispatchWindowSystemUiVisiblityChanged(int); + method public void dispatchWindowInsetsAnimationEnd(@NonNull android.view.WindowInsetsAnimation); + method public void dispatchWindowInsetsAnimationPrepare(@NonNull android.view.WindowInsetsAnimation); + method @NonNull public android.view.WindowInsets dispatchWindowInsetsAnimationProgress(@NonNull android.view.WindowInsets, @NonNull java.util.List<android.view.WindowInsetsAnimation>); + method @NonNull public android.view.WindowInsetsAnimation.Bounds dispatchWindowInsetsAnimationStart(@NonNull android.view.WindowInsetsAnimation, @NonNull android.view.WindowInsetsAnimation.Bounds); + method @Deprecated public void dispatchWindowSystemUiVisiblityChanged(int); method public void dispatchWindowVisibilityChanged(int); method @CallSuper public void draw(android.graphics.Canvas); method @CallSuper public void drawableHotspotChanged(float, float); @@ -50220,6 +53899,7 @@ package android.view { method @android.view.ViewDebug.CapturedViewProperty @IdRes public int getId(); method @android.view.ViewDebug.ExportedProperty(category="accessibility", mapping={@android.view.ViewDebug.IntToString(from=android.view.View.IMPORTANT_FOR_ACCESSIBILITY_AUTO, to="auto"), @android.view.ViewDebug.IntToString(from=android.view.View.IMPORTANT_FOR_ACCESSIBILITY_YES, to="yes"), @android.view.ViewDebug.IntToString(from=android.view.View.IMPORTANT_FOR_ACCESSIBILITY_NO, to="no"), @android.view.ViewDebug.IntToString(from=android.view.View.IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS, to="noHideDescendants")}) public int getImportantForAccessibility(); method @android.view.ViewDebug.ExportedProperty(mapping={@android.view.ViewDebug.IntToString(from=android.view.View.IMPORTANT_FOR_AUTOFILL_AUTO, to="auto"), @android.view.ViewDebug.IntToString(from=android.view.View.IMPORTANT_FOR_AUTOFILL_YES, to="yes"), @android.view.ViewDebug.IntToString(from=android.view.View.IMPORTANT_FOR_AUTOFILL_NO, to="no"), @android.view.ViewDebug.IntToString(from=android.view.View.IMPORTANT_FOR_AUTOFILL_YES_EXCLUDE_DESCENDANTS, to="yesExcludeDescendants"), @android.view.ViewDebug.IntToString(from=android.view.View.IMPORTANT_FOR_AUTOFILL_NO_EXCLUDE_DESCENDANTS, to="noExcludeDescendants")}) public int getImportantForAutofill(); + method @android.view.ViewDebug.ExportedProperty(mapping={@android.view.ViewDebug.IntToString(from=android.view.View.IMPORTANT_FOR_CONTENT_CAPTURE_AUTO, to="auto"), @android.view.ViewDebug.IntToString(from=android.view.View.IMPORTANT_FOR_CONTENT_CAPTURE_YES, to="yes"), @android.view.ViewDebug.IntToString(from=android.view.View.IMPORTANT_FOR_CONTENT_CAPTURE_NO, to="no"), @android.view.ViewDebug.IntToString(from=android.view.View.IMPORTANT_FOR_CONTENT_CAPTURE_YES_EXCLUDE_DESCENDANTS, to="yesExcludeDescendants"), @android.view.ViewDebug.IntToString(from=android.view.View.IMPORTANT_FOR_CONTENT_CAPTURE_NO_EXCLUDE_DESCENDANTS, to="noExcludeDescendants")}) public int getImportantForContentCapture(); method public boolean getKeepScreenOn(); method public android.view.KeyEvent.DispatcherState getKeyDispatcherState(); method @android.view.ViewDebug.ExportedProperty(category="accessibility") @IdRes public int getLabelFor(); @@ -50285,11 +53965,12 @@ package android.view { method public final int getScrollY(); method @android.view.ViewDebug.ExportedProperty(category="drawing") @ColorInt public int getSolidColor(); method @LayoutRes public int getSourceLayoutResId(); + method @android.view.ViewDebug.ExportedProperty(category="accessibility") @Nullable public final CharSequence getStateDescription(); method public android.animation.StateListAnimator getStateListAnimator(); method protected int getSuggestedMinimumHeight(); method protected int getSuggestedMinimumWidth(); method @NonNull public java.util.List<android.graphics.Rect> getSystemGestureExclusionRects(); - method public int getSystemUiVisibility(); + method @Deprecated public int getSystemUiVisibility(); method @android.view.ViewDebug.ExportedProperty public Object getTag(); method public Object getTag(int); method @android.view.ViewDebug.ExportedProperty(category="text", mapping={@android.view.ViewDebug.IntToString(from=android.view.View.TEXT_ALIGNMENT_INHERIT, to="INHERIT"), @android.view.ViewDebug.IntToString(from=android.view.View.TEXT_ALIGNMENT_GRAVITY, to="GRAVITY"), @android.view.ViewDebug.IntToString(from=android.view.View.TEXT_ALIGNMENT_TEXT_START, to="TEXT_START"), @android.view.ViewDebug.IntToString(from=android.view.View.TEXT_ALIGNMENT_TEXT_END, to="TEXT_END"), @android.view.ViewDebug.IntToString(from=android.view.View.TEXT_ALIGNMENT_CENTER, to="CENTER"), @android.view.ViewDebug.IntToString(from=android.view.View.TEXT_ALIGNMENT_VIEW_START, to="VIEW_START"), @android.view.ViewDebug.IntToString(from=android.view.View.TEXT_ALIGNMENT_VIEW_END, to="VIEW_END")}) public int getTextAlignment(); @@ -50316,7 +53997,8 @@ package android.view { method @android.view.ViewDebug.ExportedProperty(category="layout") public final int getWidth(); method protected int getWindowAttachCount(); method public android.view.WindowId getWindowId(); - method public int getWindowSystemUiVisibility(); + method @Nullable public android.view.WindowInsetsController getWindowInsetsController(); + method @Deprecated public int getWindowSystemUiVisibility(); method public android.os.IBinder getWindowToken(); method public int getWindowVisibility(); method public void getWindowVisibleDisplayFrame(android.graphics.Rect); @@ -50328,6 +54010,7 @@ package android.view { method public boolean hasFocusable(); method public boolean hasNestedScrollingParent(); method public boolean hasOnClickListeners(); + method public boolean hasOnLongClickListeners(); method @android.view.ViewDebug.ExportedProperty(category="drawing") public boolean hasOverlappingRendering(); method public boolean hasPointerCapture(); method @android.view.ViewDebug.ExportedProperty(category="layout") public boolean hasTransientState(); @@ -50360,6 +54043,7 @@ package android.view { method @android.view.ViewDebug.ExportedProperty public boolean isHovered(); method public boolean isImportantForAccessibility(); method public final boolean isImportantForAutofill(); + method public final boolean isImportantForContentCapture(); method public boolean isInEditMode(); method public boolean isInLayout(); method @android.view.ViewDebug.ExportedProperty public boolean isInTouchMode(); @@ -50380,6 +54064,7 @@ package android.view { method public boolean isScrollContainer(); method public boolean isScrollbarFadingEnabled(); method @android.view.ViewDebug.ExportedProperty public boolean isSelected(); + method public final boolean isShowingLayoutBounds(); method public boolean isShown(); method @android.view.ViewDebug.ExportedProperty public boolean isSoundEffectsEnabled(); method public final boolean isTemporarilyDetached(); @@ -50434,6 +54119,7 @@ package android.view { method @CallSuper public void onPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent); method public void onProvideAutofillStructure(android.view.ViewStructure, int); method public void onProvideAutofillVirtualStructure(android.view.ViewStructure, int); + method public void onProvideContentCaptureStructure(@NonNull android.view.ViewStructure, int); method public void onProvideStructure(android.view.ViewStructure); method public void onProvideVirtualStructure(android.view.ViewStructure); method public android.view.PointerIcon onResolvePointerIcon(android.view.MotionEvent, int); @@ -50450,7 +54136,7 @@ package android.view { method @CallSuper public void onVisibilityAggregated(boolean); method protected void onVisibilityChanged(@NonNull android.view.View, int); method public void onWindowFocusChanged(boolean); - method public void onWindowSystemUiVisibilityChanged(int); + method @Deprecated public void onWindowSystemUiVisibilityChanged(int); method protected void onWindowVisibilityChanged(int); method protected boolean overScrollBy(int, int, int, int, int, int, int, int, boolean); method public boolean performAccessibilityAction(int, android.os.Bundle); @@ -50489,6 +54175,7 @@ package android.view { method public boolean requestRectangleOnScreen(android.graphics.Rect); method public boolean requestRectangleOnScreen(android.graphics.Rect, boolean); method public final void requestUnbufferedDispatch(android.view.MotionEvent); + method public final void requestUnbufferedDispatch(int); method @NonNull public final <T extends android.view.View> T requireViewById(@IdRes int); method public void resetPivot(); method public static int resolveSize(int, int); @@ -50559,6 +54246,7 @@ package android.view { method public void setId(@IdRes int); method public void setImportantForAccessibility(int); method public void setImportantForAutofill(int); + method public void setImportantForContentCapture(int); method public void setKeepScreenOn(boolean); method public void setKeyboardNavigationCluster(boolean); method public void setLabelFor(@IdRes int); @@ -50591,7 +54279,7 @@ package android.view { method public void setOnKeyListener(android.view.View.OnKeyListener); method public void setOnLongClickListener(@Nullable android.view.View.OnLongClickListener); method public void setOnScrollChangeListener(android.view.View.OnScrollChangeListener); - method public void setOnSystemUiVisibilityChangeListener(android.view.View.OnSystemUiVisibilityChangeListener); + method @Deprecated public void setOnSystemUiVisibilityChangeListener(android.view.View.OnSystemUiVisibilityChangeListener); method public void setOnTouchListener(android.view.View.OnTouchListener); method public void setOutlineAmbientShadowColor(@ColorInt int); method public void setOutlineProvider(android.view.ViewOutlineProvider); @@ -50625,9 +54313,10 @@ package android.view { method public void setScrollbarFadingEnabled(boolean); method public void setSelected(boolean); method public void setSoundEffectsEnabled(boolean); + method public void setStateDescription(@Nullable CharSequence); method public void setStateListAnimator(android.animation.StateListAnimator); method public void setSystemGestureExclusionRects(@NonNull java.util.List<android.graphics.Rect>); - method public void setSystemUiVisibility(int); + method @Deprecated public void setSystemUiVisibility(int); method public void setTag(Object); method public void setTag(int, Object); method public void setTextAlignment(int); @@ -50649,6 +54338,7 @@ package android.view { method public void setVisibility(int); method @Deprecated public void setWillNotCacheDrawing(boolean); method public void setWillNotDraw(boolean); + method public void setWindowInsetsAnimationCallback(@Nullable android.view.WindowInsetsAnimation.Callback); method public void setX(float); method public void setY(float); method public void setZ(float); @@ -50737,6 +54427,11 @@ package android.view { field public static final int IMPORTANT_FOR_AUTOFILL_NO_EXCLUDE_DESCENDANTS = 8; // 0x8 field public static final int IMPORTANT_FOR_AUTOFILL_YES = 1; // 0x1 field public static final int IMPORTANT_FOR_AUTOFILL_YES_EXCLUDE_DESCENDANTS = 4; // 0x4 + field public static final int IMPORTANT_FOR_CONTENT_CAPTURE_AUTO = 0; // 0x0 + field public static final int IMPORTANT_FOR_CONTENT_CAPTURE_NO = 2; // 0x2 + field public static final int IMPORTANT_FOR_CONTENT_CAPTURE_NO_EXCLUDE_DESCENDANTS = 8; // 0x8 + field public static final int IMPORTANT_FOR_CONTENT_CAPTURE_YES = 1; // 0x1 + field public static final int IMPORTANT_FOR_CONTENT_CAPTURE_YES_EXCLUDE_DESCENDANTS = 4; // 0x4 field public static final int INVISIBLE = 4; // 0x4 field public static final int KEEP_SCREEN_ON = 67108864; // 0x4000000 field public static final int LAYER_TYPE_HARDWARE = 2; // 0x2 @@ -50799,18 +54494,18 @@ package android.view { field public static final int SOUND_EFFECTS_ENABLED = 134217728; // 0x8000000 field @Deprecated public static final int STATUS_BAR_HIDDEN = 1; // 0x1 field @Deprecated public static final int STATUS_BAR_VISIBLE = 0; // 0x0 - field public static final int SYSTEM_UI_FLAG_FULLSCREEN = 4; // 0x4 - field public static final int SYSTEM_UI_FLAG_HIDE_NAVIGATION = 2; // 0x2 - field public static final int SYSTEM_UI_FLAG_IMMERSIVE = 2048; // 0x800 - field public static final int SYSTEM_UI_FLAG_IMMERSIVE_STICKY = 4096; // 0x1000 - field public static final int SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN = 1024; // 0x400 - field public static final int SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION = 512; // 0x200 - field public static final int SYSTEM_UI_FLAG_LAYOUT_STABLE = 256; // 0x100 - field public static final int SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR = 16; // 0x10 - field public static final int SYSTEM_UI_FLAG_LIGHT_STATUS_BAR = 8192; // 0x2000 - field public static final int SYSTEM_UI_FLAG_LOW_PROFILE = 1; // 0x1 - field public static final int SYSTEM_UI_FLAG_VISIBLE = 0; // 0x0 - field public static final int SYSTEM_UI_LAYOUT_FLAGS = 1536; // 0x600 + field @Deprecated public static final int SYSTEM_UI_FLAG_FULLSCREEN = 4; // 0x4 + field @Deprecated public static final int SYSTEM_UI_FLAG_HIDE_NAVIGATION = 2; // 0x2 + field @Deprecated public static final int SYSTEM_UI_FLAG_IMMERSIVE = 2048; // 0x800 + field @Deprecated public static final int SYSTEM_UI_FLAG_IMMERSIVE_STICKY = 4096; // 0x1000 + field @Deprecated public static final int SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN = 1024; // 0x400 + field @Deprecated public static final int SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION = 512; // 0x200 + field @Deprecated public static final int SYSTEM_UI_FLAG_LAYOUT_STABLE = 256; // 0x100 + field @Deprecated public static final int SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR = 16; // 0x10 + field @Deprecated public static final int SYSTEM_UI_FLAG_LIGHT_STATUS_BAR = 8192; // 0x2000 + field @Deprecated public static final int SYSTEM_UI_FLAG_LOW_PROFILE = 1; // 0x1 + field @Deprecated public static final int SYSTEM_UI_FLAG_VISIBLE = 0; // 0x0 + field @Deprecated public static final int SYSTEM_UI_LAYOUT_FLAGS = 1536; // 0x600 field public static final int TEXT_ALIGNMENT_CENTER = 4; // 0x4 field public static final int TEXT_ALIGNMENT_GRAVITY = 1; // 0x1 field public static final int TEXT_ALIGNMENT_INHERIT = 0; // 0x0 @@ -50934,8 +54629,8 @@ package android.view { method public void onScrollChange(android.view.View, int, int, int, int); } - public static interface View.OnSystemUiVisibilityChangeListener { - method public void onSystemUiVisibilityChange(int); + @Deprecated public static interface View.OnSystemUiVisibilityChangeListener { + method @Deprecated public void onSystemUiVisibilityChange(int); } public static interface View.OnTouchListener { @@ -50953,7 +54648,7 @@ package android.view { public class ViewConfiguration { ctor @Deprecated public ViewConfiguration(); method public static android.view.ViewConfiguration get(android.content.Context); - method @FloatRange(from=1.0) public static float getAmbiguousGestureMultiplier(); + method @Deprecated @FloatRange(from=1.0) public static float getAmbiguousGestureMultiplier(); method public static long getDefaultActionModeHideDuration(); method public static int getDoubleTapTimeout(); method @Deprecated public static int getEdgeSlop(); @@ -50967,6 +54662,7 @@ package android.view { method @Deprecated public static int getMaximumFlingVelocity(); method @Deprecated public static int getMinimumFlingVelocity(); method public static int getPressedStateDuration(); + method @FloatRange(from=1.0) public float getScaledAmbiguousGestureMultiplier(); method public int getScaledDoubleTapSlop(); method public int getScaledEdgeSlop(); method public int getScaledFadingEdgeLength(); @@ -51008,11 +54704,11 @@ package android.view { field @Deprecated public static final boolean TRACE_RECYCLER = false; } - @java.lang.annotation.Target({java.lang.annotation.ElementType.FIELD, java.lang.annotation.ElementType.METHOD}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) public static @interface ViewDebug.CapturedViewProperty { + @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target({java.lang.annotation.ElementType.FIELD, java.lang.annotation.ElementType.METHOD}) public static @interface ViewDebug.CapturedViewProperty { method public abstract boolean retrieveReturn() default false; } - @java.lang.annotation.Target({java.lang.annotation.ElementType.FIELD, java.lang.annotation.ElementType.METHOD}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) public static @interface ViewDebug.ExportedProperty { + @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target({java.lang.annotation.ElementType.FIELD, java.lang.annotation.ElementType.METHOD}) public static @interface ViewDebug.ExportedProperty { method public abstract String category() default ""; method public abstract boolean deepExport() default false; method public abstract android.view.ViewDebug.FlagToString[] flagMapping() default {}; @@ -51024,7 +54720,7 @@ package android.view { method public abstract boolean resolveId() default false; } - @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) public static @interface ViewDebug.FlagToString { + @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE}) public static @interface ViewDebug.FlagToString { method public abstract int equals(); method public abstract int mask(); method public abstract String name(); @@ -51042,7 +54738,7 @@ package android.view { enum_constant @Deprecated public static final android.view.ViewDebug.HierarchyTraceType REQUEST_LAYOUT; } - @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) public static @interface ViewDebug.IntToString { + @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE}) public static @interface ViewDebug.IntToString { method public abstract int from(); method public abstract String to(); } @@ -51391,6 +55087,7 @@ package android.view { method public abstract void setFocusable(boolean); method public abstract void setFocused(boolean); method public abstract void setHint(CharSequence); + method public void setHintIdEntry(@NonNull String); method public abstract void setHtmlInfo(@NonNull android.view.ViewStructure.HtmlInfo); method public abstract void setId(int, String, String, String); method public void setImportantForAutofill(int); @@ -51529,6 +55226,7 @@ package android.view { method public android.transition.Transition getExitTransition(); method protected final int getFeatures(); method protected final int getForcedWindowFlags(); + method @Nullable public android.view.WindowInsetsController getInsetsController(); method @NonNull public abstract android.view.LayoutInflater getLayoutInflater(); method protected final int getLocalFeatures(); method public android.media.session.MediaController getMediaController(); @@ -51587,6 +55285,7 @@ package android.view { method public abstract void setContentView(android.view.View); method public abstract void setContentView(android.view.View, android.view.ViewGroup.LayoutParams); method public abstract void setDecorCaptionShade(int); + method public void setDecorFitsSystemWindows(boolean); method protected void setDefaultWindowFormat(int); method public void setDimAmount(float); method public void setElevation(float); @@ -51608,6 +55307,7 @@ package android.view { method public abstract void setNavigationBarColor(@ColorInt int); method public void setNavigationBarContrastEnforced(boolean); method public void setNavigationBarDividerColor(@ColorInt int); + method public void setPreferMinimalPostProcessing(boolean); method public void setReenterTransition(android.transition.Transition); method public abstract void setResizingCaptionDrawable(android.graphics.drawable.Drawable); method public final void setRestrictedCaptionAreaListener(android.view.Window.OnRestrictedCaptionAreaChangedListener); @@ -51659,7 +55359,7 @@ package android.view { field public static final int FEATURE_OPTIONS_PANEL = 0; // 0x0 field @Deprecated public static final int FEATURE_PROGRESS = 2; // 0x2 field public static final int FEATURE_RIGHT_ICON = 4; // 0x4 - field public static final int FEATURE_SWIPE_TO_DISMISS = 11; // 0xb + field @Deprecated public static final int FEATURE_SWIPE_TO_DISMISS = 11; // 0xb field public static final int ID_ANDROID_CONTENT = 16908290; // 0x1020002 field public static final String NAVIGATION_BAR_BACKGROUND_TRANSITION_NAME = "android:navigation:background"; field @Deprecated public static final int PROGRESS_END = 10000; // 0x2710 @@ -51740,31 +55440,36 @@ package android.view { public final class WindowInsets { ctor public WindowInsets(android.view.WindowInsets); - method @NonNull public android.view.WindowInsets consumeDisplayCutout(); - method @NonNull public android.view.WindowInsets consumeStableInsets(); - method @NonNull public android.view.WindowInsets consumeSystemWindowInsets(); + method @Deprecated @NonNull public android.view.WindowInsets consumeDisplayCutout(); + method @Deprecated @NonNull public android.view.WindowInsets consumeStableInsets(); + method @Deprecated @NonNull public android.view.WindowInsets consumeSystemWindowInsets(); method @Nullable public android.view.DisplayCutout getDisplayCutout(); - method @NonNull public android.graphics.Insets getMandatorySystemGestureInsets(); - method public int getStableInsetBottom(); - method public int getStableInsetLeft(); - method public int getStableInsetRight(); - method public int getStableInsetTop(); - method @NonNull public android.graphics.Insets getStableInsets(); - method @NonNull public android.graphics.Insets getSystemGestureInsets(); - method public int getSystemWindowInsetBottom(); - method public int getSystemWindowInsetLeft(); - method public int getSystemWindowInsetRight(); - method public int getSystemWindowInsetTop(); - method @NonNull public android.graphics.Insets getSystemWindowInsets(); - method @NonNull public android.graphics.Insets getTappableElementInsets(); + method @NonNull public android.graphics.Insets getInsets(int); + method @NonNull public android.graphics.Insets getInsetsIgnoringVisibility(int); + method @Deprecated @NonNull public android.graphics.Insets getMandatorySystemGestureInsets(); + method @Deprecated public int getStableInsetBottom(); + method @Deprecated public int getStableInsetLeft(); + method @Deprecated public int getStableInsetRight(); + method @Deprecated public int getStableInsetTop(); + method @Deprecated @NonNull public android.graphics.Insets getStableInsets(); + method @Deprecated @NonNull public android.graphics.Insets getSystemGestureInsets(); + method @Deprecated public int getSystemWindowInsetBottom(); + method @Deprecated public int getSystemWindowInsetLeft(); + method @Deprecated public int getSystemWindowInsetRight(); + method @Deprecated public int getSystemWindowInsetTop(); + method @Deprecated @NonNull public android.graphics.Insets getSystemWindowInsets(); + method @Deprecated @NonNull public android.graphics.Insets getTappableElementInsets(); method public boolean hasInsets(); - method public boolean hasStableInsets(); - method public boolean hasSystemWindowInsets(); + method @Deprecated public boolean hasStableInsets(); + method @Deprecated public boolean hasSystemWindowInsets(); + method @NonNull public android.view.WindowInsets inset(@NonNull android.graphics.Insets); method @NonNull public android.view.WindowInsets inset(@IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0) int); method public boolean isConsumed(); method public boolean isRound(); + method public boolean isVisible(int); method @Deprecated @NonNull public android.view.WindowInsets replaceSystemWindowInsets(int, int, int, int); method @Deprecated @NonNull public android.view.WindowInsets replaceSystemWindowInsets(android.graphics.Rect); + field @NonNull public static final android.view.WindowInsets CONSUMED; } public static final class WindowInsets.Builder { @@ -51772,15 +55477,111 @@ package android.view { ctor public WindowInsets.Builder(@NonNull android.view.WindowInsets); method @NonNull public android.view.WindowInsets build(); method @NonNull public android.view.WindowInsets.Builder setDisplayCutout(@Nullable android.view.DisplayCutout); - method @NonNull public android.view.WindowInsets.Builder setMandatorySystemGestureInsets(@NonNull android.graphics.Insets); - method @NonNull public android.view.WindowInsets.Builder setStableInsets(@NonNull android.graphics.Insets); - method @NonNull public android.view.WindowInsets.Builder setSystemGestureInsets(@NonNull android.graphics.Insets); - method @NonNull public android.view.WindowInsets.Builder setSystemWindowInsets(@NonNull android.graphics.Insets); - method @NonNull public android.view.WindowInsets.Builder setTappableElementInsets(@NonNull android.graphics.Insets); + method @NonNull public android.view.WindowInsets.Builder setInsets(int, @NonNull android.graphics.Insets); + method @NonNull public android.view.WindowInsets.Builder setInsetsIgnoringVisibility(int, @NonNull android.graphics.Insets) throws java.lang.IllegalArgumentException; + method @Deprecated @NonNull public android.view.WindowInsets.Builder setMandatorySystemGestureInsets(@NonNull android.graphics.Insets); + method @Deprecated @NonNull public android.view.WindowInsets.Builder setStableInsets(@NonNull android.graphics.Insets); + method @Deprecated @NonNull public android.view.WindowInsets.Builder setSystemGestureInsets(@NonNull android.graphics.Insets); + method @Deprecated @NonNull public android.view.WindowInsets.Builder setSystemWindowInsets(@NonNull android.graphics.Insets); + method @Deprecated @NonNull public android.view.WindowInsets.Builder setTappableElementInsets(@NonNull android.graphics.Insets); + method @NonNull public android.view.WindowInsets.Builder setVisible(int, boolean); + } + + public static final class WindowInsets.Side { + method public static int all(); + field public static final int BOTTOM = 8; // 0x8 + field public static final int LEFT = 1; // 0x1 + field public static final int RIGHT = 4; // 0x4 + field public static final int TOP = 2; // 0x2 + } + + public static final class WindowInsets.Type { + method public static int captionBar(); + method public static int displayCutout(); + method public static int ime(); + method public static int mandatorySystemGestures(); + method public static int navigationBars(); + method public static int statusBars(); + method public static int systemBars(); + method public static int systemGestures(); + method public static int tappableElement(); + } + + public final class WindowInsetsAnimation { + ctor public WindowInsetsAnimation(int, @Nullable android.view.animation.Interpolator, long); + method @FloatRange(from=0.0f, to=1.0f) public float getAlpha(); + method public long getDurationMillis(); + method @FloatRange(from=0.0f, to=1.0f) public float getFraction(); + method public float getInterpolatedFraction(); + method @Nullable public android.view.animation.Interpolator getInterpolator(); + method public int getTypeMask(); + method public void setAlpha(@FloatRange(from=0.0f, to=1.0f) float); + method public void setFraction(@FloatRange(from=0.0f, to=1.0f) float); + } + + public static final class WindowInsetsAnimation.Bounds { + ctor public WindowInsetsAnimation.Bounds(@NonNull android.graphics.Insets, @NonNull android.graphics.Insets); + method @NonNull public android.graphics.Insets getLowerBound(); + method @NonNull public android.graphics.Insets getUpperBound(); + method @NonNull public android.view.WindowInsetsAnimation.Bounds inset(@NonNull android.graphics.Insets); + } + + public abstract static class WindowInsetsAnimation.Callback { + ctor public WindowInsetsAnimation.Callback(int); + method public final int getDispatchMode(); + method public void onEnd(@NonNull android.view.WindowInsetsAnimation); + method public void onPrepare(@NonNull android.view.WindowInsetsAnimation); + method @NonNull public abstract android.view.WindowInsets onProgress(@NonNull android.view.WindowInsets, @NonNull java.util.List<android.view.WindowInsetsAnimation>); + method @NonNull public android.view.WindowInsetsAnimation.Bounds onStart(@NonNull android.view.WindowInsetsAnimation, @NonNull android.view.WindowInsetsAnimation.Bounds); + field public static final int DISPATCH_MODE_CONTINUE_ON_SUBTREE = 1; // 0x1 + field public static final int DISPATCH_MODE_STOP = 0; // 0x0 + } + + public interface WindowInsetsAnimationControlListener { + method public void onCancelled(@Nullable android.view.WindowInsetsAnimationController); + method public void onFinished(@NonNull android.view.WindowInsetsAnimationController); + method public void onReady(@NonNull android.view.WindowInsetsAnimationController, int); + } + + public interface WindowInsetsAnimationController { + method public void finish(boolean); + method public float getCurrentAlpha(); + method @FloatRange(from=0.0f, to=1.0f) public float getCurrentFraction(); + method @NonNull public android.graphics.Insets getCurrentInsets(); + method @NonNull public android.graphics.Insets getHiddenStateInsets(); + method @NonNull public android.graphics.Insets getShownStateInsets(); + method public int getTypes(); + method public boolean isCancelled(); + method public boolean isFinished(); + method public default boolean isReady(); + method public void setInsetsAndAlpha(@Nullable android.graphics.Insets, @FloatRange(from=0.0f, to=1.0f) float, @FloatRange(from=0.0f, to=1.0f) float); + } + + public interface WindowInsetsController { + method public void addOnControllableInsetsChangedListener(@NonNull android.view.WindowInsetsController.OnControllableInsetsChangedListener); + method public void controlWindowInsetsAnimation(int, long, @Nullable android.view.animation.Interpolator, @Nullable android.os.CancellationSignal, @NonNull android.view.WindowInsetsAnimationControlListener); + method public int getSystemBarsAppearance(); + method public int getSystemBarsBehavior(); + method public void hide(int); + method public void removeOnControllableInsetsChangedListener(@NonNull android.view.WindowInsetsController.OnControllableInsetsChangedListener); + method public void setSystemBarsAppearance(int, int); + method public void setSystemBarsBehavior(int); + method public void show(int); + field public static final int APPEARANCE_LIGHT_NAVIGATION_BARS = 16; // 0x10 + field public static final int APPEARANCE_LIGHT_STATUS_BARS = 8; // 0x8 + field public static final int BEHAVIOR_SHOW_BARS_BY_SWIPE = 1; // 0x1 + field public static final int BEHAVIOR_SHOW_BARS_BY_TOUCH = 0; // 0x0 + field public static final int BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE = 2; // 0x2 + } + + public static interface WindowInsetsController.OnControllableInsetsChangedListener { + method public void onControllableInsetsChanged(@NonNull android.view.WindowInsetsController, int); } public interface WindowManager extends android.view.ViewManager { - method public android.view.Display getDefaultDisplay(); + method @NonNull public default android.view.WindowMetrics getCurrentWindowMetrics(); + method @Deprecated public android.view.Display getDefaultDisplay(); + method @NonNull public default android.view.WindowMetrics getMaximumWindowMetrics(); method public void removeViewImmediate(android.view.View); } @@ -51806,9 +55607,15 @@ package android.view { method public String debug(String); method public int describeContents(); method public int getColorMode(); + method public int getFitInsetsSides(); + method public int getFitInsetsTypes(); method public final CharSequence getTitle(); + method public boolean isFitInsetsIgnoringVisibility(); method public static boolean mayUseInputMethod(int); method public void setColorMode(int); + method public void setFitInsetsIgnoringVisibility(boolean); + method public void setFitInsetsSides(int); + method public void setFitInsetsTypes(int); method public final void setTitle(CharSequence); method public void writeToParcel(android.os.Parcel, int); field public static final int ALPHA_CHANGED = 128; // 0x80 @@ -51829,14 +55636,14 @@ package android.view { field @Deprecated public static final int FLAG_DISMISS_KEYGUARD = 4194304; // 0x400000 field @Deprecated public static final int FLAG_DITHER = 4096; // 0x1000 field public static final int FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS = -2147483648; // 0x80000000 - field public static final int FLAG_FORCE_NOT_FULLSCREEN = 2048; // 0x800 - field public static final int FLAG_FULLSCREEN = 1024; // 0x400 + field @Deprecated public static final int FLAG_FORCE_NOT_FULLSCREEN = 2048; // 0x800 + field @Deprecated public static final int FLAG_FULLSCREEN = 1024; // 0x400 field public static final int FLAG_HARDWARE_ACCELERATED = 16777216; // 0x1000000 field public static final int FLAG_IGNORE_CHEEK_PRESSES = 32768; // 0x8000 field public static final int FLAG_KEEP_SCREEN_ON = 128; // 0x80 - field public static final int FLAG_LAYOUT_ATTACHED_IN_DECOR = 1073741824; // 0x40000000 - field public static final int FLAG_LAYOUT_INSET_DECOR = 65536; // 0x10000 - field public static final int FLAG_LAYOUT_IN_OVERSCAN = 33554432; // 0x2000000 + field @Deprecated public static final int FLAG_LAYOUT_ATTACHED_IN_DECOR = 1073741824; // 0x40000000 + field @Deprecated public static final int FLAG_LAYOUT_INSET_DECOR = 65536; // 0x10000 + field @Deprecated public static final int FLAG_LAYOUT_IN_OVERSCAN = 33554432; // 0x2000000 field public static final int FLAG_LAYOUT_IN_SCREEN = 256; // 0x100 field public static final int FLAG_LAYOUT_NO_LIMITS = 512; // 0x200 field public static final int FLAG_LOCAL_FOCUS_MODE = 268435456; // 0x10000000 @@ -51849,8 +55656,8 @@ package android.view { field @Deprecated public static final int FLAG_SHOW_WHEN_LOCKED = 524288; // 0x80000 field public static final int FLAG_SPLIT_TOUCH = 8388608; // 0x800000 field @Deprecated public static final int FLAG_TOUCHABLE_WHEN_WAKING = 64; // 0x40 - field public static final int FLAG_TRANSLUCENT_NAVIGATION = 134217728; // 0x8000000 - field public static final int FLAG_TRANSLUCENT_STATUS = 67108864; // 0x4000000 + field @Deprecated public static final int FLAG_TRANSLUCENT_NAVIGATION = 134217728; // 0x8000000 + field @Deprecated public static final int FLAG_TRANSLUCENT_STATUS = 67108864; // 0x4000000 field @Deprecated public static final int FLAG_TURN_SCREEN_ON = 2097152; // 0x200000 field public static final int FLAG_WATCH_OUTSIDE_TOUCH = 262144; // 0x40000 field public static final int FORMAT_CHANGED = 8; // 0x8 @@ -51858,6 +55665,7 @@ package android.view { field public static final int LAST_SUB_WINDOW = 1999; // 0x7cf field public static final int LAST_SYSTEM_WINDOW = 2999; // 0xbb7 field public static final int LAYOUT_CHANGED = 1; // 0x1 + field public static final int LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS = 3; // 0x3 field public static final int LAYOUT_IN_DISPLAY_CUTOUT_MODE_DEFAULT = 0; // 0x0 field public static final int LAYOUT_IN_DISPLAY_CUTOUT_MODE_NEVER = 2; // 0x2 field public static final int LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES = 1; // 0x1 @@ -51875,7 +55683,7 @@ package android.view { field public static final int SCREEN_ORIENTATION_CHANGED = 1024; // 0x400 field public static final int SOFT_INPUT_ADJUST_NOTHING = 48; // 0x30 field public static final int SOFT_INPUT_ADJUST_PAN = 32; // 0x20 - field public static final int SOFT_INPUT_ADJUST_RESIZE = 16; // 0x10 + field @Deprecated public static final int SOFT_INPUT_ADJUST_RESIZE = 16; // 0x10 field public static final int SOFT_INPUT_ADJUST_UNSPECIFIED = 0; // 0x0 field public static final int SOFT_INPUT_IS_FORWARD_NAVIGATION = 256; // 0x100 field public static final int SOFT_INPUT_MASK_ADJUST = 240; // 0xf0 @@ -51907,7 +55715,7 @@ package android.view { field public static final int TYPE_PRIVATE_PRESENTATION = 2030; // 0x7ee field public static final int TYPE_SEARCH_BAR = 2001; // 0x7d1 field public static final int TYPE_STATUS_BAR = 2000; // 0x7d0 - field public static final int TYPE_STATUS_BAR_PANEL = 2014; // 0x7de + field @Deprecated public static final int TYPE_STATUS_BAR_PANEL = 2014; // 0x7de field @Deprecated public static final int TYPE_SYSTEM_ALERT = 2003; // 0x7d3 field public static final int TYPE_SYSTEM_DIALOG = 2008; // 0x7d8 field @Deprecated public static final int TYPE_SYSTEM_ERROR = 2010; // 0x7da @@ -51925,15 +55733,16 @@ package android.view { field public int layoutInDisplayCutoutMode; field @Deprecated public int memoryType; field public String packageName; + field public boolean preferMinimalPostProcessing; field public int preferredDisplayModeId; field @Deprecated public float preferredRefreshRate; field public int rotationAnimation; field public float screenBrightness; field public int screenOrientation; field public int softInputMode; - field public int systemUiVisibility; + field @Deprecated public int systemUiVisibility; field public android.os.IBinder token; - field @android.view.ViewDebug.ExportedProperty(mapping={@android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_BASE_APPLICATION, to="BASE_APPLICATION"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_APPLICATION, to="APPLICATION"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_APPLICATION_STARTING, to="APPLICATION_STARTING"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_DRAWN_APPLICATION, to="DRAWN_APPLICATION"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_APPLICATION_PANEL, to="APPLICATION_PANEL"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_APPLICATION_MEDIA, to="APPLICATION_MEDIA"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_APPLICATION_SUB_PANEL, to="APPLICATION_SUB_PANEL"), @android.view.ViewDebug.IntToString(from=0x3ed, to="APPLICATION_ABOVE_SUB_PANEL"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_APPLICATION_ATTACHED_DIALOG, to="APPLICATION_ATTACHED_DIALOG"), @android.view.ViewDebug.IntToString(from=0x3ec, to="APPLICATION_MEDIA_OVERLAY"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_STATUS_BAR, to="STATUS_BAR"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_SEARCH_BAR, to="SEARCH_BAR"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_PHONE, to="PHONE"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_SYSTEM_ALERT, to="SYSTEM_ALERT"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_TOAST, to="TOAST"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_SYSTEM_OVERLAY, to="SYSTEM_OVERLAY"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_PRIORITY_PHONE, to="PRIORITY_PHONE"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_SYSTEM_DIALOG, to="SYSTEM_DIALOG"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG, to="KEYGUARD_DIALOG"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_SYSTEM_ERROR, to="SYSTEM_ERROR"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_INPUT_METHOD, to="INPUT_METHOD"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_INPUT_METHOD_DIALOG, to="INPUT_METHOD_DIALOG"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_WALLPAPER, to="WALLPAPER"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_STATUS_BAR_PANEL, to="STATUS_BAR_PANEL"), @android.view.ViewDebug.IntToString(from=0x7df, to="SECURE_SYSTEM_OVERLAY"), @android.view.ViewDebug.IntToString(from=0x7e0, to="DRAG"), @android.view.ViewDebug.IntToString(from=0x7e1, to="STATUS_BAR_SUB_PANEL"), @android.view.ViewDebug.IntToString(from=0x7e2, to="POINTER"), @android.view.ViewDebug.IntToString(from=0x7e3, to="NAVIGATION_BAR"), @android.view.ViewDebug.IntToString(from=0x7e4, to="VOLUME_OVERLAY"), @android.view.ViewDebug.IntToString(from=0x7e5, to="BOOT_PROGRESS"), @android.view.ViewDebug.IntToString(from=0x7e6, to="INPUT_CONSUMER"), @android.view.ViewDebug.IntToString(from=0x7e7, to="DREAM"), @android.view.ViewDebug.IntToString(from=0x7e8, to="NAVIGATION_BAR_PANEL"), @android.view.ViewDebug.IntToString(from=0x7ea, to="DISPLAY_OVERLAY"), @android.view.ViewDebug.IntToString(from=0x7eb, to="MAGNIFICATION_OVERLAY"), @android.view.ViewDebug.IntToString(from=0x7f5, to="PRESENTATION"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_PRIVATE_PRESENTATION, to="PRIVATE_PRESENTATION"), @android.view.ViewDebug.IntToString(from=0x7ef, to="VOICE_INTERACTION"), @android.view.ViewDebug.IntToString(from=0x7f1, to="VOICE_INTERACTION_STARTING"), @android.view.ViewDebug.IntToString(from=0x7f2, to="DOCK_DIVIDER"), @android.view.ViewDebug.IntToString(from=0x7f3, to="QS_DIALOG"), @android.view.ViewDebug.IntToString(from=0x7f4, to="SCREENSHOT"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY, to="APPLICATION_OVERLAY")}) public int type; + field @android.view.ViewDebug.ExportedProperty(mapping={@android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_BASE_APPLICATION, to="BASE_APPLICATION"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_APPLICATION, to="APPLICATION"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_APPLICATION_STARTING, to="APPLICATION_STARTING"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_DRAWN_APPLICATION, to="DRAWN_APPLICATION"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_APPLICATION_PANEL, to="APPLICATION_PANEL"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_APPLICATION_MEDIA, to="APPLICATION_MEDIA"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_APPLICATION_SUB_PANEL, to="APPLICATION_SUB_PANEL"), @android.view.ViewDebug.IntToString(from=0x3ed, to="APPLICATION_ABOVE_SUB_PANEL"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_APPLICATION_ATTACHED_DIALOG, to="APPLICATION_ATTACHED_DIALOG"), @android.view.ViewDebug.IntToString(from=0x3ec, to="APPLICATION_MEDIA_OVERLAY"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_STATUS_BAR, to="STATUS_BAR"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_SEARCH_BAR, to="SEARCH_BAR"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_PHONE, to="PHONE"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_SYSTEM_ALERT, to="SYSTEM_ALERT"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_TOAST, to="TOAST"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_SYSTEM_OVERLAY, to="SYSTEM_OVERLAY"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_PRIORITY_PHONE, to="PRIORITY_PHONE"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_SYSTEM_DIALOG, to="SYSTEM_DIALOG"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG, to="KEYGUARD_DIALOG"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_SYSTEM_ERROR, to="SYSTEM_ERROR"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_INPUT_METHOD, to="INPUT_METHOD"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_INPUT_METHOD_DIALOG, to="INPUT_METHOD_DIALOG"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_WALLPAPER, to="WALLPAPER"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_STATUS_BAR_PANEL, to="STATUS_BAR_PANEL"), @android.view.ViewDebug.IntToString(from=0x7df, to="SECURE_SYSTEM_OVERLAY"), @android.view.ViewDebug.IntToString(from=0x7e0, to="DRAG"), @android.view.ViewDebug.IntToString(from=0x7e1, to="STATUS_BAR_SUB_PANEL"), @android.view.ViewDebug.IntToString(from=0x7e2, to="POINTER"), @android.view.ViewDebug.IntToString(from=0x7e3, to="NAVIGATION_BAR"), @android.view.ViewDebug.IntToString(from=0x7e4, to="VOLUME_OVERLAY"), @android.view.ViewDebug.IntToString(from=0x7e5, to="BOOT_PROGRESS"), @android.view.ViewDebug.IntToString(from=0x7e6, to="INPUT_CONSUMER"), @android.view.ViewDebug.IntToString(from=0x7e8, to="NAVIGATION_BAR_PANEL"), @android.view.ViewDebug.IntToString(from=0x7ea, to="DISPLAY_OVERLAY"), @android.view.ViewDebug.IntToString(from=0x7eb, to="MAGNIFICATION_OVERLAY"), @android.view.ViewDebug.IntToString(from=0x7f5, to="PRESENTATION"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_PRIVATE_PRESENTATION, to="PRIVATE_PRESENTATION"), @android.view.ViewDebug.IntToString(from=0x7ef, to="VOICE_INTERACTION"), @android.view.ViewDebug.IntToString(from=0x7f1, to="VOICE_INTERACTION_STARTING"), @android.view.ViewDebug.IntToString(from=0x7f2, to="DOCK_DIVIDER"), @android.view.ViewDebug.IntToString(from=0x7f3, to="QS_DIALOG"), @android.view.ViewDebug.IntToString(from=0x7f4, to="SCREENSHOT"), @android.view.ViewDebug.IntToString(from=android.view.WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY, to="APPLICATION_OVERLAY")}) public int type; field public float verticalMargin; field @android.view.ViewDebug.ExportedProperty public float verticalWeight; field public int windowAnimations; @@ -51941,11 +55750,20 @@ package android.view { field @android.view.ViewDebug.ExportedProperty public int y; } + public final class WindowMetrics { + ctor public WindowMetrics(@NonNull android.graphics.Rect, @NonNull android.view.WindowInsets); + method @NonNull public android.graphics.Rect getBounds(); + method @NonNull public android.view.WindowInsets getWindowInsets(); + } + } package android.view.accessibility { public final class AccessibilityEvent extends android.view.accessibility.AccessibilityRecord implements android.os.Parcelable { + ctor public AccessibilityEvent(); + ctor public AccessibilityEvent(int); + ctor public AccessibilityEvent(@NonNull android.view.accessibility.AccessibilityEvent); method public void appendRecord(android.view.accessibility.AccessibilityRecord); method public int describeContents(); method public static String eventTypeToString(int); @@ -51973,6 +55791,7 @@ package android.view.accessibility { field public static final int CONTENT_CHANGE_TYPE_PANE_APPEARED = 16; // 0x10 field public static final int CONTENT_CHANGE_TYPE_PANE_DISAPPEARED = 32; // 0x20 field public static final int CONTENT_CHANGE_TYPE_PANE_TITLE = 8; // 0x8 + field public static final int CONTENT_CHANGE_TYPE_STATE_DESCRIPTION = 64; // 0x40 field public static final int CONTENT_CHANGE_TYPE_SUBTREE = 1; // 0x1 field public static final int CONTENT_CHANGE_TYPE_TEXT = 2; // 0x2 field public static final int CONTENT_CHANGE_TYPE_UNDEFINED = 0; // 0x0 @@ -52055,6 +55874,10 @@ package android.view.accessibility { } public class AccessibilityNodeInfo implements android.os.Parcelable { + ctor public AccessibilityNodeInfo(); + ctor public AccessibilityNodeInfo(@NonNull android.view.View); + ctor public AccessibilityNodeInfo(@NonNull android.view.View, int); + ctor public AccessibilityNodeInfo(@NonNull android.view.accessibility.AccessibilityNodeInfo); method public void addAction(android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction); method @Deprecated public void addAction(int); method public void addChild(android.view.View); @@ -52078,6 +55901,7 @@ package android.view.accessibility { method public CharSequence getContentDescription(); method public int getDrawingOrder(); method public CharSequence getError(); + method @Nullable public android.view.accessibility.AccessibilityNodeInfo.ExtraRenderingInfo getExtraRenderingInfo(); method public android.os.Bundle getExtras(); method public CharSequence getHintText(); method public int getInputType(); @@ -52090,6 +55914,7 @@ package android.view.accessibility { method @Nullable public CharSequence getPaneTitle(); method public android.view.accessibility.AccessibilityNodeInfo getParent(); method public android.view.accessibility.AccessibilityNodeInfo.RangeInfo getRangeInfo(); + method @Nullable public CharSequence getStateDescription(); method public CharSequence getText(); method public int getTextSelectionEnd(); method public int getTextSelectionStart(); @@ -52181,6 +56006,7 @@ package android.view.accessibility { method public void setShowingHintText(boolean); method public void setSource(android.view.View); method public void setSource(android.view.View, int); + method public void setStateDescription(@Nullable CharSequence); method public void setText(CharSequence); method public void setTextEntryKey(boolean); method public void setTextSelection(int, int); @@ -52200,6 +56026,7 @@ package android.view.accessibility { field public static final String ACTION_ARGUMENT_MOVEMENT_GRANULARITY_INT = "ACTION_ARGUMENT_MOVEMENT_GRANULARITY_INT"; field public static final String ACTION_ARGUMENT_MOVE_WINDOW_X = "ACTION_ARGUMENT_MOVE_WINDOW_X"; field public static final String ACTION_ARGUMENT_MOVE_WINDOW_Y = "ACTION_ARGUMENT_MOVE_WINDOW_Y"; + field public static final String ACTION_ARGUMENT_PRESS_AND_HOLD_DURATION_MILLIS_INT = "android.view.accessibility.action.ARGUMENT_PRESS_AND_HOLD_DURATION_MILLIS_INT"; field public static final String ACTION_ARGUMENT_PROGRESS_VALUE = "android.view.accessibility.action.ARGUMENT_PROGRESS_VALUE"; field public static final String ACTION_ARGUMENT_ROW_INT = "android.view.accessibility.action.ARGUMENT_ROW_INT"; field public static final String ACTION_ARGUMENT_SELECTION_END_INT = "ACTION_ARGUMENT_SELECTION_END_INT"; @@ -52227,6 +56054,7 @@ package android.view.accessibility { field public static final int ACTION_SET_SELECTION = 131072; // 0x20000 field public static final int ACTION_SET_TEXT = 2097152; // 0x200000 field @NonNull public static final android.os.Parcelable.Creator<android.view.accessibility.AccessibilityNodeInfo> CREATOR; + field public static final String EXTRA_DATA_RENDERING_INFO_KEY = "android.view.accessibility.extra.DATA_RENDERING_INFO_KEY"; field public static final String EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_LENGTH = "android.view.accessibility.extra.DATA_TEXT_CHARACTER_LOCATION_ARG_LENGTH"; field public static final String EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_START_INDEX = "android.view.accessibility.extra.DATA_TEXT_CHARACTER_LOCATION_ARG_START_INDEX"; field public static final String EXTRA_DATA_TEXT_CHARACTER_LOCATION_KEY = "android.view.accessibility.extra.DATA_TEXT_CHARACTER_LOCATION_KEY"; @@ -52239,10 +56067,12 @@ package android.view.accessibility { field public static final int MOVEMENT_GRANULARITY_WORD = 2; // 0x2 } - public static final class AccessibilityNodeInfo.AccessibilityAction { + public static final class AccessibilityNodeInfo.AccessibilityAction implements android.os.Parcelable { ctor public AccessibilityNodeInfo.AccessibilityAction(int, @Nullable CharSequence); + method public int describeContents(); method public int getId(); method public CharSequence getLabel(); + method public void writeToParcel(@NonNull android.os.Parcel, int); field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_ACCESSIBILITY_FOCUS; field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_CLEAR_ACCESSIBILITY_FOCUS; field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_CLEAR_FOCUS; @@ -52256,6 +56086,7 @@ package android.view.accessibility { field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_EXPAND; field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_FOCUS; field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_HIDE_TOOLTIP; + field @NonNull public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_IME_ENTER; field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_LONG_CLICK; field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_MOVE_WINDOW; field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_NEXT_AT_MOVEMENT_GRANULARITY; @@ -52265,6 +56096,7 @@ package android.view.accessibility { field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_PAGE_RIGHT; field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_PAGE_UP; field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_PASTE; + field @NonNull public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_PRESS_AND_HOLD; field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_PREVIOUS_AT_MOVEMENT_GRANULARITY; field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_PREVIOUS_HTML_ELEMENT; field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SCROLL_BACKWARD; @@ -52280,9 +56112,12 @@ package android.view.accessibility { field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SET_TEXT; field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SHOW_ON_SCREEN; field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SHOW_TOOLTIP; + field @NonNull public static final android.os.Parcelable.Creator<android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction> CREATOR; } public static final class AccessibilityNodeInfo.CollectionInfo { + ctor public AccessibilityNodeInfo.CollectionInfo(int, int, boolean); + ctor public AccessibilityNodeInfo.CollectionInfo(int, int, boolean, int); method public int getColumnCount(); method public int getRowCount(); method public int getSelectionMode(); @@ -52295,6 +56130,8 @@ package android.view.accessibility { } public static final class AccessibilityNodeInfo.CollectionItemInfo { + ctor public AccessibilityNodeInfo.CollectionItemInfo(int, int, int, int, boolean); + ctor public AccessibilityNodeInfo.CollectionItemInfo(int, int, int, int, boolean, boolean); method public int getColumnIndex(); method public int getColumnSpan(); method public int getRowIndex(); @@ -52305,7 +56142,14 @@ package android.view.accessibility { method public static android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo obtain(int, int, int, int, boolean, boolean); } + public static final class AccessibilityNodeInfo.ExtraRenderingInfo { + method @Nullable public android.util.Size getLayoutSize(); + method public float getTextSizeInPx(); + method public int getTextSizeUnit(); + } + public static final class AccessibilityNodeInfo.RangeInfo { + ctor public AccessibilityNodeInfo.RangeInfo(int, float, float, float); method public float getCurrent(); method public float getMax(); method public float getMin(); @@ -52337,6 +56181,8 @@ package android.view.accessibility { } public class AccessibilityRecord { + ctor public AccessibilityRecord(); + ctor public AccessibilityRecord(@NonNull android.view.accessibility.AccessibilityRecord); method public int getAddedCount(); method public CharSequence getBeforeText(); method public CharSequence getClassName(); @@ -52397,14 +56243,18 @@ package android.view.accessibility { } public final class AccessibilityWindowInfo implements android.os.Parcelable { + ctor public AccessibilityWindowInfo(); + ctor public AccessibilityWindowInfo(@NonNull android.view.accessibility.AccessibilityWindowInfo); method public int describeContents(); method public android.view.accessibility.AccessibilityNodeInfo getAnchor(); method public void getBoundsInScreen(android.graphics.Rect); method public android.view.accessibility.AccessibilityWindowInfo getChild(int); method public int getChildCount(); + method public int getDisplayId(); method public int getId(); method public int getLayer(); method public android.view.accessibility.AccessibilityWindowInfo getParent(); + method public void getRegionInScreen(@NonNull android.graphics.Region); method public android.view.accessibility.AccessibilityNodeInfo getRoot(); method @Nullable public CharSequence getTitle(); method public int getType(); @@ -52491,7 +56341,7 @@ package android.view.animation { method protected android.view.animation.Animation clone() throws java.lang.CloneNotSupportedException; method public long computeDurationHint(); method protected void ensureInterpolator(); - method @ColorInt public int getBackgroundColor(); + method @Deprecated @ColorInt public int getBackgroundColor(); method @Deprecated public boolean getDetachWallpaper(); method public long getDuration(); method public boolean getFillAfter(); @@ -52515,7 +56365,7 @@ package android.view.animation { method public void restrictDuration(long); method public void scaleCurrentDuration(float); method public void setAnimationListener(android.view.animation.Animation.AnimationListener); - method public void setBackgroundColor(@ColorInt int); + method @Deprecated public void setBackgroundColor(@ColorInt int); method @Deprecated public void setDetachWallpaper(boolean); method public void setDuration(long); method public void setFillAfter(boolean); @@ -52848,6 +56698,10 @@ package android.view.contentcapture { method public boolean isContentCaptureEnabled(); method public void removeData(@NonNull android.view.contentcapture.DataRemovalRequest); method public void setContentCaptureEnabled(boolean); + method public void shareData(@NonNull android.view.contentcapture.DataShareRequest, @NonNull java.util.concurrent.Executor, @NonNull android.view.contentcapture.DataShareWriteAdapter); + field public static final int DATA_SHARE_ERROR_CONCURRENT_REQUEST = 2; // 0x2 + field public static final int DATA_SHARE_ERROR_TIMEOUT_INTERRUPTED = 3; // 0x3 + field public static final int DATA_SHARE_ERROR_UNKNOWN = 1; // 0x1 } public abstract class ContentCaptureSession implements java.lang.AutoCloseable { @@ -52859,8 +56713,11 @@ package android.view.contentcapture { method @NonNull public android.view.autofill.AutofillId newAutofillId(@NonNull android.view.autofill.AutofillId, long); method @NonNull public final android.view.ViewStructure newViewStructure(@NonNull android.view.View); method @NonNull public final android.view.ViewStructure newVirtualViewStructure(@NonNull android.view.autofill.AutofillId, long); + method public final void notifySessionPaused(); + method public final void notifySessionResumed(); method public final void notifyViewAppeared(@NonNull android.view.ViewStructure); method public final void notifyViewDisappeared(@NonNull android.view.autofill.AutofillId); + method public final void notifyViewInsetsChanged(@NonNull android.graphics.Insets); method public final void notifyViewTextChanged(@NonNull android.view.autofill.AutofillId, @Nullable CharSequence); method public final void notifyViewsDisappeared(@NonNull android.view.autofill.AutofillId, @NonNull long[]); method public final void setContentCaptureContext(@Nullable android.view.contentcapture.ContentCaptureContext); @@ -52894,6 +56751,22 @@ package android.view.contentcapture { method @NonNull public android.content.LocusId getLocusId(); } + public final class DataShareRequest implements android.os.Parcelable { + ctor public DataShareRequest(@Nullable android.content.LocusId, @NonNull String); + method public int describeContents(); + method @Nullable public android.content.LocusId getLocusId(); + method @NonNull public String getMimeType(); + method @NonNull public String getPackageName(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.view.contentcapture.DataShareRequest> CREATOR; + } + + public interface DataShareWriteAdapter { + method public default void onError(int); + method public void onRejected(); + method public void onWrite(@NonNull android.os.ParcelFileDescriptor); + } + } package android.view.inputmethod { @@ -52992,7 +56865,12 @@ package android.view.inputmethod { ctor public EditorInfo(); method public int describeContents(); method public void dump(android.util.Printer, String); + method @Nullable public CharSequence getInitialSelectedText(int); + method @Nullable public CharSequence getInitialTextAfterCursor(int, int); + method @Nullable public CharSequence getInitialTextBeforeCursor(int, int); method public final void makeCompatible(int); + method public void setInitialSurroundingSubText(@NonNull CharSequence, int); + method public void setInitialSurroundingText(@NonNull CharSequence); method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.view.inputmethod.EditorInfo> CREATOR; field public static final int IME_ACTION_DONE = 6; // 0x6 @@ -53059,6 +56937,58 @@ package android.view.inputmethod { field public int token; } + public final class InlineSuggestion implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.view.inputmethod.InlineSuggestionInfo getInfo(); + method public void inflate(@NonNull android.content.Context, @NonNull android.util.Size, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.widget.inline.InlineContentView>); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.view.inputmethod.InlineSuggestion> CREATOR; + } + + public final class InlineSuggestionInfo implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public String[] getAutofillHints(); + method @NonNull public android.widget.inline.InlinePresentationSpec getInlinePresentationSpec(); + method @NonNull public String getSource(); + method @NonNull public String getType(); + method public boolean isPinned(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.view.inputmethod.InlineSuggestionInfo> CREATOR; + field public static final String SOURCE_AUTOFILL = "android:autofill"; + field public static final String SOURCE_PLATFORM = "android:platform"; + field public static final String TYPE_ACTION = "android:autofill:action"; + field public static final String TYPE_SUGGESTION = "android:autofill:suggestion"; + } + + public final class InlineSuggestionsRequest implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.os.Bundle getExtras(); + method @NonNull public String getHostPackageName(); + method @NonNull public java.util.List<android.widget.inline.InlinePresentationSpec> getInlinePresentationSpecs(); + method public int getMaxSuggestionCount(); + method @NonNull public android.os.LocaleList getSupportedLocales(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.view.inputmethod.InlineSuggestionsRequest> CREATOR; + field public static final int SUGGESTION_COUNT_UNLIMITED = 2147483647; // 0x7fffffff + } + + public static final class InlineSuggestionsRequest.Builder { + ctor public InlineSuggestionsRequest.Builder(@NonNull java.util.List<android.widget.inline.InlinePresentationSpec>); + method @NonNull public android.view.inputmethod.InlineSuggestionsRequest.Builder addInlinePresentationSpecs(@NonNull android.widget.inline.InlinePresentationSpec); + method @NonNull public android.view.inputmethod.InlineSuggestionsRequest build(); + method @NonNull public android.view.inputmethod.InlineSuggestionsRequest.Builder setExtras(@NonNull android.os.Bundle); + method @NonNull public android.view.inputmethod.InlineSuggestionsRequest.Builder setInlinePresentationSpecs(@NonNull java.util.List<android.widget.inline.InlinePresentationSpec>); + method @NonNull public android.view.inputmethod.InlineSuggestionsRequest.Builder setMaxSuggestionCount(int); + method @NonNull public android.view.inputmethod.InlineSuggestionsRequest.Builder setSupportedLocales(@NonNull android.os.LocaleList); + } + + public final class InlineSuggestionsResponse implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public java.util.List<android.view.inputmethod.InlineSuggestion> getInlineSuggestions(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.view.inputmethod.InlineSuggestionsResponse> CREATOR; + } + public final class InputBinding implements android.os.Parcelable { ctor public InputBinding(android.view.inputmethod.InputConnection, android.os.IBinder, int, int); ctor public InputBinding(android.view.inputmethod.InputConnection, android.view.inputmethod.InputBinding); @@ -53586,23 +57516,24 @@ package android.view.textclassifier { public final class TextClassificationSessionId implements android.os.Parcelable { method public int describeContents(); + method @NonNull public String getValue(); method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.view.textclassifier.TextClassificationSessionId> CREATOR; } public interface TextClassifier { - method @WorkerThread @NonNull public default android.view.textclassifier.TextClassification classifyText(@NonNull android.view.textclassifier.TextClassification.Request); - method @WorkerThread @NonNull public default android.view.textclassifier.TextClassification classifyText(@NonNull CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, @Nullable android.os.LocaleList); + method @NonNull @WorkerThread public default android.view.textclassifier.TextClassification classifyText(@NonNull android.view.textclassifier.TextClassification.Request); + method @NonNull @WorkerThread public default android.view.textclassifier.TextClassification classifyText(@NonNull CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, @Nullable android.os.LocaleList); method public default void destroy(); - method @WorkerThread @NonNull public default android.view.textclassifier.TextLanguage detectLanguage(@NonNull android.view.textclassifier.TextLanguage.Request); - method @WorkerThread @NonNull public default android.view.textclassifier.TextLinks generateLinks(@NonNull android.view.textclassifier.TextLinks.Request); + method @NonNull @WorkerThread public default android.view.textclassifier.TextLanguage detectLanguage(@NonNull android.view.textclassifier.TextLanguage.Request); + method @NonNull @WorkerThread public default android.view.textclassifier.TextLinks generateLinks(@NonNull android.view.textclassifier.TextLinks.Request); method @WorkerThread public default int getMaxGenerateLinksTextLength(); method public default boolean isDestroyed(); method public default void onSelectionEvent(@NonNull android.view.textclassifier.SelectionEvent); method public default void onTextClassifierEvent(@NonNull android.view.textclassifier.TextClassifierEvent); - method @WorkerThread @NonNull public default android.view.textclassifier.ConversationActions suggestConversationActions(@NonNull android.view.textclassifier.ConversationActions.Request); - method @WorkerThread @NonNull public default android.view.textclassifier.TextSelection suggestSelection(@NonNull android.view.textclassifier.TextSelection.Request); - method @WorkerThread @NonNull public default android.view.textclassifier.TextSelection suggestSelection(@NonNull CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, @Nullable android.os.LocaleList); + method @NonNull @WorkerThread public default android.view.textclassifier.ConversationActions suggestConversationActions(@NonNull android.view.textclassifier.ConversationActions.Request); + method @NonNull @WorkerThread public default android.view.textclassifier.TextSelection suggestSelection(@NonNull android.view.textclassifier.TextSelection.Request); + method @NonNull @WorkerThread public default android.view.textclassifier.TextSelection suggestSelection(@NonNull CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, @Nullable android.os.LocaleList); field public static final String EXTRA_FROM_TEXT_CLASSIFIER = "android.view.textclassifier.extra.FROM_TEXT_CLASSIFIER"; field public static final String HINT_TEXT_IS_EDITABLE = "android.text_is_editable"; field public static final String HINT_TEXT_IS_NOT_EDITABLE = "android.text_is_not_editable"; @@ -53673,6 +57604,7 @@ package android.view.textclassifier { field public static final int TYPE_AUTO_SELECTION = 5; // 0x5 field public static final int TYPE_COPY_ACTION = 9; // 0x9 field public static final int TYPE_CUT_ACTION = 11; // 0xb + field public static final int TYPE_LINKS_GENERATED = 21; // 0x15 field public static final int TYPE_LINK_CLICKED = 7; // 0x7 field public static final int TYPE_MANUAL_REPLY = 19; // 0x13 field public static final int TYPE_OTHER_ACTION = 16; // 0x10 @@ -53785,6 +57717,7 @@ package android.view.textclassifier { method public int describeContents(); method @NonNull public android.os.Bundle getExtras(); method @NonNull public java.util.Collection<android.view.textclassifier.TextLinks.TextLink> getLinks(); + method @NonNull public CharSequence getText(); method public void writeToParcel(android.os.Parcel, int); field public static final int APPLY_STRATEGY_IGNORE = 0; // 0x0 field public static final int APPLY_STRATEGY_REPLACE = 1; // 0x1 @@ -53811,6 +57744,7 @@ package android.view.textclassifier { method @Nullable public android.os.LocaleList getDefaultLocales(); method @Nullable public android.view.textclassifier.TextClassifier.EntityConfig getEntityConfig(); method @NonNull public android.os.Bundle getExtras(); + method @Nullable public java.time.ZonedDateTime getReferenceTime(); method @NonNull public CharSequence getText(); method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.view.textclassifier.TextLinks.Request> CREATOR; @@ -53822,6 +57756,7 @@ package android.view.textclassifier { method @NonNull public android.view.textclassifier.TextLinks.Request.Builder setDefaultLocales(@Nullable android.os.LocaleList); method @NonNull public android.view.textclassifier.TextLinks.Request.Builder setEntityConfig(@Nullable android.view.textclassifier.TextClassifier.EntityConfig); method public android.view.textclassifier.TextLinks.Request.Builder setExtras(@Nullable android.os.Bundle); + method @NonNull public android.view.textclassifier.TextLinks.Request.Builder setReferenceTime(@Nullable java.time.ZonedDateTime); } public static final class TextLinks.TextLink implements android.os.Parcelable { @@ -54025,7 +57960,7 @@ package android.webkit { method @Deprecated public abstract void removeSessionCookie(); method public abstract void removeSessionCookies(@Nullable android.webkit.ValueCallback<java.lang.Boolean>); method public abstract void setAcceptCookie(boolean); - method public static void setAcceptFileSchemeCookies(boolean); + method @Deprecated public static void setAcceptFileSchemeCookies(boolean); method public abstract void setAcceptThirdPartyCookies(android.webkit.WebView, boolean); method public abstract void setCookie(String, String); method public abstract void setCookie(String, String, @Nullable android.webkit.ValueCallback<java.lang.Boolean>); @@ -54390,11 +58325,11 @@ package android.webkit { method public abstract String getUserAgentString(); method public abstract void setAllowContentAccess(boolean); method public abstract void setAllowFileAccess(boolean); - method public abstract void setAllowFileAccessFromFileURLs(boolean); - method public abstract void setAllowUniversalAccessFromFileURLs(boolean); - method public abstract void setAppCacheEnabled(boolean); + method @Deprecated public abstract void setAllowFileAccessFromFileURLs(boolean); + method @Deprecated public abstract void setAllowUniversalAccessFromFileURLs(boolean); + method @Deprecated public abstract void setAppCacheEnabled(boolean); method @Deprecated public abstract void setAppCacheMaxSize(long); - method public abstract void setAppCachePath(String); + method @Deprecated public abstract void setAppCachePath(String); method public abstract void setBlockNetworkImage(boolean); method public abstract void setBlockNetworkLoads(boolean); method public abstract void setBuiltInZoomControls(boolean); @@ -54514,12 +58449,12 @@ package android.webkit { } public class WebView extends android.widget.AbsoluteLayout implements android.view.ViewGroup.OnHierarchyChangeListener android.view.ViewTreeObserver.OnGlobalFocusChangeListener { - ctor public WebView(android.content.Context); - ctor public WebView(android.content.Context, android.util.AttributeSet); - ctor public WebView(android.content.Context, android.util.AttributeSet, int); - ctor public WebView(android.content.Context, android.util.AttributeSet, int, int); - ctor @Deprecated public WebView(android.content.Context, android.util.AttributeSet, int, boolean); - method public void addJavascriptInterface(Object, String); + ctor public WebView(@NonNull android.content.Context); + ctor public WebView(@NonNull android.content.Context, @Nullable android.util.AttributeSet); + ctor public WebView(@NonNull android.content.Context, @Nullable android.util.AttributeSet, int); + ctor public WebView(@NonNull android.content.Context, @Nullable android.util.AttributeSet, int, int); + ctor @Deprecated public WebView(@NonNull android.content.Context, @Nullable android.util.AttributeSet, int, boolean); + method public void addJavascriptInterface(@NonNull Object, @NonNull String); method public boolean canGoBack(); method public boolean canGoBackOrForward(int); method public boolean canGoForward(); @@ -54533,40 +58468,40 @@ package android.webkit { method public void clearMatches(); method public void clearSslPreferences(); method @Deprecated public void clearView(); - method public android.webkit.WebBackForwardList copyBackForwardList(); + method @NonNull public android.webkit.WebBackForwardList copyBackForwardList(); method @Deprecated public android.print.PrintDocumentAdapter createPrintDocumentAdapter(); - method public android.print.PrintDocumentAdapter createPrintDocumentAdapter(String); - method public android.webkit.WebMessagePort[] createWebMessageChannel(); + method @NonNull public android.print.PrintDocumentAdapter createPrintDocumentAdapter(@NonNull String); + method @NonNull public android.webkit.WebMessagePort[] createWebMessageChannel(); method public void destroy(); method public static void disableWebView(); - method public void documentHasImages(android.os.Message); + method public void documentHasImages(@NonNull android.os.Message); method public static void enableSlowWholeDocumentDraw(); - method public void evaluateJavascript(String, @Nullable android.webkit.ValueCallback<java.lang.String>); + method public void evaluateJavascript(@NonNull String, @Nullable android.webkit.ValueCallback<java.lang.String>); method @Deprecated @Nullable public static String findAddress(String); method @Deprecated public int findAll(String); - method public void findAllAsync(String); + method public void findAllAsync(@NonNull String); method public void findNext(boolean); method public void flingScroll(int, int); method @Deprecated public void freeMemory(); method @Nullable public android.net.http.SslCertificate getCertificate(); method @android.view.ViewDebug.ExportedProperty(category="webview") public int getContentHeight(); method @Nullable public static android.content.pm.PackageInfo getCurrentWebViewPackage(); - method public android.graphics.Bitmap getFavicon(); - method public android.webkit.WebView.HitTestResult getHitTestResult(); + method @Nullable public android.graphics.Bitmap getFavicon(); + method @NonNull public android.webkit.WebView.HitTestResult getHitTestResult(); method @Deprecated @Nullable public String[] getHttpAuthUsernamePassword(String, String); - method @android.view.ViewDebug.ExportedProperty(category="webview") public String getOriginalUrl(); + method @android.view.ViewDebug.ExportedProperty(category="webview") @Nullable public String getOriginalUrl(); method public int getProgress(); method public boolean getRendererPriorityWaivedWhenNotVisible(); method public int getRendererRequestedPriority(); method @NonNull public static android.net.Uri getSafeBrowsingPrivacyPolicyUrl(); method @Deprecated @android.view.ViewDebug.ExportedProperty(category="webview") public float getScale(); - method public android.webkit.WebSettings getSettings(); + method @NonNull public android.webkit.WebSettings getSettings(); method @NonNull public android.view.textclassifier.TextClassifier getTextClassifier(); - method @android.view.ViewDebug.ExportedProperty(category="webview") public String getTitle(); - method @android.view.ViewDebug.ExportedProperty(category="webview") public String getUrl(); + method @android.view.ViewDebug.ExportedProperty(category="webview") @Nullable public String getTitle(); + method @android.view.ViewDebug.ExportedProperty(category="webview") @Nullable public String getUrl(); method @Nullable public android.webkit.WebChromeClient getWebChromeClient(); method @NonNull public static ClassLoader getWebViewClassLoader(); - method public android.webkit.WebViewClient getWebViewClient(); + method @NonNull public android.webkit.WebViewClient getWebViewClient(); method @NonNull public android.os.Looper getWebViewLooper(); method @Nullable public android.webkit.WebViewRenderProcess getWebViewRenderProcess(); method @Nullable public android.webkit.WebViewRenderProcessClient getWebViewRenderProcessClient(); @@ -54575,10 +58510,10 @@ package android.webkit { method public void goForward(); method public void invokeZoomPicker(); method public boolean isPrivateBrowsingEnabled(); - method public void loadData(String, @Nullable String, @Nullable String); - method public void loadDataWithBaseURL(@Nullable String, String, @Nullable String, @Nullable String, @Nullable String); - method public void loadUrl(String, java.util.Map<java.lang.String,java.lang.String>); - method public void loadUrl(String); + method public void loadData(@NonNull String, @Nullable String, @Nullable String); + method public void loadDataWithBaseURL(@Nullable String, @NonNull String, @Nullable String, @Nullable String, @Nullable String); + method public void loadUrl(@NonNull String, @NonNull java.util.Map<java.lang.String,java.lang.String>); + method public void loadUrl(@NonNull String); method @Deprecated public void onChildViewAdded(android.view.View, android.view.View); method @Deprecated public void onChildViewRemoved(android.view.View, android.view.View); method @Deprecated public void onGlobalFocusChanged(android.view.View, android.view.View); @@ -54589,23 +58524,23 @@ package android.webkit { method public boolean pageDown(boolean); method public boolean pageUp(boolean); method public void pauseTimers(); - method public void postUrl(String, byte[]); - method public void postVisualStateCallback(long, android.webkit.WebView.VisualStateCallback); - method public void postWebMessage(android.webkit.WebMessage, android.net.Uri); + method public void postUrl(@NonNull String, @NonNull byte[]); + method public void postVisualStateCallback(long, @NonNull android.webkit.WebView.VisualStateCallback); + method public void postWebMessage(@NonNull android.webkit.WebMessage, @NonNull android.net.Uri); method public void reload(); method public void removeJavascriptInterface(@NonNull String); method public void requestFocusNodeHref(@Nullable android.os.Message); - method public void requestImageRef(android.os.Message); - method @Nullable public android.webkit.WebBackForwardList restoreState(android.os.Bundle); + method public void requestImageRef(@NonNull android.os.Message); + method @Nullable public android.webkit.WebBackForwardList restoreState(@NonNull android.os.Bundle); method public void resumeTimers(); method @Deprecated public void savePassword(String, String, String); - method @Nullable public android.webkit.WebBackForwardList saveState(android.os.Bundle); - method public void saveWebArchive(String); - method public void saveWebArchive(String, boolean, @Nullable android.webkit.ValueCallback<java.lang.String>); + method @Nullable public android.webkit.WebBackForwardList saveState(@NonNull android.os.Bundle); + method public void saveWebArchive(@NonNull String); + method public void saveWebArchive(@NonNull String, boolean, @Nullable android.webkit.ValueCallback<java.lang.String>); method @Deprecated public void setCertificate(android.net.http.SslCertificate); - method public static void setDataDirectorySuffix(String); - method public void setDownloadListener(android.webkit.DownloadListener); - method public void setFindListener(android.webkit.WebView.FindListener); + method public static void setDataDirectorySuffix(@NonNull String); + method public void setDownloadListener(@Nullable android.webkit.DownloadListener); + method public void setFindListener(@Nullable android.webkit.WebView.FindListener); method @Deprecated public void setHorizontalScrollbarOverlay(boolean); method @Deprecated public void setHttpAuthUsernamePassword(String, String, String, String); method public void setInitialScale(int); @@ -54616,9 +58551,9 @@ package android.webkit { method public static void setSafeBrowsingWhitelist(@NonNull java.util.List<java.lang.String>, @Nullable android.webkit.ValueCallback<java.lang.Boolean>); method public void setTextClassifier(@Nullable android.view.textclassifier.TextClassifier); method @Deprecated public void setVerticalScrollbarOverlay(boolean); - method public void setWebChromeClient(android.webkit.WebChromeClient); + method public void setWebChromeClient(@Nullable android.webkit.WebChromeClient); method public static void setWebContentsDebuggingEnabled(boolean); - method public void setWebViewClient(android.webkit.WebViewClient); + method public void setWebViewClient(@NonNull android.webkit.WebViewClient); method public void setWebViewRenderProcessClient(@NonNull java.util.concurrent.Executor, @NonNull android.webkit.WebViewRenderProcessClient); method public void setWebViewRenderProcessClient(@Nullable android.webkit.WebViewRenderProcessClient); method @Deprecated public boolean shouldDelayChildPressedState(); @@ -54666,8 +58601,8 @@ package android.webkit { public class WebView.WebViewTransport { ctor public WebView.WebViewTransport(); - method public android.webkit.WebView getWebView(); - method public void setWebView(android.webkit.WebView); + method @Nullable public android.webkit.WebView getWebView(); + method public void setWebView(@Nullable android.webkit.WebView); } public class WebViewClient { @@ -56065,12 +60000,12 @@ package android.widget { ctor public Magnifier.Builder(@NonNull android.view.View); method @NonNull public android.widget.Magnifier build(); method @NonNull public android.widget.Magnifier.Builder setClippingEnabled(boolean); - method @NonNull public android.widget.Magnifier.Builder setCornerRadius(@Px @FloatRange(from=0) float); + method @NonNull public android.widget.Magnifier.Builder setCornerRadius(@FloatRange(from=0) @Px float); method @NonNull public android.widget.Magnifier.Builder setDefaultSourceToMagnifierOffset(@Px int, @Px int); - method @NonNull public android.widget.Magnifier.Builder setElevation(@Px @FloatRange(from=0) float); + method @NonNull public android.widget.Magnifier.Builder setElevation(@FloatRange(from=0) @Px float); method @NonNull public android.widget.Magnifier.Builder setInitialZoom(@FloatRange(from=0.0f) float); method @NonNull public android.widget.Magnifier.Builder setOverlay(@Nullable android.graphics.drawable.Drawable); - method @NonNull public android.widget.Magnifier.Builder setSize(@Px @IntRange(from=0) int, @Px @IntRange(from=0) int); + method @NonNull public android.widget.Magnifier.Builder setSize(@IntRange(from=0) @Px int, @IntRange(from=0) @Px int); method @NonNull public android.widget.Magnifier.Builder setSourceBounds(int, int, int, int); } @@ -56498,7 +60433,7 @@ package android.widget { method public int describeContents(); method public int getLayoutId(); method public String getPackage(); - method public boolean onLoadClass(Class); + method @Deprecated public boolean onLoadClass(Class); method public void reapply(android.content.Context, android.view.View); method public void removeAllViews(int); method public void setAccessibilityTraversalAfter(int, int); @@ -56564,7 +60499,7 @@ package android.widget { method @NonNull public static android.widget.RemoteViews.RemoteResponse fromPendingIntent(@NonNull android.app.PendingIntent); } - @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) public static @interface RemoteViews.RemoteView { + @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE}) public static @interface RemoteViews.RemoteView { } public abstract class RemoteViewsService extends android.app.Service { @@ -56940,66 +60875,66 @@ package android.widget { method public void setTrackTintMode(@Nullable android.graphics.PorterDuff.Mode); } - public class TabHost extends android.widget.FrameLayout implements android.view.ViewTreeObserver.OnTouchModeChangeListener { - ctor public TabHost(android.content.Context); - ctor public TabHost(android.content.Context, android.util.AttributeSet); - ctor public TabHost(android.content.Context, android.util.AttributeSet, int); - ctor public TabHost(android.content.Context, android.util.AttributeSet, int, int); - method public void addTab(android.widget.TabHost.TabSpec); - method public void clearAllTabs(); - method @Nullable public int getCurrentTab(); - method @Nullable public String getCurrentTabTag(); - method @Nullable public android.view.View getCurrentTabView(); - method public android.view.View getCurrentView(); - method public android.widget.FrameLayout getTabContentView(); - method public android.widget.TabWidget getTabWidget(); - method @NonNull public android.widget.TabHost.TabSpec newTabSpec(@NonNull String); - method public void onTouchModeChanged(boolean); - method public void setCurrentTab(int); - method public void setCurrentTabByTag(String); - method public void setOnTabChangedListener(android.widget.TabHost.OnTabChangeListener); - method public void setup(); - method public void setup(android.app.LocalActivityManager); - } - - public static interface TabHost.OnTabChangeListener { - method public void onTabChanged(String); - } - - public static interface TabHost.TabContentFactory { - method public android.view.View createTabContent(String); - } - - public class TabHost.TabSpec { - method @NonNull public String getTag(); - method public android.widget.TabHost.TabSpec setContent(int); - method public android.widget.TabHost.TabSpec setContent(android.widget.TabHost.TabContentFactory); - method public android.widget.TabHost.TabSpec setContent(android.content.Intent); - method public android.widget.TabHost.TabSpec setIndicator(CharSequence); - method public android.widget.TabHost.TabSpec setIndicator(CharSequence, android.graphics.drawable.Drawable); - method public android.widget.TabHost.TabSpec setIndicator(android.view.View); - } - - public class TabWidget extends android.widget.LinearLayout implements android.view.View.OnFocusChangeListener { - ctor public TabWidget(android.content.Context); - ctor public TabWidget(android.content.Context, android.util.AttributeSet); - ctor public TabWidget(android.content.Context, android.util.AttributeSet, int); - ctor public TabWidget(android.content.Context, android.util.AttributeSet, int, int); - method public void dispatchDraw(android.graphics.Canvas); - method public void focusCurrentTab(int); - method public android.view.View getChildTabViewAt(int); - method @Nullable public android.graphics.drawable.Drawable getLeftStripDrawable(); - method @Nullable public android.graphics.drawable.Drawable getRightStripDrawable(); - method public int getTabCount(); - method public boolean isStripEnabled(); - method public void onFocusChange(android.view.View, boolean); - method public void setCurrentTab(int); - method public void setDividerDrawable(@DrawableRes int); - method public void setLeftStripDrawable(@Nullable android.graphics.drawable.Drawable); - method public void setLeftStripDrawable(@DrawableRes int); - method public void setRightStripDrawable(@Nullable android.graphics.drawable.Drawable); - method public void setRightStripDrawable(@DrawableRes int); - method public void setStripEnabled(boolean); + @Deprecated public class TabHost extends android.widget.FrameLayout implements android.view.ViewTreeObserver.OnTouchModeChangeListener { + ctor @Deprecated public TabHost(android.content.Context); + ctor @Deprecated public TabHost(android.content.Context, android.util.AttributeSet); + ctor @Deprecated public TabHost(android.content.Context, android.util.AttributeSet, int); + ctor @Deprecated public TabHost(android.content.Context, android.util.AttributeSet, int, int); + method @Deprecated public void addTab(android.widget.TabHost.TabSpec); + method @Deprecated public void clearAllTabs(); + method @Deprecated @Nullable public int getCurrentTab(); + method @Deprecated @Nullable public String getCurrentTabTag(); + method @Deprecated @Nullable public android.view.View getCurrentTabView(); + method @Deprecated public android.view.View getCurrentView(); + method @Deprecated public android.widget.FrameLayout getTabContentView(); + method @Deprecated public android.widget.TabWidget getTabWidget(); + method @Deprecated @NonNull public android.widget.TabHost.TabSpec newTabSpec(@NonNull String); + method @Deprecated public void onTouchModeChanged(boolean); + method @Deprecated public void setCurrentTab(int); + method @Deprecated public void setCurrentTabByTag(String); + method @Deprecated public void setOnTabChangedListener(android.widget.TabHost.OnTabChangeListener); + method @Deprecated public void setup(); + method @Deprecated public void setup(android.app.LocalActivityManager); + } + + @Deprecated public static interface TabHost.OnTabChangeListener { + method @Deprecated public void onTabChanged(String); + } + + @Deprecated public static interface TabHost.TabContentFactory { + method @Deprecated public android.view.View createTabContent(String); + } + + @Deprecated public class TabHost.TabSpec { + method @Deprecated @NonNull public String getTag(); + method @Deprecated public android.widget.TabHost.TabSpec setContent(int); + method @Deprecated public android.widget.TabHost.TabSpec setContent(android.widget.TabHost.TabContentFactory); + method @Deprecated public android.widget.TabHost.TabSpec setContent(android.content.Intent); + method @Deprecated public android.widget.TabHost.TabSpec setIndicator(CharSequence); + method @Deprecated public android.widget.TabHost.TabSpec setIndicator(CharSequence, android.graphics.drawable.Drawable); + method @Deprecated public android.widget.TabHost.TabSpec setIndicator(android.view.View); + } + + @Deprecated public class TabWidget extends android.widget.LinearLayout implements android.view.View.OnFocusChangeListener { + ctor @Deprecated public TabWidget(android.content.Context); + ctor @Deprecated public TabWidget(android.content.Context, android.util.AttributeSet); + ctor @Deprecated public TabWidget(android.content.Context, android.util.AttributeSet, int); + ctor @Deprecated public TabWidget(android.content.Context, android.util.AttributeSet, int, int); + method @Deprecated public void dispatchDraw(android.graphics.Canvas); + method @Deprecated public void focusCurrentTab(int); + method @Deprecated public android.view.View getChildTabViewAt(int); + method @Deprecated @Nullable public android.graphics.drawable.Drawable getLeftStripDrawable(); + method @Deprecated @Nullable public android.graphics.drawable.Drawable getRightStripDrawable(); + method @Deprecated public int getTabCount(); + method @Deprecated public boolean isStripEnabled(); + method @Deprecated public void onFocusChange(android.view.View, boolean); + method @Deprecated public void setCurrentTab(int); + method @Deprecated public void setDividerDrawable(@DrawableRes int); + method @Deprecated public void setLeftStripDrawable(@Nullable android.graphics.drawable.Drawable); + method @Deprecated public void setLeftStripDrawable(@DrawableRes int); + method @Deprecated public void setRightStripDrawable(@Nullable android.graphics.drawable.Drawable); + method @Deprecated public void setRightStripDrawable(@DrawableRes int); + method @Deprecated public void setStripEnabled(boolean); } public class TableLayout extends android.widget.LinearLayout { @@ -57056,6 +60991,7 @@ package android.widget { method @android.view.ViewDebug.ExportedProperty public CharSequence getFormat24Hour(); method public String getTimeZone(); method public boolean is24HourModeEnabled(); + method public void refreshTime(); method public void setFormat12Hour(CharSequence); method public void setFormat24Hour(CharSequence); method public void setTimeZone(String); @@ -57178,6 +61114,7 @@ package android.widget { method @Nullable public android.graphics.drawable.Drawable getTextSelectHandleLeft(); method @Nullable public android.graphics.drawable.Drawable getTextSelectHandleRight(); method @android.view.ViewDebug.ExportedProperty(category="text") public float getTextSize(); + method public int getTextSizeUnit(); method public int getTotalPaddingBottom(); method public int getTotalPaddingEnd(); method public int getTotalPaddingLeft(); @@ -57208,7 +61145,7 @@ package android.widget { method public boolean onPrivateIMECommand(String, android.os.Bundle); method public void onRestoreInstanceState(android.os.Parcelable); method public android.os.Parcelable onSaveInstanceState(); - method protected void onSelectionChanged(int, int); + method @CallSuper protected void onSelectionChanged(int, int); method protected void onTextChanged(CharSequence, int, int, int); method public boolean onTextContextMenuItem(int); method public void removeTextChangedListener(android.text.TextWatcher); @@ -57240,7 +61177,7 @@ package android.widget { method public void setExtractedText(android.view.inputmethod.ExtractedText); method public void setFallbackLineSpacing(boolean); method public void setFilters(android.text.InputFilter[]); - method public void setFirstBaselineToTopHeight(@Px @IntRange(from=0) int); + method public void setFirstBaselineToTopHeight(@IntRange(from=0) @Px int); method public void setFontFeatureSettings(@Nullable String); method public boolean setFontVariationSettings(@Nullable String); method protected boolean setFrame(int, int, int, int); @@ -57262,9 +61199,9 @@ package android.widget { method public void setInputType(int); method public void setJustificationMode(int); method public void setKeyListener(android.text.method.KeyListener); - method public void setLastBaselineToBottomHeight(@Px @IntRange(from=0) int); + method public void setLastBaselineToBottomHeight(@IntRange(from=0) @Px int); method public void setLetterSpacing(float); - method public void setLineHeight(@Px @IntRange(from=0) int); + method public void setLineHeight(@IntRange(from=0) @Px int); method public void setLineSpacing(float, float); method public void setLines(int); method public final void setLinkTextColor(@ColorInt int); @@ -57370,27 +61307,35 @@ package android.widget { public class Toast { ctor public Toast(android.content.Context); + method public void addCallback(@NonNull android.widget.Toast.Callback); method public void cancel(); method public int getDuration(); method public int getGravity(); method public float getHorizontalMargin(); method public float getVerticalMargin(); - method public android.view.View getView(); + method @Deprecated @Nullable public android.view.View getView(); method public int getXOffset(); method public int getYOffset(); method public static android.widget.Toast makeText(android.content.Context, CharSequence, int); method public static android.widget.Toast makeText(android.content.Context, @StringRes int, int) throws android.content.res.Resources.NotFoundException; + method public void removeCallback(@NonNull android.widget.Toast.Callback); method public void setDuration(int); method public void setGravity(int, int, int); method public void setMargin(float, float); method public void setText(@StringRes int); method public void setText(CharSequence); - method public void setView(android.view.View); + method @Deprecated public void setView(android.view.View); method public void show(); field public static final int LENGTH_LONG = 1; // 0x1 field public static final int LENGTH_SHORT = 0; // 0x0 } + public abstract static class Toast.Callback { + ctor public Toast.Callback(); + method public void onToastHidden(); + method public void onToastShown(); + } + public class ToggleButton extends android.widget.CompoundButton { ctor public ToggleButton(android.content.Context, android.util.AttributeSet, int, int); ctor public ToggleButton(android.content.Context, android.util.AttributeSet, int); @@ -57626,6 +61571,38 @@ package android.widget { } +package android.widget.inline { + + public class InlineContentView extends android.view.ViewGroup { + method @Nullable public android.view.SurfaceControl getSurfaceControl(); + method public boolean isZOrderedOnTop(); + method public void onLayout(boolean, int, int, int, int); + method public void setSurfaceControlCallback(@Nullable android.widget.inline.InlineContentView.SurfaceControlCallback); + method public boolean setZOrderedOnTop(boolean); + } + + public static interface InlineContentView.SurfaceControlCallback { + method public void onCreated(@NonNull android.view.SurfaceControl); + method public void onDestroyed(@NonNull android.view.SurfaceControl); + } + + public final class InlinePresentationSpec implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.util.Size getMaxSize(); + method @NonNull public android.util.Size getMinSize(); + method @NonNull public android.os.Bundle getStyle(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.widget.inline.InlinePresentationSpec> CREATOR; + } + + public static final class InlinePresentationSpec.Builder { + ctor public InlinePresentationSpec.Builder(@NonNull android.util.Size, @NonNull android.util.Size); + method @NonNull public android.widget.inline.InlinePresentationSpec build(); + method @NonNull public android.widget.inline.InlinePresentationSpec.Builder setStyle(@NonNull android.os.Bundle); + } + +} + package dalvik.annotation { @Deprecated @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target({java.lang.annotation.ElementType.ANNOTATION_TYPE}) public @interface TestTarget { @@ -60319,7 +64296,7 @@ package java.lang { ctor public OutOfMemoryError(String); } - @java.lang.annotation.Target(java.lang.annotation.ElementType.METHOD) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public @interface Override { + @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) @java.lang.annotation.Target(java.lang.annotation.ElementType.METHOD) public @interface Override { } public class Package implements java.lang.reflect.AnnotatedElement { @@ -60811,9 +64788,9 @@ package java.lang { method @NonNull public StringBuilder reverse(); method public void setCharAt(int, char); method public void setLength(int); - method public CharSequence subSequence(int, int); - method public String substring(int); - method public String substring(int, int); + method @NonNull public CharSequence subSequence(int, int); + method @NonNull public String substring(int); + method @NonNull public String substring(int, int); method public void trimToSize(); } @@ -60823,7 +64800,7 @@ package java.lang { ctor public StringIndexOutOfBoundsException(int); } - @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE, java.lang.annotation.ElementType.FIELD, java.lang.annotation.ElementType.METHOD, java.lang.annotation.ElementType.PARAMETER, java.lang.annotation.ElementType.CONSTRUCTOR, java.lang.annotation.ElementType.LOCAL_VARIABLE}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public @interface SuppressWarnings { + @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE, java.lang.annotation.ElementType.FIELD, java.lang.annotation.ElementType.METHOD, java.lang.annotation.ElementType.PARAMETER, java.lang.annotation.ElementType.CONSTRUCTOR, java.lang.annotation.ElementType.LOCAL_VARIABLE}) public @interface SuppressWarnings { method public abstract String[] value(); } @@ -68446,6 +72423,7 @@ package java.time.chrono { method public static java.time.chrono.JapaneseEra[] values(); field public static final java.time.chrono.JapaneseEra HEISEI; field public static final java.time.chrono.JapaneseEra MEIJI; + field public static final java.time.chrono.JapaneseEra REIWA; field public static final java.time.chrono.JapaneseEra SHOWA; field public static final java.time.chrono.JapaneseEra TAISHO; } @@ -69960,6 +73938,18 @@ package java.util { method public int lastIndexOf(@Nullable Object); method @NonNull public java.util.ListIterator<E> listIterator(); method @NonNull public java.util.ListIterator<E> listIterator(int); + method @NonNull public static <E> java.util.List<E> of(); + method @NonNull public static <E> java.util.List<E> of(@NonNull E); + method @NonNull public static <E> java.util.List<E> of(@NonNull E, @NonNull E); + method @NonNull public static <E> java.util.List<E> of(@NonNull E, @NonNull E, @NonNull E); + method @NonNull public static <E> java.util.List<E> of(@NonNull E, @NonNull E, @NonNull E, @NonNull E); + method @NonNull public static <E> java.util.List<E> of(@NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E); + method @NonNull public static <E> java.util.List<E> of(@NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E); + method @NonNull public static <E> java.util.List<E> of(@NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E); + method @NonNull public static <E> java.util.List<E> of(@NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E); + method @NonNull public static <E> java.util.List<E> of(@NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E); + method @NonNull public static <E> java.util.List<E> of(@NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E); + method @NonNull @java.lang.SafeVarargs public static <E> java.util.List<E> of(@NonNull E...); method public E remove(int); method public default void replaceAll(@NonNull java.util.function.UnaryOperator<E>); method public E set(int, E); @@ -70114,6 +74104,7 @@ package java.util { method @Nullable public default V computeIfPresent(K, @NonNull java.util.function.BiFunction<? super K,? super V,? extends V>); method public boolean containsKey(@Nullable Object); method public boolean containsValue(@Nullable Object); + method @NonNull public static <K, V> java.util.Map.Entry<K,V> entry(@NonNull K, @NonNull V); method @NonNull public java.util.Set<java.util.Map.Entry<K,V>> entrySet(); method public boolean equals(@Nullable Object); method public default void forEach(@NonNull java.util.function.BiConsumer<? super K,? super V>); @@ -70123,6 +74114,18 @@ package java.util { method public boolean isEmpty(); method @NonNull public java.util.Set<K> keySet(); method @Nullable public default V merge(K, @NonNull V, @NonNull java.util.function.BiFunction<? super V,? super V,? extends V>); + method @NonNull public static <K, V> java.util.Map<K,V> of(); + method @NonNull public static <K, V> java.util.Map<K,V> of(@NonNull K, @NonNull V); + method @NonNull public static <K, V> java.util.Map<K,V> of(@NonNull K, @NonNull V, @NonNull K, @NonNull V); + method @NonNull public static <K, V> java.util.Map<K,V> of(@NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V); + method @NonNull public static <K, V> java.util.Map<K,V> of(@NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V); + method @NonNull public static <K, V> java.util.Map<K,V> of(@NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V); + method @NonNull public static <K, V> java.util.Map<K,V> of(@NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V); + method @NonNull public static <K, V> java.util.Map<K,V> of(@NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V); + method @NonNull public static <K, V> java.util.Map<K,V> of(@NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V); + method @NonNull public static <K, V> java.util.Map<K,V> of(@NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V); + method @NonNull public static <K, V> java.util.Map<K,V> of(@NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V); + method @NonNull @java.lang.SafeVarargs public static <K, V> java.util.Map<K,V> ofEntries(@NonNull java.util.Map.Entry<? extends K,? extends V>...); method @Nullable public V put(K, V); method public void putAll(@NonNull java.util.Map<? extends K,? extends V>); method @Nullable public default V putIfAbsent(K, V); @@ -70204,6 +74207,9 @@ package java.util { } public final class Objects { + method public static int checkFromIndexSize(int, int, int); + method public static int checkFromToIndex(int, int, int); + method public static int checkIndex(int, int); method public static <T> int compare(T, T, @NonNull java.util.Comparator<? super T>); method public static boolean deepEquals(@Nullable Object, @Nullable Object); method public static boolean equals(@Nullable Object, @Nullable Object); @@ -70214,6 +74220,8 @@ package java.util { method @NonNull public static <T> T requireNonNull(@Nullable T); method @NonNull public static <T> T requireNonNull(@Nullable T, @NonNull String); method @NonNull public static <T> T requireNonNull(@Nullable T, @NonNull java.util.function.Supplier<java.lang.String>); + method @NonNull public static <T> T requireNonNullElse(@Nullable T, @NonNull T); + method @NonNull public static <T> T requireNonNullElseGet(@Nullable T, @NonNull java.util.function.Supplier<? extends T>); method @NonNull public static String toString(@Nullable Object); method @NonNull public static String toString(@Nullable Object, @NonNull String); } @@ -70518,6 +74526,18 @@ package java.util { } public interface Set<E> extends java.util.Collection<E> { + method @NonNull public static <E> java.util.Set<E> of(); + method @NonNull public static <E> java.util.Set<E> of(@NonNull E); + method @NonNull public static <E> java.util.Set<E> of(@NonNull E, @NonNull E); + method @NonNull public static <E> java.util.Set<E> of(@NonNull E, @NonNull E, @NonNull E); + method @NonNull public static <E> java.util.Set<E> of(@NonNull E, @NonNull E, @NonNull E, @NonNull E); + method @NonNull public static <E> java.util.Set<E> of(@NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E); + method @NonNull public static <E> java.util.Set<E> of(@NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E); + method @NonNull public static <E> java.util.Set<E> of(@NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E); + method @NonNull public static <E> java.util.Set<E> of(@NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E); + method @NonNull public static <E> java.util.Set<E> of(@NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E); + method @NonNull public static <E> java.util.Set<E> of(@NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E); + method @NonNull @java.lang.SafeVarargs public static <E> java.util.Set<E> of(@NonNull E...); } public class SimpleTimeZone extends java.util.TimeZone { @@ -71146,20 +75166,20 @@ package java.util.concurrent { method public boolean addAll(@NonNull java.util.Collection<? extends K>); method public final void clear(); method public boolean contains(@NonNull Object); - method public final boolean containsAll(java.util.Collection<?>); + method public final boolean containsAll(@NonNull java.util.Collection<?>); method public void forEach(@NonNull java.util.function.Consumer<? super K>); - method public java.util.concurrent.ConcurrentHashMap<K,V> getMap(); + method @NonNull public java.util.concurrent.ConcurrentHashMap<K,V> getMap(); method @Nullable public V getMappedValue(); method public final boolean isEmpty(); method @NonNull public java.util.Iterator<K> iterator(); method public boolean remove(@NonNull Object); - method public final boolean removeAll(java.util.Collection<?>); - method public final boolean retainAll(java.util.Collection<?>); + method public final boolean removeAll(@NonNull java.util.Collection<?>); + method public final boolean retainAll(@NonNull java.util.Collection<?>); method public final int size(); method @NonNull public java.util.Spliterator<K> spliterator(); - method public final Object[] toArray(); - method public final <T> T[] toArray(T[]); - method public final String toString(); + method @NonNull public final Object[] toArray(); + method @NonNull public final <T> T[] toArray(@NonNull T[]); + method @NonNull public final String toString(); } public class ConcurrentLinkedDeque<E> extends java.util.AbstractCollection<E> implements java.util.Deque<E> java.io.Serializable { @@ -71456,6 +75476,29 @@ package java.util.concurrent { method public static java.util.concurrent.ScheduledExecutorService unconfigurableScheduledExecutorService(java.util.concurrent.ScheduledExecutorService); } + public final class Flow { + method public static int defaultBufferSize(); + } + + public static interface Flow.Processor<T, R> extends java.util.concurrent.Flow.Subscriber<T> java.util.concurrent.Flow.Publisher<R> { + } + + @java.lang.FunctionalInterface public static interface Flow.Publisher<T> { + method public void subscribe(java.util.concurrent.Flow.Subscriber<? super T>); + } + + public static interface Flow.Subscriber<T> { + method public void onComplete(); + method public void onError(Throwable); + method public void onNext(T); + method public void onSubscribe(java.util.concurrent.Flow.Subscription); + } + + public static interface Flow.Subscription { + method public void cancel(); + method public void request(long); + } + public class ForkJoinPool extends java.util.concurrent.AbstractExecutorService { ctor public ForkJoinPool(); ctor public ForkJoinPool(int); @@ -73099,7 +77142,7 @@ package java.util.logging { method public void logp(@NonNull java.util.logging.Level, @Nullable String, @Nullable String, @Nullable String); method public void logp(@NonNull java.util.logging.Level, @Nullable String, @Nullable String, @NonNull java.util.function.Supplier<java.lang.String>); method public void logp(@NonNull java.util.logging.Level, @Nullable String, @Nullable String, @Nullable String, @Nullable Object); - method public void logp(@NonNull java.util.logging.Level, @Nullable String, @Nullable String, @Nullable String, Object[]); + method public void logp(@NonNull java.util.logging.Level, @Nullable String, @Nullable String, @Nullable String, @Nullable Object[]); method public void logp(@NonNull java.util.logging.Level, @Nullable String, @Nullable String, @Nullable String, @Nullable Throwable); method public void logp(@NonNull java.util.logging.Level, @Nullable String, @Nullable String, @Nullable Throwable, @NonNull java.util.function.Supplier<java.lang.String>); method @Deprecated public void logrb(@NonNull java.util.logging.Level, @Nullable String, @Nullable String, @Nullable String, @Nullable String); diff --git a/api/lint-baseline.txt b/api/lint-baseline.txt new file mode 100644 index 000000000000..83c78fe9578b --- /dev/null +++ b/api/lint-baseline.txt @@ -0,0 +1,1273 @@ +// Baseline format: 1.0 +AcronymName: android.system.ErrnoException#rethrowAsIOException(): + + + +ActionValue: android.provider.Settings#ACTION_CONDITION_PROVIDER_SETTINGS: + + + +AllUpper: android.media.MediaCodecInfo.CodecCapabilities#FEATURE_LowLatency: + + + +ArrayReturn: android.app.Notification.MessagingStyle.Message#getMessagesFromBundleArray(android.os.Parcelable[]) parameter #0: + +ArrayReturn: android.content.ContentProviderOperation#resolveExtrasBackReferences(android.content.ContentProviderResult[], int) parameter #0: + +ArrayReturn: android.location.GnssAntennaInfo.SphericalCorrections#SphericalCorrections(double[][], double[][]) parameter #0: + Method parameter should be Collection<> (or subclass) instead of raw array; was `double[][]` +ArrayReturn: android.location.GnssAntennaInfo.SphericalCorrections#SphericalCorrections(double[][], double[][]) parameter #1: + Method parameter should be Collection<> (or subclass) instead of raw array; was `double[][]` +ArrayReturn: android.location.GnssAntennaInfo.SphericalCorrections#getCorrectionUncertaintiesArray(): + Method should return Collection<> (or subclass) instead of raw array; was `double[][]` +ArrayReturn: android.location.GnssAntennaInfo.SphericalCorrections#getCorrectionsArray(): + Method should return Collection<> (or subclass) instead of raw array; was `double[][]` +ArrayReturn: android.service.autofill.FillResponse.Builder#setAuthentication(android.view.autofill.AutofillId[], android.content.IntentSender, android.widget.RemoteViews, android.service.autofill.InlinePresentation) parameter #0: + Method parameter should be Collection<AutofillId> (or subclass) instead of raw array; was `android.view.autofill.AutofillId[]` + + +BroadcastBehavior: android.app.AlarmManager#ACTION_NEXT_ALARM_CLOCK_CHANGED: + +BroadcastBehavior: android.app.admin.DevicePolicyManager#ACTION_APPLICATION_DELEGATION_SCOPES_CHANGED: + +BroadcastBehavior: android.app.admin.DevicePolicyManager#ACTION_MANAGED_PROFILE_PROVISIONED: + +BroadcastBehavior: android.bluetooth.BluetoothAdapter#ACTION_DISCOVERY_FINISHED: + +BroadcastBehavior: android.bluetooth.BluetoothAdapter#ACTION_DISCOVERY_STARTED: + +BroadcastBehavior: android.bluetooth.BluetoothAdapter#ACTION_LOCAL_NAME_CHANGED: + +BroadcastBehavior: android.bluetooth.BluetoothAdapter#ACTION_SCAN_MODE_CHANGED: + +BroadcastBehavior: android.bluetooth.BluetoothAdapter#ACTION_STATE_CHANGED: + +BroadcastBehavior: android.bluetooth.BluetoothDevice#ACTION_ACL_CONNECTED: + +BroadcastBehavior: android.bluetooth.BluetoothDevice#ACTION_ACL_DISCONNECTED: + +BroadcastBehavior: android.bluetooth.BluetoothDevice#ACTION_ACL_DISCONNECT_REQUESTED: + +BroadcastBehavior: android.bluetooth.BluetoothDevice#ACTION_BOND_STATE_CHANGED: + +BroadcastBehavior: android.bluetooth.BluetoothDevice#ACTION_CLASS_CHANGED: + +BroadcastBehavior: android.bluetooth.BluetoothDevice#ACTION_FOUND: + +BroadcastBehavior: android.bluetooth.BluetoothDevice#ACTION_NAME_CHANGED: + +BroadcastBehavior: android.bluetooth.BluetoothDevice#ACTION_PAIRING_REQUEST: + +BroadcastBehavior: android.bluetooth.BluetoothDevice#ACTION_UUID: + +BroadcastBehavior: android.content.Intent#ACTION_AIRPLANE_MODE_CHANGED: + +BroadcastBehavior: android.content.Intent#ACTION_APPLICATION_RESTRICTIONS_CHANGED: + +BroadcastBehavior: android.content.Intent#ACTION_BATTERY_CHANGED: + +BroadcastBehavior: android.content.Intent#ACTION_BATTERY_LOW: + +BroadcastBehavior: android.content.Intent#ACTION_BATTERY_OKAY: + +BroadcastBehavior: android.content.Intent#ACTION_CAMERA_BUTTON: + +BroadcastBehavior: android.content.Intent#ACTION_CLOSE_SYSTEM_DIALOGS: + +BroadcastBehavior: android.content.Intent#ACTION_CONFIGURATION_CHANGED: + +BroadcastBehavior: android.content.Intent#ACTION_DATE_CHANGED: + +BroadcastBehavior: android.content.Intent#ACTION_DEVICE_STORAGE_LOW: + +BroadcastBehavior: android.content.Intent#ACTION_DEVICE_STORAGE_OK: + +BroadcastBehavior: android.content.Intent#ACTION_DOCK_EVENT: + +BroadcastBehavior: android.content.Intent#ACTION_DREAMING_STARTED: + +BroadcastBehavior: android.content.Intent#ACTION_DREAMING_STOPPED: + +BroadcastBehavior: android.content.Intent#ACTION_EXTERNAL_APPLICATIONS_AVAILABLE: + +BroadcastBehavior: android.content.Intent#ACTION_EXTERNAL_APPLICATIONS_UNAVAILABLE: + +BroadcastBehavior: android.content.Intent#ACTION_GTALK_SERVICE_CONNECTED: + +BroadcastBehavior: android.content.Intent#ACTION_GTALK_SERVICE_DISCONNECTED: + +BroadcastBehavior: android.content.Intent#ACTION_HEADSET_PLUG: + +BroadcastBehavior: android.content.Intent#ACTION_INPUT_METHOD_CHANGED: + +BroadcastBehavior: android.content.Intent#ACTION_LOCALE_CHANGED: + +BroadcastBehavior: android.content.Intent#ACTION_LOCKED_BOOT_COMPLETED: + +BroadcastBehavior: android.content.Intent#ACTION_MANAGE_PACKAGE_STORAGE: + +BroadcastBehavior: android.content.Intent#ACTION_MEDIA_BAD_REMOVAL: + +BroadcastBehavior: android.content.Intent#ACTION_MEDIA_BUTTON: + +BroadcastBehavior: android.content.Intent#ACTION_MEDIA_CHECKING: + +BroadcastBehavior: android.content.Intent#ACTION_MEDIA_EJECT: + +BroadcastBehavior: android.content.Intent#ACTION_MEDIA_MOUNTED: + +BroadcastBehavior: android.content.Intent#ACTION_MEDIA_NOFS: + +BroadcastBehavior: android.content.Intent#ACTION_MEDIA_REMOVED: + +BroadcastBehavior: android.content.Intent#ACTION_MEDIA_SCANNER_FINISHED: + +BroadcastBehavior: android.content.Intent#ACTION_MEDIA_SCANNER_SCAN_FILE: + +BroadcastBehavior: android.content.Intent#ACTION_MEDIA_SCANNER_STARTED: + +BroadcastBehavior: android.content.Intent#ACTION_MEDIA_SHARED: + +BroadcastBehavior: android.content.Intent#ACTION_MEDIA_UNMOUNTABLE: + +BroadcastBehavior: android.content.Intent#ACTION_MEDIA_UNMOUNTED: + +BroadcastBehavior: android.content.Intent#ACTION_MY_PACKAGE_REPLACED: + +BroadcastBehavior: android.content.Intent#ACTION_MY_PACKAGE_SUSPENDED: + +BroadcastBehavior: android.content.Intent#ACTION_MY_PACKAGE_UNSUSPENDED: + +BroadcastBehavior: android.content.Intent#ACTION_NEW_OUTGOING_CALL: + +BroadcastBehavior: android.content.Intent#ACTION_PACKAGES_SUSPENDED: + +BroadcastBehavior: android.content.Intent#ACTION_PACKAGES_UNSUSPENDED: + +BroadcastBehavior: android.content.Intent#ACTION_PACKAGE_ADDED: + +BroadcastBehavior: android.content.Intent#ACTION_PACKAGE_CHANGED: + +BroadcastBehavior: android.content.Intent#ACTION_PACKAGE_DATA_CLEARED: + +BroadcastBehavior: android.content.Intent#ACTION_PACKAGE_FIRST_LAUNCH: + +BroadcastBehavior: android.content.Intent#ACTION_PACKAGE_FULLY_REMOVED: + +BroadcastBehavior: android.content.Intent#ACTION_PACKAGE_INSTALL: + +BroadcastBehavior: android.content.Intent#ACTION_PACKAGE_NEEDS_VERIFICATION: + +BroadcastBehavior: android.content.Intent#ACTION_PACKAGE_REMOVED: + +BroadcastBehavior: android.content.Intent#ACTION_PACKAGE_REPLACED: + +BroadcastBehavior: android.content.Intent#ACTION_PACKAGE_RESTARTED: + +BroadcastBehavior: android.content.Intent#ACTION_PACKAGE_VERIFIED: + +BroadcastBehavior: android.content.Intent#ACTION_POWER_CONNECTED: + +BroadcastBehavior: android.content.Intent#ACTION_POWER_DISCONNECTED: + +BroadcastBehavior: android.content.Intent#ACTION_PROVIDER_CHANGED: + +BroadcastBehavior: android.content.Intent#ACTION_REBOOT: + +BroadcastBehavior: android.content.Intent#ACTION_SCREEN_OFF: + +BroadcastBehavior: android.content.Intent#ACTION_SCREEN_ON: + +BroadcastBehavior: android.content.Intent#ACTION_SHUTDOWN: + +BroadcastBehavior: android.content.Intent#ACTION_TIMEZONE_CHANGED: + +BroadcastBehavior: android.content.Intent#ACTION_TIME_CHANGED: + +BroadcastBehavior: android.content.Intent#ACTION_TIME_TICK: + +BroadcastBehavior: android.content.Intent#ACTION_UID_REMOVED: + +BroadcastBehavior: android.content.Intent#ACTION_UMS_CONNECTED: + +BroadcastBehavior: android.content.Intent#ACTION_UMS_DISCONNECTED: + +BroadcastBehavior: android.content.Intent#ACTION_USER_PRESENT: + +BroadcastBehavior: android.content.Intent#ACTION_USER_UNLOCKED: + +BroadcastBehavior: android.content.Intent#ACTION_WALLPAPER_CHANGED: + +BroadcastBehavior: android.content.pm.PackageInstaller#ACTION_SESSION_COMMITTED: + +BroadcastBehavior: android.content.pm.PackageInstaller#ACTION_SESSION_UPDATED: + +BroadcastBehavior: android.hardware.Camera#ACTION_NEW_PICTURE: + +BroadcastBehavior: android.hardware.Camera#ACTION_NEW_VIDEO: + +BroadcastBehavior: android.hardware.input.InputManager#ACTION_QUERY_KEYBOARD_LAYOUTS: + +BroadcastBehavior: android.hardware.usb.UsbManager#ACTION_USB_ACCESSORY_DETACHED: + +BroadcastBehavior: android.hardware.usb.UsbManager#ACTION_USB_DEVICE_DETACHED: + +BroadcastBehavior: android.media.AudioManager#ACTION_HDMI_AUDIO_PLUG: + +BroadcastBehavior: android.media.AudioManager#ACTION_HEADSET_PLUG: + +BroadcastBehavior: android.media.AudioManager#ACTION_MICROPHONE_MUTE_CHANGED: + +BroadcastBehavior: android.media.AudioManager#ACTION_SPEAKERPHONE_STATE_CHANGED: + +BroadcastBehavior: android.media.tv.TvContract#ACTION_INITIALIZE_PROGRAMS: + +BroadcastBehavior: android.media.tv.TvContract#ACTION_PREVIEW_PROGRAM_ADDED_TO_WATCH_NEXT: + +BroadcastBehavior: android.media.tv.TvContract#ACTION_PREVIEW_PROGRAM_BROWSABLE_DISABLED: + +BroadcastBehavior: android.media.tv.TvContract#ACTION_WATCH_NEXT_PROGRAM_BROWSABLE_DISABLED: + +BroadcastBehavior: android.net.ConnectivityManager#ACTION_BACKGROUND_DATA_SETTING_CHANGED: + +BroadcastBehavior: android.net.Proxy#PROXY_CHANGE_ACTION: + +BroadcastBehavior: android.nfc.NfcAdapter#ACTION_ADAPTER_STATE_CHANGED: + +BroadcastBehavior: android.nfc.NfcAdapter#ACTION_TRANSACTION_DETECTED: + +BroadcastBehavior: android.os.DropBoxManager#ACTION_DROPBOX_ENTRY_ADDED: + +BroadcastBehavior: android.provider.CalendarContract#ACTION_EVENT_REMINDER: + +BroadcastBehavior: android.provider.Telephony.Sms.Intents#DATA_SMS_RECEIVED_ACTION: + +BroadcastBehavior: android.provider.Telephony.Sms.Intents#SECRET_CODE_ACTION: + +BroadcastBehavior: android.provider.Telephony.Sms.Intents#SIM_FULL_ACTION: + +BroadcastBehavior: android.provider.Telephony.Sms.Intents#SMS_CB_RECEIVED_ACTION: + +BroadcastBehavior: android.provider.Telephony.Sms.Intents#SMS_DELIVER_ACTION: + +BroadcastBehavior: android.provider.Telephony.Sms.Intents#SMS_RECEIVED_ACTION: + +BroadcastBehavior: android.provider.Telephony.Sms.Intents#SMS_REJECTED_ACTION: + +BroadcastBehavior: android.provider.Telephony.Sms.Intents#SMS_SERVICE_CATEGORY_PROGRAM_DATA_RECEIVED_ACTION: + +BroadcastBehavior: android.provider.Telephony.Sms.Intents#WAP_PUSH_DELIVER_ACTION: + +BroadcastBehavior: android.provider.Telephony.Sms.Intents#WAP_PUSH_RECEIVED_ACTION: + +BroadcastBehavior: android.security.KeyChain#ACTION_KEYCHAIN_CHANGED: + +BroadcastBehavior: android.security.KeyChain#ACTION_KEY_ACCESS_CHANGED: + +BroadcastBehavior: android.security.KeyChain#ACTION_STORAGE_CHANGED: + +BroadcastBehavior: android.security.KeyChain#ACTION_TRUST_STORE_CHANGED: + +BroadcastBehavior: android.speech.tts.TextToSpeech#ACTION_TTS_QUEUE_PROCESSING_COMPLETED: + +BroadcastBehavior: android.speech.tts.TextToSpeech.Engine#ACTION_TTS_DATA_INSTALLED: + +BroadcastBehavior: android.telephony.SubscriptionManager#ACTION_DEFAULT_SMS_SUBSCRIPTION_CHANGED: + +BroadcastBehavior: android.telephony.SubscriptionManager#ACTION_DEFAULT_SUBSCRIPTION_CHANGED: + +BroadcastBehavior: android.telephony.SubscriptionManager#ACTION_REFRESH_SUBSCRIPTION_PLANS: + +BroadcastBehavior: android.telephony.TelephonyManager#ACTION_SECRET_CODE: + +BroadcastBehavior: android.telephony.TelephonyManager#ACTION_SUBSCRIPTION_CARRIER_IDENTITY_CHANGED: + +BroadcastBehavior: android.telephony.TelephonyManager#ACTION_SUBSCRIPTION_SPECIFIC_CARRIER_IDENTITY_CHANGED: + +BroadcastBehavior: android.telephony.euicc.EuiccManager#ACTION_NOTIFY_CARRIER_SETUP_INCOMPLETE: + + + +CompileTimeConstant: android.icu.util.JapaneseCalendar#REIWA: + + + +DeprecationMismatch: android.accounts.AccountManager#newChooseAccountIntent(android.accounts.Account, java.util.ArrayList<android.accounts.Account>, String[], boolean, String, String, String[], android.os.Bundle): + +DeprecationMismatch: android.app.Activity#enterPictureInPictureMode(): + +DeprecationMismatch: android.app.Instrumentation#startAllocCounting(): + +DeprecationMismatch: android.app.Instrumentation#stopAllocCounting(): + +DeprecationMismatch: android.app.Notification#bigContentView: + +DeprecationMismatch: android.app.Notification#contentView: + +DeprecationMismatch: android.app.Notification#headsUpContentView: + +DeprecationMismatch: android.app.Notification#tickerView: + +DeprecationMismatch: android.app.Notification.Action.Builder#Builder(int, CharSequence, android.app.PendingIntent): + +DeprecationMismatch: android.app.Notification.Action.WearableExtender#getCancelLabel(): + +DeprecationMismatch: android.app.Notification.Action.WearableExtender#getConfirmLabel(): + +DeprecationMismatch: android.app.Notification.Action.WearableExtender#getInProgressLabel(): + +DeprecationMismatch: android.app.Notification.Action.WearableExtender#setCancelLabel(CharSequence): + +DeprecationMismatch: android.app.Notification.Action.WearableExtender#setConfirmLabel(CharSequence): + +DeprecationMismatch: android.app.Notification.Action.WearableExtender#setInProgressLabel(CharSequence): + +DeprecationMismatch: android.app.Notification.Builder#setContent(android.widget.RemoteViews): + +DeprecationMismatch: android.app.Notification.Builder#setTicker(CharSequence, android.widget.RemoteViews): + +DeprecationMismatch: android.app.Notification.WearableExtender#getContentIcon(): + +DeprecationMismatch: android.app.Notification.WearableExtender#getContentIconGravity(): + +DeprecationMismatch: android.app.Notification.WearableExtender#getCustomContentHeight(): + +DeprecationMismatch: android.app.Notification.WearableExtender#getCustomSizePreset(): + +DeprecationMismatch: android.app.Notification.WearableExtender#getGravity(): + +DeprecationMismatch: android.app.Notification.WearableExtender#getHintAvoidBackgroundClipping(): + +DeprecationMismatch: android.app.Notification.WearableExtender#getHintHideIcon(): + +DeprecationMismatch: android.app.Notification.WearableExtender#getHintScreenTimeout(): + +DeprecationMismatch: android.app.Notification.WearableExtender#getHintShowBackgroundOnly(): + +DeprecationMismatch: android.app.Notification.WearableExtender#setContentIcon(int): + +DeprecationMismatch: android.app.Notification.WearableExtender#setContentIconGravity(int): + +DeprecationMismatch: android.app.Notification.WearableExtender#setCustomContentHeight(int): + +DeprecationMismatch: android.app.Notification.WearableExtender#setCustomSizePreset(int): + +DeprecationMismatch: android.app.Notification.WearableExtender#setGravity(int): + +DeprecationMismatch: android.app.Notification.WearableExtender#setHintAvoidBackgroundClipping(boolean): + +DeprecationMismatch: android.app.Notification.WearableExtender#setHintHideIcon(boolean): + +DeprecationMismatch: android.app.Notification.WearableExtender#setHintScreenTimeout(int): + +DeprecationMismatch: android.app.Notification.WearableExtender#setHintShowBackgroundOnly(boolean): + +DeprecationMismatch: android.content.ContextWrapper#clearWallpaper(): + +DeprecationMismatch: android.content.ContextWrapper#getWallpaper(): + +DeprecationMismatch: android.content.ContextWrapper#getWallpaperDesiredMinimumHeight(): + +DeprecationMismatch: android.content.ContextWrapper#getWallpaperDesiredMinimumWidth(): + +DeprecationMismatch: android.content.ContextWrapper#peekWallpaper(): + +DeprecationMismatch: android.content.ContextWrapper#removeStickyBroadcast(android.content.Intent): + +DeprecationMismatch: android.content.ContextWrapper#removeStickyBroadcastAsUser(android.content.Intent, android.os.UserHandle): + +DeprecationMismatch: android.content.ContextWrapper#sendStickyBroadcast(android.content.Intent): + +DeprecationMismatch: android.content.ContextWrapper#sendStickyBroadcastAsUser(android.content.Intent, android.os.UserHandle): + +DeprecationMismatch: android.content.ContextWrapper#sendStickyOrderedBroadcast(android.content.Intent, android.content.BroadcastReceiver, android.os.Handler, int, String, android.os.Bundle): + +DeprecationMismatch: android.content.ContextWrapper#sendStickyOrderedBroadcastAsUser(android.content.Intent, android.os.UserHandle, android.content.BroadcastReceiver, android.os.Handler, int, String, android.os.Bundle): + +DeprecationMismatch: android.content.ContextWrapper#setWallpaper(android.graphics.Bitmap): + +DeprecationMismatch: android.content.ContextWrapper#setWallpaper(java.io.InputStream): + +DeprecationMismatch: android.database.CursorWrapper#deactivate(): + +DeprecationMismatch: android.database.CursorWrapper#requery(): + +DeprecationMismatch: android.graphics.ComposeShader#ComposeShader(android.graphics.Shader, android.graphics.Shader, android.graphics.Xfermode): + +DeprecationMismatch: android.graphics.PixelFormat#A_8: + +DeprecationMismatch: android.graphics.PixelFormat#LA_88: + +DeprecationMismatch: android.graphics.PixelFormat#L_8: + +DeprecationMismatch: android.graphics.PixelFormat#RGBA_4444: + +DeprecationMismatch: android.graphics.PixelFormat#RGBA_5551: + +DeprecationMismatch: android.graphics.PixelFormat#RGB_332: + +DeprecationMismatch: android.net.wifi.WifiManager#EXTRA_BSSID: + +DeprecationMismatch: android.net.wifi.WifiManager#EXTRA_WIFI_INFO: + +DeprecationMismatch: android.opengl.EGL14#eglCreatePixmapSurface(android.opengl.EGLDisplay, android.opengl.EGLConfig, int, int[], int): + +DeprecationMismatch: android.opengl.GLES20#GL_STENCIL_INDEX: + +DeprecationMismatch: android.opengl.GLSurfaceView#surfaceRedrawNeeded(android.view.SurfaceHolder): + +DeprecationMismatch: android.os.UserManager#setUserRestrictions(android.os.Bundle): + +DeprecationMismatch: android.os.UserManager#setUserRestrictions(android.os.Bundle, android.os.UserHandle): + +DeprecationMismatch: android.provider.Contacts.People#markAsContacted(android.content.ContentResolver, long): + +DeprecationMismatch: android.renderscript.Type.CubemapFace#POSITVE_X: + +DeprecationMismatch: android.renderscript.Type.CubemapFace#POSITVE_Y: + +DeprecationMismatch: android.renderscript.Type.CubemapFace#POSITVE_Z: + +DeprecationMismatch: android.speech.tts.TextToSpeech#areDefaultsEnforced(): + +DeprecationMismatch: android.text.format.DateUtils#FORMAT_12HOUR: + +DeprecationMismatch: android.text.format.DateUtils#FORMAT_24HOUR: + +DeprecationMismatch: android.text.format.DateUtils#FORMAT_CAP_AMPM: + +DeprecationMismatch: android.text.format.DateUtils#FORMAT_CAP_MIDNIGHT: + +DeprecationMismatch: android.text.format.DateUtils#FORMAT_CAP_NOON: + +DeprecationMismatch: android.text.format.DateUtils#FORMAT_CAP_NOON_MIDNIGHT: + +DeprecationMismatch: android.text.format.DateUtils#FORMAT_NO_NOON_MIDNIGHT: + +DeprecationMismatch: android.view.ViewGroup.LayoutParams#FILL_PARENT: + +DeprecationMismatch: android.view.Window#setTitleColor(int): + +DeprecationMismatch: android.view.accessibility.AccessibilityEvent#MAX_TEXT_LENGTH: + +DeprecationMismatch: android.webkit.WebSettings#getSaveFormData(): + +DeprecationMismatch: android.webkit.WebView#shouldDelayChildPressedState(): + +DeprecationMismatch: android.webkit.WebViewDatabase#clearFormData(): + +DeprecationMismatch: android.webkit.WebViewDatabase#hasFormData(): + +DeprecationMismatch: javax.microedition.khronos.egl.EGL10#eglCreatePixmapSurface(javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLConfig, Object, int[]): + + + +ExecutorRegistration: android.media.MediaRouter2#setOnGetControllerHintsListener(android.media.MediaRouter2.OnGetControllerHintsListener): + Registration methods should have overload that accepts delivery Executor: `setOnGetControllerHintsListener` + + +GenericException: android.content.res.loader.ResourcesProvider#finalize(): + + + +HiddenSuperclass: android.content.res.ColorStateList: + +HiddenSuperclass: android.graphics.Canvas: + +HiddenSuperclass: android.graphics.RecordingCanvas: + +HiddenSuperclass: android.hardware.biometrics.BiometricPrompt.AuthenticationCallback: + +HiddenSuperclass: android.hardware.biometrics.BiometricPrompt.AuthenticationResult: + +HiddenSuperclass: android.hardware.biometrics.BiometricPrompt.CryptoObject: + +HiddenSuperclass: android.hardware.fingerprint.FingerprintManager.AuthenticationCallback: + +HiddenSuperclass: android.hardware.fingerprint.FingerprintManager.CryptoObject: + +HiddenSuperclass: android.media.AudioTrack: + +HiddenSuperclass: android.media.MediaPlayer: + +HiddenSuperclass: android.media.SoundPool: + +HiddenSuperclass: android.service.autofill.CharSequenceTransformation: + +HiddenSuperclass: android.service.autofill.DateTransformation: + +HiddenSuperclass: android.service.autofill.DateValueSanitizer: + +HiddenSuperclass: android.service.autofill.ImageTransformation: + +HiddenSuperclass: android.service.autofill.LuhnChecksumValidator: + +HiddenSuperclass: android.service.autofill.RegexValidator: + +HiddenSuperclass: android.service.autofill.TextValueSanitizer: + +HiddenSuperclass: android.service.autofill.VisibilitySetterAction: + +HiddenSuperclass: android.util.StatsLog: + + + +IntentBuilderName: android.net.VpnManager#provisionVpnProfile(android.net.PlatformVpnProfile): + Methods creating an Intent should be named `create<Foo>Intent()`, was `provisionVpnProfile` + + +KotlinOperator: android.media.AudioMetadata.Map#set(android.media.AudioMetadata.Key<T>, T): + Method can be invoked with an indexing operator from Kotlin: `set` (this is usually desirable; just make sure it makes sense for this type of object) +KotlinOperator: android.media.AudioMetadata.ReadMap#get(android.media.AudioMetadata.Key<T>): + Method can be invoked with an indexing operator from Kotlin: `get` (this is usually desirable; just make sure it makes sense for this type of object) + + +MethodNameUnits: android.media.MediaParser.SeekMap#getDurationMicros(): + Returned time values are strongly encouraged to be in milliseconds unless you need the extra precision, was `getDurationMicros` + + +MinMaxConstant: android.telephony.DataFailCause#MAX_ACCESS_PROBE: + If min/max could change in future, make them dynamic methods: android.telephony.DataFailCause#MAX_ACCESS_PROBE +MinMaxConstant: android.telephony.DataFailCause#MAX_IPV4_CONNECTIONS: + If min/max could change in future, make them dynamic methods: android.telephony.DataFailCause#MAX_IPV4_CONNECTIONS +MinMaxConstant: android.telephony.DataFailCause#MAX_IPV6_CONNECTIONS: + If min/max could change in future, make them dynamic methods: android.telephony.DataFailCause#MAX_IPV6_CONNECTIONS +MinMaxConstant: android.telephony.DataFailCause#MAX_PPP_INACTIVITY_TIMER_EXPIRED: + If min/max could change in future, make them dynamic methods: android.telephony.DataFailCause#MAX_PPP_INACTIVITY_TIMER_EXPIRED + + +MissingNullability: android.app.AsyncNotedAppOp#equals(Object) parameter #0: + +MissingNullability: android.app.AsyncNotedAppOp#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.app.SyncNotedAppOp#equals(Object) parameter #0: + +MissingNullability: android.icu.lang.UCharacter.UnicodeBlock#CHORASMIAN: + +MissingNullability: android.icu.lang.UCharacter.UnicodeBlock#CJK_UNIFIED_IDEOGRAPHS_EXTENSION_G: + +MissingNullability: android.icu.lang.UCharacter.UnicodeBlock#DIVES_AKURU: + +MissingNullability: android.icu.lang.UCharacter.UnicodeBlock#EGYPTIAN_HIEROGLYPH_FORMAT_CONTROLS: + +MissingNullability: android.icu.lang.UCharacter.UnicodeBlock#ELYMAIC: + +MissingNullability: android.icu.lang.UCharacter.UnicodeBlock#KHITAN_SMALL_SCRIPT: + +MissingNullability: android.icu.lang.UCharacter.UnicodeBlock#LISU_SUPPLEMENT: + +MissingNullability: android.icu.lang.UCharacter.UnicodeBlock#NANDINAGARI: + +MissingNullability: android.icu.lang.UCharacter.UnicodeBlock#NYIAKENG_PUACHUE_HMONG: + +MissingNullability: android.icu.lang.UCharacter.UnicodeBlock#OTTOMAN_SIYAQ_NUMBERS: + +MissingNullability: android.icu.lang.UCharacter.UnicodeBlock#SMALL_KANA_EXTENSION: + +MissingNullability: android.icu.lang.UCharacter.UnicodeBlock#SYMBOLS_AND_PICTOGRAPHS_EXTENDED_A: + +MissingNullability: android.icu.lang.UCharacter.UnicodeBlock#SYMBOLS_FOR_LEGACY_COMPUTING: + +MissingNullability: android.icu.lang.UCharacter.UnicodeBlock#TAMIL_SUPPLEMENT: + +MissingNullability: android.icu.lang.UCharacter.UnicodeBlock#TANGUT_SUPPLEMENT: + +MissingNullability: android.icu.lang.UCharacter.UnicodeBlock#WANCHO: + +MissingNullability: android.icu.lang.UCharacter.UnicodeBlock#YEZIDI: + +MissingNullability: android.icu.text.DateTimePatternGenerator#getFieldDisplayName(int, android.icu.text.DateTimePatternGenerator.DisplayWidth): + +MissingNullability: android.icu.text.DateTimePatternGenerator#getFieldDisplayName(int, android.icu.text.DateTimePatternGenerator.DisplayWidth) parameter #1: + +MissingNullability: android.icu.util.MeasureUnit#ATMOSPHERE: + +MissingNullability: android.icu.util.MeasureUnit#PERCENT: + +MissingNullability: android.icu.util.MeasureUnit#PERMILLE: + +MissingNullability: android.icu.util.MeasureUnit#PETABYTE: + +MissingNullability: android.icu.util.VersionInfo#UNICODE_12_0: + +MissingNullability: android.icu.util.VersionInfo#UNICODE_12_1: + +MissingNullability: android.icu.util.VersionInfo#UNICODE_13_0: + +MissingNullability: android.media.MediaMetadataRetriever#getFrameAtTime(long, int, android.media.MediaMetadataRetriever.BitmapParams): + +MissingNullability: android.media.MediaMetadataRetriever#getScaledFrameAtTime(long, int, int, int, android.media.MediaMetadataRetriever.BitmapParams): + +MissingNullability: java.time.chrono.JapaneseEra#REIWA: + + + +NotCloseable: android.media.MediaCodec.GraphicBlock: + Classes that release resources (finalize()) should implement AutoClosable and CloseGuard: class android.media.MediaCodec.GraphicBlock +NotCloseable: android.media.MediaCodec.LinearBlock: + Classes that release resources (finalize()) should implement AutoClosable and CloseGuard: class android.media.MediaCodec.LinearBlock +NotCloseable: android.media.MediaParser: + Classes that release resources (release()) should implement AutoClosable and CloseGuard: class android.media.MediaParser +NotCloseable: android.media.MediaRouter2.RoutingController: + Classes that release resources (release()) should implement AutoClosable and CloseGuard: class android.media.MediaRouter2.RoutingController +NotCloseable: android.util.CloseGuard: + Classes that release resources (close()) should implement AutoClosable and CloseGuard: class android.util.CloseGuard +NotCloseable: android.view.SurfaceControlViewHost: + Classes that release resources (release()) should implement AutoClosable and CloseGuard: class android.view.SurfaceControlViewHost + + +OnNameExpected: android.app.admin.DevicePolicyKeyguardService#dismiss(): + If implemented by developer, should follow the on<Something> style; otherwise consider marking final +OnNameExpected: android.service.controls.ControlsProviderService#createPublisherFor(java.util.List<java.lang.String>): + Methods implemented by developers should follow the on<Something> style, was `createPublisherFor` +OnNameExpected: android.service.controls.ControlsProviderService#createPublisherForAllAvailable(): + Methods implemented by developers should follow the on<Something> style, was `createPublisherForAllAvailable` +OnNameExpected: android.service.controls.ControlsProviderService#createPublisherForSuggested(): + If implemented by developer, should follow the on<Something> style; otherwise consider marking final +OnNameExpected: android.service.controls.ControlsProviderService#performControlAction(String, android.service.controls.actions.ControlAction, java.util.function.Consumer<java.lang.Integer>): + Methods implemented by developers should follow the on<Something> style, was `performControlAction` + + +RequiresPermission: android.accounts.AccountManager#getAccountsByTypeAndFeatures(String, String[], android.accounts.AccountManagerCallback<android.accounts.Account[]>, android.os.Handler): + +RequiresPermission: android.accounts.AccountManager#hasFeatures(android.accounts.Account, String[], android.accounts.AccountManagerCallback<java.lang.Boolean>, android.os.Handler): + +RequiresPermission: android.app.AlarmManager#setTime(long): + +RequiresPermission: android.app.AppOpsManager#isOpActive(String, int, String): + +RequiresPermission: android.app.AppOpsManager#startWatchingActive(String[], java.util.concurrent.Executor, android.app.AppOpsManager.OnOpActiveChangedListener): + +RequiresPermission: android.app.DownloadManager.Request#setDestinationInExternalPublicDir(String, String): + +RequiresPermission: android.app.DownloadManager.Request#setDestinationUri(android.net.Uri): + +RequiresPermission: android.app.DownloadManager.Request#setNotificationVisibility(int): + +RequiresPermission: android.app.DownloadManager.Request#setShowRunningNotification(boolean): + +RequiresPermission: android.app.Notification.Builder#setFullScreenIntent(android.app.PendingIntent, boolean): + +RequiresPermission: android.app.Service#startForeground(int, android.app.Notification): + +RequiresPermission: android.app.WallpaperInfo#getSettingsSliceUri(): + +RequiresPermission: android.app.WallpaperManager#clear(): + +RequiresPermission: android.app.WallpaperManager#clearWallpaper(): + +RequiresPermission: android.app.WallpaperManager#setBitmap(android.graphics.Bitmap): + +RequiresPermission: android.app.WallpaperManager#setBitmap(android.graphics.Bitmap, android.graphics.Rect, boolean): + +RequiresPermission: android.app.WallpaperManager#setDisplayPadding(android.graphics.Rect): + +RequiresPermission: android.app.WallpaperManager#setResource(int): + +RequiresPermission: android.app.WallpaperManager#setStream(java.io.InputStream): + +RequiresPermission: android.app.WallpaperManager#setStream(java.io.InputStream, android.graphics.Rect, boolean): + +RequiresPermission: android.app.WallpaperManager#suggestDesiredDimensions(int, int): + +RequiresPermission: android.app.admin.DevicePolicyManager#bindDeviceAdminServiceAsUser(android.content.ComponentName, android.content.Intent, android.content.ServiceConnection, int, android.os.UserHandle): + +RequiresPermission: android.app.admin.DevicePolicyManager#getPasswordComplexity(): + +RequiresPermission: android.app.admin.DevicePolicyManager#setAlwaysOnVpnPackage(android.content.ComponentName, String, boolean): + +RequiresPermission: android.app.backup.BackupManager#dataChanged(String): + +RequiresPermission: android.app.usage.StorageStatsManager#queryExternalStatsForUser(java.util.UUID, android.os.UserHandle): + +RequiresPermission: android.app.usage.StorageStatsManager#queryStatsForPackage(java.util.UUID, String, android.os.UserHandle): + +RequiresPermission: android.app.usage.StorageStatsManager#queryStatsForUid(java.util.UUID, int): + +RequiresPermission: android.app.usage.StorageStatsManager#queryStatsForUser(java.util.UUID, android.os.UserHandle): + +RequiresPermission: android.app.usage.UsageStatsManager#queryAndAggregateUsageStats(long, long): + +RequiresPermission: android.app.usage.UsageStatsManager#queryConfigurations(int, long, long): + +RequiresPermission: android.app.usage.UsageStatsManager#queryEventStats(int, long, long): + +RequiresPermission: android.app.usage.UsageStatsManager#queryEvents(long, long): + +RequiresPermission: android.app.usage.UsageStatsManager#queryUsageStats(int, long, long): + +RequiresPermission: android.appwidget.AppWidgetManager#bindAppWidgetIdIfAllowed(int, android.os.UserHandle, android.content.ComponentName, android.os.Bundle): + +RequiresPermission: android.bluetooth.BluetoothA2dp#isA2dpPlaying(android.bluetooth.BluetoothDevice): + +RequiresPermission: android.bluetooth.BluetoothAdapter#getName(): + +RequiresPermission: android.bluetooth.BluetoothDevice#setPin(byte[]): + +RequiresPermission: android.bluetooth.BluetoothGatt#abortReliableWrite(): + +RequiresPermission: android.bluetooth.BluetoothGatt#beginReliableWrite(): + +RequiresPermission: android.bluetooth.BluetoothGatt#disconnect(): + +RequiresPermission: android.bluetooth.BluetoothGatt#discoverServices(): + +RequiresPermission: android.bluetooth.BluetoothGatt#executeReliableWrite(): + +RequiresPermission: android.bluetooth.BluetoothGatt#getService(java.util.UUID): + +RequiresPermission: android.bluetooth.BluetoothGatt#getServices(): + +RequiresPermission: android.bluetooth.BluetoothGatt#readCharacteristic(android.bluetooth.BluetoothGattCharacteristic): + +RequiresPermission: android.bluetooth.BluetoothGatt#readDescriptor(android.bluetooth.BluetoothGattDescriptor): + +RequiresPermission: android.bluetooth.BluetoothGatt#readRemoteRssi(): + +RequiresPermission: android.bluetooth.BluetoothGatt#requestMtu(int): + +RequiresPermission: android.bluetooth.BluetoothGatt#setCharacteristicNotification(android.bluetooth.BluetoothGattCharacteristic, boolean): + +RequiresPermission: android.bluetooth.BluetoothGatt#writeCharacteristic(android.bluetooth.BluetoothGattCharacteristic): + +RequiresPermission: android.bluetooth.BluetoothGatt#writeDescriptor(android.bluetooth.BluetoothGattDescriptor): + +RequiresPermission: android.bluetooth.BluetoothGattCharacteristic#BluetoothGattCharacteristic(java.util.UUID, int, int): + +RequiresPermission: android.bluetooth.BluetoothGattCharacteristic#addDescriptor(android.bluetooth.BluetoothGattDescriptor): + +RequiresPermission: android.bluetooth.BluetoothGattDescriptor#BluetoothGattDescriptor(java.util.UUID, int): + +RequiresPermission: android.bluetooth.BluetoothGattServer#addService(android.bluetooth.BluetoothGattService): + +RequiresPermission: android.bluetooth.BluetoothGattServer#cancelConnection(android.bluetooth.BluetoothDevice): + +RequiresPermission: android.bluetooth.BluetoothGattServer#clearServices(): + +RequiresPermission: android.bluetooth.BluetoothGattServer#connect(android.bluetooth.BluetoothDevice, boolean): + +RequiresPermission: android.bluetooth.BluetoothGattServer#getService(java.util.UUID): + +RequiresPermission: android.bluetooth.BluetoothGattServer#getServices(): + +RequiresPermission: android.bluetooth.BluetoothGattServer#notifyCharacteristicChanged(android.bluetooth.BluetoothDevice, android.bluetooth.BluetoothGattCharacteristic, boolean): + +RequiresPermission: android.bluetooth.BluetoothGattServer#removeService(android.bluetooth.BluetoothGattService): + +RequiresPermission: android.bluetooth.BluetoothGattServer#sendResponse(android.bluetooth.BluetoothDevice, int, int, int, byte[]): + +RequiresPermission: android.bluetooth.BluetoothGattService#BluetoothGattService(java.util.UUID, int): + +RequiresPermission: android.bluetooth.BluetoothGattService#addCharacteristic(android.bluetooth.BluetoothGattCharacteristic): + +RequiresPermission: android.bluetooth.BluetoothGattService#addService(android.bluetooth.BluetoothGattService): + +RequiresPermission: android.bluetooth.BluetoothHeadset#isAudioConnected(android.bluetooth.BluetoothDevice): + +RequiresPermission: android.bluetooth.BluetoothHeadset#sendVendorSpecificResultCode(android.bluetooth.BluetoothDevice, String, String): + +RequiresPermission: android.bluetooth.BluetoothHeadset#startVoiceRecognition(android.bluetooth.BluetoothDevice): + +RequiresPermission: android.bluetooth.BluetoothHeadset#stopVoiceRecognition(android.bluetooth.BluetoothDevice): + +RequiresPermission: android.bluetooth.BluetoothHealth#connectChannelToSource(android.bluetooth.BluetoothDevice, android.bluetooth.BluetoothHealthAppConfiguration): + +RequiresPermission: android.bluetooth.BluetoothHealth#disconnectChannel(android.bluetooth.BluetoothDevice, android.bluetooth.BluetoothHealthAppConfiguration, int): + +RequiresPermission: android.bluetooth.BluetoothHealth#getConnectedDevices(): + +RequiresPermission: android.bluetooth.BluetoothHealth#getConnectionState(android.bluetooth.BluetoothDevice): + +RequiresPermission: android.bluetooth.BluetoothHealth#getDevicesMatchingConnectionStates(int[]): + +RequiresPermission: android.bluetooth.BluetoothHealth#getMainChannelFd(android.bluetooth.BluetoothDevice, android.bluetooth.BluetoothHealthAppConfiguration): + +RequiresPermission: android.bluetooth.BluetoothHealth#registerSinkAppConfiguration(String, int, android.bluetooth.BluetoothHealthCallback): + +RequiresPermission: android.bluetooth.BluetoothHealth#unregisterAppConfiguration(android.bluetooth.BluetoothHealthAppConfiguration): + +RequiresPermission: android.bluetooth.le.AdvertisingSet#enableAdvertising(boolean, int, int): + +RequiresPermission: android.bluetooth.le.BluetoothLeAdvertiser#startAdvertising(android.bluetooth.le.AdvertiseSettings, android.bluetooth.le.AdvertiseData, android.bluetooth.le.AdvertiseCallback): + +RequiresPermission: android.bluetooth.le.BluetoothLeAdvertiser#startAdvertising(android.bluetooth.le.AdvertiseSettings, android.bluetooth.le.AdvertiseData, android.bluetooth.le.AdvertiseData, android.bluetooth.le.AdvertiseCallback): + +RequiresPermission: android.bluetooth.le.BluetoothLeAdvertiser#stopAdvertising(android.bluetooth.le.AdvertiseCallback): + +RequiresPermission: android.companion.CompanionDeviceManager#associate(android.companion.AssociationRequest, android.companion.CompanionDeviceManager.Callback, android.os.Handler): + +RequiresPermission: android.content.ContentResolver#addPeriodicSync(android.accounts.Account, String, android.os.Bundle, long): + +RequiresPermission: android.content.ContentResolver#cancelSync(android.content.SyncRequest): + +RequiresPermission: android.content.ContentResolver#getCurrentSync(): + +RequiresPermission: android.content.ContentResolver#getCurrentSyncs(): + +RequiresPermission: android.content.ContentResolver#getIsSyncable(android.accounts.Account, String): + +RequiresPermission: android.content.ContentResolver#getMasterSyncAutomatically(): + +RequiresPermission: android.content.ContentResolver#getPeriodicSyncs(android.accounts.Account, String): + +RequiresPermission: android.content.ContentResolver#getSyncAutomatically(android.accounts.Account, String): + +RequiresPermission: android.content.ContentResolver#isSyncActive(android.accounts.Account, String): + +RequiresPermission: android.content.ContentResolver#isSyncPending(android.accounts.Account, String): + +RequiresPermission: android.content.ContentResolver#removePeriodicSync(android.accounts.Account, String, android.os.Bundle): + +RequiresPermission: android.content.ContentResolver#setIsSyncable(android.accounts.Account, String, int): + +RequiresPermission: android.content.ContentResolver#setMasterSyncAutomatically(boolean): + +RequiresPermission: android.content.ContentResolver#setSyncAutomatically(android.accounts.Account, String, boolean): + +RequiresPermission: android.content.Context#clearWallpaper(): + +RequiresPermission: android.content.Context#getExternalCacheDir(): + +RequiresPermission: android.content.Context#getExternalCacheDirs(): + +RequiresPermission: android.content.Context#getExternalFilesDir(String): + +RequiresPermission: android.content.Context#getExternalFilesDirs(String): + +RequiresPermission: android.content.Context#getExternalMediaDirs(): + +RequiresPermission: android.content.Context#getObbDir(): + +RequiresPermission: android.content.Context#getObbDirs(): + +RequiresPermission: android.content.Context#removeStickyBroadcastAsUser(android.content.Intent, android.os.UserHandle): + +RequiresPermission: android.content.Context#setWallpaper(android.graphics.Bitmap): + +RequiresPermission: android.content.Context#setWallpaper(java.io.InputStream): + +RequiresPermission: android.content.pm.LauncherApps.Callback#onPackagesSuspended(String[], android.os.UserHandle, android.os.Bundle): + +RequiresPermission: android.content.pm.PackageManager#canRequestPackageInstalls(): + +RequiresPermission: android.content.pm.PackageManager#getSuspendedPackageAppExtras(): + +RequiresPermission: android.content.pm.PackageManager#isPackageSuspended(): + +RequiresPermission: android.hardware.camera2.CameraCharacteristics#getKeysNeedingPermission(): + +RequiresPermission: android.hardware.usb.UsbManager#hasPermission(android.hardware.usb.UsbDevice): + +RequiresPermission: android.hardware.usb.UsbManager#requestPermission(android.hardware.usb.UsbDevice, android.app.PendingIntent): + +RequiresPermission: android.location.LocationManager#addGpsStatusListener(android.location.GpsStatus.Listener): + +RequiresPermission: android.location.LocationManager#addNmeaListener(android.location.OnNmeaMessageListener): + +RequiresPermission: android.location.LocationManager#addNmeaListener(android.location.OnNmeaMessageListener, android.os.Handler): + +RequiresPermission: android.location.LocationManager#addNmeaListener(java.util.concurrent.Executor, android.location.OnNmeaMessageListener): + +RequiresPermission: android.location.LocationManager#addProximityAlert(double, double, float, long, android.app.PendingIntent): + +RequiresPermission: android.location.LocationManager#registerGnssStatusCallback(android.location.GnssStatus.Callback): + +RequiresPermission: android.location.LocationManager#registerGnssStatusCallback(android.location.GnssStatus.Callback, android.os.Handler): + +RequiresPermission: android.location.LocationManager#registerGnssStatusCallback(java.util.concurrent.Executor, android.location.GnssStatus.Callback): + +RequiresPermission: android.media.AudioManager#startBluetoothSco(): + +RequiresPermission: android.media.AudioManager#stopBluetoothSco(): + +RequiresPermission: android.media.MediaExtractor#setDataSource(String): + +RequiresPermission: android.media.MediaExtractor#setDataSource(String, java.util.Map<java.lang.String,java.lang.String>): + +RequiresPermission: android.media.MediaExtractor#setDataSource(android.content.Context, android.net.Uri, java.util.Map<java.lang.String,java.lang.String>): + +RequiresPermission: android.media.MediaPlayer#setWakeMode(android.content.Context, int): + +RequiresPermission: android.media.MediaSession2Service#onUpdateNotification(android.media.MediaSession2): + +RequiresPermission: android.media.RingtoneManager#getCursor(): + +RequiresPermission: android.media.RingtoneManager#getValidRingtoneUri(android.content.Context): + +RequiresPermission: android.media.session.MediaSessionManager#addOnActiveSessionsChangedListener(android.media.session.MediaSessionManager.OnActiveSessionsChangedListener, android.content.ComponentName): + +RequiresPermission: android.media.session.MediaSessionManager#addOnActiveSessionsChangedListener(android.media.session.MediaSessionManager.OnActiveSessionsChangedListener, android.content.ComponentName, android.os.Handler): + +RequiresPermission: android.media.session.MediaSessionManager#getActiveSessions(android.content.ComponentName): + +RequiresPermission: android.media.session.MediaSessionManager#isTrustedForMediaControl(android.media.session.MediaSessionManager.RemoteUserInfo): + +RequiresPermission: android.net.ConnectivityManager#requestNetwork(android.net.NetworkRequest, android.app.PendingIntent): + +RequiresPermission: android.net.ConnectivityManager#requestNetwork(android.net.NetworkRequest, android.net.ConnectivityManager.NetworkCallback): + +RequiresPermission: android.net.ConnectivityManager#requestNetwork(android.net.NetworkRequest, android.net.ConnectivityManager.NetworkCallback, android.os.Handler): + +RequiresPermission: android.net.ConnectivityManager#requestNetwork(android.net.NetworkRequest, android.net.ConnectivityManager.NetworkCallback, android.os.Handler, int): + +RequiresPermission: android.net.ConnectivityManager#requestNetwork(android.net.NetworkRequest, android.net.ConnectivityManager.NetworkCallback, int): + +RequiresPermission: android.net.sip.SipAudioCall#setSpeakerMode(boolean): + +RequiresPermission: android.net.sip.SipAudioCall#startAudio(): + +RequiresPermission: android.net.wifi.WifiManager#getScanResults(): + +RequiresPermission: android.net.wifi.WifiManager#setWifiEnabled(boolean): + +RequiresPermission: android.net.wifi.WifiManager#startLocalOnlyHotspot(android.net.wifi.WifiManager.LocalOnlyHotspotCallback, android.os.Handler): + +RequiresPermission: android.net.wifi.WifiManager#startScan(): + +RequiresPermission: android.net.wifi.aware.IdentityChangedListener#onIdentityChanged(byte[]): + +RequiresPermission: android.net.wifi.aware.WifiAwareManager#attach(android.net.wifi.aware.AttachCallback, android.net.wifi.aware.IdentityChangedListener, android.os.Handler): + +RequiresPermission: android.net.wifi.aware.WifiAwareSession#publish(android.net.wifi.aware.PublishConfig, android.net.wifi.aware.DiscoverySessionCallback, android.os.Handler): + +RequiresPermission: android.net.wifi.aware.WifiAwareSession#subscribe(android.net.wifi.aware.SubscribeConfig, android.net.wifi.aware.DiscoverySessionCallback, android.os.Handler): + +RequiresPermission: android.nfc.NfcAdapter#disableForegroundDispatch(android.app.Activity): + +RequiresPermission: android.nfc.NfcAdapter#disableForegroundNdefPush(android.app.Activity): + +RequiresPermission: android.nfc.NfcAdapter#enableForegroundDispatch(android.app.Activity, android.app.PendingIntent, android.content.IntentFilter[], String[][]): + +RequiresPermission: android.nfc.NfcAdapter#enableForegroundNdefPush(android.app.Activity, android.nfc.NdefMessage): + +RequiresPermission: android.nfc.NfcAdapter#setBeamPushUris(android.net.Uri[], android.app.Activity): + +RequiresPermission: android.nfc.NfcAdapter#setBeamPushUrisCallback(android.nfc.NfcAdapter.CreateBeamUrisCallback, android.app.Activity): + +RequiresPermission: android.nfc.NfcAdapter#setNdefPushMessage(android.nfc.NdefMessage, android.app.Activity, android.app.Activity...): + +RequiresPermission: android.nfc.NfcAdapter#setNdefPushMessageCallback(android.nfc.NfcAdapter.CreateNdefMessageCallback, android.app.Activity, android.app.Activity...): + +RequiresPermission: android.nfc.NfcAdapter#setOnNdefPushCompleteCallback(android.nfc.NfcAdapter.OnNdefPushCompleteCallback, android.app.Activity, android.app.Activity...): + +RequiresPermission: android.nfc.cardemulation.CardEmulation#isDefaultServiceForAid(android.content.ComponentName, String): + +RequiresPermission: android.nfc.cardemulation.CardEmulation#isDefaultServiceForCategory(android.content.ComponentName, String): + +RequiresPermission: android.nfc.cardemulation.CardEmulation#setOffHostForService(android.content.ComponentName, String): + +RequiresPermission: android.nfc.tech.IsoDep#getTimeout(): + +RequiresPermission: android.nfc.tech.IsoDep#setTimeout(int): + +RequiresPermission: android.nfc.tech.IsoDep#transceive(byte[]): + +RequiresPermission: android.nfc.tech.MifareClassic#authenticateSectorWithKeyA(int, byte[]): + +RequiresPermission: android.nfc.tech.MifareClassic#authenticateSectorWithKeyB(int, byte[]): + +RequiresPermission: android.nfc.tech.MifareClassic#decrement(int, int): + +RequiresPermission: android.nfc.tech.MifareClassic#getTimeout(): + +RequiresPermission: android.nfc.tech.MifareClassic#increment(int, int): + +RequiresPermission: android.nfc.tech.MifareClassic#readBlock(int): + +RequiresPermission: android.nfc.tech.MifareClassic#restore(int): + +RequiresPermission: android.nfc.tech.MifareClassic#setTimeout(int): + +RequiresPermission: android.nfc.tech.MifareClassic#transceive(byte[]): + +RequiresPermission: android.nfc.tech.MifareClassic#transfer(int): + +RequiresPermission: android.nfc.tech.MifareClassic#writeBlock(int, byte[]): + +RequiresPermission: android.nfc.tech.MifareUltralight#getTimeout(): + +RequiresPermission: android.nfc.tech.MifareUltralight#readPages(int): + +RequiresPermission: android.nfc.tech.MifareUltralight#setTimeout(int): + +RequiresPermission: android.nfc.tech.MifareUltralight#transceive(byte[]): + +RequiresPermission: android.nfc.tech.MifareUltralight#writePage(int, byte[]): + +RequiresPermission: android.nfc.tech.Ndef#getNdefMessage(): + +RequiresPermission: android.nfc.tech.Ndef#isWritable(): + +RequiresPermission: android.nfc.tech.Ndef#makeReadOnly(): + +RequiresPermission: android.nfc.tech.Ndef#writeNdefMessage(android.nfc.NdefMessage): + +RequiresPermission: android.nfc.tech.NdefFormatable#format(android.nfc.NdefMessage): + +RequiresPermission: android.nfc.tech.NdefFormatable#formatReadOnly(android.nfc.NdefMessage): + +RequiresPermission: android.nfc.tech.NfcA#getTimeout(): + +RequiresPermission: android.nfc.tech.NfcA#setTimeout(int): + +RequiresPermission: android.nfc.tech.NfcA#transceive(byte[]): + +RequiresPermission: android.nfc.tech.NfcB#transceive(byte[]): + +RequiresPermission: android.nfc.tech.NfcF#getTimeout(): + +RequiresPermission: android.nfc.tech.NfcF#setTimeout(int): + +RequiresPermission: android.nfc.tech.NfcF#transceive(byte[]): + +RequiresPermission: android.nfc.tech.NfcV#transceive(byte[]): + +RequiresPermission: android.nfc.tech.TagTechnology#close(): + +RequiresPermission: android.nfc.tech.TagTechnology#connect(): + +RequiresPermission: android.os.Build#getSerial(): + +RequiresPermission: android.os.Debug#dumpService(String, java.io.FileDescriptor, String[]): + +RequiresPermission: android.os.Environment#getExternalStorageDirectory(): + +RequiresPermission: android.os.PowerManager#newWakeLock(int, String): + +RequiresPermission: android.os.PowerManager#reboot(String): + +RequiresPermission: android.os.RecoverySystem#rebootWipeUserData(android.content.Context): + +RequiresPermission: android.os.StrictMode.VmPolicy.Builder#detectFileUriExposure(): + +RequiresPermission: android.os.UserManager#getUserName(): + +RequiresPermission: android.os.UserManager#isUserUnlocked(android.os.UserHandle): + +RequiresPermission: android.os.health.SystemHealthManager#takeUidSnapshot(int): + +RequiresPermission: android.os.health.SystemHealthManager#takeUidSnapshots(int[]): + +RequiresPermission: android.os.storage.StorageVolume#createAccessIntent(String): + +RequiresPermission: android.provider.MediaStore#setRequireOriginal(android.net.Uri): + +RequiresPermission: android.provider.Settings#canDrawOverlays(android.content.Context): + +RequiresPermission: android.provider.Settings.System#canWrite(android.content.Context): + +RequiresPermission: android.telecom.TelecomManager#acceptHandover(android.net.Uri, int, android.telecom.PhoneAccountHandle): + +RequiresPermission: android.telecom.TelecomManager#acceptRingingCall(): + +RequiresPermission: android.telecom.TelecomManager#acceptRingingCall(int): + +RequiresPermission: android.telecom.TelecomManager#addNewIncomingCall(android.telecom.PhoneAccountHandle, android.os.Bundle): + +RequiresPermission: android.telecom.TelecomManager#cancelMissedCallsNotification(): + +RequiresPermission: android.telecom.TelecomManager#endCall(): + +RequiresPermission: android.telecom.TelecomManager#getAdnUriForPhoneAccount(android.telecom.PhoneAccountHandle): + +RequiresPermission: android.telecom.TelecomManager#getCallCapablePhoneAccounts(): + +RequiresPermission: android.telecom.TelecomManager#getDefaultOutgoingPhoneAccount(String): + +RequiresPermission: android.telecom.TelecomManager#getLine1Number(android.telecom.PhoneAccountHandle): + +RequiresPermission: android.telecom.TelecomManager#getSelfManagedPhoneAccounts(): + +RequiresPermission: android.telecom.TelecomManager#getVoiceMailNumber(android.telecom.PhoneAccountHandle): + +RequiresPermission: android.telecom.TelecomManager#handleMmi(String): + +RequiresPermission: android.telecom.TelecomManager#handleMmi(String, android.telecom.PhoneAccountHandle): + +RequiresPermission: android.telecom.TelecomManager#isInCall(): + +RequiresPermission: android.telecom.TelecomManager#isInManagedCall(): + +RequiresPermission: android.telecom.TelecomManager#isVoiceMailNumber(android.telecom.PhoneAccountHandle, String): + +RequiresPermission: android.telecom.TelecomManager#placeCall(android.net.Uri, android.os.Bundle): + +RequiresPermission: android.telecom.TelecomManager#showInCallScreen(boolean): + +RequiresPermission: android.telecom.TelecomManager#silenceRinger(): + +RequiresPermission: android.telephony.CarrierConfigManager#getConfig(): + +RequiresPermission: android.telephony.CarrierConfigManager#getConfigByComponentForSubId(String, int): + +RequiresPermission: android.telephony.CarrierConfigManager#getConfigForSubId(int): + +RequiresPermission: android.telephony.PhoneStateListener#onCallStateChanged(int, String): + +RequiresPermission: android.telephony.SmsManager#injectSmsPdu(byte[], String, android.app.PendingIntent): + +RequiresPermission: android.telephony.SmsManager#sendDataMessage(String, String, short, byte[], android.app.PendingIntent, android.app.PendingIntent): + +RequiresPermission: android.telephony.SmsManager#sendMultipartTextMessage(String, String, java.util.ArrayList<java.lang.String>, java.util.ArrayList<android.app.PendingIntent>, java.util.ArrayList<android.app.PendingIntent>): + +RequiresPermission: android.telephony.SmsManager#sendTextMessage(String, String, String, android.app.PendingIntent, android.app.PendingIntent): + +RequiresPermission: android.telephony.SmsManager#sendTextMessageWithoutPersisting(String, String, String, android.app.PendingIntent, android.app.PendingIntent): + +RequiresPermission: android.telephony.SubscriptionManager#addSubscriptionsIntoGroup(java.util.List<java.lang.Integer>, android.os.ParcelUuid): + +RequiresPermission: android.telephony.SubscriptionManager#createSubscriptionGroup(java.util.List<java.lang.Integer>): + +RequiresPermission: android.telephony.SubscriptionManager#getActiveSubscriptionInfo(int): + +RequiresPermission: android.telephony.SubscriptionManager#getActiveSubscriptionInfoCount(): + +RequiresPermission: android.telephony.SubscriptionManager#getActiveSubscriptionInfoForSimSlotIndex(int): + +RequiresPermission: android.telephony.SubscriptionManager#getActiveSubscriptionInfoList(): + +RequiresPermission: android.telephony.SubscriptionManager#getOpportunisticSubscriptions(): + +RequiresPermission: android.telephony.SubscriptionManager#getSubscriptionsInGroup(android.os.ParcelUuid): + +RequiresPermission: android.telephony.SubscriptionManager#removeSubscriptionsFromGroup(java.util.List<java.lang.Integer>, android.os.ParcelUuid): + +RequiresPermission: android.telephony.SubscriptionManager#setOpportunistic(boolean, int): + +RequiresPermission: android.telephony.TelephonyManager#doesSwitchMultiSimConfigTriggerReboot(): + +RequiresPermission: android.telephony.TelephonyManager#getCarrierConfig(): + +RequiresPermission: android.telephony.TelephonyManager#getDataNetworkType(): + +RequiresPermission: android.telephony.TelephonyManager#getDeviceId(): + +RequiresPermission: android.telephony.TelephonyManager#getDeviceId(int): + +RequiresPermission: android.telephony.TelephonyManager#getDeviceSoftwareVersion(): + +RequiresPermission: android.telephony.TelephonyManager#getEmergencyNumberList(): + +RequiresPermission: android.telephony.TelephonyManager#getEmergencyNumberList(int): + +RequiresPermission: android.telephony.TelephonyManager#getForbiddenPlmns(): + +RequiresPermission: android.telephony.TelephonyManager#getGroupIdLevel1(): + +RequiresPermission: android.telephony.TelephonyManager#getImei(int): + +RequiresPermission: android.telephony.TelephonyManager#getLine1Number(): + +RequiresPermission: android.telephony.TelephonyManager#getMeid(): + +RequiresPermission: android.telephony.TelephonyManager#getMeid(int): + +RequiresPermission: android.telephony.TelephonyManager#getNai(): + +RequiresPermission: android.telephony.TelephonyManager#getPreferredOpportunisticDataSubscription(): + +RequiresPermission: android.telephony.TelephonyManager#getServiceState(): + +RequiresPermission: android.telephony.TelephonyManager#getSimSerialNumber(): + +RequiresPermission: android.telephony.TelephonyManager#getSubscriberId(): + +RequiresPermission: android.telephony.TelephonyManager#getVisualVoicemailPackageName(): + +RequiresPermission: android.telephony.TelephonyManager#getVoiceMailAlphaTag(): + +RequiresPermission: android.telephony.TelephonyManager#getVoiceMailNumber(): + +RequiresPermission: android.telephony.TelephonyManager#getVoiceNetworkType(): + +RequiresPermission: android.telephony.TelephonyManager#iccCloseLogicalChannel(int): + +RequiresPermission: android.telephony.TelephonyManager#iccExchangeSimIO(int, int, int, int, int, String): + +RequiresPermission: android.telephony.TelephonyManager#iccOpenLogicalChannel(String): + +RequiresPermission: android.telephony.TelephonyManager#iccOpenLogicalChannel(String, int): + +RequiresPermission: android.telephony.TelephonyManager#iccTransmitApduBasicChannel(int, int, int, int, int, String): + +RequiresPermission: android.telephony.TelephonyManager#iccTransmitApduLogicalChannel(int, int, int, int, int, int, String): + +RequiresPermission: android.telephony.TelephonyManager#isDataEnabled(): + +RequiresPermission: android.telephony.TelephonyManager#isDataRoamingEnabled(): + +RequiresPermission: android.telephony.TelephonyManager#isMultiSimSupported(): + +RequiresPermission: android.telephony.TelephonyManager#requestNetworkScan(android.telephony.NetworkScanRequest, java.util.concurrent.Executor, android.telephony.TelephonyScanManager.NetworkScanCallback): + +RequiresPermission: android.telephony.TelephonyManager#sendEnvelopeWithStatus(String): + +RequiresPermission: android.telephony.TelephonyManager#sendUssdRequest(String, android.telephony.TelephonyManager.UssdResponseCallback, android.os.Handler): + +RequiresPermission: android.telephony.TelephonyManager#sendVisualVoicemailSms(String, int, String, android.app.PendingIntent): + +RequiresPermission: android.telephony.TelephonyManager#setDataEnabled(boolean): + +RequiresPermission: android.telephony.TelephonyManager#setNetworkSelectionModeAutomatic(): + +RequiresPermission: android.telephony.TelephonyManager#setNetworkSelectionModeManual(String, boolean): + +RequiresPermission: android.telephony.TelephonyManager#setPreferredOpportunisticDataSubscription(int, boolean, java.util.concurrent.Executor, java.util.function.Consumer<java.lang.Integer>): + +RequiresPermission: android.telephony.TelephonyManager#setVoicemailRingtoneUri(android.telecom.PhoneAccountHandle, android.net.Uri): + +RequiresPermission: android.telephony.TelephonyManager#setVoicemailVibrationEnabled(android.telecom.PhoneAccountHandle, boolean): + +RequiresPermission: android.telephony.TelephonyManager#switchMultiSimConfig(int): + +RequiresPermission: android.telephony.TelephonyManager#updateAvailableNetworks(java.util.List<android.telephony.AvailableNetworkInfo>, java.util.concurrent.Executor, java.util.function.Consumer<java.lang.Integer>): + +RequiresPermission: android.telephony.euicc.EuiccManager#deleteSubscription(int, android.app.PendingIntent): + +RequiresPermission: android.telephony.euicc.EuiccManager#downloadSubscription(android.telephony.euicc.DownloadableSubscription, boolean, android.app.PendingIntent): + +RequiresPermission: android.telephony.euicc.EuiccManager#switchToSubscription(int, android.app.PendingIntent): + +RequiresPermission: android.telephony.euicc.EuiccManager#updateSubscriptionNickname(int, String, android.app.PendingIntent): + +RequiresPermission: android.view.inputmethod.InputMethodManager#setCurrentInputMethodSubtype(android.view.inputmethod.InputMethodSubtype): + +RequiresPermission: android.view.inputmethod.InputMethodManager#setInputMethod(android.os.IBinder, String): + +RequiresPermission: android.view.inputmethod.InputMethodManager#setInputMethodAndSubtype(android.os.IBinder, String, android.view.inputmethod.InputMethodSubtype): + +RequiresPermission: android.webkit.WebSettings#setBlockNetworkLoads(boolean): + +RequiresPermission: android.webkit.WebSettings#setGeolocationEnabled(boolean): + + + +SamShouldBeLast: android.location.LocationManager#registerGnssMeasurementsCallback(java.util.concurrent.Executor, android.location.GnssMeasurementsEvent.Callback): + +SamShouldBeLast: android.location.LocationManager#registerGnssNavigationMessageCallback(java.util.concurrent.Executor, android.location.GnssNavigationMessage.Callback): + +SamShouldBeLast: android.location.LocationManager#registerGnssStatusCallback(java.util.concurrent.Executor, android.location.GnssStatus.Callback): + +SamShouldBeLast: android.location.LocationManager#requestLocationUpdates(String, long, float, java.util.concurrent.Executor, android.location.LocationListener): + +SamShouldBeLast: android.location.LocationManager#requestLocationUpdates(long, float, android.location.Criteria, java.util.concurrent.Executor, android.location.LocationListener): + + + +StreamFiles: android.content.res.loader.DirectoryAssetsProvider#DirectoryAssetsProvider(java.io.File): + Methods accepting `File` should also accept `FileDescriptor` or streams: constructor android.content.res.loader.DirectoryAssetsProvider(java.io.File) +StreamFiles: android.content.res.loader.DirectoryResourceLoader#DirectoryResourceLoader(java.io.File): + + + +Todo: android.hardware.camera2.params.StreamConfigurationMap: + +Todo: android.hardware.camera2.params.StreamConfigurationMap#getOutputMinFrameDuration(Class<T>, android.util.Size): + +Todo: android.hardware.camera2.params.StreamConfigurationMap#getOutputMinFrameDuration(int, android.util.Size): + +Todo: android.provider.ContactsContract.RawContacts#newEntityIterator(android.database.Cursor): + +Todo: android.telephony.CarrierConfigManager#KEY_USE_OTASP_FOR_PROVISIONING_BOOL: + diff --git a/api/module-lib-current.txt b/api/module-lib-current.txt new file mode 100644 index 000000000000..67afc3225f7b --- /dev/null +++ b/api/module-lib-current.txt @@ -0,0 +1,161 @@ +// Signature format: 2.0 +package android.net { + + public final class TetheredClient implements android.os.Parcelable { + ctor public TetheredClient(@NonNull android.net.MacAddress, @NonNull java.util.Collection<android.net.TetheredClient.AddressInfo>, int); + method public int describeContents(); + method @NonNull public java.util.List<android.net.TetheredClient.AddressInfo> getAddresses(); + method @NonNull public android.net.MacAddress getMacAddress(); + method public int getTetheringType(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.net.TetheredClient> CREATOR; + } + + public static final class TetheredClient.AddressInfo implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.net.LinkAddress getAddress(); + method @Nullable public String getHostname(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.net.TetheredClient.AddressInfo> CREATOR; + } + + public final class TetheringConstants { + field public static final String EXTRA_ADD_TETHER_TYPE = "extraAddTetherType"; + field public static final String EXTRA_PROVISION_CALLBACK = "extraProvisionCallback"; + field public static final String EXTRA_REM_TETHER_TYPE = "extraRemTetherType"; + field public static final String EXTRA_RUN_PROVISION = "extraRunProvision"; + field public static final String EXTRA_SET_ALARM = "extraSetAlarm"; + } + + public class TetheringManager { + ctor public TetheringManager(@NonNull android.content.Context, @NonNull java.util.function.Supplier<android.os.IBinder>); + method public int getLastTetherError(@NonNull String); + method @NonNull public String[] getTetherableBluetoothRegexs(); + method @NonNull public String[] getTetherableIfaces(); + method @NonNull public String[] getTetherableUsbRegexs(); + method @NonNull public String[] getTetherableWifiRegexs(); + method @NonNull public String[] getTetheredIfaces(); + method @NonNull public String[] getTetheringErroredIfaces(); + method public boolean isTetheringSupported(); + method public boolean isTetheringSupported(@NonNull String); + method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public void registerTetheringEventCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.TetheringManager.TetheringEventCallback); + method @RequiresPermission(anyOf={"android.permission.TETHER_PRIVILEGED", android.Manifest.permission.WRITE_SETTINGS}) public void requestLatestTetheringEntitlementResult(int, boolean, @NonNull java.util.concurrent.Executor, @NonNull android.net.TetheringManager.OnTetheringEntitlementResultListener); + method public void requestLatestTetheringEntitlementResult(int, @NonNull android.os.ResultReceiver, boolean); + method @Deprecated public int setUsbTethering(boolean); + method @RequiresPermission(anyOf={"android.permission.TETHER_PRIVILEGED", android.Manifest.permission.WRITE_SETTINGS}) public void startTethering(@NonNull android.net.TetheringManager.TetheringRequest, @NonNull java.util.concurrent.Executor, @NonNull android.net.TetheringManager.StartTetheringCallback); + method @RequiresPermission(anyOf={"android.permission.TETHER_PRIVILEGED", android.Manifest.permission.WRITE_SETTINGS}) public void startTethering(int, @NonNull java.util.concurrent.Executor, @NonNull android.net.TetheringManager.StartTetheringCallback); + method @RequiresPermission(anyOf={"android.permission.TETHER_PRIVILEGED", android.Manifest.permission.WRITE_SETTINGS}) public void stopAllTethering(); + method @RequiresPermission(anyOf={"android.permission.TETHER_PRIVILEGED", android.Manifest.permission.WRITE_SETTINGS}) public void stopTethering(int); + method @Deprecated public int tether(@NonNull String); + method @RequiresPermission(anyOf={"android.permission.TETHER_PRIVILEGED", android.Manifest.permission.ACCESS_NETWORK_STATE}) public void unregisterTetheringEventCallback(@NonNull android.net.TetheringManager.TetheringEventCallback); + method @Deprecated public int untether(@NonNull String); + field public static final String ACTION_TETHER_STATE_CHANGED = "android.net.conn.TETHER_STATE_CHANGED"; + field public static final String EXTRA_ACTIVE_LOCAL_ONLY = "android.net.extra.ACTIVE_LOCAL_ONLY"; + field public static final String EXTRA_ACTIVE_TETHER = "tetherArray"; + field public static final String EXTRA_AVAILABLE_TETHER = "availableArray"; + field public static final String EXTRA_ERRORED_TETHER = "erroredArray"; + field public static final int TETHERING_BLUETOOTH = 2; // 0x2 + field public static final int TETHERING_ETHERNET = 5; // 0x5 + field public static final int TETHERING_INVALID = -1; // 0xffffffff + field public static final int TETHERING_NCM = 4; // 0x4 + field public static final int TETHERING_USB = 1; // 0x1 + field public static final int TETHERING_WIFI = 0; // 0x0 + field public static final int TETHERING_WIFI_P2P = 3; // 0x3 + field public static final int TETHER_ERROR_DHCPSERVER_ERROR = 12; // 0xc + field public static final int TETHER_ERROR_DISABLE_FORWARDING_ERROR = 9; // 0x9 + field public static final int TETHER_ERROR_ENABLE_FORWARDING_ERROR = 8; // 0x8 + field public static final int TETHER_ERROR_ENTITLEMENT_UNKNOWN = 13; // 0xd + field public static final int TETHER_ERROR_IFACE_CFG_ERROR = 10; // 0xa + field public static final int TETHER_ERROR_INTERNAL_ERROR = 5; // 0x5 + field public static final int TETHER_ERROR_NO_ACCESS_TETHERING_PERMISSION = 15; // 0xf + field public static final int TETHER_ERROR_NO_CHANGE_TETHERING_PERMISSION = 14; // 0xe + field public static final int TETHER_ERROR_NO_ERROR = 0; // 0x0 + field public static final int TETHER_ERROR_PROVISIONING_FAILED = 11; // 0xb + field public static final int TETHER_ERROR_SERVICE_UNAVAIL = 2; // 0x2 + field public static final int TETHER_ERROR_TETHER_IFACE_ERROR = 6; // 0x6 + field public static final int TETHER_ERROR_UNAVAIL_IFACE = 4; // 0x4 + field public static final int TETHER_ERROR_UNKNOWN_IFACE = 1; // 0x1 + field public static final int TETHER_ERROR_UNKNOWN_TYPE = 16; // 0x10 + field public static final int TETHER_ERROR_UNSUPPORTED = 3; // 0x3 + field public static final int TETHER_ERROR_UNTETHER_IFACE_ERROR = 7; // 0x7 + field public static final int TETHER_HARDWARE_OFFLOAD_FAILED = 2; // 0x2 + field public static final int TETHER_HARDWARE_OFFLOAD_STARTED = 1; // 0x1 + field public static final int TETHER_HARDWARE_OFFLOAD_STOPPED = 0; // 0x0 + } + + public static interface TetheringManager.OnTetheringEntitlementResultListener { + method public void onTetheringEntitlementResult(int); + } + + public static interface TetheringManager.StartTetheringCallback { + method public default void onTetheringFailed(int); + method public default void onTetheringStarted(); + } + + public static interface TetheringManager.TetheringEventCallback { + method public default void onClientsChanged(@NonNull java.util.Collection<android.net.TetheredClient>); + method public default void onError(@NonNull String, int); + method public default void onOffloadStatusChanged(int); + method public default void onTetherableInterfaceRegexpsChanged(@NonNull android.net.TetheringManager.TetheringInterfaceRegexps); + method public default void onTetherableInterfacesChanged(@NonNull java.util.List<java.lang.String>); + method public default void onTetheredInterfacesChanged(@NonNull java.util.List<java.lang.String>); + method public default void onTetheringSupported(boolean); + method public default void onUpstreamChanged(@Nullable android.net.Network); + } + + public static class TetheringManager.TetheringInterfaceRegexps { + method @NonNull public java.util.List<java.lang.String> getTetherableBluetoothRegexs(); + method @NonNull public java.util.List<java.lang.String> getTetherableUsbRegexs(); + method @NonNull public java.util.List<java.lang.String> getTetherableWifiRegexs(); + } + + public static class TetheringManager.TetheringRequest { + method @Nullable public android.net.LinkAddress getClientStaticIpv4Address(); + method @Nullable public android.net.LinkAddress getLocalIpv4Address(); + method public boolean getShouldShowEntitlementUi(); + method public int getTetheringType(); + method public boolean isExemptFromEntitlementCheck(); + } + + public static class TetheringManager.TetheringRequest.Builder { + ctor public TetheringManager.TetheringRequest.Builder(int); + method @NonNull public android.net.TetheringManager.TetheringRequest build(); + method @NonNull @RequiresPermission("android.permission.TETHER_PRIVILEGED") public android.net.TetheringManager.TetheringRequest.Builder setExemptFromEntitlementCheck(boolean); + method @NonNull @RequiresPermission("android.permission.TETHER_PRIVILEGED") public android.net.TetheringManager.TetheringRequest.Builder setShouldShowEntitlementUi(boolean); + method @NonNull @RequiresPermission("android.permission.TETHER_PRIVILEGED") public android.net.TetheringManager.TetheringRequest.Builder setStaticIpv4Addresses(@NonNull android.net.LinkAddress, @NonNull android.net.LinkAddress); + } + +} + +package android.os { + + public class StatsFrameworkInitializer { + method public static void registerServiceWrappers(); + method public static void setStatsServiceManager(@NonNull android.os.StatsServiceManager); + } + + public class StatsServiceManager { + method @NonNull public android.os.StatsServiceManager.ServiceRegisterer getStatsCompanionServiceRegisterer(); + method @NonNull public android.os.StatsServiceManager.ServiceRegisterer getStatsManagerServiceRegisterer(); + method @NonNull public android.os.StatsServiceManager.ServiceRegisterer getStatsdServiceRegisterer(); + } + + public static class StatsServiceManager.ServiceNotFoundException extends java.lang.Exception { + ctor public StatsServiceManager.ServiceNotFoundException(@NonNull String); + } + + public static final class StatsServiceManager.ServiceRegisterer { + method @Nullable public android.os.IBinder get(); + method @Nullable public android.os.IBinder getOrThrow() throws android.os.StatsServiceManager.ServiceNotFoundException; + } + +} + +package android.util { + + public final class Log { + method public static int logToRadioBuffer(int, @Nullable String, @Nullable String); + } + +} + diff --git a/api/module-lib-lint-baseline.txt b/api/module-lib-lint-baseline.txt new file mode 100644 index 000000000000..56f7a02260a7 --- /dev/null +++ b/api/module-lib-lint-baseline.txt @@ -0,0 +1,29 @@ +// Baseline format: 1.0 +ActionValue: android.net.TetheringConstants#EXTRA_ADD_TETHER_TYPE: + Inconsistent extra value; expected `android.net.extra.ADD_TETHER_TYPE`, was `extraAddTetherType` +ActionValue: android.net.TetheringConstants#EXTRA_PROVISION_CALLBACK: + Inconsistent extra value; expected `android.net.extra.PROVISION_CALLBACK`, was `extraProvisionCallback` +ActionValue: android.net.TetheringConstants#EXTRA_REM_TETHER_TYPE: + Inconsistent extra value; expected `android.net.extra.REM_TETHER_TYPE`, was `extraRemTetherType` +ActionValue: android.net.TetheringConstants#EXTRA_RUN_PROVISION: + Inconsistent extra value; expected `android.net.extra.RUN_PROVISION`, was `extraRunProvision` +ActionValue: android.net.TetheringConstants#EXTRA_SET_ALARM: + Inconsistent extra value; expected `android.net.extra.SET_ALARM`, was `extraSetAlarm` +ActionValue: android.net.TetheringManager#ACTION_TETHER_STATE_CHANGED: + Inconsistent action value; expected `android.net.action.TETHER_STATE_CHANGED`, was `android.net.conn.TETHER_STATE_CHANGED` +ActionValue: android.net.TetheringManager#EXTRA_ACTIVE_TETHER: + Inconsistent extra value; expected `android.net.extra.ACTIVE_TETHER`, was `tetherArray` +ActionValue: android.net.TetheringManager#EXTRA_AVAILABLE_TETHER: + Inconsistent extra value; expected `android.net.extra.AVAILABLE_TETHER`, was `availableArray` +ActionValue: android.net.TetheringManager#EXTRA_ERRORED_TETHER: + Inconsistent extra value; expected `android.net.extra.ERRORED_TETHER`, was `erroredArray` + + +ManagerConstructor: android.net.TetheringManager#TetheringManager(android.content.Context, java.util.function.Supplier<android.os.IBinder>): + Managers must always be obtained from Context; no direct constructors + + +PrivateSuperclass: android.location.GnssAntennaInfo.PhaseCenterVariationCorrections: + Public class android.location.GnssAntennaInfo.PhaseCenterVariationCorrections extends private class android.location.GnssAntennaInfo.SphericalCorrections +PrivateSuperclass: android.location.GnssAntennaInfo.SignalGainCorrections: + Public class android.location.GnssAntennaInfo.SignalGainCorrections extends private class android.location.GnssAntennaInfo.SphericalCorrections diff --git a/api/module-lib-removed.txt b/api/module-lib-removed.txt new file mode 100644 index 000000000000..d802177e249b --- /dev/null +++ b/api/module-lib-removed.txt @@ -0,0 +1 @@ +// Signature format: 2.0 diff --git a/api/removed.txt b/api/removed.txt index 536eba1779f2..e7e96776ac0d 100644 --- a/api/removed.txt +++ b/api/removed.txt @@ -1,19 +1,10 @@ // Signature format: 2.0 package android.app { - public class Activity extends android.view.ContextThemeWrapper implements android.content.ComponentCallbacks2 android.view.KeyEvent.Callback android.view.LayoutInflater.Factory2 android.view.View.OnCreateContextMenuListener android.view.Window.Callback { - method @Deprecated public boolean enterPictureInPictureMode(@NonNull android.app.PictureInPictureArgs); - method @Deprecated public void setPictureInPictureArgs(@NonNull android.app.PictureInPictureArgs); - } - public class ActivityManager { method @Deprecated public static int getMaxNumPictureInPictureActions(); } - public class KeyguardManager { - method @Deprecated public void dismissKeyguard(@NonNull android.app.Activity, @Nullable android.app.KeyguardManager.KeyguardDismissCallback, @Nullable android.os.Handler); - } - public class Notification implements android.os.Parcelable { method @Deprecated public String getChannel(); method public static Class<? extends android.app.Notification.Style> getNotificationStyleClass(String); @@ -21,54 +12,19 @@ package android.app { method @Deprecated public void setLatestEventInfo(android.content.Context, CharSequence, CharSequence, android.app.PendingIntent); } - public static class Notification.Builder { - method @Deprecated public android.app.Notification.Builder setChannel(String); - method @Deprecated public android.app.Notification.Builder setTimeout(long); + public static final class Notification.BubbleMetadata implements android.os.Parcelable { + method @Deprecated @Nullable public android.graphics.drawable.Icon getBubbleIcon(); + method @Deprecated @Nullable public android.app.PendingIntent getBubbleIntent(); } - @Deprecated public final class PictureInPictureArgs implements android.os.Parcelable { - method public static android.app.PictureInPictureArgs convert(android.app.PictureInPictureParams); - method public static android.app.PictureInPictureParams convert(android.app.PictureInPictureArgs); - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field public static final int CONTENTS_FILE_DESCRIPTOR = 1; // 0x1 - field @NonNull public static final android.os.Parcelable.Creator<android.app.PictureInPictureArgs> CREATOR; - field public static final int PARCELABLE_WRITE_RETURN_VALUE = 1; // 0x1 + public static final class Notification.BubbleMetadata.Builder { + method @Deprecated @NonNull public android.app.Notification.BubbleMetadata.Builder createIntentBubble(@NonNull android.app.PendingIntent, @NonNull android.graphics.drawable.Icon); + method @Deprecated @NonNull public android.app.Notification.BubbleMetadata.Builder createShortcutBubble(@NonNull String); } - public static class PictureInPictureArgs.Builder { - ctor public PictureInPictureArgs.Builder(); - method public android.app.PictureInPictureArgs build(); - method public android.app.PictureInPictureArgs.Builder setActions(java.util.List<android.app.RemoteAction>); - method public android.app.PictureInPictureArgs.Builder setAspectRatio(android.util.Rational); - method public android.app.PictureInPictureArgs.Builder setSourceRectHint(android.graphics.Rect); - } - -} - -package android.app.admin { - - public class DevicePolicyManager { - method @Deprecated @Nullable public android.os.UserHandle createAndInitializeUser(@NonNull android.content.ComponentName, String, String, @NonNull android.content.ComponentName, android.os.Bundle); - method @Deprecated @Nullable public android.os.UserHandle createUser(@NonNull android.content.ComponentName, String); - } - -} - -package android.app.job { - - public class JobInfo implements android.os.Parcelable { - method @Deprecated public long getEstimatedNetworkBytes(); - } - - public static final class JobInfo.Builder { - method @Deprecated public android.app.job.JobInfo.Builder setEstimatedNetworkBytes(long); - method @Deprecated public android.app.job.JobInfo.Builder setIsPrefetch(boolean); - } - - public final class JobWorkItem implements android.os.Parcelable { - ctor @Deprecated public JobWorkItem(android.content.Intent, long); - method @Deprecated public long getEstimatedNetworkBytes(); + public static class Notification.Builder { + method @Deprecated public android.app.Notification.Builder setChannel(String); + method @Deprecated public android.app.Notification.Builder setTimeout(long); } } @@ -123,11 +79,17 @@ package android.app.usage { package android.content { - public class ClipData implements android.os.Parcelable { - method @Deprecated public void addItem(android.content.ClipData.Item, android.content.ContentResolver); + public abstract class ContentProvider implements android.content.ComponentCallbacks2 { + method @Deprecated @Nullable public final String getCallingFeatureId(); + } + + public abstract class ContentResolver { + method @Deprecated public void notifyChange(@NonNull Iterable<android.net.Uri>, @Nullable android.database.ContentObserver, int); } public abstract class Context { + method @Deprecated @NonNull public android.content.Context createFeatureContext(@Nullable String); + method @Deprecated @Nullable public String getFeatureId(); method public abstract android.content.SharedPreferences getSharedPreferences(java.io.File, int); method public abstract java.io.File getSharedPreferencesPath(String); } @@ -145,14 +107,6 @@ package android.content { package android.content.pm { - public class ApplicationInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable { - field @Deprecated public String volumeUuid; - } - - public class ComponentInfo extends android.content.pm.PackageItemInfo { - field @Deprecated public boolean encryptionAware; - } - public class PackageInfo implements android.os.Parcelable { field public static final int REQUESTED_PERMISSION_REQUIRED = 1; // 0x1 } @@ -161,10 +115,6 @@ package android.content.pm { method public abstract boolean setInstantAppCookie(@Nullable byte[]); } - public class ResolveInfo implements android.os.Parcelable { - field @Deprecated public boolean instantAppAvailable; - } - public final class SharedLibraryInfo implements android.os.Parcelable { method public boolean isBuiltin(); method public boolean isDynamic(); @@ -265,17 +215,16 @@ package android.graphics.drawable { package android.hardware { - public final class HardwareBuffer implements java.lang.AutoCloseable android.os.Parcelable { - method @Deprecated public void destroy(); - method @Deprecated public boolean isDestroyed(); - } - public final class SensorDirectChannel implements java.nio.channels.Channel { method @Deprecated public boolean isValid(); } - public abstract class SensorManager { - method @Deprecated public int configureDirectChannel(android.hardware.SensorDirectChannel, android.hardware.Sensor, int); +} + +package android.icu.util { + + public class JapaneseCalendar extends android.icu.util.GregorianCalendar { + field @Deprecated public static final int CURRENT_ERA; } } @@ -288,11 +237,6 @@ package android.location { method @Deprecated public void removeVerticalAccuracy(); } - public class LocationManager { - method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean addNmeaListener(android.location.GpsStatus.NmeaListener); - method @Deprecated public void removeNmeaListener(android.location.GpsStatus.NmeaListener); - } - } package android.media { @@ -367,7 +311,6 @@ package android.os { public final class SystemClock { method @NonNull public static java.time.Clock elapsedRealtimeClock(); method @NonNull public static java.time.Clock uptimeClock(); - method @Deprecated @NonNull public static java.time.Clock uptimeMillisClock(); } public class TestLooperManager { @@ -512,17 +455,10 @@ package android.provider { field @Deprecated public static final String TIMESTAMP = "timestamp"; } - public final class MediaStore { - method @Deprecated @NonNull public static android.net.Uri createPending(@NonNull android.content.Context, @NonNull android.provider.MediaStore.PendingParams); - method @Deprecated @NonNull public static java.util.Set<java.lang.String> getAllVolumeNames(@NonNull android.content.Context); - method @Deprecated @NonNull public static android.provider.MediaStore.PendingSession openPending(@NonNull android.content.Context, @NonNull android.net.Uri); - method @Deprecated @NonNull public static android.net.Uri setIncludeTrashed(@NonNull android.net.Uri); - method @Deprecated public static void trash(@NonNull android.content.Context, @NonNull android.net.Uri); - method @Deprecated public static void trash(@NonNull android.content.Context, @NonNull android.net.Uri, long); - method @Deprecated public static void untrash(@NonNull android.content.Context, @NonNull android.net.Uri); - } - public static interface MediaStore.Audio.AudioColumns extends android.provider.MediaStore.MediaColumns { + field public static final String ALBUM = "album"; + field public static final String ARTIST = "artist"; + field public static final String COMPOSER = "composer"; field public static final String DURATION = "duration"; } @@ -530,6 +466,10 @@ package android.provider { field @Deprecated public static final String DESCRIPTION = "description"; } + public static interface MediaStore.Files.FileColumns extends android.provider.MediaStore.MediaColumns { + field public static final String TITLE = "title"; + } + public static interface MediaStore.Images.ImageColumns extends android.provider.MediaStore.MediaColumns { field public static final String BUCKET_DISPLAY_NAME = "bucket_display_name"; field public static final String BUCKET_ID = "bucket_id"; @@ -540,35 +480,17 @@ package android.provider { public static interface MediaStore.MediaColumns extends android.provider.BaseColumns { field @Deprecated public static final String GROUP_ID = "group_id"; - field @Deprecated public static final String HASH = "_hash"; - field @Deprecated public static final String IS_TRASHED = "is_trashed"; - field @Deprecated public static final String PRIMARY_DIRECTORY = "primary_directory"; - field @Deprecated public static final String SECONDARY_DIRECTORY = "secondary_directory"; - } - - @Deprecated public static class MediaStore.PendingParams { - ctor public MediaStore.PendingParams(@NonNull android.net.Uri, @NonNull String, @NonNull String); - method public void setDownloadUri(@Nullable android.net.Uri); - method public void setPrimaryDirectory(@Nullable String); - method public void setRefererUri(@Nullable android.net.Uri); - method public void setSecondaryDirectory(@Nullable String); - } - - @Deprecated public static class MediaStore.PendingSession implements java.lang.AutoCloseable { - method public void abandon(); - method public void close(); - method public void notifyProgress(@IntRange(from=0, to=100) int); - method @NonNull public android.os.ParcelFileDescriptor open() throws java.io.FileNotFoundException; - method @NonNull public java.io.OutputStream openOutputStream() throws java.io.FileNotFoundException; - method @NonNull public android.net.Uri publish(); } public static interface MediaStore.Video.VideoColumns extends android.provider.MediaStore.MediaColumns { + field public static final String ALBUM = "album"; + field public static final String ARTIST = "artist"; field public static final String BUCKET_DISPLAY_NAME = "bucket_display_name"; field public static final String BUCKET_ID = "bucket_id"; field public static final String DATE_TAKEN = "datetaken"; field public static final String DURATION = "duration"; field public static final String GROUP_ID = "group_id"; + field public static final String RESOLUTION = "resolution"; } public static final class Settings.Global extends android.provider.Settings.NameValueTable { @@ -587,10 +509,6 @@ package android.provider { field public static final String VOLUME_VOICE = "volume_voice"; } - public static final class Telephony.Sms.Intents { - field public static final String SMS_EMERGENCY_CB_RECEIVED_ACTION = "android.provider.Telephony.SMS_EMERGENCY_CB_RECEIVED"; - } - } package android.speech.tts { diff --git a/api/system-current.txt b/api/system-current.txt index 97488c1d569b..f07ebaf19cb6 100644..100755 --- a/api/system-current.txt +++ b/api/system-current.txt @@ -5,9 +5,11 @@ package android { field public static final String ACCESS_AMBIENT_LIGHT_STATS = "android.permission.ACCESS_AMBIENT_LIGHT_STATS"; field public static final String ACCESS_BROADCAST_RADIO = "android.permission.ACCESS_BROADCAST_RADIO"; field public static final String ACCESS_CACHE_FILESYSTEM = "android.permission.ACCESS_CACHE_FILESYSTEM"; + field public static final String ACCESS_CONTEXT_HUB = "android.permission.ACCESS_CONTEXT_HUB"; field public static final String ACCESS_DRM_CERTIFICATES = "android.permission.ACCESS_DRM_CERTIFICATES"; field @Deprecated public static final String ACCESS_FM_RADIO = "android.permission.ACCESS_FM_RADIO"; field public static final String ACCESS_INSTANT_APPS = "android.permission.ACCESS_INSTANT_APPS"; + field public static final String ACCESS_LOCUS_ID_USAGE_STATS = "android.permission.ACCESS_LOCUS_ID_USAGE_STATS"; field public static final String ACCESS_MOCK_LOCATION = "android.permission.ACCESS_MOCK_LOCATION"; field public static final String ACCESS_MTP = "android.permission.ACCESS_MTP"; field public static final String ACCESS_NETWORK_CONDITIONS = "android.permission.ACCESS_NETWORK_CONDITIONS"; @@ -15,6 +17,9 @@ package android { field public static final String ACCESS_SHARED_LIBRARIES = "android.permission.ACCESS_SHARED_LIBRARIES"; field public static final String ACCESS_SHORTCUTS = "android.permission.ACCESS_SHORTCUTS"; field public static final String ACCESS_SURFACE_FLINGER = "android.permission.ACCESS_SURFACE_FLINGER"; + field public static final String ACCESS_TV_DESCRAMBLER = "android.permission.ACCESS_TV_DESCRAMBLER"; + field public static final String ACCESS_TV_TUNER = "android.permission.ACCESS_TV_TUNER"; + field public static final String ACCESS_VIBRATOR_STATE = "android.permission.ACCESS_VIBRATOR_STATE"; field public static final String ACTIVITY_EMBEDDING = "android.permission.ACTIVITY_EMBEDDING"; field public static final String ADJUST_RUNTIME_PERMISSIONS_POLICY = "android.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY"; field public static final String ALLOCATE_AGGRESSIVE = "android.permission.ALLOCATE_AGGRESSIVE"; @@ -24,11 +29,13 @@ package android { field public static final String BACKUP = "android.permission.BACKUP"; field public static final String BIND_ATTENTION_SERVICE = "android.permission.BIND_ATTENTION_SERVICE"; field public static final String BIND_AUGMENTED_AUTOFILL_SERVICE = "android.permission.BIND_AUGMENTED_AUTOFILL_SERVICE"; + field public static final String BIND_CELL_BROADCAST_SERVICE = "android.permission.BIND_CELL_BROADCAST_SERVICE"; field @Deprecated public static final String BIND_CONNECTION_SERVICE = "android.permission.BIND_CONNECTION_SERVICE"; field public static final String BIND_CONTENT_CAPTURE_SERVICE = "android.permission.BIND_CONTENT_CAPTURE_SERVICE"; field public static final String BIND_CONTENT_SUGGESTIONS_SERVICE = "android.permission.BIND_CONTENT_SUGGESTIONS_SERVICE"; field public static final String BIND_DIRECTORY_SEARCH = "android.permission.BIND_DIRECTORY_SEARCH"; field public static final String BIND_EUICC_SERVICE = "android.permission.BIND_EUICC_SERVICE"; + field public static final String BIND_EXTERNAL_STORAGE_SERVICE = "android.permission.BIND_EXTERNAL_STORAGE_SERVICE"; field public static final String BIND_IMS_SERVICE = "android.permission.BIND_IMS_SERVICE"; field public static final String BIND_KEYGUARD_APPWIDGET = "android.permission.BIND_KEYGUARD_APPWIDGET"; field public static final String BIND_NETWORK_RECOMMENDATION_SERVICE = "android.permission.BIND_NETWORK_RECOMMENDATION_SERVICE"; @@ -51,28 +58,37 @@ package android { field public static final String CAPTURE_AUDIO_HOTWORD = "android.permission.CAPTURE_AUDIO_HOTWORD"; field public static final String CAPTURE_MEDIA_OUTPUT = "android.permission.CAPTURE_MEDIA_OUTPUT"; field public static final String CAPTURE_TV_INPUT = "android.permission.CAPTURE_TV_INPUT"; + field public static final String CAPTURE_VOICE_COMMUNICATION_OUTPUT = "android.permission.CAPTURE_VOICE_COMMUNICATION_OUTPUT"; field public static final String CHANGE_APP_IDLE_STATE = "android.permission.CHANGE_APP_IDLE_STATE"; field public static final String CHANGE_DEVICE_IDLE_TEMP_WHITELIST = "android.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST"; field public static final String CLEAR_APP_USER_DATA = "android.permission.CLEAR_APP_USER_DATA"; + field public static final String COMPANION_APPROVE_WIFI_CONNECTIONS = "android.permission.COMPANION_APPROVE_WIFI_CONNECTIONS"; field public static final String CONFIGURE_DISPLAY_BRIGHTNESS = "android.permission.CONFIGURE_DISPLAY_BRIGHTNESS"; - field public static final String CONNECTIVITY_INTERNAL = "android.permission.CONNECTIVITY_INTERNAL"; + field public static final String CONFIGURE_WIFI_DISPLAY = "android.permission.CONFIGURE_WIFI_DISPLAY"; + field @Deprecated public static final String CONNECTIVITY_INTERNAL = "android.permission.CONNECTIVITY_INTERNAL"; field public static final String CONNECTIVITY_USE_RESTRICTED_NETWORKS = "android.permission.CONNECTIVITY_USE_RESTRICTED_NETWORKS"; + field public static final String CONTROL_DEVICE_LIGHTS = "android.permission.CONTROL_DEVICE_LIGHTS"; field public static final String CONTROL_DISPLAY_COLOR_TRANSFORMS = "android.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS"; field public static final String CONTROL_DISPLAY_SATURATION = "android.permission.CONTROL_DISPLAY_SATURATION"; field public static final String CONTROL_INCALL_EXPERIENCE = "android.permission.CONTROL_INCALL_EXPERIENCE"; field public static final String CONTROL_KEYGUARD_SECURE_NOTIFICATIONS = "android.permission.CONTROL_KEYGUARD_SECURE_NOTIFICATIONS"; field public static final String CONTROL_VPN = "android.permission.CONTROL_VPN"; + field public static final String CREATE_USERS = "android.permission.CREATE_USERS"; field public static final String CRYPT_KEEPER = "android.permission.CRYPT_KEEPER"; field public static final String DEVICE_POWER = "android.permission.DEVICE_POWER"; field public static final String DISPATCH_PROVISIONING_MESSAGE = "android.permission.DISPATCH_PROVISIONING_MESSAGE"; + field public static final String ENTER_CAR_MODE_PRIORITIZED = "android.permission.ENTER_CAR_MODE_PRIORITIZED"; + field public static final String EXEMPT_FROM_AUDIO_RECORD_RESTRICTIONS = "android.permission.EXEMPT_FROM_AUDIO_RECORD_RESTRICTIONS"; field public static final String FORCE_BACK = "android.permission.FORCE_BACK"; field public static final String FORCE_STOP_PACKAGES = "android.permission.FORCE_STOP_PACKAGES"; field public static final String GET_APP_OPS_STATS = "android.permission.GET_APP_OPS_STATS"; field public static final String GET_PROCESS_STATE_AND_OOM_SCORE = "android.permission.GET_PROCESS_STATE_AND_OOM_SCORE"; field public static final String GET_RUNTIME_PERMISSIONS = "android.permission.GET_RUNTIME_PERMISSIONS"; field public static final String GET_TOP_ACTIVITY_INFO = "android.permission.GET_TOP_ACTIVITY_INFO"; - field public static final String GRANT_PROFILE_OWNER_DEVICE_IDS_ACCESS = "android.permission.GRANT_PROFILE_OWNER_DEVICE_IDS_ACCESS"; + field @Deprecated public static final String GRANT_PROFILE_OWNER_DEVICE_IDS_ACCESS = "android.permission.GRANT_PROFILE_OWNER_DEVICE_IDS_ACCESS"; field public static final String GRANT_RUNTIME_PERMISSIONS = "android.permission.GRANT_RUNTIME_PERMISSIONS"; + field public static final String GRANT_RUNTIME_PERMISSIONS_TO_TELEPHONY_DEFAULTS = "android.permission.GRANT_RUNTIME_PERMISSIONS_TO_TELEPHONY_DEFAULTS"; + field public static final String HANDLE_CAR_MODE_CHANGES = "android.permission.HANDLE_CAR_MODE_CHANGES"; field public static final String HARDWARE_TEST = "android.permission.HARDWARE_TEST"; field public static final String HDMI_CEC = "android.permission.HDMI_CEC"; field public static final String HIDE_NON_SYSTEM_OVERLAY_WINDOWS = "android.permission.HIDE_NON_SYSTEM_OVERLAY_WINDOWS"; @@ -82,7 +98,6 @@ package android { field public static final String INSTALL_PACKAGE_UPDATES = "android.permission.INSTALL_PACKAGE_UPDATES"; field public static final String INSTALL_SELF_UPDATES = "android.permission.INSTALL_SELF_UPDATES"; field public static final String INTENT_FILTER_VERIFICATION_AGENT = "android.permission.INTENT_FILTER_VERIFICATION_AGENT"; - field public static final String INTERACT_ACROSS_PROFILES = "android.permission.INTERACT_ACROSS_PROFILES"; field public static final String INTERACT_ACROSS_USERS = "android.permission.INTERACT_ACROSS_USERS"; field public static final String INTERACT_ACROSS_USERS_FULL = "android.permission.INTERACT_ACROSS_USERS_FULL"; field public static final String INTERNAL_SYSTEM_WINDOW = "android.permission.INTERNAL_SYSTEM_WINDOW"; @@ -102,7 +117,9 @@ package android { field public static final String MANAGE_CONTENT_CAPTURE = "android.permission.MANAGE_CONTENT_CAPTURE"; field public static final String MANAGE_CONTENT_SUGGESTIONS = "android.permission.MANAGE_CONTENT_SUGGESTIONS"; field public static final String MANAGE_DEBUGGING = "android.permission.MANAGE_DEBUGGING"; + field public static final String MANAGE_FACTORY_RESET_PROTECTION = "android.permission.MANAGE_FACTORY_RESET_PROTECTION"; field public static final String MANAGE_IPSEC_TUNNELS = "android.permission.MANAGE_IPSEC_TUNNELS"; + field public static final String MANAGE_ONE_TIME_PERMISSION_SESSIONS = "android.permission.MANAGE_ONE_TIME_PERMISSION_SESSIONS"; field public static final String MANAGE_ROLE_HOLDERS = "android.permission.MANAGE_ROLE_HOLDERS"; field public static final String MANAGE_ROLLBACKS = "android.permission.MANAGE_ROLLBACKS"; field public static final String MANAGE_SENSOR_PRIVACY = "android.permission.MANAGE_SENSOR_PRIVACY"; @@ -118,15 +135,22 @@ package android { field @Deprecated public static final String MODIFY_NETWORK_ACCOUNTING = "android.permission.MODIFY_NETWORK_ACCOUNTING"; field public static final String MODIFY_PARENTAL_CONTROLS = "android.permission.MODIFY_PARENTAL_CONTROLS"; field public static final String MODIFY_QUIET_MODE = "android.permission.MODIFY_QUIET_MODE"; + field public static final String MODIFY_SETTINGS_OVERRIDEABLE_BY_RESTORE = "android.permission.MODIFY_SETTINGS_OVERRIDEABLE_BY_RESTORE"; field public static final String MOVE_PACKAGE = "android.permission.MOVE_PACKAGE"; + field public static final String NETWORK_AIRPLANE_MODE = "android.permission.NETWORK_AIRPLANE_MODE"; field public static final String NETWORK_CARRIER_PROVISIONING = "android.permission.NETWORK_CARRIER_PROVISIONING"; + field public static final String NETWORK_FACTORY = "android.permission.NETWORK_FACTORY"; field public static final String NETWORK_MANAGED_PROVISIONING = "android.permission.NETWORK_MANAGED_PROVISIONING"; field public static final String NETWORK_SCAN = "android.permission.NETWORK_SCAN"; + field public static final String NETWORK_SETTINGS = "android.permission.NETWORK_SETTINGS"; field public static final String NETWORK_SETUP_WIZARD = "android.permission.NETWORK_SETUP_WIZARD"; field public static final String NETWORK_SIGNAL_STRENGTH_WAKEUP = "android.permission.NETWORK_SIGNAL_STRENGTH_WAKEUP"; + field public static final String NETWORK_STACK = "android.permission.NETWORK_STACK"; + field public static final String NETWORK_STATS_PROVIDER = "android.permission.NETWORK_STATS_PROVIDER"; field public static final String NOTIFICATION_DURING_SETUP = "android.permission.NOTIFICATION_DURING_SETUP"; field public static final String NOTIFY_TV_INPUTS = "android.permission.NOTIFY_TV_INPUTS"; field public static final String OBSERVE_APP_USAGE = "android.permission.OBSERVE_APP_USAGE"; + field public static final String OBSERVE_NETWORK_POLICY = "android.permission.OBSERVE_NETWORK_POLICY"; field public static final String OBSERVE_ROLE_HOLDERS = "android.permission.OBSERVE_ROLE_HOLDERS"; field public static final String OPEN_ACCESSIBILITY_DETAILS_SETTINGS = "android.permission.OPEN_ACCESSIBILITY_DETAILS_SETTINGS"; field public static final String OVERRIDE_WIFI_CONFIG = "android.permission.OVERRIDE_WIFI_CONFIG"; @@ -139,6 +163,9 @@ package android { field public static final String PROVIDE_RESOLVER_RANKER_SERVICE = "android.permission.PROVIDE_RESOLVER_RANKER_SERVICE"; field public static final String PROVIDE_TRUST_AGENT = "android.permission.PROVIDE_TRUST_AGENT"; field public static final String QUERY_TIME_ZONE_RULES = "android.permission.QUERY_TIME_ZONE_RULES"; + field public static final String RADIO_SCAN_WITHOUT_LOCATION = "android.permission.RADIO_SCAN_WITHOUT_LOCATION"; + field public static final String READ_ACTIVE_EMERGENCY_SESSION = "android.permission.READ_ACTIVE_EMERGENCY_SESSION"; + field public static final String READ_CARRIER_APP_INFO = "android.permission.READ_CARRIER_APP_INFO"; field public static final String READ_CELL_BROADCASTS = "android.permission.READ_CELL_BROADCASTS"; field public static final String READ_CONTENT_RATING_SYSTEMS = "android.permission.READ_CONTENT_RATING_SYSTEMS"; field public static final String READ_DEVICE_CONFIG = "android.permission.READ_DEVICE_CONFIG"; @@ -164,16 +191,20 @@ package android { field public static final String REGISTER_CALL_PROVIDER = "android.permission.REGISTER_CALL_PROVIDER"; field public static final String REGISTER_CONNECTION_MANAGER = "android.permission.REGISTER_CONNECTION_MANAGER"; field public static final String REGISTER_SIM_SUBSCRIPTION = "android.permission.REGISTER_SIM_SUBSCRIPTION"; + field public static final String REGISTER_STATS_PULL_ATOM = "android.permission.REGISTER_STATS_PULL_ATOM"; field public static final String REMOTE_DISPLAY_PROVIDER = "android.permission.REMOTE_DISPLAY_PROVIDER"; field public static final String REMOVE_DRM_CERTIFICATES = "android.permission.REMOVE_DRM_CERTIFICATES"; field public static final String REMOVE_TASKS = "android.permission.REMOVE_TASKS"; + field public static final String REQUEST_NETWORK_SCORES = "android.permission.REQUEST_NETWORK_SCORES"; field public static final String REQUEST_NOTIFICATION_ASSISTANT_SERVICE = "android.permission.REQUEST_NOTIFICATION_ASSISTANT_SERVICE"; field public static final String RESET_PASSWORD = "android.permission.RESET_PASSWORD"; + field public static final String RESTORE_RUNTIME_PERMISSIONS = "android.permission.RESTORE_RUNTIME_PERMISSIONS"; field public static final String RESTRICTED_VR_ACCESS = "android.permission.RESTRICTED_VR_ACCESS"; field public static final String RETRIEVE_WINDOW_CONTENT = "android.permission.RETRIEVE_WINDOW_CONTENT"; field public static final String REVIEW_ACCESSIBILITY_SERVICES = "android.permission.REVIEW_ACCESSIBILITY_SERVICES"; field public static final String REVOKE_RUNTIME_PERMISSIONS = "android.permission.REVOKE_RUNTIME_PERMISSIONS"; field public static final String SCORE_NETWORKS = "android.permission.SCORE_NETWORKS"; + field public static final String SECURE_ELEMENT_PRIVILEGED_OPERATION = "android.permission.SECURE_ELEMENT_PRIVILEGED_OPERATION"; field public static final String SEND_DEVICE_CUSTOMIZATION_READY = "android.permission.SEND_DEVICE_CUSTOMIZATION_READY"; field public static final String SEND_SHOW_SUSPENDED_APP_DETAILS = "android.permission.SEND_SHOW_SUSPENDED_APP_DETAILS"; field public static final String SEND_SMS_NO_CONFIRMATION = "android.permission.SEND_SMS_NO_CONFIRMATION"; @@ -192,6 +223,7 @@ package android { field public static final String SUBSTITUTE_NOTIFICATION_APP_NAME = "android.permission.SUBSTITUTE_NOTIFICATION_APP_NAME"; field public static final String SUBSTITUTE_SHARE_TARGET_APP_NAME_AND_ICON = "android.permission.SUBSTITUTE_SHARE_TARGET_APP_NAME_AND_ICON"; field public static final String SUSPEND_APPS = "android.permission.SUSPEND_APPS"; + field public static final String SYSTEM_CAMERA = "android.permission.SYSTEM_CAMERA"; field public static final String TETHER_PRIVILEGED = "android.permission.TETHER_PRIVILEGED"; field public static final String TV_INPUT_HARDWARE = "android.permission.TV_INPUT_HARDWARE"; field public static final String TV_VIRTUAL_REMOTE_CONTROLLER = "android.permission.TV_VIRTUAL_REMOTE_CONTROLLER"; @@ -199,13 +231,17 @@ package android { field public static final String UPDATE_APP_OPS_STATS = "android.permission.UPDATE_APP_OPS_STATS"; field public static final String UPDATE_LOCK = "android.permission.UPDATE_LOCK"; field public static final String UPDATE_TIME_ZONE_RULES = "android.permission.UPDATE_TIME_ZONE_RULES"; + field public static final String UPGRADE_RUNTIME_PERMISSIONS = "android.permission.UPGRADE_RUNTIME_PERMISSIONS"; field public static final String USER_ACTIVITY = "android.permission.USER_ACTIVITY"; field public static final String USE_RESERVED_DISK = "android.permission.USE_RESERVED_DISK"; + field public static final String WHITELIST_AUTO_REVOKE_PERMISSIONS = "android.permission.WHITELIST_AUTO_REVOKE_PERMISSIONS"; field public static final String WHITELIST_RESTRICTED_PERMISSIONS = "android.permission.WHITELIST_RESTRICTED_PERMISSIONS"; + field public static final String WIFI_SET_DEVICE_MOBILITY_STATE = "android.permission.WIFI_SET_DEVICE_MOBILITY_STATE"; + field public static final String WIFI_UPDATE_USABILITY_STATS_SCORE = "android.permission.WIFI_UPDATE_USABILITY_STATS_SCORE"; field public static final String WRITE_DEVICE_CONFIG = "android.permission.WRITE_DEVICE_CONFIG"; field public static final String WRITE_DREAM_STATE = "android.permission.WRITE_DREAM_STATE"; field public static final String WRITE_EMBEDDED_SUBSCRIPTIONS = "android.permission.WRITE_EMBEDDED_SUBSCRIPTIONS"; - field public static final String WRITE_MEDIA_STORAGE = "android.permission.WRITE_MEDIA_STORAGE"; + field @Deprecated public static final String WRITE_MEDIA_STORAGE = "android.permission.WRITE_MEDIA_STORAGE"; field public static final String WRITE_OBB = "android.permission.WRITE_OBB"; } @@ -220,8 +256,10 @@ package android { public static final class R.attr { field public static final int allowClearUserDataOnFailedRestore = 16844288; // 0x1010600 field public static final int isVrOnly = 16844152; // 0x1010578 + field public static final int minExtensionVersion = 16844305; // 0x1010611 field public static final int requiredSystemPropertyName = 16844133; // 0x1010565 field public static final int requiredSystemPropertyValue = 16844134; // 0x1010566 + field public static final int sdkVersion = 16844304; // 0x1010610 field public static final int supportsAmbientMode = 16844173; // 0x101058d field public static final int userRestriction = 16844164; // 0x1010584 } @@ -253,6 +291,8 @@ package android { public static final class R.string { field public static final int config_defaultAssistant = 17039393; // 0x1040021 field public static final int config_defaultBrowser = 17039394; // 0x1040022 + field public static final int config_defaultCallRedirection = 17039397; // 0x1040025 + field public static final int config_defaultCallScreening = 17039398; // 0x1040026 field public static final int config_defaultDialer = 17039395; // 0x1040023 field public static final int config_defaultSms = 17039396; // 0x1040024 field public static final int config_feedbackIntentExtraKey = 17039391; // 0x104001f @@ -261,6 +301,7 @@ package android { field public static final int config_helpIntentNameKey = 17039390; // 0x104001e field public static final int config_helpPackageNameKey = 17039387; // 0x104001b field public static final int config_helpPackageNameValue = 17039388; // 0x104001c + field public static final int config_systemGallery = 17039399; // 0x1040027 } public static final class R.style { @@ -298,6 +339,7 @@ package android.app { method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public int getPackageImportance(String); method @NonNull public java.util.Collection<java.util.Locale> getSupportedLocales(); method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public int getUidImportance(int); + method @RequiresPermission(android.Manifest.permission.FORCE_STOP_PACKAGES) public void killProcessesWhenImperceptible(@NonNull int[], @NonNull String); method @RequiresPermission(android.Manifest.permission.KILL_UID) public void killUid(int, String); method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public void removeOnUidImportanceListener(android.app.ActivityManager.OnUidImportanceListener); method public void setDeviceLocales(@NonNull android.os.LocaleList); @@ -315,14 +357,15 @@ package android.app { } public class AppOpsManager { + method @Nullable @RequiresPermission(android.Manifest.permission.GET_APP_OPS_STATS) public android.app.RuntimeAppOpAccessMessage collectRuntimeAppOpAccessMessage(); method @RequiresPermission(android.Manifest.permission.GET_APP_OPS_STATS) public void getHistoricalOps(@NonNull android.app.AppOpsManager.HistoricalOpsRequest, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.AppOpsManager.HistoricalOps>); method public static String[] getOpStrs(); method @NonNull @RequiresPermission(android.Manifest.permission.GET_APP_OPS_STATS) public java.util.List<android.app.AppOpsManager.PackageOps> getOpsForPackage(int, @NonNull String, @Nullable java.lang.String...); method @NonNull @RequiresPermission(android.Manifest.permission.GET_APP_OPS_STATS) public java.util.List<android.app.AppOpsManager.PackageOps> getPackagesForOps(@Nullable String[]); method public static int opToDefaultMode(@NonNull String); method @Nullable public static String opToPermission(@NonNull String); - method @RequiresPermission("android.permission.MANAGE_APP_OPS_MODES") public void setMode(String, int, String, int); - method @RequiresPermission("android.permission.MANAGE_APP_OPS_MODES") public void setUidMode(String, int, int); + method @RequiresPermission("android.permission.MANAGE_APP_OPS_MODES") public void setMode(@NonNull String, int, @Nullable String, int); + method @RequiresPermission("android.permission.MANAGE_APP_OPS_MODES") public void setUidMode(@NonNull String, int, int); field public static final String OPSTR_ACCEPT_HANDOVER = "android:accept_handover"; field public static final String OPSTR_ACCESS_ACCESSIBILITY = "android:access_accessibility"; field public static final String OPSTR_ACCESS_NOTIFICATIONS = "android:access_notifications"; @@ -337,12 +380,17 @@ package android.app { field public static final String OPSTR_AUDIO_NOTIFICATION_VOLUME = "android:audio_notification_volume"; field public static final String OPSTR_AUDIO_RING_VOLUME = "android:audio_ring_volume"; field public static final String OPSTR_AUDIO_VOICE_VOLUME = "android:audio_voice_volume"; + field public static final String OPSTR_AUTO_REVOKE_MANAGED_BY_INSTALLER = "android:auto_revoke_managed_by_installer"; + field public static final String OPSTR_AUTO_REVOKE_PERMISSIONS_IF_UNUSED = "android:auto_revoke_permissions_if_unused"; field public static final String OPSTR_BIND_ACCESSIBILITY_SERVICE = "android:bind_accessibility_service"; field public static final String OPSTR_CHANGE_WIFI_STATE = "android:change_wifi_state"; field public static final String OPSTR_GET_ACCOUNTS = "android:get_accounts"; field public static final String OPSTR_GPS = "android:gps"; field public static final String OPSTR_INSTANT_APP_START_FOREGROUND = "android:instant_app_start_foreground"; + field public static final String OPSTR_INTERACT_ACROSS_PROFILES = "android:interact_across_profiles"; field public static final String OPSTR_LEGACY_STORAGE = "android:legacy_storage"; + field public static final String OPSTR_LOADER_USAGE_STATS = "android:loader_usage_stats"; + field public static final String OPSTR_MANAGE_EXTERNAL_STORAGE = "android:manage_external_storage"; field public static final String OPSTR_MANAGE_IPSEC_TUNNELS = "android:manage_ipsec_tunnels"; field public static final String OPSTR_MUTE_MICROPHONE = "android:mute_microphone"; field public static final String OPSTR_NEIGHBORING_CELLS = "android:neighboring_cells"; @@ -351,6 +399,9 @@ package android.app { field public static final String OPSTR_PROJECT_MEDIA = "android:project_media"; field public static final String OPSTR_READ_CLIPBOARD = "android:read_clipboard"; field public static final String OPSTR_READ_ICC_SMS = "android:read_icc_sms"; + field public static final String OPSTR_READ_MEDIA_AUDIO = "android:read_media_audio"; + field public static final String OPSTR_READ_MEDIA_IMAGES = "android:read_media_images"; + field public static final String OPSTR_READ_MEDIA_VIDEO = "android:read_media_video"; field public static final String OPSTR_RECEIVE_EMERGENCY_BROADCAST = "android:receive_emergency_broadcast"; field public static final String OPSTR_REQUEST_DELETE_PACKAGES = "android:request_delete_packages"; field public static final String OPSTR_REQUEST_INSTALL_PACKAGES = "android:request_install_packages"; @@ -366,6 +417,9 @@ package android.app { field public static final String OPSTR_WIFI_SCAN = "android:wifi_scan"; field public static final String OPSTR_WRITE_CLIPBOARD = "android:write_clipboard"; field public static final String OPSTR_WRITE_ICC_SMS = "android:write_icc_sms"; + field public static final String OPSTR_WRITE_MEDIA_AUDIO = "android:write_media_audio"; + field public static final String OPSTR_WRITE_MEDIA_IMAGES = "android:write_media_images"; + field public static final String OPSTR_WRITE_MEDIA_VIDEO = "android:write_media_video"; field public static final String OPSTR_WRITE_SMS = "android:write_sms"; field public static final String OPSTR_WRITE_WALLPAPER = "android:write_wallpaper"; field public static final int OP_FLAGS_ALL = 31; // 0x1f @@ -379,11 +433,44 @@ package android.app { field public static final int UID_STATE_CACHED = 700; // 0x2bc field public static final int UID_STATE_FOREGROUND = 500; // 0x1f4 field public static final int UID_STATE_FOREGROUND_SERVICE = 400; // 0x190 - field public static final int UID_STATE_FOREGROUND_SERVICE_LOCATION = 300; // 0x12c + field @Deprecated public static final int UID_STATE_FOREGROUND_SERVICE_LOCATION = 300; // 0x12c field public static final int UID_STATE_PERSISTENT = 100; // 0x64 field public static final int UID_STATE_TOP = 200; // 0xc8 } + public static final class AppOpsManager.AttributedHistoricalOps implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public android.app.AppOpsManager.HistoricalOp getOp(@NonNull String); + method @NonNull public android.app.AppOpsManager.HistoricalOp getOpAt(@IntRange(from=0) int); + method @IntRange(from=0) public int getOpCount(); + method @Nullable public String getTag(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.AttributedHistoricalOps> CREATOR; + } + + public static final class AppOpsManager.AttributedOpEntry implements android.os.Parcelable { + method public int describeContents(); + method public long getLastAccessBackgroundTime(int); + method public long getLastAccessForegroundTime(int); + method public long getLastAccessTime(int); + method public long getLastAccessTime(int, int, int); + method public long getLastBackgroundDuration(int); + method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastBackgroundProxyInfo(int); + method public long getLastDuration(int); + method public long getLastDuration(int, int, int); + method public long getLastForegroundDuration(int); + method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastForegroundProxyInfo(int); + method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastProxyInfo(int); + method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastProxyInfo(int, int, int); + method public long getLastRejectBackgroundTime(int); + method public long getLastRejectForegroundTime(int); + method public long getLastRejectTime(int); + method public long getLastRejectTime(int, int, int); + method public boolean isRunning(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.AttributedOpEntry> CREATOR; + } + public static final class AppOpsManager.HistoricalOp implements android.os.Parcelable { method public int describeContents(); method public long getAccessCount(int, int, int); @@ -417,6 +504,7 @@ package android.app { public static final class AppOpsManager.HistoricalOpsRequest.Builder { ctor public AppOpsManager.HistoricalOpsRequest.Builder(long, long); method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest build(); + method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setAttributionTag(@Nullable String); method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setFlags(int); method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setOpNames(@Nullable java.util.List<java.lang.String>); method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setPackageName(@Nullable String); @@ -425,6 +513,9 @@ package android.app { public static final class AppOpsManager.HistoricalPackageOps implements android.os.Parcelable { method public int describeContents(); + method @Nullable public android.app.AppOpsManager.AttributedHistoricalOps getAttributedOps(@NonNull String); + method @NonNull public android.app.AppOpsManager.AttributedHistoricalOps getAttributedOpsAt(@IntRange(from=0) int); + method @IntRange(from=0) public int getAttributedOpsCount(); method @Nullable public android.app.AppOpsManager.HistoricalOp getOp(@NonNull String); method @NonNull public android.app.AppOpsManager.HistoricalOp getOpAt(@IntRange(from=0) int); method @IntRange(from=0) public int getOpCount(); @@ -445,35 +536,50 @@ package android.app { public static final class AppOpsManager.OpEntry implements android.os.Parcelable { method public int describeContents(); - method public long getDuration(); + method @NonNull public java.util.Map<java.lang.String,android.app.AppOpsManager.AttributedOpEntry> getAttributedOpEntries(); + method @Deprecated public long getDuration(); method public long getLastAccessBackgroundTime(int); method public long getLastAccessForegroundTime(int); method public long getLastAccessTime(int); method public long getLastAccessTime(int, int, int); method public long getLastBackgroundDuration(int); + method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastBackgroundProxyInfo(int); + method public long getLastDuration(int); method public long getLastDuration(int, int, int); method public long getLastForegroundDuration(int); + method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastForegroundProxyInfo(int); + method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastProxyInfo(int); + method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastProxyInfo(int, int, int); method public long getLastRejectBackgroundTime(int); method public long getLastRejectForegroundTime(int); method public long getLastRejectTime(int); method public long getLastRejectTime(int, int, int); method public int getMode(); method @NonNull public String getOpStr(); - method @Nullable public String getProxyPackageName(); - method @Nullable public String getProxyPackageName(int, int); - method public int getProxyUid(); - method public int getProxyUid(int, int); + method @Deprecated @Nullable public String getProxyPackageName(); + method @Deprecated @Nullable public String getProxyPackageName(int, int); + method @Deprecated public int getProxyUid(); + method @Deprecated public int getProxyUid(int, int); method public boolean isRunning(); method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.OpEntry> CREATOR; } + public static final class AppOpsManager.OpEventProxyInfo implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public String getAttributionTag(); + method @Nullable public String getPackageName(); + method @IntRange(from=0) public int getUid(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.OpEventProxyInfo> CREATOR; + } + public static final class AppOpsManager.PackageOps implements android.os.Parcelable { method public int describeContents(); method @NonNull public java.util.List<android.app.AppOpsManager.OpEntry> getOps(); method @NonNull public String getPackageName(); method public int getUid(); - method public void writeToParcel(android.os.Parcel, int); + method public void writeToParcel(@NonNull android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.PackageOps> CREATOR; } @@ -486,6 +592,7 @@ package android.app { } public class DownloadManager { + method @RequiresPermission(android.Manifest.permission.WRITE_MEDIA_STORAGE) public void onMediaStoreDownloadsDeleted(@NonNull android.util.LongSparseArray<java.lang.String>); field public static final String ACTION_DOWNLOAD_COMPLETED = "android.intent.action.DOWNLOAD_COMPLETED"; } @@ -495,10 +602,12 @@ package android.app { method public final android.os.IBinder onBind(android.content.Intent); method @Deprecated public void onGetInstantAppIntentFilter(@Nullable int[], @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback); method @Deprecated public void onGetInstantAppIntentFilter(@NonNull android.content.Intent, @Nullable int[], @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback); - method public void onGetInstantAppIntentFilter(@NonNull android.content.Intent, @Nullable int[], @NonNull android.os.UserHandle, @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback); + method @Deprecated public void onGetInstantAppIntentFilter(@NonNull android.content.Intent, @Nullable int[], @NonNull android.os.UserHandle, @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback); + method @MainThread public void onGetInstantAppIntentFilter(@NonNull android.content.pm.InstantAppRequestInfo, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback); method @Deprecated public void onGetInstantAppResolveInfo(@Nullable int[], @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback); method @Deprecated public void onGetInstantAppResolveInfo(@NonNull android.content.Intent, @Nullable int[], @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback); - method public void onGetInstantAppResolveInfo(@NonNull android.content.Intent, @Nullable int[], @NonNull android.os.UserHandle, @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback); + method @Deprecated public void onGetInstantAppResolveInfo(@NonNull android.content.Intent, @Nullable int[], @NonNull android.os.UserHandle, @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback); + method @MainThread public void onGetInstantAppResolveInfo(@NonNull android.content.pm.InstantAppRequestInfo, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback); } public static final class InstantAppResolverService.InstantAppResolutionCallback { @@ -507,8 +616,11 @@ package android.app { public class KeyguardManager { method public android.content.Intent createConfirmFactoryResetCredentialIntent(CharSequence, CharSequence, CharSequence); + method @RequiresPermission("android.permission.SET_INITIAL_LOCK") public int getMinLockLength(boolean, int); method @RequiresPermission(android.Manifest.permission.CONTROL_KEYGUARD_SECURE_NOTIFICATIONS) public boolean getPrivateNotificationsAllowed(); + method @RequiresPermission("android.permission.SET_INITIAL_LOCK") public boolean isValidLockPasswordComplexity(int, @NonNull byte[], int); method @RequiresPermission(android.Manifest.permission.SHOW_KEYGUARD_MESSAGE) public void requestDismissKeyguard(@NonNull android.app.Activity, @Nullable CharSequence, @Nullable android.app.KeyguardManager.KeyguardDismissCallback); + method @RequiresPermission("android.permission.SET_INITIAL_LOCK") public boolean setLock(int, @NonNull byte[], int); method @RequiresPermission(android.Manifest.permission.CONTROL_KEYGUARD_SECURE_NOTIFICATIONS) public void setPrivateNotificationsAllowed(boolean); } @@ -541,8 +653,10 @@ package android.app { method public int getUserLockedFields(); method public boolean isDeleted(); method public void populateFromXml(org.xmlpull.v1.XmlPullParser); + method public void setBlockable(boolean); method public org.json.JSONObject toJson() throws org.json.JSONException; method public void writeXml(org.xmlpull.v1.XmlSerializer) throws java.io.IOException; + field public static final int USER_LOCKED_SOUND = 32; // 0x20 } public final class NotificationChannelGroup implements android.os.Parcelable { @@ -556,9 +670,27 @@ package android.app { method public void setNotificationAssistantAccessGranted(@Nullable android.content.ComponentName, boolean); } + public final class RuntimeAppOpAccessMessage implements android.os.Parcelable { + ctor public RuntimeAppOpAccessMessage(@IntRange(from=0L) int, @IntRange(from=0L) int, @NonNull String, @Nullable String, @NonNull String, int); + method public int describeContents(); + method @Nullable public String getAttributionTag(); + method @NonNull public String getMessage(); + method @NonNull public String getOp(); + method @NonNull public String getPackageName(); + method public int getSamplingStrategy(); + method @IntRange(from=0L) public int getUid(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.app.RuntimeAppOpAccessMessage> CREATOR; + } + + public class SearchManager implements android.content.DialogInterface.OnCancelListener android.content.DialogInterface.OnDismissListener { + method public void launchAssist(@Nullable android.os.Bundle); + } + public final class StatsManager { method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void addConfig(long, byte[]) throws android.app.StatsManager.StatsUnavailableException; method @Deprecated @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public boolean addConfiguration(long, byte[]); + method @RequiresPermission(android.Manifest.permission.REGISTER_STATS_PULL_ATOM) public void clearPullAtomCallback(int); method @Deprecated @Nullable @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public byte[] getData(long); method @Deprecated @Nullable @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public byte[] getMetadata(); method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public long[] getRegisteredExperimentIds() throws android.app.StatsManager.StatsUnavailableException; @@ -566,11 +698,12 @@ package android.app { method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public byte[] getStatsMetadata() throws android.app.StatsManager.StatsUnavailableException; method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void removeConfig(long) throws android.app.StatsManager.StatsUnavailableException; method @Deprecated @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public boolean removeConfiguration(long); - method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) @NonNull public long[] setActiveConfigsChangedOperation(@Nullable android.app.PendingIntent) throws android.app.StatsManager.StatsUnavailableException; + method @NonNull @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public long[] setActiveConfigsChangedOperation(@Nullable android.app.PendingIntent) throws android.app.StatsManager.StatsUnavailableException; method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void setBroadcastSubscriber(android.app.PendingIntent, long, long) throws android.app.StatsManager.StatsUnavailableException; method @Deprecated @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public boolean setBroadcastSubscriber(long, long, android.app.PendingIntent); method @Deprecated @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public boolean setDataFetchOperation(long, android.app.PendingIntent); method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void setFetchReportsOperation(android.app.PendingIntent, long) throws android.app.StatsManager.StatsUnavailableException; + method @RequiresPermission(android.Manifest.permission.REGISTER_STATS_PULL_ATOM) public void setPullAtomCallback(int, @Nullable android.app.StatsManager.PullAtomMetadata, @NonNull java.util.concurrent.Executor, @NonNull android.app.StatsManager.StatsPullAtomCallback); field public static final String ACTION_STATSD_STARTED = "android.app.action.STATSD_STARTED"; field public static final String EXTRA_STATS_ACTIVE_CONFIG_KEYS = "android.app.extra.STATS_ACTIVE_CONFIG_KEYS"; field public static final String EXTRA_STATS_BROADCAST_SUBSCRIBER_COOKIES = "android.app.extra.STATS_BROADCAST_SUBSCRIBER_COOKIES"; @@ -579,6 +712,26 @@ package android.app { field public static final String EXTRA_STATS_DIMENSIONS_VALUE = "android.app.extra.STATS_DIMENSIONS_VALUE"; field public static final String EXTRA_STATS_SUBSCRIPTION_ID = "android.app.extra.STATS_SUBSCRIPTION_ID"; field public static final String EXTRA_STATS_SUBSCRIPTION_RULE_ID = "android.app.extra.STATS_SUBSCRIPTION_RULE_ID"; + field public static final int PULL_SKIP = 1; // 0x1 + field public static final int PULL_SUCCESS = 0; // 0x0 + } + + public static class StatsManager.PullAtomMetadata { + method @Nullable public int[] getAdditiveFields(); + method public long getCoolDownMillis(); + method public long getTimeoutMillis(); + } + + public static class StatsManager.PullAtomMetadata.Builder { + ctor public StatsManager.PullAtomMetadata.Builder(); + method @NonNull public android.app.StatsManager.PullAtomMetadata build(); + method @NonNull public android.app.StatsManager.PullAtomMetadata.Builder setAdditiveFields(@NonNull int[]); + method @NonNull public android.app.StatsManager.PullAtomMetadata.Builder setCoolDownMillis(long); + method @NonNull public android.app.StatsManager.PullAtomMetadata.Builder setTimeoutMillis(long); + } + + public static interface StatsManager.StatsPullAtomCallback { + method public int onPullAtom(int, @NonNull java.util.List<android.util.StatsEvent>); } public static class StatsManager.StatsUnavailableException extends android.util.AndroidException { @@ -600,6 +753,38 @@ package android.app { method public boolean isStatusBarExpansionDisabled(); } + public final class SystemServiceRegistry { + method public static <TServiceClass> void registerContextAwareService(@NonNull String, @NonNull Class<TServiceClass>, @NonNull android.app.SystemServiceRegistry.ContextAwareServiceProducerWithBinder<TServiceClass>); + method public static <TServiceClass> void registerContextAwareService(@NonNull String, @NonNull Class<TServiceClass>, @NonNull android.app.SystemServiceRegistry.ContextAwareServiceProducerWithoutBinder<TServiceClass>); + method public static <TServiceClass> void registerStaticService(@NonNull String, @NonNull Class<TServiceClass>, @NonNull android.app.SystemServiceRegistry.StaticServiceProducerWithBinder<TServiceClass>); + method public static <TServiceClass> void registerStaticService(@NonNull String, @NonNull Class<TServiceClass>, @NonNull android.app.SystemServiceRegistry.StaticServiceProducerWithoutBinder<TServiceClass>); + } + + public static interface SystemServiceRegistry.ContextAwareServiceProducerWithBinder<TServiceClass> { + method @NonNull public TServiceClass createService(@NonNull android.content.Context, @NonNull android.os.IBinder); + } + + public static interface SystemServiceRegistry.ContextAwareServiceProducerWithoutBinder<TServiceClass> { + method @NonNull public TServiceClass createService(@NonNull android.content.Context); + } + + public static interface SystemServiceRegistry.StaticServiceProducerWithBinder<TServiceClass> { + method @NonNull public TServiceClass createService(@NonNull android.os.IBinder); + } + + public static interface SystemServiceRegistry.StaticServiceProducerWithoutBinder<TServiceClass> { + method @NonNull public TServiceClass createService(); + } + + public class UiModeManager { + method @RequiresPermission(android.Manifest.permission.ENTER_CAR_MODE_PRIORITIZED) public void enableCarMode(@IntRange(from=0) int, int); + field public static final String ACTION_ENTER_CAR_MODE_PRIORITIZED = "android.app.action.ENTER_CAR_MODE_PRIORITIZED"; + field public static final String ACTION_EXIT_CAR_MODE_PRIORITIZED = "android.app.action.EXIT_CAR_MODE_PRIORITIZED"; + field public static final int DEFAULT_PRIORITY = 0; // 0x0 + field public static final String EXTRA_CALLING_PACKAGE = "android.app.extra.CALLING_PACKAGE"; + field public static final String EXTRA_PRIORITY = "android.app.extra.PRIORITY"; + } + public final class Vr2dDisplayProperties implements android.os.Parcelable { ctor public Vr2dDisplayProperties(int, int, int); method public int describeContents(); @@ -663,7 +848,15 @@ package android.app { package android.app.admin { + public class DevicePolicyKeyguardService extends android.app.Service { + ctor public DevicePolicyKeyguardService(); + method @Nullable public void dismiss(); + method @Nullable public final android.os.IBinder onBind(@Nullable android.content.Intent); + method @Nullable public android.view.SurfaceControlViewHost.SurfacePackage onCreateKeyguardSurface(@NonNull android.os.IBinder); + } + public class DevicePolicyManager { + method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public boolean getBluetoothContactSharingDisabled(@NonNull android.os.UserHandle); method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public String getDeviceOwner(); method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public android.content.ComponentName getDeviceOwnerComponentOnAnyUser(); method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public String getDeviceOwnerNameOnAnyUser(); @@ -678,17 +871,22 @@ package android.app.admin { method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isDeviceProvisioned(); method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isDeviceProvisioningConfigApplied(); method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isManagedKiosk(); + method public boolean isSecondaryLockscreenEnabled(@NonNull android.os.UserHandle); method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isUnattendedManagedKiosk(); method @RequiresPermission("android.permission.NOTIFY_PENDING_SYSTEM_UPDATE") public void notifyPendingSystemUpdate(long); method @RequiresPermission("android.permission.NOTIFY_PENDING_SYSTEM_UPDATE") public void notifyPendingSystemUpdate(long, boolean); method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public boolean packageHasActiveAdmins(String); method @Deprecated @RequiresPermission("android.permission.MANAGE_DEVICE_ADMINS") public boolean setActiveProfileOwner(@NonNull android.content.ComponentName, String) throws java.lang.IllegalArgumentException; method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void setDeviceProvisioningConfigApplied(); - method @RequiresPermission(value=android.Manifest.permission.GRANT_PROFILE_OWNER_DEVICE_IDS_ACCESS, conditional=true) public void setProfileOwnerCanAccessDeviceIds(@NonNull android.content.ComponentName); + method @Deprecated @RequiresPermission(value=android.Manifest.permission.GRANT_PROFILE_OWNER_DEVICE_IDS_ACCESS, conditional=true) public void setProfileOwnerCanAccessDeviceIds(@NonNull android.content.ComponentName); + method public void setSecondaryLockscreenEnabled(@NonNull android.content.ComponentName, boolean); field public static final String ACCOUNT_FEATURE_DEVICE_OR_PROFILE_OWNER_ALLOWED = "android.account.DEVICE_OR_PROFILE_OWNER_ALLOWED"; field public static final String ACCOUNT_FEATURE_DEVICE_OR_PROFILE_OWNER_DISALLOWED = "android.account.DEVICE_OR_PROFILE_OWNER_DISALLOWED"; + field public static final String ACTION_BIND_SECONDARY_LOCKSCREEN_SERVICE = "android.app.action.BIND_SECONDARY_LOCKSCREEN_SERVICE"; field public static final String ACTION_PROVISION_FINALIZATION = "android.app.action.PROVISION_FINALIZATION"; + field public static final String ACTION_PROVISION_FINANCED_DEVICE = "android.app.action.PROVISION_FINANCED_DEVICE"; field public static final String ACTION_PROVISION_MANAGED_DEVICE_FROM_TRUSTED_SOURCE = "android.app.action.PROVISION_MANAGED_DEVICE_FROM_TRUSTED_SOURCE"; + field @RequiresPermission(android.Manifest.permission.MANAGE_FACTORY_RESET_PROTECTION) public static final String ACTION_RESET_PROTECTION_POLICY_CHANGED = "android.app.action.RESET_PROTECTION_POLICY_CHANGED"; field public static final String ACTION_SET_PROFILE_OWNER = "android.app.action.SET_PROFILE_OWNER"; field public static final String ACTION_STATE_USER_SETUP_COMPLETE = "android.app.action.STATE_USER_SETUP_COMPLETE"; field public static final String EXTRA_PROFILE_OWNER_NAME = "android.app.extra.PROFILE_OWNER_NAME"; @@ -744,6 +942,7 @@ package android.app.backup { method @RequiresPermission(android.Manifest.permission.BACKUP) public void backupNow(); method @RequiresPermission(android.Manifest.permission.BACKUP) public android.app.backup.RestoreSession beginRestoreSession(); method @RequiresPermission(android.Manifest.permission.BACKUP) public void cancelBackups(); + method @RequiresPermission(android.Manifest.permission.BACKUP) public void excludeKeysFromRestore(@NonNull String, @NonNull java.util.List<java.lang.String>); method @RequiresPermission(android.Manifest.permission.BACKUP) public long getAvailableRestoreToken(String); method @RequiresPermission(android.Manifest.permission.BACKUP) public android.content.Intent getConfigurationIntent(String); method @RequiresPermission(android.Manifest.permission.BACKUP) public String getCurrentTransport(); @@ -897,6 +1096,7 @@ package android.app.backup { field public static final int AGENT_ERROR = -1003; // 0xfffffc15 field public static final int AGENT_UNKNOWN = -1004; // 0xfffffc14 field public static final String EXTRA_TRANSPORT_REGISTRATION = "android.app.backup.extra.TRANSPORT_REGISTRATION"; + field public static final int FLAG_DATA_NOT_CHANGED = 8; // 0x8 field public static final int FLAG_INCREMENTAL = 2; // 0x2 field public static final int FLAG_NON_INCREMENTAL = 4; // 0x4 field public static final int FLAG_USER_INITIATED = 1; // 0x1 @@ -956,6 +1156,16 @@ package android.app.backup { } +package android.app.compat { + + public final class CompatChanges { + method public static boolean isChangeEnabled(long); + method @RequiresPermission(allOf={"android.permission.READ_COMPAT_CHANGE_CONFIG", "android.permission.LOG_COMPAT_CHANGE"}) public static boolean isChangeEnabled(long, @NonNull String, @NonNull android.os.UserHandle); + method @RequiresPermission(allOf={"android.permission.READ_COMPAT_CHANGE_CONFIG", "android.permission.LOG_COMPAT_CHANGE"}) public static boolean isChangeEnabled(long, int); + } + +} + package android.app.contentsuggestions { public final class ClassificationsRequest implements android.os.Parcelable { @@ -994,6 +1204,7 @@ package android.app.contentsuggestions { method public void classifyContentSelections(@NonNull android.app.contentsuggestions.ClassificationsRequest, @NonNull java.util.concurrent.Executor, @NonNull android.app.contentsuggestions.ContentSuggestionsManager.ClassificationsCallback); method public boolean isEnabled(); method public void notifyInteraction(@NonNull String, @NonNull android.os.Bundle); + method public void provideContextImage(@NonNull android.graphics.Bitmap, @NonNull android.os.Bundle); method public void provideContextImage(int, @NonNull android.os.Bundle); method public void suggestContentSelections(@NonNull android.app.contentsuggestions.SelectionsRequest, @NonNull java.util.concurrent.Executor, @NonNull android.app.contentsuggestions.ContentSuggestionsManager.SelectionsCallback); } @@ -1030,6 +1241,10 @@ package android.app.job { method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public abstract int scheduleAsPackage(@NonNull android.app.job.JobInfo, @NonNull String, int, String); } + public class JobSchedulerFrameworkInitializer { + method public static void registerServiceWrappers(); + } + } package android.app.prediction { @@ -1105,6 +1320,7 @@ package android.app.prediction { field public static final int ACTION_DISMISS = 2; // 0x2 field public static final int ACTION_LAUNCH = 1; // 0x1 field public static final int ACTION_PIN = 3; // 0x3 + field public static final int ACTION_UNPIN = 4; // 0x4 field @NonNull public static final android.os.Parcelable.Creator<android.app.prediction.AppTargetEvent> CREATOR; } @@ -1135,7 +1351,8 @@ package android.app.role { method @Nullable public final android.os.IBinder onBind(@Nullable android.content.Intent); method @WorkerThread public abstract boolean onClearRoleHolders(@NonNull String, int); method @WorkerThread public abstract boolean onGrantDefaultRoles(); - method public abstract boolean onIsApplicationQualifiedForRole(@NonNull String, @NonNull String); + method @Deprecated public abstract boolean onIsApplicationQualifiedForRole(@NonNull String, @NonNull String); + method public boolean onIsApplicationVisibleForRole(@NonNull String, @NonNull String); method public abstract boolean onIsRoleVisible(@NonNull String); method @WorkerThread public abstract boolean onRemoveRoleHolder(@NonNull String, @NonNull String, int); field public static final String SERVICE_INTERFACE = "android.app.role.RoleControllerService"; @@ -1189,9 +1406,14 @@ package android.app.usage { field public static final String SERVICE_INTERFACE = "android.app.usage.CacheQuotaService"; } + public class NetworkStatsManager { + method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_STATS_PROVIDER, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void registerNetworkStatsProvider(@NonNull String, @NonNull android.net.netstats.provider.NetworkStatsProvider); + method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_STATS_PROVIDER, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void unregisterNetworkStatsProvider(@NonNull android.net.netstats.provider.NetworkStatsProvider); + } + public static final class UsageEvents.Event { method public int getInstanceId(); - method public String getNotificationChannelId(); + method @Nullable public String getNotificationChannelId(); method @Nullable public String getTaskRootClassName(); method @Nullable public String getTaskRootPackageName(); method public boolean isInstantApp(); @@ -1210,6 +1432,7 @@ package android.app.usage { method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public int getAppStandbyBucket(String); method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public java.util.Map<java.lang.String,java.lang.Integer> getAppStandbyBuckets(); method public int getUsageSource(); + method @RequiresPermission(android.Manifest.permission.BIND_CARRIER_SERVICES) public void onCarrierPrivilegedAppsChanged(); method @RequiresPermission(allOf={android.Manifest.permission.SUSPEND_APPS, android.Manifest.permission.OBSERVE_APP_USAGE}) public void registerAppUsageLimitObserver(int, @NonNull String[], @NonNull java.time.Duration, @NonNull java.time.Duration, @Nullable android.app.PendingIntent); method @RequiresPermission(android.Manifest.permission.OBSERVE_APP_USAGE) public void registerAppUsageObserver(int, @NonNull String[], long, @NonNull java.util.concurrent.TimeUnit, @NonNull android.app.PendingIntent); method @RequiresPermission(android.Manifest.permission.OBSERVE_APP_USAGE) public void registerUsageSessionObserver(int, @NonNull String[], @NonNull java.time.Duration, @NonNull java.time.Duration, @NonNull android.app.PendingIntent, @Nullable android.app.PendingIntent); @@ -1221,7 +1444,7 @@ package android.app.usage { method @RequiresPermission(allOf={android.Manifest.permission.SUSPEND_APPS, android.Manifest.permission.OBSERVE_APP_USAGE}) public void unregisterAppUsageLimitObserver(int); method @RequiresPermission(android.Manifest.permission.OBSERVE_APP_USAGE) public void unregisterAppUsageObserver(int); method @RequiresPermission(android.Manifest.permission.OBSERVE_APP_USAGE) public void unregisterUsageSessionObserver(int); - method @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public void whitelistAppTemporarily(String, long, android.os.UserHandle); + method @Deprecated @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public void whitelistAppTemporarily(String, long, android.os.UserHandle); field public static final String EXTRA_OBSERVER_ID = "android.app.usage.extra.OBSERVER_ID"; field public static final String EXTRA_TIME_LIMIT = "android.app.usage.extra.TIME_LIMIT"; field public static final String EXTRA_TIME_USED = "android.app.usage.extra.TIME_USED"; @@ -1235,16 +1458,41 @@ package android.app.usage { package android.bluetooth { + public final class BluetoothA2dp implements android.bluetooth.BluetoothProfile { + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public int getConnectionPolicy(@NonNull android.bluetooth.BluetoothDevice); + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean setConnectionPolicy(@NonNull android.bluetooth.BluetoothDevice, int); + field public static final int OPTIONAL_CODECS_NOT_SUPPORTED = 0; // 0x0 + field public static final int OPTIONAL_CODECS_PREF_DISABLED = 0; // 0x0 + field public static final int OPTIONAL_CODECS_PREF_ENABLED = 1; // 0x1 + field public static final int OPTIONAL_CODECS_PREF_UNKNOWN = -1; // 0xffffffff + field public static final int OPTIONAL_CODECS_SUPPORTED = 1; // 0x1 + field public static final int OPTIONAL_CODECS_SUPPORT_UNKNOWN = -1; // 0xffffffff + } + + public final class BluetoothA2dpSink implements android.bluetooth.BluetoothProfile { + method public void finalize(); + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public int getConnectionPolicy(@NonNull android.bluetooth.BluetoothDevice); + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean isAudioPlaying(@NonNull android.bluetooth.BluetoothDevice); + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean setConnectionPolicy(@NonNull android.bluetooth.BluetoothDevice, int); + field @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public static final String ACTION_CONNECTION_STATE_CHANGED = "android.bluetooth.a2dp-sink.profile.action.CONNECTION_STATE_CHANGED"; + } + public final class BluetoothAdapter { method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean addOnMetadataChangedListener(@NonNull android.bluetooth.BluetoothDevice, @NonNull java.util.concurrent.Executor, @NonNull android.bluetooth.BluetoothAdapter.OnMetadataChangedListener); method public boolean disableBLE(); method public boolean enableBLE(); method @RequiresPermission(android.Manifest.permission.BLUETOOTH_ADMIN) public boolean enableNoAutoConnect(); + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public long getDiscoveryEndMillis(); method public boolean isBleScanAlwaysAvailable(); method public boolean isLeEnabled(); + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean removeActiveDevice(int); method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean removeOnMetadataChangedListener(@NonNull android.bluetooth.BluetoothDevice, @NonNull android.bluetooth.BluetoothAdapter.OnMetadataChangedListener); + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean setActiveDevice(@NonNull android.bluetooth.BluetoothDevice, int); field public static final String ACTION_BLE_STATE_CHANGED = "android.bluetooth.adapter.action.BLE_STATE_CHANGED"; field public static final String ACTION_REQUEST_BLE_SCAN_ALWAYS_AVAILABLE = "android.bluetooth.adapter.action.REQUEST_BLE_SCAN_ALWAYS_AVAILABLE"; + field public static final int ACTIVE_DEVICE_ALL = 2; // 0x2 + field public static final int ACTIVE_DEVICE_AUDIO = 0; // 0x0 + field public static final int ACTIVE_DEVICE_PHONE_CALL = 1; // 0x1 } public static interface BluetoothAdapter.OnMetadataChangedListener { @@ -1252,15 +1500,18 @@ package android.bluetooth { } public final class BluetoothDevice implements android.os.Parcelable { - method @RequiresPermission(android.Manifest.permission.BLUETOOTH_ADMIN) public boolean cancelBondProcess(); + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean cancelBondProcess(); method @Nullable @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public byte[] getMetadata(int); + method @RequiresPermission(android.Manifest.permission.BLUETOOTH) public int getSimAccessPermission(); method @RequiresPermission(android.Manifest.permission.BLUETOOTH) public boolean isConnected(); method @RequiresPermission(android.Manifest.permission.BLUETOOTH) public boolean isEncrypted(); method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean isInSilenceMode(); - method @RequiresPermission(android.Manifest.permission.BLUETOOTH_ADMIN) public boolean removeBond(); + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean removeBond(); + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean setMessageAccessPermission(int); method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean setMetadata(int, @NonNull byte[]); method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean setPhonebookAccessPermission(int); method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean setSilenceMode(boolean); + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean setSimAccessPermission(int); field public static final int ACCESS_ALLOWED = 1; // 0x1 field public static final int ACCESS_REJECTED = 2; // 0x2 field public static final int ACCESS_UNKNOWN = 0; // 0x0 @@ -1288,12 +1539,101 @@ package android.bluetooth { public final class BluetoothHeadset implements android.bluetooth.BluetoothProfile { method @RequiresPermission(android.Manifest.permission.BLUETOOTH_ADMIN) public boolean connect(android.bluetooth.BluetoothDevice); method @RequiresPermission(android.Manifest.permission.BLUETOOTH_ADMIN) public boolean disconnect(android.bluetooth.BluetoothDevice); - method @RequiresPermission(android.Manifest.permission.BLUETOOTH_ADMIN) public boolean setPriority(android.bluetooth.BluetoothDevice, int); + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public int getConnectionPolicy(@NonNull android.bluetooth.BluetoothDevice); + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean setConnectionPolicy(@NonNull android.bluetooth.BluetoothDevice, int); + method @Deprecated @RequiresPermission(android.Manifest.permission.BLUETOOTH_ADMIN) public boolean setPriority(android.bluetooth.BluetoothDevice, int); + } + + public final class BluetoothHearingAid implements android.bluetooth.BluetoothProfile { + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public int getConnectionPolicy(@NonNull android.bluetooth.BluetoothDevice); + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public long getHiSyncId(@NonNull android.bluetooth.BluetoothDevice); + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean setConnectionPolicy(@NonNull android.bluetooth.BluetoothDevice, int); + } + + public final class BluetoothHidDevice implements android.bluetooth.BluetoothProfile { + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean setConnectionPolicy(@NonNull android.bluetooth.BluetoothDevice, int); + } + + public final class BluetoothHidHost implements android.bluetooth.BluetoothProfile { + method @NonNull @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public java.util.List<android.bluetooth.BluetoothDevice> getConnectedDevices(); + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public int getConnectionPolicy(@NonNull android.bluetooth.BluetoothDevice); + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public int getConnectionState(@NonNull android.bluetooth.BluetoothDevice); + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean setConnectionPolicy(@NonNull android.bluetooth.BluetoothDevice, int); + field public static final String ACTION_CONNECTION_STATE_CHANGED = "android.bluetooth.input.profile.action.CONNECTION_STATE_CHANGED"; + } + + public final class BluetoothMap implements java.lang.AutoCloseable android.bluetooth.BluetoothProfile { + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public void close(); + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) protected void finalize(); + method @NonNull @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public java.util.List<android.bluetooth.BluetoothDevice> getConnectedDevices(); + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public int getConnectionPolicy(@NonNull android.bluetooth.BluetoothDevice); + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean setConnectionPolicy(@NonNull android.bluetooth.BluetoothDevice, int); + field public static final String ACTION_CONNECTION_STATE_CHANGED = "android.bluetooth.map.profile.action.CONNECTION_STATE_CHANGED"; + } + + public final class BluetoothPan implements android.bluetooth.BluetoothProfile { + method @NonNull @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public java.util.List<android.bluetooth.BluetoothDevice> getConnectedDevices(); + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public int getConnectionState(@NonNull android.bluetooth.BluetoothDevice); + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean isTetheringOn(); + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public void setBluetoothTethering(boolean); + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean setConnectionPolicy(@NonNull android.bluetooth.BluetoothDevice, int); + field public static final String ACTION_CONNECTION_STATE_CHANGED = "android.bluetooth.pan.profile.action.CONNECTION_STATE_CHANGED"; + field public static final String EXTRA_LOCAL_ROLE = "android.bluetooth.pan.extra.LOCAL_ROLE"; + field public static final int LOCAL_NAP_ROLE = 1; // 0x1 + field public static final int LOCAL_PANU_ROLE = 2; // 0x2 + field public static final int PAN_ROLE_NONE = 0; // 0x0 + field public static final int REMOTE_NAP_ROLE = 1; // 0x1 + field public static final int REMOTE_PANU_ROLE = 2; // 0x2 + } + + public class BluetoothPbap implements android.bluetooth.BluetoothProfile { + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public int getConnectionState(@NonNull android.bluetooth.BluetoothDevice); + method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean setConnectionPolicy(@NonNull android.bluetooth.BluetoothDevice, int); + field @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public static final String ACTION_CONNECTION_STATE_CHANGED = "android.bluetooth.pbap.profile.action.CONNECTION_STATE_CHANGED"; } public interface BluetoothProfile { - field public static final int PRIORITY_OFF = 0; // 0x0 - field public static final int PRIORITY_ON = 100; // 0x64 + field public static final int A2DP_SINK = 11; // 0xb + field public static final int AVRCP_CONTROLLER = 12; // 0xc + field public static final int CONNECTION_POLICY_ALLOWED = 100; // 0x64 + field public static final int CONNECTION_POLICY_FORBIDDEN = 0; // 0x0 + field public static final int CONNECTION_POLICY_UNKNOWN = -1; // 0xffffffff + field public static final int HEADSET_CLIENT = 16; // 0x10 + field public static final int PAN = 5; // 0x5 + field public static final int PBAP_CLIENT = 17; // 0x11 + field @Deprecated public static final int PRIORITY_OFF = 0; // 0x0 + field @Deprecated public static final int PRIORITY_ON = 100; // 0x64 + } + + public final class BluetoothUuid { + method public static boolean containsAnyUuid(@Nullable android.os.ParcelUuid[], @Nullable android.os.ParcelUuid[]); + method @NonNull public static android.os.ParcelUuid parseUuidFrom(@Nullable byte[]); + field @NonNull public static final android.os.ParcelUuid A2DP_SINK; + field @NonNull public static final android.os.ParcelUuid A2DP_SOURCE; + field @NonNull public static final android.os.ParcelUuid ADV_AUDIO_DIST; + field @NonNull public static final android.os.ParcelUuid AVRCP_CONTROLLER; + field @NonNull public static final android.os.ParcelUuid AVRCP_TARGET; + field @NonNull public static final android.os.ParcelUuid BASE_UUID; + field @NonNull public static final android.os.ParcelUuid BNEP; + field @NonNull public static final android.os.ParcelUuid HEARING_AID; + field @NonNull public static final android.os.ParcelUuid HFP; + field @NonNull public static final android.os.ParcelUuid HFP_AG; + field @NonNull public static final android.os.ParcelUuid HID; + field @NonNull public static final android.os.ParcelUuid HOGP; + field @NonNull public static final android.os.ParcelUuid HSP; + field @NonNull public static final android.os.ParcelUuid HSP_AG; + field @NonNull public static final android.os.ParcelUuid MAP; + field @NonNull public static final android.os.ParcelUuid MAS; + field @NonNull public static final android.os.ParcelUuid MNS; + field @NonNull public static final android.os.ParcelUuid NAP; + field @NonNull public static final android.os.ParcelUuid OBEX_OBJECT_PUSH; + field @NonNull public static final android.os.ParcelUuid PANU; + field @NonNull public static final android.os.ParcelUuid PBAP_PCE; + field @NonNull public static final android.os.ParcelUuid PBAP_PSE; + field @NonNull public static final android.os.ParcelUuid SAP; + field public static final int UUID_BYTES_128_BIT = 16; // 0x10 + field public static final int UUID_BYTES_16_BIT = 2; // 0x2 + field public static final int UUID_BYTES_32_BIT = 4; // 0x4 } } @@ -1333,32 +1673,62 @@ package android.bluetooth.le { } +package android.companion { + + public final class CompanionDeviceManager { + method @RequiresPermission("android.permission.MANAGE_COMPANION_DEVICES") public boolean isDeviceAssociatedForWifiConnection(@NonNull String, @NonNull android.net.MacAddress, @NonNull android.os.UserHandle); + } + +} + package android.content { + public class ApexEnvironment { + method @NonNull public static android.content.ApexEnvironment getApexEnvironment(@NonNull String); + method @NonNull public java.io.File getCredentialProtectedDataDirForUser(@NonNull android.os.UserHandle); + method @NonNull public java.io.File getDeviceProtectedDataDir(); + method @NonNull public java.io.File getDeviceProtectedDataDirForUser(@NonNull android.os.UserHandle); + } + + public abstract class BroadcastReceiver { + method @NonNull public final android.os.UserHandle getSendingUser(); + } + + public abstract class ContentProvider implements android.content.ComponentCallbacks2 { + method public int checkUriPermission(@NonNull android.net.Uri, int, int); + } + public class ContentProviderClient implements java.lang.AutoCloseable { method @RequiresPermission(android.Manifest.permission.REMOVE_TASKS) public void setDetectNotResponding(long); } public abstract class ContentResolver { + method public int checkUriPermission(@NonNull android.net.Uri, int, int); + method @NonNull public static android.net.Uri decodeFromFile(@NonNull java.io.File); + method @NonNull public static java.io.File encodeToFile(@NonNull android.net.Uri); method @Nullable @RequiresPermission("android.permission.CACHE_CONTENT") public android.os.Bundle getCache(@NonNull android.net.Uri); method @RequiresPermission("android.permission.CACHE_CONTENT") public void putCache(@NonNull android.net.Uri, @Nullable android.os.Bundle); } public abstract class Context { - method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public boolean bindServiceAsUser(@RequiresPermission android.content.Intent, android.content.ServiceConnection, int, android.os.UserHandle); + method @NonNull public android.content.Context createContextAsUser(@NonNull android.os.UserHandle, int); method public abstract android.content.Context createCredentialProtectedStorageContext(); - method public android.content.Context createPackageContextAsUser(String, int, android.os.UserHandle) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public android.content.Context createPackageContextAsUser(@NonNull String, int, @NonNull android.os.UserHandle) throws android.content.pm.PackageManager.NameNotFoundException; method @Nullable public abstract java.io.File getPreloadsFileCache(); method public abstract boolean isCredentialProtectedStorage(); + method @Nullable @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public android.content.Intent registerReceiverForAllUsers(@Nullable android.content.BroadcastReceiver, @NonNull android.content.IntentFilter, @Nullable String, @Nullable android.os.Handler); method public abstract void sendBroadcast(android.content.Intent, @Nullable String, @Nullable android.os.Bundle); method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public abstract void sendBroadcastAsUser(@RequiresPermission android.content.Intent, android.os.UserHandle, @Nullable String, @Nullable android.os.Bundle); method public abstract void sendOrderedBroadcast(@NonNull android.content.Intent, @Nullable String, @Nullable android.os.Bundle, @Nullable android.content.BroadcastReceiver, @Nullable android.os.Handler, int, @Nullable String, @Nullable android.os.Bundle); - method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public void startActivityAsUser(@RequiresPermission @NonNull android.content.Intent, @NonNull android.os.UserHandle); + method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public void startActivityAsUser(@NonNull @RequiresPermission android.content.Intent, @NonNull android.os.UserHandle); + field public static final String APP_INTEGRITY_SERVICE = "app_integrity"; field public static final String APP_PREDICTION_SERVICE = "app_prediction"; field public static final String BACKUP_SERVICE = "backup"; + field public static final String BATTERY_STATS_SERVICE = "batterystats"; field public static final String BUGREPORT_SERVICE = "bugreport"; field public static final String CONTENT_SUGGESTIONS_SERVICE = "content_suggestions"; field public static final String CONTEXTHUB_SERVICE = "contexthub"; + field public static final String ETHERNET_SERVICE = "ethernet"; field public static final String EUICC_CARD_SERVICE = "euicc_card"; field public static final String HDMI_CONTROL_SERVICE = "hdmi_control"; field public static final String NETD_SERVICE = "netd"; @@ -1370,8 +1740,11 @@ package android.content { field public static final String SECURE_ELEMENT_SERVICE = "secure_element"; field public static final String STATS_MANAGER = "stats"; field public static final String STATUS_BAR_SERVICE = "statusbar"; + field public static final String SYSTEM_CONFIG_SERVICE = "system_config"; field public static final String SYSTEM_UPDATE_SERVICE = "system_update"; + field public static final String TETHERING_SERVICE = "tethering"; field public static final String VR_SERVICE = "vrmanager"; + field public static final String WIFI_NL80211_SERVICE = "wifinl80211"; field @Deprecated public static final String WIFI_RTT_SERVICE = "rttmanager"; field public static final String WIFI_SCANNING_SERVICE = "wifiscanner"; } @@ -1390,12 +1763,14 @@ package android.content { field public static final String ACTION_CALL_EMERGENCY = "android.intent.action.CALL_EMERGENCY"; field public static final String ACTION_CALL_PRIVILEGED = "android.intent.action.CALL_PRIVILEGED"; field public static final String ACTION_DEVICE_CUSTOMIZATION_READY = "android.intent.action.DEVICE_CUSTOMIZATION_READY"; + field public static final String ACTION_DIAL_EMERGENCY = "android.intent.action.DIAL_EMERGENCY"; field public static final String ACTION_FACTORY_RESET = "android.intent.action.FACTORY_RESET"; field public static final String ACTION_GLOBAL_BUTTON = "android.intent.action.GLOBAL_BUTTON"; field public static final String ACTION_INCIDENT_REPORT_READY = "android.intent.action.INCIDENT_REPORT_READY"; field public static final String ACTION_INSTALL_INSTANT_APP_PACKAGE = "android.intent.action.INSTALL_INSTANT_APP_PACKAGE"; field public static final String ACTION_INSTANT_APP_RESOLVER_SETTINGS = "android.intent.action.INSTANT_APP_RESOLVER_SETTINGS"; field public static final String ACTION_INTENT_FILTER_NEEDS_VERIFICATION = "android.intent.action.INTENT_FILTER_NEEDS_VERIFICATION"; + field public static final String ACTION_LOAD_DATA = "android.intent.action.LOAD_DATA"; field @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) public static final String ACTION_MANAGE_APP_PERMISSION = "android.intent.action.MANAGE_APP_PERMISSION"; field public static final String ACTION_MANAGE_APP_PERMISSIONS = "android.intent.action.MANAGE_APP_PERMISSIONS"; field @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public static final String ACTION_MANAGE_DEFAULT_APP = "android.intent.action.MANAGE_DEFAULT_APP"; @@ -1403,6 +1778,8 @@ package android.content { field public static final String ACTION_MANAGE_PERMISSION_APPS = "android.intent.action.MANAGE_PERMISSION_APPS"; field @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public static final String ACTION_MANAGE_SPECIAL_APP_ACCESSES = "android.intent.action.MANAGE_SPECIAL_APP_ACCESSES"; field public static final String ACTION_MASTER_CLEAR_NOTIFICATION = "android.intent.action.MASTER_CLEAR_NOTIFICATION"; + field public static final String ACTION_PACKAGE_NEEDS_INTEGRITY_VERIFICATION = "android.intent.action.PACKAGE_NEEDS_INTEGRITY_VERIFICATION"; + field public static final String ACTION_PACKAGE_UNSUSPENDED_MANUALLY = "android.intent.action.PACKAGE_UNSUSPENDED_MANUALLY"; field public static final String ACTION_PENDING_INCIDENT_REPORTS_CHANGED = "android.intent.action.PENDING_INCIDENT_REPORTS_CHANGED"; field public static final String ACTION_PRE_BOOT_COMPLETED = "android.intent.action.PRE_BOOT_COMPLETED"; field public static final String ACTION_QUERY_PACKAGE_RESTART = "android.intent.action.QUERY_PACKAGE_RESTART"; @@ -1440,6 +1817,7 @@ package android.content { field public static final String EXTRA_ROLE_NAME = "android.intent.extra.ROLE_NAME"; field public static final String EXTRA_UNKNOWN_INSTANT_APP = "android.intent.extra.UNKNOWN_INSTANT_APP"; field public static final String EXTRA_VERIFICATION_BUNDLE = "android.intent.extra.VERIFICATION_BUNDLE"; + field public static final int FLAG_RECEIVER_REGISTERED_ONLY_BEFORE_BOOT = 67108864; // 0x4000000 field public static final String METADATA_SETUP_VERSION = "android.SETUP_VERSION"; } @@ -1450,6 +1828,68 @@ package android.content { } +package android.content.integrity { + + public class AppIntegrityManager { + method @NonNull public String getCurrentRuleSetProvider(); + method @NonNull public String getCurrentRuleSetVersion(); + method public void updateRuleSet(@NonNull android.content.integrity.RuleSet, @NonNull android.content.IntentSender); + field public static final String EXTRA_STATUS = "android.content.integrity.extra.STATUS"; + field public static final int STATUS_FAILURE = 1; // 0x1 + field public static final int STATUS_SUCCESS = 0; // 0x0 + } + + public abstract class IntegrityFormula { + method @NonNull public static android.content.integrity.IntegrityFormula all(@NonNull android.content.integrity.IntegrityFormula...); + method @NonNull public static android.content.integrity.IntegrityFormula any(@NonNull android.content.integrity.IntegrityFormula...); + method @NonNull public static android.content.integrity.IntegrityFormula not(@NonNull android.content.integrity.IntegrityFormula); + } + + public static final class IntegrityFormula.Application { + method @NonNull public static android.content.integrity.IntegrityFormula certificatesContain(@NonNull String); + method @NonNull public static android.content.integrity.IntegrityFormula isPreInstalled(); + method @NonNull public static android.content.integrity.IntegrityFormula packageNameEquals(@NonNull String); + method @NonNull public static android.content.integrity.IntegrityFormula versionCodeEquals(@NonNull long); + method @NonNull public static android.content.integrity.IntegrityFormula versionCodeGreaterThan(@NonNull long); + method @NonNull public static android.content.integrity.IntegrityFormula versionCodeGreaterThanOrEqualTo(@NonNull long); + } + + public static final class IntegrityFormula.Installer { + method @NonNull public static android.content.integrity.IntegrityFormula certificatesContain(@NonNull String); + method @NonNull public static android.content.integrity.IntegrityFormula notAllowedByManifest(); + method @NonNull public static android.content.integrity.IntegrityFormula packageNameEquals(@NonNull String); + } + + public static final class IntegrityFormula.SourceStamp { + method @NonNull public static android.content.integrity.IntegrityFormula notTrusted(); + method @NonNull public static android.content.integrity.IntegrityFormula stampCertificateHashEquals(@NonNull String); + } + + public final class Rule implements android.os.Parcelable { + ctor public Rule(@NonNull android.content.integrity.IntegrityFormula, int); + method public int describeContents(); + method public int getEffect(); + method @NonNull public android.content.integrity.IntegrityFormula getFormula(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.content.integrity.Rule> CREATOR; + field public static final int DENY = 0; // 0x0 + field public static final int FORCE_ALLOW = 1; // 0x1 + } + + public class RuleSet { + method @NonNull public java.util.List<android.content.integrity.Rule> getRules(); + method @NonNull public String getVersion(); + } + + public static class RuleSet.Builder { + ctor public RuleSet.Builder(); + method @NonNull public android.content.integrity.RuleSet.Builder addRules(@NonNull java.util.List<android.content.integrity.Rule>); + method @NonNull public android.content.integrity.RuleSet build(); + method @NonNull public android.content.integrity.RuleSet.Builder setVersion(@NonNull String); + } + +} + package android.content.om { public final class OverlayInfo implements android.os.Parcelable { @@ -1467,8 +1907,8 @@ package android.content.om { public class OverlayManager { method @Nullable public android.content.om.OverlayInfo getOverlayInfo(@NonNull String, @NonNull android.os.UserHandle); method @NonNull @RequiresPermission(anyOf={"android.permission.INTERACT_ACROSS_USERS", "android.permission.INTERACT_ACROSS_USERS_FULL"}) public java.util.List<android.content.om.OverlayInfo> getOverlayInfosForTarget(@NonNull String, @NonNull android.os.UserHandle); - method @RequiresPermission(anyOf={"android.permission.INTERACT_ACROSS_USERS", "android.permission.INTERACT_ACROSS_USERS_FULL"}) public void setEnabled(@NonNull String, boolean, @NonNull android.os.UserHandle); - method @RequiresPermission(anyOf={"android.permission.INTERACT_ACROSS_USERS", "android.permission.INTERACT_ACROSS_USERS_FULL"}) public void setEnabledExclusiveInCategory(@NonNull String, @NonNull android.os.UserHandle); + method @RequiresPermission(anyOf={"android.permission.INTERACT_ACROSS_USERS", "android.permission.INTERACT_ACROSS_USERS_FULL"}) public void setEnabled(@NonNull String, boolean, @NonNull android.os.UserHandle) throws java.lang.IllegalStateException, java.lang.SecurityException; + method @RequiresPermission(anyOf={"android.permission.INTERACT_ACROSS_USERS", "android.permission.INTERACT_ACROSS_USERS_FULL"}) public void setEnabledExclusiveInCategory(@NonNull String, @NonNull android.os.UserHandle) throws java.lang.IllegalStateException, java.lang.SecurityException; } } @@ -1486,6 +1926,22 @@ package android.content.pm { method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_PROFILES) public void startActivity(@NonNull android.content.ComponentName, @NonNull android.os.UserHandle); } + public class DataLoaderParams { + method @NonNull public static final android.content.pm.DataLoaderParams forIncremental(@NonNull android.content.ComponentName, @NonNull String); + method @NonNull public static final android.content.pm.DataLoaderParams forStreaming(@NonNull android.content.ComponentName, @NonNull String); + method @NonNull public final String getArguments(); + method @NonNull public final android.content.ComponentName getComponentName(); + method @NonNull public final int getType(); + } + + public final class InstallationFile { + method public long getLengthBytes(); + method public int getLocation(); + method @Nullable public byte[] getMetadata(); + method @NonNull public String getName(); + method @Nullable public byte[] getSignature(); + } + public final class InstantAppInfo implements android.os.Parcelable { ctor public InstantAppInfo(android.content.pm.ApplicationInfo, String[], String[]); ctor public InstantAppInfo(String, CharSequence, String[], String[]); @@ -1509,6 +1965,18 @@ package android.content.pm { field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.InstantAppIntentFilter> CREATOR; } + public final class InstantAppRequestInfo implements android.os.Parcelable { + ctor public InstantAppRequestInfo(@NonNull android.content.Intent, @Nullable int[], @NonNull android.os.UserHandle, boolean, @NonNull String); + method public int describeContents(); + method @Nullable public int[] getHostDigestPrefix(); + method @NonNull public android.content.Intent getIntent(); + method @NonNull public String getToken(); + method @NonNull public android.os.UserHandle getUserHandle(); + method public boolean isRequesterInstantApp(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.InstantAppRequestInfo> CREATOR; + } + public final class InstantAppResolveInfo implements android.os.Parcelable { ctor public InstantAppResolveInfo(@NonNull android.content.pm.InstantAppResolveInfo.InstantAppDigest, @Nullable String, @Nullable java.util.List<android.content.pm.InstantAppIntentFilter>, int); ctor public InstantAppResolveInfo(@NonNull android.content.pm.InstantAppResolveInfo.InstantAppDigest, @Nullable String, @Nullable java.util.List<android.content.pm.InstantAppIntentFilter>, long, @Nullable android.os.Bundle); @@ -1560,15 +2028,26 @@ package android.content.pm { public class PackageInstaller { method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void setPermissionsResult(int, boolean); + field public static final int DATA_LOADER_TYPE_INCREMENTAL = 2; // 0x2 + field public static final int DATA_LOADER_TYPE_NONE = 0; // 0x0 + field public static final int DATA_LOADER_TYPE_STREAMING = 1; // 0x1 + field public static final String EXTRA_DATA_LOADER_TYPE = "android.content.pm.extra.DATA_LOADER_TYPE"; + field public static final int LOCATION_DATA_APP = 0; // 0x0 + field public static final int LOCATION_MEDIA_DATA = 2; // 0x2 + field public static final int LOCATION_MEDIA_OBB = 1; // 0x1 } public static class PackageInstaller.Session implements java.io.Closeable { + method @RequiresPermission("com.android.permission.USE_INSTALLER_V2") public void addFile(int, @NonNull String, long, @NonNull byte[], @Nullable byte[]); method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void commitTransferred(@NonNull android.content.IntentSender); + method @Nullable @RequiresPermission("com.android.permission.USE_INSTALLER_V2") public android.content.pm.DataLoaderParams getDataLoaderParams(); + method @RequiresPermission("com.android.permission.USE_INSTALLER_V2") public void removeFile(int, @NonNull String); } public static class PackageInstaller.SessionInfo implements android.os.Parcelable { method public boolean getAllocateAggressive(); method @Deprecated public boolean getAllowDowngrade(); + method public int getAutoRevokePermissionsMode(); method public boolean getDontKillApp(); method public boolean getEnableRollback(); method @Nullable public String[] getGrantedRuntimePermissions(); @@ -1576,14 +2055,17 @@ package android.content.pm { method public boolean getInstallAsInstantApp(boolean); method public boolean getInstallAsVirtualPreload(); method public boolean getRequestDowngrade(); + method public int getRollbackDataPolicy(); method @NonNull public java.util.Set<java.lang.String> getWhitelistedRestrictedPermissions(); } public static class PackageInstaller.SessionParams implements android.os.Parcelable { method @RequiresPermission(android.Manifest.permission.ALLOCATE_AGGRESSIVE) public void setAllocateAggressive(boolean); method @Deprecated public void setAllowDowngrade(boolean); + method @RequiresPermission(allOf={android.Manifest.permission.INSTALL_PACKAGES, "com.android.permission.USE_INSTALLER_V2"}) public void setDataLoaderParams(@NonNull android.content.pm.DataLoaderParams); method public void setDontKillApp(boolean); method public void setEnableRollback(boolean); + method public void setEnableRollback(boolean, int); method @RequiresPermission(android.Manifest.permission.INSTALL_GRANT_RUNTIME_PERMISSIONS) public void setGrantedRuntimePermissions(String[]); method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void setInstallAsApex(); method public void setInstallAsInstantApp(boolean); @@ -1628,6 +2110,7 @@ package android.content.pm { method @RequiresPermission("android.permission.OBSERVE_GRANT_REVOKE_PERMISSIONS") public abstract void removeOnPermissionsChangeListener(@NonNull android.content.pm.PackageManager.OnPermissionsChangedListener); method public void replacePreferredActivity(@NonNull android.content.IntentFilter, int, @NonNull java.util.List<android.content.ComponentName>, @NonNull android.content.ComponentName); method @RequiresPermission(android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS) public abstract void revokeRuntimePermission(@NonNull String, @NonNull String, @NonNull android.os.UserHandle); + method @RequiresPermission(android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS) public void revokeRuntimePermission(@NonNull String, @NonNull String, @NonNull android.os.UserHandle, @NonNull String); method public void sendDeviceCustomizationReadyBroadcast(); method @RequiresPermission(allOf={android.Manifest.permission.SET_PREFERRED_APPLICATIONS, android.Manifest.permission.INTERACT_ACROSS_USERS_FULL}) public abstract boolean setDefaultBrowserPackageNameAsUser(@Nullable String, int); method @NonNull @RequiresPermission(android.Manifest.permission.SUSPEND_APPS) public String[] setDistractingPackageRestrictions(@NonNull String[], int); @@ -1643,16 +2126,23 @@ package android.content.pm { field public static final String EXTRA_REQUEST_PERMISSIONS_NAMES = "android.content.pm.extra.REQUEST_PERMISSIONS_NAMES"; field public static final String EXTRA_REQUEST_PERMISSIONS_RESULTS = "android.content.pm.extra.REQUEST_PERMISSIONS_RESULTS"; field public static final String FEATURE_BROADCAST_RADIO = "android.hardware.broadcastradio"; + field public static final String FEATURE_CONTEXT_HUB = "android.hardware.context_hub"; + field public static final String FEATURE_INCREMENTAL_DELIVERY = "android.software.incremental_delivery"; + field public static final String FEATURE_REBOOT_ESCROW = "android.hardware.reboot_escrow"; field public static final String FEATURE_TELEPHONY_CARRIERLOCK = "android.hardware.telephony.carrierlock"; + field public static final int FLAGS_PERMISSION_RESERVED_PERMISSION_CONTROLLER = -268435456; // 0xf0000000 field public static final int FLAG_PERMISSION_APPLY_RESTRICTION = 16384; // 0x4000 + field public static final int FLAG_PERMISSION_AUTO_REVOKED = 131072; // 0x20000 field public static final int FLAG_PERMISSION_GRANTED_BY_DEFAULT = 32; // 0x20 field public static final int FLAG_PERMISSION_GRANTED_BY_ROLE = 32768; // 0x8000 + field public static final int FLAG_PERMISSION_ONE_TIME = 65536; // 0x10000 field public static final int FLAG_PERMISSION_POLICY_FIXED = 4; // 0x4 field public static final int FLAG_PERMISSION_RESTRICTION_INSTALLER_EXEMPT = 2048; // 0x800 field public static final int FLAG_PERMISSION_RESTRICTION_SYSTEM_EXEMPT = 4096; // 0x1000 field public static final int FLAG_PERMISSION_RESTRICTION_UPGRADE_EXEMPT = 8192; // 0x2000 field public static final int FLAG_PERMISSION_REVIEW_REQUIRED = 64; // 0x40 - field public static final int FLAG_PERMISSION_REVOKE_ON_UPGRADE = 8; // 0x8 + field public static final int FLAG_PERMISSION_REVOKED_COMPAT = 8; // 0x8 + field @Deprecated public static final int FLAG_PERMISSION_REVOKE_ON_UPGRADE = 8; // 0x8 field public static final int FLAG_PERMISSION_SYSTEM_FIXED = 16; // 0x10 field public static final int FLAG_PERMISSION_USER_FIXED = 2; // 0x2 field public static final int FLAG_PERMISSION_USER_SENSITIVE_WHEN_DENIED = 512; // 0x200 @@ -1706,6 +2196,7 @@ package android.content.pm { field public static final int MATCH_ANY_USER = 4194304; // 0x400000 field public static final int MATCH_FACTORY_ONLY = 2097152; // 0x200000 field public static final int MATCH_INSTANT = 8388608; // 0x800000 + field public static final int MODULE_APEX_NAME = 1; // 0x1 field public static final int RESTRICTION_HIDE_FROM_SUGGESTIONS = 1; // 0x1 field public static final int RESTRICTION_HIDE_NOTIFICATIONS = 2; // 0x2 field public static final int RESTRICTION_NONE = 0; // 0x0 @@ -1720,7 +2211,7 @@ package android.content.pm { method public void onPermissionsChanged(int); } - @IntDef(prefix={"FLAG_PERMISSION_"}, value={android.content.pm.PackageManager.FLAG_PERMISSION_USER_SET, android.content.pm.PackageManager.FLAG_PERMISSION_USER_FIXED, android.content.pm.PackageManager.FLAG_PERMISSION_POLICY_FIXED, android.content.pm.PackageManager.FLAG_PERMISSION_REVOKE_ON_UPGRADE, android.content.pm.PackageManager.FLAG_PERMISSION_SYSTEM_FIXED, android.content.pm.PackageManager.FLAG_PERMISSION_GRANTED_BY_DEFAULT, android.content.pm.PackageManager.FLAG_PERMISSION_USER_SENSITIVE_WHEN_GRANTED, android.content.pm.PackageManager.FLAG_PERMISSION_USER_SENSITIVE_WHEN_DENIED, android.content.pm.PackageManager.FLAG_PERMISSION_RESTRICTION_UPGRADE_EXEMPT, android.content.pm.PackageManager.FLAG_PERMISSION_RESTRICTION_SYSTEM_EXEMPT, android.content.pm.PackageManager.FLAG_PERMISSION_RESTRICTION_INSTALLER_EXEMPT, android.content.pm.PackageManager.FLAG_PERMISSION_APPLY_RESTRICTION, android.content.pm.PackageManager.FLAG_PERMISSION_GRANTED_BY_ROLE}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface PackageManager.PermissionFlags { + @IntDef(prefix={"FLAG_PERMISSION_"}, value={android.content.pm.PackageManager.FLAG_PERMISSION_USER_SET, android.content.pm.PackageManager.FLAG_PERMISSION_USER_FIXED, android.content.pm.PackageManager.FLAG_PERMISSION_POLICY_FIXED, android.content.pm.PackageManager.FLAG_PERMISSION_REVOKE_ON_UPGRADE, android.content.pm.PackageManager.FLAG_PERMISSION_SYSTEM_FIXED, android.content.pm.PackageManager.FLAG_PERMISSION_GRANTED_BY_DEFAULT, android.content.pm.PackageManager.FLAG_PERMISSION_USER_SENSITIVE_WHEN_GRANTED, android.content.pm.PackageManager.FLAG_PERMISSION_USER_SENSITIVE_WHEN_DENIED, android.content.pm.PackageManager.FLAG_PERMISSION_RESTRICTION_UPGRADE_EXEMPT, android.content.pm.PackageManager.FLAG_PERMISSION_RESTRICTION_SYSTEM_EXEMPT, android.content.pm.PackageManager.FLAG_PERMISSION_RESTRICTION_INSTALLER_EXEMPT, android.content.pm.PackageManager.FLAG_PERMISSION_APPLY_RESTRICTION, android.content.pm.PackageManager.FLAG_PERMISSION_GRANTED_BY_ROLE, android.content.pm.PackageManager.FLAG_PERMISSION_REVOKED_COMPAT, android.content.pm.PackageManager.FLAG_PERMISSION_ONE_TIME, android.content.pm.PackageManager.FLAG_PERMISSION_AUTO_REVOKED}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface PackageManager.PermissionFlags { } public class PermissionGroupInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable { @@ -1733,10 +2224,12 @@ package android.content.pm { public class PermissionInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable { field public static final int FLAG_REMOVED = 2; // 0x2 field public static final int PROTECTION_FLAG_APP_PREDICTOR = 2097152; // 0x200000 + field public static final int PROTECTION_FLAG_COMPANION = 8388608; // 0x800000 field public static final int PROTECTION_FLAG_CONFIGURATOR = 524288; // 0x80000 field public static final int PROTECTION_FLAG_DOCUMENTER = 262144; // 0x40000 field public static final int PROTECTION_FLAG_INCIDENT_REPORT_APPROVER = 1048576; // 0x100000 field public static final int PROTECTION_FLAG_OEM = 16384; // 0x4000 + field public static final int PROTECTION_FLAG_RETAIL_DEMO = 16777216; // 0x1000000 field public static final int PROTECTION_FLAG_SYSTEM_TEXT_CLASSIFIER = 65536; // 0x10000 field public static final int PROTECTION_FLAG_WELLBEING = 131072; // 0x20000 field @Nullable public final String backgroundPermission; @@ -1767,6 +2260,8 @@ package android.content.pm { public final class SuspendDialogInfo implements android.os.Parcelable { method public int describeContents(); method public void writeToParcel(android.os.Parcel, int); + field public static final int BUTTON_ACTION_MORE_DETAILS = 0; // 0x0 + field public static final int BUTTON_ACTION_UNSUSPEND = 1; // 0x1 field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.SuspendDialogInfo> CREATOR; } @@ -1776,6 +2271,7 @@ package android.content.pm { method @NonNull public android.content.pm.SuspendDialogInfo.Builder setIcon(@DrawableRes int); method @NonNull public android.content.pm.SuspendDialogInfo.Builder setMessage(@NonNull String); method @NonNull public android.content.pm.SuspendDialogInfo.Builder setMessage(@StringRes int); + method @NonNull public android.content.pm.SuspendDialogInfo.Builder setNeutralButtonAction(int); method @NonNull public android.content.pm.SuspendDialogInfo.Builder setNeutralButtonText(@StringRes int); method @NonNull public android.content.pm.SuspendDialogInfo.Builder setTitle(@StringRes int); } @@ -1840,8 +2336,8 @@ package android.content.rollback { public final class RollbackManager { method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_ROLLBACKS, "android.permission.TEST_MANAGE_ROLLBACKS"}) public void commitRollback(int, @NonNull java.util.List<android.content.pm.VersionedPackage>, @NonNull android.content.IntentSender); - method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_ROLLBACKS, "android.permission.TEST_MANAGE_ROLLBACKS"}) @NonNull public java.util.List<android.content.rollback.RollbackInfo> getAvailableRollbacks(); - method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_ROLLBACKS, "android.permission.TEST_MANAGE_ROLLBACKS"}) @NonNull public java.util.List<android.content.rollback.RollbackInfo> getRecentlyCommittedRollbacks(); + method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_ROLLBACKS, "android.permission.TEST_MANAGE_ROLLBACKS"}) public java.util.List<android.content.rollback.RollbackInfo> getAvailableRollbacks(); + method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_ROLLBACKS, "android.permission.TEST_MANAGE_ROLLBACKS"}) public java.util.List<android.content.rollback.RollbackInfo> getRecentlyCommittedRollbacks(); field public static final String EXTRA_STATUS = "android.content.rollback.extra.STATUS"; field public static final String EXTRA_STATUS_MESSAGE = "android.content.rollback.extra.STATUS_MESSAGE"; field public static final int STATUS_FAILURE = 1; // 0x1 @@ -1852,6 +2348,15 @@ package android.content.rollback { } +package android.debug { + + public class AdbManager { + method @RequiresPermission(android.Manifest.permission.MANAGE_DEBUGGING) public boolean isAdbWifiQrSupported(); + method @RequiresPermission(android.Manifest.permission.MANAGE_DEBUGGING) public boolean isAdbWifiSupported(); + } + +} + package android.hardware { public final class Sensor { @@ -1870,10 +2375,19 @@ package android.hardware { } +package android.hardware.biometrics { + + public static interface BiometricManager.Authenticators { + field @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static final int BIOMETRIC_CONVENIENCE = 4095; // 0xfff + field @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static final int EMPTY_SET = 0; // 0x0 + } + +} + package android.hardware.camera2 { public abstract class CameraDevice implements java.lang.AutoCloseable { - method public abstract void createCustomCaptureSession(android.hardware.camera2.params.InputConfiguration, @NonNull java.util.List<android.hardware.camera2.params.OutputConfiguration>, int, @NonNull android.hardware.camera2.CameraCaptureSession.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; + method @Deprecated public abstract void createCustomCaptureSession(android.hardware.camera2.params.InputConfiguration, @NonNull java.util.List<android.hardware.camera2.params.OutputConfiguration>, int, @NonNull android.hardware.camera2.CameraCaptureSession.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; field public static final int SESSION_OPERATION_MODE_CONSTRAINED_HIGH_SPEED = 1; // 0x1 field public static final int SESSION_OPERATION_MODE_NORMAL = 0; // 0x0 field public static final int SESSION_OPERATION_MODE_VENDOR_START = 32768; // 0x8000 @@ -1931,8 +2445,13 @@ package android.hardware.display { method @Nullable public android.hardware.display.BrightnessCorrection getCorrectionByCategory(int); method @Nullable public android.hardware.display.BrightnessCorrection getCorrectionByPackageName(@NonNull String); method public android.util.Pair<float[],float[]> getCurve(); + method public float getShortTermModelLowerLuxMultiplier(); + method public long getShortTermModelTimeoutMillis(); + method public float getShortTermModelUpperLuxMultiplier(); + method public boolean shouldCollectColorSamples(); method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.hardware.display.BrightnessConfiguration> CREATOR; + field public static final long SHORT_TERM_TIMEOUT_UNSET = -1L; // 0xffffffffffffffffL } public static class BrightnessConfiguration.Builder { @@ -1943,6 +2462,10 @@ package android.hardware.display { method public int getMaxCorrectionsByCategory(); method public int getMaxCorrectionsByPackageName(); method @NonNull public android.hardware.display.BrightnessConfiguration.Builder setDescription(@Nullable String); + method @NonNull public android.hardware.display.BrightnessConfiguration.Builder setShortTermModelLowerLuxMultiplier(@FloatRange(from=0.0f) float); + method @NonNull public android.hardware.display.BrightnessConfiguration.Builder setShortTermModelTimeoutMillis(long); + method @NonNull public android.hardware.display.BrightnessConfiguration.Builder setShortTermModelUpperLuxMultiplier(@FloatRange(from=0.0f) float); + method @NonNull public android.hardware.display.BrightnessConfiguration.Builder setShouldCollectColorSamples(boolean); } public final class BrightnessCorrection implements android.os.Parcelable { @@ -2224,6 +2747,7 @@ package android.hardware.hdmi { public class HdmiSwitchClient extends android.hardware.hdmi.HdmiClient { method public int getDeviceType(); + method @NonNull public java.util.List<android.hardware.hdmi.HdmiPortInfo> getPortInfo(); method public void selectPort(int, @NonNull android.hardware.hdmi.HdmiSwitchClient.OnSelectListener); method public void selectPort(int, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.hdmi.HdmiSwitchClient.OnSelectListener); } @@ -2297,12 +2821,54 @@ package android.hardware.hdmi { } +package android.hardware.lights { + + public final class Light implements android.os.Parcelable { + method public int describeContents(); + method public int getId(); + method public int getOrdinal(); + method public int getType(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.hardware.lights.Light> CREATOR; + } + + public final class LightState implements android.os.Parcelable { + ctor public LightState(@ColorInt int); + method public int describeContents(); + method @ColorInt public int getColor(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.hardware.lights.LightState> CREATOR; + } + + public final class LightsManager { + method @NonNull @RequiresPermission(android.Manifest.permission.CONTROL_DEVICE_LIGHTS) public java.util.List<android.hardware.lights.Light> getLights(); + method @NonNull @RequiresPermission(android.Manifest.permission.CONTROL_DEVICE_LIGHTS) public android.hardware.lights.LightsManager.LightsSession openSession(); + field public static final int LIGHT_TYPE_MICROPHONE = 8; // 0x8 + } + + public final class LightsManager.LightsSession implements java.lang.AutoCloseable { + method @RequiresPermission(android.Manifest.permission.CONTROL_DEVICE_LIGHTS) public void close(); + method @RequiresPermission(android.Manifest.permission.CONTROL_DEVICE_LIGHTS) public void requestLights(@NonNull android.hardware.lights.LightsRequest); + } + + public final class LightsRequest { + } + + public static final class LightsRequest.Builder { + ctor public LightsRequest.Builder(); + method @NonNull public android.hardware.lights.LightsRequest build(); + method @NonNull public android.hardware.lights.LightsRequest.Builder clearLight(@NonNull android.hardware.lights.Light); + method @NonNull public android.hardware.lights.LightsRequest.Builder setLight(@NonNull android.hardware.lights.Light, @NonNull android.hardware.lights.LightState); + } + +} + package android.hardware.location { public class ContextHubClient implements java.io.Closeable { method public void close(); method @NonNull public android.hardware.location.ContextHubInfo getAttachedHub(); - method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public int sendMessageToNanoApp(@NonNull android.hardware.location.NanoAppMessage); + method @RequiresPermission(anyOf={android.Manifest.permission.LOCATION_HARDWARE, android.Manifest.permission.ACCESS_CONTEXT_HUB}) public int sendMessageToNanoApp(@NonNull android.hardware.location.NanoAppMessage); } public class ContextHubClientCallback { @@ -2351,24 +2917,24 @@ package android.hardware.location { } public final class ContextHubManager { - method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) @NonNull public android.hardware.location.ContextHubClient createClient(@NonNull android.hardware.location.ContextHubInfo, @NonNull android.hardware.location.ContextHubClientCallback, @NonNull java.util.concurrent.Executor); - method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) @NonNull public android.hardware.location.ContextHubClient createClient(@NonNull android.hardware.location.ContextHubInfo, @NonNull android.hardware.location.ContextHubClientCallback); - method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) @NonNull public android.hardware.location.ContextHubClient createClient(@NonNull android.hardware.location.ContextHubInfo, @NonNull android.app.PendingIntent, long); - method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) @NonNull public android.hardware.location.ContextHubTransaction<java.lang.Void> disableNanoApp(@NonNull android.hardware.location.ContextHubInfo, long); - method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) @NonNull public android.hardware.location.ContextHubTransaction<java.lang.Void> enableNanoApp(@NonNull android.hardware.location.ContextHubInfo, long); - method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public int[] findNanoAppOnHub(int, @NonNull android.hardware.location.NanoAppFilter); - method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public int[] getContextHubHandles(); - method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public android.hardware.location.ContextHubInfo getContextHubInfo(int); - method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) @NonNull public java.util.List<android.hardware.location.ContextHubInfo> getContextHubs(); - method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public android.hardware.location.NanoAppInstanceInfo getNanoAppInstanceInfo(int); - method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public int loadNanoApp(int, @NonNull android.hardware.location.NanoApp); - method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) @NonNull public android.hardware.location.ContextHubTransaction<java.lang.Void> loadNanoApp(@NonNull android.hardware.location.ContextHubInfo, @NonNull android.hardware.location.NanoAppBinary); - method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) @NonNull public android.hardware.location.ContextHubTransaction<java.util.List<android.hardware.location.NanoAppState>> queryNanoApps(@NonNull android.hardware.location.ContextHubInfo); + method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.LOCATION_HARDWARE, android.Manifest.permission.ACCESS_CONTEXT_HUB}) public android.hardware.location.ContextHubClient createClient(@NonNull android.hardware.location.ContextHubInfo, @NonNull android.hardware.location.ContextHubClientCallback, @NonNull java.util.concurrent.Executor); + method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.LOCATION_HARDWARE, android.Manifest.permission.ACCESS_CONTEXT_HUB}) public android.hardware.location.ContextHubClient createClient(@NonNull android.hardware.location.ContextHubInfo, @NonNull android.hardware.location.ContextHubClientCallback); + method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.LOCATION_HARDWARE, android.Manifest.permission.ACCESS_CONTEXT_HUB}) public android.hardware.location.ContextHubClient createClient(@NonNull android.hardware.location.ContextHubInfo, @NonNull android.app.PendingIntent, long); + method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.LOCATION_HARDWARE, android.Manifest.permission.ACCESS_CONTEXT_HUB}) public android.hardware.location.ContextHubTransaction<java.lang.Void> disableNanoApp(@NonNull android.hardware.location.ContextHubInfo, long); + method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.LOCATION_HARDWARE, android.Manifest.permission.ACCESS_CONTEXT_HUB}) public android.hardware.location.ContextHubTransaction<java.lang.Void> enableNanoApp(@NonNull android.hardware.location.ContextHubInfo, long); + method @Deprecated @NonNull @RequiresPermission(anyOf={android.Manifest.permission.LOCATION_HARDWARE, android.Manifest.permission.ACCESS_CONTEXT_HUB}) public int[] findNanoAppOnHub(int, @NonNull android.hardware.location.NanoAppFilter); + method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.LOCATION_HARDWARE, android.Manifest.permission.ACCESS_CONTEXT_HUB}) public int[] getContextHubHandles(); + method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.LOCATION_HARDWARE, android.Manifest.permission.ACCESS_CONTEXT_HUB}) public android.hardware.location.ContextHubInfo getContextHubInfo(int); + method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.LOCATION_HARDWARE, android.Manifest.permission.ACCESS_CONTEXT_HUB}) public java.util.List<android.hardware.location.ContextHubInfo> getContextHubs(); + method @Deprecated @Nullable @RequiresPermission(anyOf={android.Manifest.permission.LOCATION_HARDWARE, android.Manifest.permission.ACCESS_CONTEXT_HUB}) public android.hardware.location.NanoAppInstanceInfo getNanoAppInstanceInfo(int); + method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.LOCATION_HARDWARE, android.Manifest.permission.ACCESS_CONTEXT_HUB}) public int loadNanoApp(int, @NonNull android.hardware.location.NanoApp); + method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.LOCATION_HARDWARE, android.Manifest.permission.ACCESS_CONTEXT_HUB}) public android.hardware.location.ContextHubTransaction<java.lang.Void> loadNanoApp(@NonNull android.hardware.location.ContextHubInfo, @NonNull android.hardware.location.NanoAppBinary); + method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.LOCATION_HARDWARE, android.Manifest.permission.ACCESS_CONTEXT_HUB}) public android.hardware.location.ContextHubTransaction<java.util.List<android.hardware.location.NanoAppState>> queryNanoApps(@NonNull android.hardware.location.ContextHubInfo); method @Deprecated public int registerCallback(@NonNull android.hardware.location.ContextHubManager.Callback); method @Deprecated public int registerCallback(android.hardware.location.ContextHubManager.Callback, android.os.Handler); - method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public int sendMessage(int, int, @NonNull android.hardware.location.ContextHubMessage); - method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public int unloadNanoApp(int); - method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) @NonNull public android.hardware.location.ContextHubTransaction<java.lang.Void> unloadNanoApp(@NonNull android.hardware.location.ContextHubInfo, long); + method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.LOCATION_HARDWARE, android.Manifest.permission.ACCESS_CONTEXT_HUB}) public int sendMessage(int, int, @NonNull android.hardware.location.ContextHubMessage); + method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.LOCATION_HARDWARE, android.Manifest.permission.ACCESS_CONTEXT_HUB}) public int unloadNanoApp(int); + method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.LOCATION_HARDWARE, android.Manifest.permission.ACCESS_CONTEXT_HUB}) public android.hardware.location.ContextHubTransaction<java.lang.Void> unloadNanoApp(@NonNull android.hardware.location.ContextHubInfo, long); method @Deprecated public int unregisterCallback(@NonNull android.hardware.location.ContextHubManager.Callback); field public static final int EVENT_HUB_RESET = 6; // 0x6 field public static final int EVENT_NANOAPP_ABORTED = 4; // 0x4 @@ -2732,6 +3298,7 @@ package android.hardware.radio { method public int describeContents(); method @android.hardware.radio.ProgramSelector.IdentifierType public int getType(); method public long getValue(); + method public boolean isCategoryType(); method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.ProgramSelector.Identifier> CREATOR; } @@ -3008,9 +3575,65 @@ package android.hardware.radio { package android.hardware.soundtrigger { public class SoundTrigger { + field public static final int RECOGNITION_MODE_GENERIC = 8; // 0x8 + field public static final int RECOGNITION_MODE_USER_AUTHENTICATION = 4; // 0x4 + field public static final int RECOGNITION_MODE_USER_IDENTIFICATION = 2; // 0x2 + field public static final int RECOGNITION_MODE_VOICE_TRIGGER = 1; // 0x1 field public static final int STATUS_OK = 0; // 0x0 } + public static final class SoundTrigger.Keyphrase implements android.os.Parcelable { + ctor public SoundTrigger.Keyphrase(int, int, @NonNull java.util.Locale, @NonNull String, @Nullable int[]); + method public int getId(); + method @NonNull public java.util.Locale getLocale(); + method public int getRecognitionModes(); + method @NonNull public String getText(); + method @NonNull public int[] getUsers(); + method @NonNull public static android.hardware.soundtrigger.SoundTrigger.Keyphrase readFromParcel(@NonNull android.os.Parcel); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.hardware.soundtrigger.SoundTrigger.Keyphrase> CREATOR; + } + + public static final class SoundTrigger.KeyphraseSoundModel extends android.hardware.soundtrigger.SoundTrigger.SoundModel implements android.os.Parcelable { + ctor public SoundTrigger.KeyphraseSoundModel(@NonNull java.util.UUID, @NonNull java.util.UUID, @Nullable byte[], @Nullable android.hardware.soundtrigger.SoundTrigger.Keyphrase[], int); + ctor public SoundTrigger.KeyphraseSoundModel(@NonNull java.util.UUID, @NonNull java.util.UUID, @Nullable byte[], @Nullable android.hardware.soundtrigger.SoundTrigger.Keyphrase[]); + method @NonNull public android.hardware.soundtrigger.SoundTrigger.Keyphrase[] getKeyphrases(); + method @NonNull public static android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel readFromParcel(@NonNull android.os.Parcel); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel> CREATOR; + } + + public static final class SoundTrigger.ModelParamRange implements android.os.Parcelable { + method public int getEnd(); + method public int getStart(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.hardware.soundtrigger.SoundTrigger.ModelParamRange> CREATOR; + } + + public static final class SoundTrigger.ModuleProperties implements android.os.Parcelable { + method public int describeContents(); + method public int getAudioCapabilities(); + method @NonNull public String getDescription(); + method public int getId(); + method @NonNull public String getImplementor(); + method public int getMaxBufferMillis(); + method public int getMaxKeyphrases(); + method public int getMaxSoundModels(); + method public int getMaxUsers(); + method public int getPowerConsumptionMw(); + method public int getRecognitionModes(); + method @NonNull public String getSupportedModelArch(); + method @NonNull public java.util.UUID getUuid(); + method public int getVersion(); + method public boolean isCaptureTransitionSupported(); + method public boolean isConcurrentCaptureSupported(); + method public boolean isTriggerReturnedInEvent(); + method public void writeToParcel(android.os.Parcel, int); + field public static final int AUDIO_CAPABILITY_ECHO_CANCELLATION = 1; // 0x1 + field public static final int AUDIO_CAPABILITY_NOISE_SUPPRESSION = 2; // 0x2 + field @NonNull public static final android.os.Parcelable.Creator<android.hardware.soundtrigger.SoundTrigger.ModuleProperties> CREATOR; + } + public static class SoundTrigger.RecognitionEvent { method @Nullable public android.media.AudioFormat getCaptureFormat(); method public int getCaptureSession(); @@ -3018,6 +3641,16 @@ package android.hardware.soundtrigger { method public boolean isCaptureAvailable(); } + public static class SoundTrigger.SoundModel { + method @NonNull public byte[] getData(); + method public int getType(); + method @NonNull public java.util.UUID getUuid(); + method @NonNull public java.util.UUID getVendorUuid(); + method public int getVersion(); + field public static final int TYPE_GENERIC_SOUND = 1; // 0x1 + field public static final int TYPE_KEYPHRASE = 0; // 0x0 + } + } package android.hardware.usb { @@ -3027,13 +3660,30 @@ package android.hardware.usb { } public class UsbManager { + method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public long getCurrentFunctions(); method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_USB) public java.util.List<android.hardware.usb.UsbPort> getPorts(); method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void grantPermission(android.hardware.usb.UsbDevice, String); + method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void resetUsbGadget(); + method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void setCurrentFunctions(long); field @RequiresPermission(android.Manifest.permission.MANAGE_USB) public static final String ACTION_USB_PORT_CHANGED = "android.hardware.usb.action.USB_PORT_CHANGED"; + field public static final String ACTION_USB_STATE = "android.hardware.usb.action.USB_STATE"; + field public static final long FUNCTION_ACCESSORY = 2L; // 0x2L + field public static final long FUNCTION_ADB = 1L; // 0x1L + field public static final long FUNCTION_AUDIO_SOURCE = 64L; // 0x40L + field public static final long FUNCTION_MIDI = 8L; // 0x8L + field public static final long FUNCTION_MTP = 4L; // 0x4L + field public static final long FUNCTION_NCM = 1024L; // 0x400L + field public static final long FUNCTION_NONE = 0L; // 0x0L + field public static final long FUNCTION_PTP = 16L; // 0x10L + field public static final long FUNCTION_RNDIS = 32L; // 0x20L + field public static final String USB_CONFIGURED = "configured"; + field public static final String USB_CONNECTED = "connected"; + field public static final String USB_FUNCTION_NCM = "ncm"; + field public static final String USB_FUNCTION_RNDIS = "rndis"; } public final class UsbPort { - method @RequiresPermission(android.Manifest.permission.MANAGE_USB) @Nullable public android.hardware.usb.UsbPortStatus getStatus(); + method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_USB) public android.hardware.usb.UsbPortStatus getStatus(); method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void setRoles(int, int); } @@ -3084,12 +3734,15 @@ package android.location { public final class GnssMeasurementCorrections implements android.os.Parcelable { method public int describeContents(); method @FloatRange(from=-1000.0F, to=10000.0f) public double getAltitudeMeters(); + method @FloatRange(from=0.0f, to=360.0f) public float getEnvironmentBearingDegrees(); + method @FloatRange(from=0.0f, to=180.0f) public float getEnvironmentBearingUncertaintyDegrees(); method @FloatRange(from=0.0f) public double getHorizontalPositionUncertaintyMeters(); method @FloatRange(from=-90.0F, to=90.0f) public double getLatitudeDegrees(); method @FloatRange(from=-180.0F, to=180.0f) public double getLongitudeDegrees(); method @NonNull public java.util.List<android.location.GnssSingleSatCorrection> getSingleSatelliteCorrectionList(); method @IntRange(from=0) public long getToaGpsNanosecondsOfWeek(); method @FloatRange(from=0.0f) public double getVerticalPositionUncertaintyMeters(); + method public boolean hasEnvironmentBearing(); method public void writeToParcel(@NonNull android.os.Parcel, int); field public static final android.os.Parcelable.Creator<android.location.GnssMeasurementCorrections> CREATOR; } @@ -3098,6 +3751,8 @@ package android.location { ctor public GnssMeasurementCorrections.Builder(); method @NonNull public android.location.GnssMeasurementCorrections build(); method @NonNull public android.location.GnssMeasurementCorrections.Builder setAltitudeMeters(@FloatRange(from=-1000.0F, to=10000.0f) double); + method @NonNull public android.location.GnssMeasurementCorrections.Builder setEnvironmentBearingDegrees(@FloatRange(from=0.0f, to=360.0f) float); + method @NonNull public android.location.GnssMeasurementCorrections.Builder setEnvironmentBearingUncertaintyDegrees(@FloatRange(from=0.0f, to=180.0f) float); method @NonNull public android.location.GnssMeasurementCorrections.Builder setHorizontalPositionUncertaintyMeters(@FloatRange(from=0.0f) double); method @NonNull public android.location.GnssMeasurementCorrections.Builder setLatitudeDegrees(@FloatRange(from=-90.0F, to=90.0f) double); method @NonNull public android.location.GnssMeasurementCorrections.Builder setLongitudeDegrees(@FloatRange(from=-180.0F, to=180.0f) double); @@ -3125,6 +3780,20 @@ package android.location { method @NonNull public android.location.GnssReflectingPlane.Builder setLongitudeDegrees(@FloatRange(from=-180.0F, to=180.0f) double); } + public final class GnssRequest implements android.os.Parcelable { + method public int describeContents(); + method public boolean isFullTracking(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.location.GnssRequest> CREATOR; + } + + public static final class GnssRequest.Builder { + ctor public GnssRequest.Builder(); + ctor public GnssRequest.Builder(@NonNull android.location.GnssRequest); + method @NonNull public android.location.GnssRequest build(); + method @NonNull public android.location.GnssRequest.Builder setFullTracking(boolean); + } + public final class GnssSingleSatCorrection implements android.os.Parcelable { method public int describeContents(); method @FloatRange(from=0.0f, fromInclusive=false) public float getCarrierFrequencyHz(); @@ -3154,250 +3823,253 @@ package android.location { method @NonNull public android.location.GnssSingleSatCorrection.Builder setSatelliteId(@IntRange(from=0) int); } - public class GpsClock implements android.os.Parcelable { - method public int describeContents(); - method public double getBiasInNs(); - method public double getBiasUncertaintyInNs(); - method public double getDriftInNsPerSec(); - method public double getDriftUncertaintyInNsPerSec(); - method public long getFullBiasInNs(); - method public short getLeapSecond(); - method public long getTimeInNs(); - method public double getTimeUncertaintyInNs(); - method public byte getType(); - method public boolean hasBiasInNs(); - method public boolean hasBiasUncertaintyInNs(); - method public boolean hasDriftInNsPerSec(); - method public boolean hasDriftUncertaintyInNsPerSec(); - method public boolean hasFullBiasInNs(); - method public boolean hasLeapSecond(); - method public boolean hasTimeUncertaintyInNs(); - method public void reset(); - method public void resetBiasInNs(); - method public void resetBiasUncertaintyInNs(); - method public void resetDriftInNsPerSec(); - method public void resetDriftUncertaintyInNsPerSec(); - method public void resetFullBiasInNs(); - method public void resetLeapSecond(); - method public void resetTimeUncertaintyInNs(); - method public void set(android.location.GpsClock); - method public void setBiasInNs(double); - method public void setBiasUncertaintyInNs(double); - method public void setDriftInNsPerSec(double); - method public void setDriftUncertaintyInNsPerSec(double); - method public void setFullBiasInNs(long); - method public void setLeapSecond(short); - method public void setTimeInNs(long); - method public void setTimeUncertaintyInNs(double); - method public void setType(byte); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator<android.location.GpsClock> CREATOR; - field public static final byte TYPE_GPS_TIME = 2; // 0x2 - field public static final byte TYPE_LOCAL_HW_TIME = 1; // 0x1 - field public static final byte TYPE_UNKNOWN = 0; // 0x0 - } - - public class GpsMeasurement implements android.os.Parcelable { - method public int describeContents(); - method public double getAccumulatedDeltaRangeInMeters(); - method public short getAccumulatedDeltaRangeState(); - method public double getAccumulatedDeltaRangeUncertaintyInMeters(); - method public double getAzimuthInDeg(); - method public double getAzimuthUncertaintyInDeg(); - method public int getBitNumber(); - method public long getCarrierCycles(); - method public float getCarrierFrequencyInHz(); - method public double getCarrierPhase(); - method public double getCarrierPhaseUncertainty(); - method public double getCn0InDbHz(); - method public double getCodePhaseInChips(); - method public double getCodePhaseUncertaintyInChips(); - method public double getDopplerShiftInHz(); - method public double getDopplerShiftUncertaintyInHz(); - method public double getElevationInDeg(); - method public double getElevationUncertaintyInDeg(); - method public byte getLossOfLock(); - method public byte getMultipathIndicator(); - method public byte getPrn(); - method public double getPseudorangeInMeters(); - method public double getPseudorangeRateInMetersPerSec(); - method public double getPseudorangeRateUncertaintyInMetersPerSec(); - method public double getPseudorangeUncertaintyInMeters(); - method public long getReceivedGpsTowInNs(); - method public long getReceivedGpsTowUncertaintyInNs(); - method public double getSnrInDb(); - method public short getState(); - method public short getTimeFromLastBitInMs(); - method public double getTimeOffsetInNs(); - method public boolean hasAzimuthInDeg(); - method public boolean hasAzimuthUncertaintyInDeg(); - method public boolean hasBitNumber(); - method public boolean hasCarrierCycles(); - method public boolean hasCarrierFrequencyInHz(); - method public boolean hasCarrierPhase(); - method public boolean hasCarrierPhaseUncertainty(); - method public boolean hasCodePhaseInChips(); - method public boolean hasCodePhaseUncertaintyInChips(); - method public boolean hasDopplerShiftInHz(); - method public boolean hasDopplerShiftUncertaintyInHz(); - method public boolean hasElevationInDeg(); - method public boolean hasElevationUncertaintyInDeg(); - method public boolean hasPseudorangeInMeters(); - method public boolean hasPseudorangeUncertaintyInMeters(); - method public boolean hasSnrInDb(); - method public boolean hasTimeFromLastBitInMs(); - method public boolean isPseudorangeRateCorrected(); - method public boolean isUsedInFix(); - method public void reset(); - method public void resetAzimuthInDeg(); - method public void resetAzimuthUncertaintyInDeg(); - method public void resetBitNumber(); - method public void resetCarrierCycles(); - method public void resetCarrierFrequencyInHz(); - method public void resetCarrierPhase(); - method public void resetCarrierPhaseUncertainty(); - method public void resetCodePhaseInChips(); - method public void resetCodePhaseUncertaintyInChips(); - method public void resetDopplerShiftInHz(); - method public void resetDopplerShiftUncertaintyInHz(); - method public void resetElevationInDeg(); - method public void resetElevationUncertaintyInDeg(); - method public void resetPseudorangeInMeters(); - method public void resetPseudorangeUncertaintyInMeters(); - method public void resetSnrInDb(); - method public void resetTimeFromLastBitInMs(); - method public void set(android.location.GpsMeasurement); - method public void setAccumulatedDeltaRangeInMeters(double); - method public void setAccumulatedDeltaRangeState(short); - method public void setAccumulatedDeltaRangeUncertaintyInMeters(double); - method public void setAzimuthInDeg(double); - method public void setAzimuthUncertaintyInDeg(double); - method public void setBitNumber(int); - method public void setCarrierCycles(long); - method public void setCarrierFrequencyInHz(float); - method public void setCarrierPhase(double); - method public void setCarrierPhaseUncertainty(double); - method public void setCn0InDbHz(double); - method public void setCodePhaseInChips(double); - method public void setCodePhaseUncertaintyInChips(double); - method public void setDopplerShiftInHz(double); - method public void setDopplerShiftUncertaintyInHz(double); - method public void setElevationInDeg(double); - method public void setElevationUncertaintyInDeg(double); - method public void setLossOfLock(byte); - method public void setMultipathIndicator(byte); - method public void setPrn(byte); - method public void setPseudorangeInMeters(double); - method public void setPseudorangeRateInMetersPerSec(double); - method public void setPseudorangeRateUncertaintyInMetersPerSec(double); - method public void setPseudorangeUncertaintyInMeters(double); - method public void setReceivedGpsTowInNs(long); - method public void setReceivedGpsTowUncertaintyInNs(long); - method public void setSnrInDb(double); - method public void setState(short); - method public void setTimeFromLastBitInMs(short); - method public void setTimeOffsetInNs(double); - method public void setUsedInFix(boolean); - method public void writeToParcel(android.os.Parcel, int); - field public static final short ADR_STATE_CYCLE_SLIP = 4; // 0x4 - field public static final short ADR_STATE_RESET = 2; // 0x2 - field public static final short ADR_STATE_UNKNOWN = 0; // 0x0 - field public static final short ADR_STATE_VALID = 1; // 0x1 - field @NonNull public static final android.os.Parcelable.Creator<android.location.GpsMeasurement> CREATOR; - field public static final byte LOSS_OF_LOCK_CYCLE_SLIP = 2; // 0x2 - field public static final byte LOSS_OF_LOCK_OK = 1; // 0x1 - field public static final byte LOSS_OF_LOCK_UNKNOWN = 0; // 0x0 - field public static final byte MULTIPATH_INDICATOR_DETECTED = 1; // 0x1 - field public static final byte MULTIPATH_INDICATOR_NOT_USED = 2; // 0x2 - field public static final byte MULTIPATH_INDICATOR_UNKNOWN = 0; // 0x0 - field public static final short STATE_BIT_SYNC = 2; // 0x2 - field public static final short STATE_CODE_LOCK = 1; // 0x1 - field public static final short STATE_MSEC_AMBIGUOUS = 16; // 0x10 - field public static final short STATE_SUBFRAME_SYNC = 4; // 0x4 - field public static final short STATE_TOW_DECODED = 8; // 0x8 - field public static final short STATE_UNKNOWN = 0; // 0x0 - } - - public class GpsMeasurementsEvent implements android.os.Parcelable { - ctor public GpsMeasurementsEvent(android.location.GpsClock, android.location.GpsMeasurement[]); - method public int describeContents(); - method @NonNull public android.location.GpsClock getClock(); - method @NonNull public java.util.Collection<android.location.GpsMeasurement> getMeasurements(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator<android.location.GpsMeasurementsEvent> CREATOR; - field public static final int STATUS_GPS_LOCATION_DISABLED = 2; // 0x2 - field public static final int STATUS_NOT_SUPPORTED = 0; // 0x0 - field public static final int STATUS_READY = 1; // 0x1 - } - - public static interface GpsMeasurementsEvent.Listener { - method public void onGpsMeasurementsReceived(android.location.GpsMeasurementsEvent); - method public void onStatusChanged(int); - } - - public class GpsNavigationMessage implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public byte[] getData(); - method public short getMessageId(); - method public byte getPrn(); - method public short getStatus(); - method public short getSubmessageId(); - method public byte getType(); - method public void reset(); - method public void set(android.location.GpsNavigationMessage); - method public void setData(byte[]); - method public void setMessageId(short); - method public void setPrn(byte); - method public void setStatus(short); - method public void setSubmessageId(short); - method public void setType(byte); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator<android.location.GpsNavigationMessage> CREATOR; - field public static final short STATUS_PARITY_PASSED = 1; // 0x1 - field public static final short STATUS_PARITY_REBUILT = 2; // 0x2 - field public static final short STATUS_UNKNOWN = 0; // 0x0 - field public static final byte TYPE_CNAV2 = 4; // 0x4 - field public static final byte TYPE_L1CA = 1; // 0x1 - field public static final byte TYPE_L2CNAV = 2; // 0x2 - field public static final byte TYPE_L5CNAV = 3; // 0x3 - field public static final byte TYPE_UNKNOWN = 0; // 0x0 + @Deprecated public class GpsClock implements android.os.Parcelable { + method @Deprecated public int describeContents(); + method @Deprecated public double getBiasInNs(); + method @Deprecated public double getBiasUncertaintyInNs(); + method @Deprecated public double getDriftInNsPerSec(); + method @Deprecated public double getDriftUncertaintyInNsPerSec(); + method @Deprecated public long getFullBiasInNs(); + method @Deprecated public short getLeapSecond(); + method @Deprecated public long getTimeInNs(); + method @Deprecated public double getTimeUncertaintyInNs(); + method @Deprecated public byte getType(); + method @Deprecated public boolean hasBiasInNs(); + method @Deprecated public boolean hasBiasUncertaintyInNs(); + method @Deprecated public boolean hasDriftInNsPerSec(); + method @Deprecated public boolean hasDriftUncertaintyInNsPerSec(); + method @Deprecated public boolean hasFullBiasInNs(); + method @Deprecated public boolean hasLeapSecond(); + method @Deprecated public boolean hasTimeUncertaintyInNs(); + method @Deprecated public void reset(); + method @Deprecated public void resetBiasInNs(); + method @Deprecated public void resetBiasUncertaintyInNs(); + method @Deprecated public void resetDriftInNsPerSec(); + method @Deprecated public void resetDriftUncertaintyInNsPerSec(); + method @Deprecated public void resetFullBiasInNs(); + method @Deprecated public void resetLeapSecond(); + method @Deprecated public void resetTimeUncertaintyInNs(); + method @Deprecated public void set(android.location.GpsClock); + method @Deprecated public void setBiasInNs(double); + method @Deprecated public void setBiasUncertaintyInNs(double); + method @Deprecated public void setDriftInNsPerSec(double); + method @Deprecated public void setDriftUncertaintyInNsPerSec(double); + method @Deprecated public void setFullBiasInNs(long); + method @Deprecated public void setLeapSecond(short); + method @Deprecated public void setTimeInNs(long); + method @Deprecated public void setTimeUncertaintyInNs(double); + method @Deprecated public void setType(byte); + method @Deprecated public void writeToParcel(android.os.Parcel, int); + field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.location.GpsClock> CREATOR; + field @Deprecated public static final byte TYPE_GPS_TIME = 2; // 0x2 + field @Deprecated public static final byte TYPE_LOCAL_HW_TIME = 1; // 0x1 + field @Deprecated public static final byte TYPE_UNKNOWN = 0; // 0x0 } - public class GpsNavigationMessageEvent implements android.os.Parcelable { - ctor public GpsNavigationMessageEvent(android.location.GpsNavigationMessage); - method public int describeContents(); - method @NonNull public android.location.GpsNavigationMessage getNavigationMessage(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator<android.location.GpsNavigationMessageEvent> CREATOR; - field public static int STATUS_GPS_LOCATION_DISABLED; - field public static int STATUS_NOT_SUPPORTED; - field public static int STATUS_READY; + @Deprecated public class GpsMeasurement implements android.os.Parcelable { + method @Deprecated public int describeContents(); + method @Deprecated public double getAccumulatedDeltaRangeInMeters(); + method @Deprecated public short getAccumulatedDeltaRangeState(); + method @Deprecated public double getAccumulatedDeltaRangeUncertaintyInMeters(); + method @Deprecated public double getAzimuthInDeg(); + method @Deprecated public double getAzimuthUncertaintyInDeg(); + method @Deprecated public int getBitNumber(); + method @Deprecated public long getCarrierCycles(); + method @Deprecated public float getCarrierFrequencyInHz(); + method @Deprecated public double getCarrierPhase(); + method @Deprecated public double getCarrierPhaseUncertainty(); + method @Deprecated public double getCn0InDbHz(); + method @Deprecated public double getCodePhaseInChips(); + method @Deprecated public double getCodePhaseUncertaintyInChips(); + method @Deprecated public double getDopplerShiftInHz(); + method @Deprecated public double getDopplerShiftUncertaintyInHz(); + method @Deprecated public double getElevationInDeg(); + method @Deprecated public double getElevationUncertaintyInDeg(); + method @Deprecated public byte getLossOfLock(); + method @Deprecated public byte getMultipathIndicator(); + method @Deprecated public byte getPrn(); + method @Deprecated public double getPseudorangeInMeters(); + method @Deprecated public double getPseudorangeRateInMetersPerSec(); + method @Deprecated public double getPseudorangeRateUncertaintyInMetersPerSec(); + method @Deprecated public double getPseudorangeUncertaintyInMeters(); + method @Deprecated public long getReceivedGpsTowInNs(); + method @Deprecated public long getReceivedGpsTowUncertaintyInNs(); + method @Deprecated public double getSnrInDb(); + method @Deprecated public short getState(); + method @Deprecated public short getTimeFromLastBitInMs(); + method @Deprecated public double getTimeOffsetInNs(); + method @Deprecated public boolean hasAzimuthInDeg(); + method @Deprecated public boolean hasAzimuthUncertaintyInDeg(); + method @Deprecated public boolean hasBitNumber(); + method @Deprecated public boolean hasCarrierCycles(); + method @Deprecated public boolean hasCarrierFrequencyInHz(); + method @Deprecated public boolean hasCarrierPhase(); + method @Deprecated public boolean hasCarrierPhaseUncertainty(); + method @Deprecated public boolean hasCodePhaseInChips(); + method @Deprecated public boolean hasCodePhaseUncertaintyInChips(); + method @Deprecated public boolean hasDopplerShiftInHz(); + method @Deprecated public boolean hasDopplerShiftUncertaintyInHz(); + method @Deprecated public boolean hasElevationInDeg(); + method @Deprecated public boolean hasElevationUncertaintyInDeg(); + method @Deprecated public boolean hasPseudorangeInMeters(); + method @Deprecated public boolean hasPseudorangeUncertaintyInMeters(); + method @Deprecated public boolean hasSnrInDb(); + method @Deprecated public boolean hasTimeFromLastBitInMs(); + method @Deprecated public boolean isPseudorangeRateCorrected(); + method @Deprecated public boolean isUsedInFix(); + method @Deprecated public void reset(); + method @Deprecated public void resetAzimuthInDeg(); + method @Deprecated public void resetAzimuthUncertaintyInDeg(); + method @Deprecated public void resetBitNumber(); + method @Deprecated public void resetCarrierCycles(); + method @Deprecated public void resetCarrierFrequencyInHz(); + method @Deprecated public void resetCarrierPhase(); + method @Deprecated public void resetCarrierPhaseUncertainty(); + method @Deprecated public void resetCodePhaseInChips(); + method @Deprecated public void resetCodePhaseUncertaintyInChips(); + method @Deprecated public void resetDopplerShiftInHz(); + method @Deprecated public void resetDopplerShiftUncertaintyInHz(); + method @Deprecated public void resetElevationInDeg(); + method @Deprecated public void resetElevationUncertaintyInDeg(); + method @Deprecated public void resetPseudorangeInMeters(); + method @Deprecated public void resetPseudorangeUncertaintyInMeters(); + method @Deprecated public void resetSnrInDb(); + method @Deprecated public void resetTimeFromLastBitInMs(); + method @Deprecated public void set(android.location.GpsMeasurement); + method @Deprecated public void setAccumulatedDeltaRangeInMeters(double); + method @Deprecated public void setAccumulatedDeltaRangeState(short); + method @Deprecated public void setAccumulatedDeltaRangeUncertaintyInMeters(double); + method @Deprecated public void setAzimuthInDeg(double); + method @Deprecated public void setAzimuthUncertaintyInDeg(double); + method @Deprecated public void setBitNumber(int); + method @Deprecated public void setCarrierCycles(long); + method @Deprecated public void setCarrierFrequencyInHz(float); + method @Deprecated public void setCarrierPhase(double); + method @Deprecated public void setCarrierPhaseUncertainty(double); + method @Deprecated public void setCn0InDbHz(double); + method @Deprecated public void setCodePhaseInChips(double); + method @Deprecated public void setCodePhaseUncertaintyInChips(double); + method @Deprecated public void setDopplerShiftInHz(double); + method @Deprecated public void setDopplerShiftUncertaintyInHz(double); + method @Deprecated public void setElevationInDeg(double); + method @Deprecated public void setElevationUncertaintyInDeg(double); + method @Deprecated public void setLossOfLock(byte); + method @Deprecated public void setMultipathIndicator(byte); + method @Deprecated public void setPrn(byte); + method @Deprecated public void setPseudorangeInMeters(double); + method @Deprecated public void setPseudorangeRateInMetersPerSec(double); + method @Deprecated public void setPseudorangeRateUncertaintyInMetersPerSec(double); + method @Deprecated public void setPseudorangeUncertaintyInMeters(double); + method @Deprecated public void setReceivedGpsTowInNs(long); + method @Deprecated public void setReceivedGpsTowUncertaintyInNs(long); + method @Deprecated public void setSnrInDb(double); + method @Deprecated public void setState(short); + method @Deprecated public void setTimeFromLastBitInMs(short); + method @Deprecated public void setTimeOffsetInNs(double); + method @Deprecated public void setUsedInFix(boolean); + method @Deprecated public void writeToParcel(android.os.Parcel, int); + field @Deprecated public static final short ADR_STATE_CYCLE_SLIP = 4; // 0x4 + field @Deprecated public static final short ADR_STATE_RESET = 2; // 0x2 + field @Deprecated public static final short ADR_STATE_UNKNOWN = 0; // 0x0 + field @Deprecated public static final short ADR_STATE_VALID = 1; // 0x1 + field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.location.GpsMeasurement> CREATOR; + field @Deprecated public static final byte LOSS_OF_LOCK_CYCLE_SLIP = 2; // 0x2 + field @Deprecated public static final byte LOSS_OF_LOCK_OK = 1; // 0x1 + field @Deprecated public static final byte LOSS_OF_LOCK_UNKNOWN = 0; // 0x0 + field @Deprecated public static final byte MULTIPATH_INDICATOR_DETECTED = 1; // 0x1 + field @Deprecated public static final byte MULTIPATH_INDICATOR_NOT_USED = 2; // 0x2 + field @Deprecated public static final byte MULTIPATH_INDICATOR_UNKNOWN = 0; // 0x0 + field @Deprecated public static final short STATE_BIT_SYNC = 2; // 0x2 + field @Deprecated public static final short STATE_CODE_LOCK = 1; // 0x1 + field @Deprecated public static final short STATE_MSEC_AMBIGUOUS = 16; // 0x10 + field @Deprecated public static final short STATE_SUBFRAME_SYNC = 4; // 0x4 + field @Deprecated public static final short STATE_TOW_DECODED = 8; // 0x8 + field @Deprecated public static final short STATE_UNKNOWN = 0; // 0x0 + } + + @Deprecated public class GpsMeasurementsEvent implements android.os.Parcelable { + ctor @Deprecated public GpsMeasurementsEvent(android.location.GpsClock, android.location.GpsMeasurement[]); + method @Deprecated public int describeContents(); + method @Deprecated @NonNull public android.location.GpsClock getClock(); + method @Deprecated @NonNull public java.util.Collection<android.location.GpsMeasurement> getMeasurements(); + method @Deprecated public void writeToParcel(android.os.Parcel, int); + field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.location.GpsMeasurementsEvent> CREATOR; + field @Deprecated public static final int STATUS_GPS_LOCATION_DISABLED = 2; // 0x2 + field @Deprecated public static final int STATUS_NOT_SUPPORTED = 0; // 0x0 + field @Deprecated public static final int STATUS_READY = 1; // 0x1 } - public static interface GpsNavigationMessageEvent.Listener { - method public void onGpsNavigationMessageReceived(android.location.GpsNavigationMessageEvent); - method public void onStatusChanged(int); + @Deprecated public static interface GpsMeasurementsEvent.Listener { + method @Deprecated public void onGpsMeasurementsReceived(android.location.GpsMeasurementsEvent); + method @Deprecated public void onStatusChanged(int); + } + + @Deprecated public class GpsNavigationMessage implements android.os.Parcelable { + method @Deprecated public int describeContents(); + method @Deprecated @NonNull public byte[] getData(); + method @Deprecated public short getMessageId(); + method @Deprecated public byte getPrn(); + method @Deprecated public short getStatus(); + method @Deprecated public short getSubmessageId(); + method @Deprecated public byte getType(); + method @Deprecated public void reset(); + method @Deprecated public void set(android.location.GpsNavigationMessage); + method @Deprecated public void setData(byte[]); + method @Deprecated public void setMessageId(short); + method @Deprecated public void setPrn(byte); + method @Deprecated public void setStatus(short); + method @Deprecated public void setSubmessageId(short); + method @Deprecated public void setType(byte); + method @Deprecated public void writeToParcel(android.os.Parcel, int); + field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.location.GpsNavigationMessage> CREATOR; + field @Deprecated public static final short STATUS_PARITY_PASSED = 1; // 0x1 + field @Deprecated public static final short STATUS_PARITY_REBUILT = 2; // 0x2 + field @Deprecated public static final short STATUS_UNKNOWN = 0; // 0x0 + field @Deprecated public static final byte TYPE_CNAV2 = 4; // 0x4 + field @Deprecated public static final byte TYPE_L1CA = 1; // 0x1 + field @Deprecated public static final byte TYPE_L2CNAV = 2; // 0x2 + field @Deprecated public static final byte TYPE_L5CNAV = 3; // 0x3 + field @Deprecated public static final byte TYPE_UNKNOWN = 0; // 0x0 + } + + @Deprecated public class GpsNavigationMessageEvent implements android.os.Parcelable { + ctor @Deprecated public GpsNavigationMessageEvent(android.location.GpsNavigationMessage); + method @Deprecated public int describeContents(); + method @Deprecated @NonNull public android.location.GpsNavigationMessage getNavigationMessage(); + method @Deprecated public void writeToParcel(android.os.Parcel, int); + field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.location.GpsNavigationMessageEvent> CREATOR; + field @Deprecated public static int STATUS_GPS_LOCATION_DISABLED; + field @Deprecated public static int STATUS_NOT_SUPPORTED; + field @Deprecated public static int STATUS_READY; + } + + @Deprecated public static interface GpsNavigationMessageEvent.Listener { + method @Deprecated public void onGpsNavigationMessageReceived(android.location.GpsNavigationMessageEvent); + method @Deprecated public void onStatusChanged(int); } public class Location implements android.os.Parcelable { method public boolean isComplete(); method public void makeComplete(); method public void setIsFromMockProvider(boolean); + field @Deprecated public static final String EXTRA_NO_GPS_LOCATION = "noGPSLocation"; } public class LocationManager { method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void flushGnssBatch(); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void getCurrentLocation(@NonNull android.location.LocationRequest, @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.location.Location>); method @Nullable public String getExtraLocationControllerPackage(); method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public int getGnssBatchSize(); - method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public android.location.GnssCapabilities getGnssCapabilities(); method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public void injectGnssMeasurementCorrections(@NonNull android.location.GnssMeasurementCorrections); method public boolean isExtraLocationControllerPackageEnabled(); method public boolean isLocationEnabledForUser(@NonNull android.os.UserHandle); method public boolean isProviderEnabledForUser(@NonNull String, @NonNull android.os.UserHandle); - method public boolean isProviderPackage(@NonNull String); + method @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public boolean isProviderPackage(@NonNull String); method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public boolean registerGnssBatchedLocationCallback(long, boolean, @NonNull android.location.BatchedLocationCallback, @Nullable android.os.Handler); - method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@NonNull android.location.LocationRequest, @NonNull android.location.LocationListener, @Nullable android.os.Looper); - method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@NonNull android.location.LocationRequest, @NonNull android.app.PendingIntent); + method @RequiresPermission(allOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.LOCATION_HARDWARE}) public boolean registerGnssMeasurementsCallback(@NonNull android.location.GnssRequest, @NonNull java.util.concurrent.Executor, @NonNull android.location.GnssMeasurementsEvent.Callback); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@Nullable android.location.LocationRequest, @NonNull android.location.LocationListener, @Nullable android.os.Looper); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@Nullable android.location.LocationRequest, @NonNull java.util.concurrent.Executor, @NonNull android.location.LocationListener); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@Nullable android.location.LocationRequest, @NonNull android.app.PendingIntent); method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void setExtraLocationControllerPackage(@Nullable String); method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void setExtraLocationControllerPackageEnabled(boolean); method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public void setLocationEnabledForUser(boolean, @NonNull android.os.UserHandle); @@ -3410,7 +4082,8 @@ package android.location { method @NonNull public static android.location.LocationRequest createFromDeprecatedCriteria(@NonNull android.location.Criteria, long, float, boolean); method @NonNull public static android.location.LocationRequest createFromDeprecatedProvider(@NonNull String, long, float, boolean); method public int describeContents(); - method public long getExpireAt(); + method @Deprecated public long getExpireAt(); + method public long getExpireIn(); method public long getFastestInterval(); method public boolean getHideFromAppOps(); method public long getInterval(); @@ -3421,12 +4094,12 @@ package android.location { method @Nullable public android.os.WorkSource getWorkSource(); method public boolean isLocationSettingsIgnored(); method public boolean isLowPowerMode(); - method @NonNull public android.location.LocationRequest setExpireAt(long); + method @Deprecated @NonNull public android.location.LocationRequest setExpireAt(long); method @NonNull public android.location.LocationRequest setExpireIn(long); method @NonNull public android.location.LocationRequest setFastestInterval(long); method public void setHideFromAppOps(boolean); method @NonNull public android.location.LocationRequest setInterval(long); - method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) @NonNull public android.location.LocationRequest setLocationSettingsIgnored(boolean); + method @NonNull @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public android.location.LocationRequest setLocationSettingsIgnored(boolean); method @NonNull public android.location.LocationRequest setLowPowerMode(boolean); method @NonNull public android.location.LocationRequest setNumUpdates(int); method @NonNull public android.location.LocationRequest setProvider(@NonNull String); @@ -3451,16 +4124,41 @@ package android.media { method public int getAllFlags(); method public android.os.Bundle getBundle(); method public int getCapturePreset(); + method public int getSystemUsage(); + method public static boolean isSystemUsage(int); field public static final int FLAG_BEACON = 8; // 0x8 field public static final int FLAG_BYPASS_INTERRUPTION_POLICY = 64; // 0x40 field public static final int FLAG_BYPASS_MUTE = 128; // 0x80 field public static final int FLAG_HW_HOTWORD = 32; // 0x20 + field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int USAGE_ANNOUNCEMENT = 1003; // 0x3eb + field @RequiresPermission(allOf={android.Manifest.permission.MODIFY_PHONE_STATE, android.Manifest.permission.MODIFY_AUDIO_ROUTING}) public static final int USAGE_CALL_ASSISTANT = 17; // 0x11 + field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int USAGE_EMERGENCY = 1000; // 0x3e8 + field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int USAGE_SAFETY = 1001; // 0x3e9 + field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int USAGE_VEHICLE_STATUS = 1002; // 0x3ea } public static class AudioAttributes.Builder { method public android.media.AudioAttributes.Builder addBundle(@NonNull android.os.Bundle); method public android.media.AudioAttributes.Builder setCapturePreset(int); method public android.media.AudioAttributes.Builder setInternalCapturePreset(int); + method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public android.media.AudioAttributes.Builder setSystemUsage(int); + } + + public final class AudioDeviceAttributes implements android.os.Parcelable { + ctor public AudioDeviceAttributes(@NonNull android.media.AudioDeviceInfo); + ctor public AudioDeviceAttributes(int, int, @NonNull String); + method public int describeContents(); + method @NonNull public String getAddress(); + method public int getRole(); + method public int getType(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.media.AudioDeviceAttributes> CREATOR; + field public static final int ROLE_INPUT = 1; // 0x1 + field public static final int ROLE_OUTPUT = 2; // 0x2 + } + + public final class AudioDeviceInfo { + field public static final int TYPE_REMOTE_SUBMIX = 25; // 0x19 } public final class AudioFocusInfo implements android.os.Parcelable { @@ -3486,22 +4184,33 @@ package android.media { public class AudioManager { method @Deprecated public int abandonAudioFocus(android.media.AudioManager.OnAudioFocusChangeListener, android.media.AudioAttributes); + method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void addOnPreferredDeviceForStrategyChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.OnPreferredDeviceForStrategyChangedListener) throws java.lang.SecurityException; method public void clearAudioServerStateCallback(); method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int dispatchAudioFocusChange(@NonNull android.media.AudioFocusInfo, int, @NonNull android.media.audiopolicy.AudioPolicy); + method @IntRange(from=0) public long getAdditionalOutputDeviceDelay(@NonNull android.media.AudioDeviceInfo); method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static java.util.List<android.media.audiopolicy.AudioProductStrategy> getAudioProductStrategies(); method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static java.util.List<android.media.audiopolicy.AudioVolumeGroup> getAudioVolumeGroups(); + method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public java.util.List<android.media.AudioDeviceAttributes> getDevicesForAttributes(@NonNull android.media.AudioAttributes); + method @IntRange(from=0) public long getMaxAdditionalOutputDeviceDelay(@NonNull android.media.AudioDeviceInfo); method @IntRange(from=0) @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getMaxVolumeIndexForAttributes(@NonNull android.media.AudioAttributes); method @IntRange(from=0) @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getMinVolumeIndexForAttributes(@NonNull android.media.AudioAttributes); + method @Nullable @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public android.media.AudioDeviceAttributes getPreferredDeviceForStrategy(@NonNull android.media.audiopolicy.AudioProductStrategy); + method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int[] getSupportedSystemUsages(); method @IntRange(from=0) @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getVolumeIndexForAttributes(@NonNull android.media.AudioAttributes); method public boolean isAudioServerRunning(); method public boolean isHdmiSystemAudioSupported(); method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int registerAudioPolicy(@NonNull android.media.audiopolicy.AudioPolicy); method public void registerVolumeGroupCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.VolumeGroupCallback); + method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void removeOnPreferredDeviceForStrategyChangedListener(@NonNull android.media.AudioManager.OnPreferredDeviceForStrategyChangedListener); + method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean removePreferredDeviceForStrategy(@NonNull android.media.audiopolicy.AudioProductStrategy); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int requestAudioFocus(android.media.AudioManager.OnAudioFocusChangeListener, @NonNull android.media.AudioAttributes, int, int) throws java.lang.IllegalArgumentException; method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.MODIFY_PHONE_STATE, android.Manifest.permission.MODIFY_AUDIO_ROUTING}) public int requestAudioFocus(android.media.AudioManager.OnAudioFocusChangeListener, @NonNull android.media.AudioAttributes, int, int, android.media.audiopolicy.AudioPolicy) throws java.lang.IllegalArgumentException; method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int requestAudioFocus(@NonNull android.media.AudioFocusRequest, @Nullable android.media.audiopolicy.AudioPolicy); + method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean setAdditionalOutputDeviceDelay(@NonNull android.media.AudioDeviceInfo, @IntRange(from=0) long); method public void setAudioServerStateCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.AudioServerStateCallback); method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void setFocusRequestResult(@NonNull android.media.AudioFocusInfo, int, @NonNull android.media.audiopolicy.AudioPolicy); + method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean setPreferredDeviceForStrategy(@NonNull android.media.audiopolicy.AudioProductStrategy, @NonNull android.media.AudioDeviceAttributes); + method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void setSupportedSystemUsages(@NonNull int[]); method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void setVolumeIndexForAttributes(@NonNull android.media.AudioAttributes, int, int); method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void unregisterAudioPolicy(@NonNull android.media.audiopolicy.AudioPolicy); method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void unregisterAudioPolicyAsync(@NonNull android.media.audiopolicy.AudioPolicy); @@ -3509,6 +4218,7 @@ package android.media { field public static final int AUDIOFOCUS_FLAG_DELAY_OK = 1; // 0x1 field public static final int AUDIOFOCUS_FLAG_LOCK = 4; // 0x4 field public static final int AUDIOFOCUS_FLAG_PAUSES_ON_DUCKABLE_LOSS = 2; // 0x2 + field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int STREAM_ASSISTANT = 11; // 0xb field public static final int SUCCESS = 0; // 0x0 } @@ -3518,6 +4228,10 @@ package android.media { method public void onAudioServerUp(); } + public static interface AudioManager.OnPreferredDeviceForStrategyChangedListener { + method public void onPreferredDeviceForStrategyChanged(@NonNull android.media.audiopolicy.AudioProductStrategy, @Nullable android.media.AudioDeviceAttributes); + } + public abstract static class AudioManager.VolumeGroupCallback { ctor public AudioManager.VolumeGroupCallback(); method public void onAudioVolumeGroupChanged(int, int); @@ -3530,6 +4244,7 @@ package android.media { method public android.media.PlayerProxy getPlayerProxy(); method public int getPlayerState(); method public int getPlayerType(); + method public boolean isActive(); field public static final int PLAYER_STATE_IDLE = 1; // 0x1 field public static final int PLAYER_STATE_PAUSED = 3; // 0x3 field public static final int PLAYER_STATE_RELEASED = 0; // 0x0 @@ -3553,6 +4268,24 @@ package android.media { method public android.media.AudioRecord.Builder setSessionId(int) throws java.lang.IllegalArgumentException; } + public final class AudioRecordingConfiguration implements android.os.Parcelable { + method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getClientUid(); + } + + public class AudioTrack implements android.media.AudioRouting android.media.VolumeAutomation { + field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int ENCAPSULATION_MODE_HANDLE = 2; // 0x2 + } + + public static class AudioTrack.Builder { + method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public android.media.AudioTrack.Builder setTunerConfiguration(@NonNull android.media.AudioTrack.TunerConfiguration); + } + + public static class AudioTrack.TunerConfiguration { + ctor @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public AudioTrack.TunerConfiguration(@IntRange(from=1) int, @IntRange(from=1) int); + method @IntRange(from=1) @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getContentId(); + method @IntRange(from=1) @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getSyncId(); + } + public class HwAudioSource { method public boolean isPlaying(); method public void start(); @@ -3569,7 +4302,7 @@ package android.media { public final class MediaRecorder.AudioSource { field @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_OUTPUT) public static final int ECHO_REFERENCE = 1997; // 0x7cd field @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_HOTWORD) public static final int HOTWORD = 1999; // 0x7cf - field public static final int RADIO_TUNER = 1998; // 0x7ce + field @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_OUTPUT) public static final int RADIO_TUNER = 1998; // 0x7ce } public class PlayerProxy { @@ -3581,6 +4314,19 @@ package android.media { method public void stop(); } + public class RingtoneManager { + method @RequiresPermission(android.Manifest.permission.WRITE_SETTINGS) public static void ensureDefaultRingtones(@NonNull android.content.Context); + } + +} + +package android.media.audiofx { + + public class AudioEffect { + ctor @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public AudioEffect(@NonNull java.util.UUID, @NonNull android.media.AudioDeviceAttributes); + method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public static boolean isEffectSupportedForDevice(@NonNull java.util.UUID, @NonNull android.media.AudioDeviceAttributes); + } + } package android.media.audiopolicy { @@ -3606,6 +4352,7 @@ package android.media.audiopolicy { field public static final int RULE_MATCH_ATTRIBUTE_CAPTURE_PRESET = 2; // 0x2 field public static final int RULE_MATCH_ATTRIBUTE_USAGE = 1; // 0x1 field public static final int RULE_MATCH_UID = 4; // 0x4 + field public static final int RULE_MATCH_USERID = 8; // 0x8 } public static class AudioMixingRule.Builder { @@ -3626,9 +4373,11 @@ package android.media.audiopolicy { method public int getFocusDuckingBehavior(); method public int getStatus(); method public boolean removeUidDeviceAffinity(int); + method public boolean removeUserIdDeviceAffinity(int); method public int setFocusDuckingBehavior(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException; method public void setRegistration(String); method public boolean setUidDeviceAffinity(int, @NonNull java.util.List<android.media.AudioDeviceInfo>); + method public boolean setUserIdDeviceAffinity(int, @NonNull java.util.List<android.media.AudioDeviceInfo>); method public String toLogFriendlyString(); field public static final int FOCUS_POLICY_DUCKING_DEFAULT = 0; // 0x0 field public static final int FOCUS_POLICY_DUCKING_IN_APP = 0; // 0x0 @@ -3668,9 +4417,11 @@ package android.media.audiopolicy { } public final class AudioProductStrategy implements android.os.Parcelable { + method @NonNull public static android.media.audiopolicy.AudioProductStrategy createInvalidAudioProductStrategy(int); method public int describeContents(); method @NonNull public android.media.AudioAttributes getAudioAttributes(); method public int getId(); + method public boolean supportsAudioAttributes(@NonNull android.media.AudioAttributes); method public void writeToParcel(@NonNull android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.media.audiopolicy.AudioProductStrategy> CREATOR; } @@ -3691,10 +4442,22 @@ package android.media.audiopolicy { package android.media.session { public final class MediaSessionManager { + method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void addOnMediaKeyEventDispatchedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.session.MediaSessionManager.OnMediaKeyEventDispatchedListener); + method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void addOnMediaKeyEventSessionChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.session.MediaSessionManager.OnMediaKeyEventSessionChangedListener); + method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void removeOnMediaKeyEventDispatchedListener(@NonNull android.media.session.MediaSessionManager.OnMediaKeyEventDispatchedListener); + method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void removeOnMediaKeyEventSessionChangedListener(@NonNull android.media.session.MediaSessionManager.OnMediaKeyEventSessionChangedListener); method @RequiresPermission(android.Manifest.permission.SET_MEDIA_KEY_LISTENER) public void setOnMediaKeyListener(android.media.session.MediaSessionManager.OnMediaKeyListener, @Nullable android.os.Handler); method @RequiresPermission(android.Manifest.permission.SET_VOLUME_KEY_LONG_PRESS_LISTENER) public void setOnVolumeKeyLongPressListener(android.media.session.MediaSessionManager.OnVolumeKeyLongPressListener, @Nullable android.os.Handler); } + public static interface MediaSessionManager.OnMediaKeyEventDispatchedListener { + method public void onMediaKeyEventDispatched(@NonNull android.view.KeyEvent, @NonNull String, @Nullable android.media.session.MediaSession.Token); + } + + public static interface MediaSessionManager.OnMediaKeyEventSessionChangedListener { + method public void onMediaKeyEventSessionChanged(@NonNull String, @Nullable android.media.session.MediaSession.Token); + } + public static interface MediaSessionManager.OnMediaKeyListener { method public boolean onMediaKey(android.view.KeyEvent); } @@ -3722,6 +4485,8 @@ package android.media.soundtrigger { method @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public boolean stopRecognition(); field public static final int RECOGNITION_FLAG_ALLOW_MULTIPLE_TRIGGERS = 2; // 0x2 field public static final int RECOGNITION_FLAG_CAPTURE_TRIGGER_AUDIO = 1; // 0x1 + field public static final int RECOGNITION_FLAG_ENABLE_AUDIO_ECHO_CANCELLATION = 4; // 0x4 + field public static final int RECOGNITION_FLAG_ENABLE_AUDIO_NOISE_SUPPRESSION = 8; // 0x8 } public abstract static class SoundTriggerDetector.Callback { @@ -3742,21 +4507,36 @@ package android.media.soundtrigger { method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public android.media.soundtrigger.SoundTriggerDetector createSoundTriggerDetector(java.util.UUID, @NonNull android.media.soundtrigger.SoundTriggerDetector.Callback, @Nullable android.os.Handler); method @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public void deleteModel(java.util.UUID); method public int getDetectionServiceOperationsTimeout(); - method @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public android.media.soundtrigger.SoundTriggerManager.Model getModel(java.util.UUID); + method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public android.media.soundtrigger.SoundTriggerManager.Model getModel(java.util.UUID); + method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public android.hardware.soundtrigger.SoundTrigger.ModuleProperties getModuleProperties(); + method @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public int getParameter(@NonNull java.util.UUID, int); + method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public android.hardware.soundtrigger.SoundTrigger.ModelParamRange queryParameter(@Nullable java.util.UUID, int); + method @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public int setParameter(@Nullable java.util.UUID, int, int); method @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public void updateModel(android.media.soundtrigger.SoundTriggerManager.Model); } public static class SoundTriggerManager.Model { - method public static android.media.soundtrigger.SoundTriggerManager.Model create(java.util.UUID, java.util.UUID, byte[]); - method public byte[] getModelData(); - method public java.util.UUID getModelUuid(); - method public java.util.UUID getVendorUuid(); + method @NonNull public static android.media.soundtrigger.SoundTriggerManager.Model create(@NonNull java.util.UUID, @NonNull java.util.UUID, @Nullable byte[], int); + method @NonNull public static android.media.soundtrigger.SoundTriggerManager.Model create(@NonNull java.util.UUID, @NonNull java.util.UUID, @Nullable byte[]); + method @Nullable public byte[] getModelData(); + method @NonNull public java.util.UUID getModelUuid(); + method @NonNull public java.util.UUID getVendorUuid(); + method public int getVersion(); } } package android.media.tv { + public final class DvbDeviceInfo implements android.os.Parcelable { + ctor public DvbDeviceInfo(int, int); + method public int describeContents(); + method @IntRange(from=0) public int getAdapterId(); + method @IntRange(from=0) public int getDeviceId(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.media.tv.DvbDeviceInfo> CREATOR; + } + public final class TvContentRatingSystemInfo implements android.os.Parcelable { method public static android.media.tv.TvContentRatingSystemInfo createTvContentRatingSystemInfo(int, android.content.pm.ApplicationInfo); method public int describeContents(); @@ -3867,16 +4647,19 @@ package android.media.tv { } public final class TvInputManager { - method @RequiresPermission(android.Manifest.permission.TV_INPUT_HARDWARE) public android.media.tv.TvInputManager.Hardware acquireTvInputHardware(int, android.media.tv.TvInputInfo, android.media.tv.TvInputManager.HardwareCallback); + method @RequiresPermission(android.Manifest.permission.TV_INPUT_HARDWARE) public android.media.tv.TvInputManager.Hardware acquireTvInputHardware(int, @NonNull android.media.tv.TvInputInfo, @NonNull android.media.tv.TvInputManager.HardwareCallback); + method @Nullable @RequiresPermission(android.Manifest.permission.TV_INPUT_HARDWARE) public android.media.tv.TvInputManager.Hardware acquireTvInputHardware(int, @NonNull android.media.tv.TvInputInfo, @Nullable String, int, @NonNull java.util.concurrent.Executor, @NonNull android.media.tv.TvInputManager.HardwareCallback); method @RequiresPermission(android.Manifest.permission.MODIFY_PARENTAL_CONTROLS) public void addBlockedRating(@NonNull android.media.tv.TvContentRating); method @RequiresPermission(android.Manifest.permission.CAPTURE_TV_INPUT) public boolean captureFrame(String, android.view.Surface, android.media.tv.TvStreamConfig); method @RequiresPermission(android.Manifest.permission.CAPTURE_TV_INPUT) public java.util.List<android.media.tv.TvStreamConfig> getAvailableTvStreamConfigList(String); + method @NonNull @RequiresPermission("android.permission.DVB_DEVICE") public java.util.List<android.media.tv.DvbDeviceInfo> getDvbDeviceList(); method @RequiresPermission(android.Manifest.permission.TV_INPUT_HARDWARE) public java.util.List<android.media.tv.TvInputHardwareInfo> getHardwareList(); method @RequiresPermission(android.Manifest.permission.READ_CONTENT_RATING_SYSTEMS) public java.util.List<android.media.tv.TvContentRatingSystemInfo> getTvContentRatingSystemList(); method @RequiresPermission(android.Manifest.permission.CAPTURE_TV_INPUT) public boolean isSingleSessionActive(); method @RequiresPermission(android.Manifest.permission.NOTIFY_TV_INPUTS) public void notifyPreviewProgramAddedToWatchNext(String, long, long); method @RequiresPermission(android.Manifest.permission.NOTIFY_TV_INPUTS) public void notifyPreviewProgramBrowsableDisabled(String, long); method @RequiresPermission(android.Manifest.permission.NOTIFY_TV_INPUTS) public void notifyWatchNextProgramBrowsableDisabled(String, long); + method @Nullable @RequiresPermission("android.permission.DVB_DEVICE") public android.os.ParcelFileDescriptor openDvbDevice(@NonNull android.media.tv.DvbDeviceInfo, int); method @RequiresPermission(android.Manifest.permission.TV_INPUT_HARDWARE) public void releaseTvInputHardware(int, android.media.tv.TvInputManager.Hardware); method @RequiresPermission(android.Manifest.permission.MODIFY_PARENTAL_CONTROLS) public void removeBlockedRating(@NonNull android.media.tv.TvContentRating); method @RequiresPermission(android.Manifest.permission.MODIFY_PARENTAL_CONTROLS) public void setParentalControlsEnabled(boolean); @@ -3899,6 +4682,7 @@ package android.media.tv { method @Nullable public String onHardwareRemoved(android.media.tv.TvInputHardwareInfo); method @Nullable public android.media.tv.TvInputInfo onHdmiDeviceAdded(android.hardware.hdmi.HdmiDeviceInfo); method @Nullable public String onHdmiDeviceRemoved(android.hardware.hdmi.HdmiDeviceInfo); + method public void onHdmiDeviceUpdated(@NonNull android.hardware.hdmi.HdmiDeviceInfo); } public abstract static class TvInputService.RecordingSession { @@ -3948,6 +4732,1198 @@ package android.media.tv { } +package android.media.tv.tuner { + + public class DemuxCapabilities { + method public int getAudioFilterCount(); + method public int getDemuxCount(); + method public int getFilterCapabilities(); + method @NonNull @Size(5) public int[] getLinkCapabilities(); + method public int getPcrFilterCount(); + method public int getPesFilterCount(); + method public int getPlaybackCount(); + method public int getRecordCount(); + method public int getSectionFilterCount(); + method public long getSectionFilterLength(); + method public int getTsFilterCount(); + method public int getVideoFilterCount(); + method public boolean isTimeFilterSupported(); + } + + public class Descrambler implements java.lang.AutoCloseable { + method public int addPid(int, int, @Nullable android.media.tv.tuner.filter.Filter); + method public void close(); + method public int removePid(int, int, @Nullable android.media.tv.tuner.filter.Filter); + method public int setKeyToken(@NonNull byte[]); + field public static final int PID_TYPE_MMTP = 2; // 0x2 + field public static final int PID_TYPE_T = 1; // 0x1 + } + + public class Lnb implements java.lang.AutoCloseable { + method public void close(); + method public int sendDiseqcMessage(@NonNull byte[]); + method public int setSatellitePosition(int); + method public int setTone(int); + method public int setVoltage(int); + field public static final int EVENT_TYPE_DISEQC_RX_OVERFLOW = 0; // 0x0 + field public static final int EVENT_TYPE_DISEQC_RX_PARITY_ERROR = 2; // 0x2 + field public static final int EVENT_TYPE_DISEQC_RX_TIMEOUT = 1; // 0x1 + field public static final int EVENT_TYPE_LNB_OVERLOAD = 3; // 0x3 + field public static final int POSITION_A = 1; // 0x1 + field public static final int POSITION_B = 2; // 0x2 + field public static final int POSITION_UNDEFINED = 0; // 0x0 + field public static final int TONE_CONTINUOUS = 1; // 0x1 + field public static final int TONE_NONE = 0; // 0x0 + field public static final int VOLTAGE_11V = 2; // 0x2 + field public static final int VOLTAGE_12V = 3; // 0x3 + field public static final int VOLTAGE_13V = 4; // 0x4 + field public static final int VOLTAGE_14V = 5; // 0x5 + field public static final int VOLTAGE_15V = 6; // 0x6 + field public static final int VOLTAGE_18V = 7; // 0x7 + field public static final int VOLTAGE_19V = 8; // 0x8 + field public static final int VOLTAGE_5V = 1; // 0x1 + field public static final int VOLTAGE_NONE = 0; // 0x0 + } + + public interface LnbCallback { + method public void onDiseqcMessage(@NonNull byte[]); + method public void onEvent(int); + } + + public class Tuner implements java.lang.AutoCloseable { + ctor @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public Tuner(@NonNull android.content.Context, @Nullable String, int); + method public int cancelScanning(); + method public int cancelTuning(); + method public void clearOnTuneEventListener(); + method public void clearResourceLostListener(); + method public void close(); + method public int connectCiCam(int); + method public int disconnectCiCam(); + method public int getAvSyncHwId(@NonNull android.media.tv.tuner.filter.Filter); + method public long getAvSyncTime(int); + method @Nullable public android.media.tv.tuner.DemuxCapabilities getDemuxCapabilities(); + method @Nullable public android.media.tv.tuner.frontend.FrontendInfo getFrontendInfo(); + method @Nullable public android.media.tv.tuner.frontend.FrontendStatus getFrontendStatus(@NonNull int[]); + method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_DESCRAMBLER) public android.media.tv.tuner.Descrambler openDescrambler(); + method @Nullable public android.media.tv.tuner.dvr.DvrPlayback openDvrPlayback(long, @NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.dvr.OnPlaybackStatusChangedListener); + method @Nullable public android.media.tv.tuner.dvr.DvrRecorder openDvrRecorder(long, @NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.dvr.OnRecordStatusChangedListener); + method @Nullable public android.media.tv.tuner.filter.Filter openFilter(int, int, long, @Nullable java.util.concurrent.Executor, @Nullable android.media.tv.tuner.filter.FilterCallback); + method @Nullable public android.media.tv.tuner.Lnb openLnb(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.LnbCallback); + method @Nullable public android.media.tv.tuner.Lnb openLnbByName(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.LnbCallback); + method @Nullable public android.media.tv.tuner.filter.TimeFilter openTimeFilter(); + method public int scan(@NonNull android.media.tv.tuner.frontend.FrontendSettings, int, @NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.frontend.ScanCallback); + method public int setLnaEnabled(boolean); + method public void setOnTuneEventListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.frontend.OnTuneEventListener); + method public void setResourceLostListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.Tuner.OnResourceLostListener); + method public void shareFrontendFromTuner(@NonNull android.media.tv.tuner.Tuner); + method public int tune(@NonNull android.media.tv.tuner.frontend.FrontendSettings); + method public void updateResourcePriority(int, int); + field public static final int INVALID_AV_SYNC_ID = -1; // 0xffffffff + field public static final int INVALID_FILTER_ID = -1; // 0xffffffff + field public static final int INVALID_STREAM_ID = 65535; // 0xffff + field public static final long INVALID_TIMESTAMP = -1L; // 0xffffffffffffffffL + field public static final int INVALID_TS_PID = 65535; // 0xffff + field public static final int RESULT_INVALID_ARGUMENT = 4; // 0x4 + field public static final int RESULT_INVALID_STATE = 3; // 0x3 + field public static final int RESULT_NOT_INITIALIZED = 2; // 0x2 + field public static final int RESULT_OUT_OF_MEMORY = 5; // 0x5 + field public static final int RESULT_SUCCESS = 0; // 0x0 + field public static final int RESULT_UNAVAILABLE = 1; // 0x1 + field public static final int RESULT_UNKNOWN_ERROR = 6; // 0x6 + field public static final int SCAN_TYPE_AUTO = 1; // 0x1 + field public static final int SCAN_TYPE_BLIND = 2; // 0x2 + field public static final int SCAN_TYPE_UNDEFINED = 0; // 0x0 + } + + public static interface Tuner.OnResourceLostListener { + method public void onResourceLost(@NonNull android.media.tv.tuner.Tuner); + } + +} + +package android.media.tv.tuner.dvr { + + public class DvrPlayback implements java.lang.AutoCloseable { + method public int attachFilter(@NonNull android.media.tv.tuner.filter.Filter); + method public void close(); + method public int configure(@NonNull android.media.tv.tuner.dvr.DvrSettings); + method public int detachFilter(@NonNull android.media.tv.tuner.filter.Filter); + method public int flush(); + method public long read(long); + method public long read(@NonNull byte[], long, long); + method public void setFileDescriptor(@NonNull android.os.ParcelFileDescriptor); + method public int start(); + method public int stop(); + field public static final int PLAYBACK_STATUS_ALMOST_EMPTY = 2; // 0x2 + field public static final int PLAYBACK_STATUS_ALMOST_FULL = 4; // 0x4 + field public static final int PLAYBACK_STATUS_EMPTY = 1; // 0x1 + field public static final int PLAYBACK_STATUS_FULL = 8; // 0x8 + } + + public class DvrRecorder implements java.lang.AutoCloseable { + method public int attachFilter(@NonNull android.media.tv.tuner.filter.Filter); + method public void close(); + method public int configure(@NonNull android.media.tv.tuner.dvr.DvrSettings); + method public int detachFilter(@NonNull android.media.tv.tuner.filter.Filter); + method public int flush(); + method public void setFileDescriptor(@NonNull android.os.ParcelFileDescriptor); + method public int start(); + method public int stop(); + method public long write(long); + method public long write(@NonNull byte[], long, long); + } + + public class DvrSettings { + method @NonNull public static android.media.tv.tuner.dvr.DvrSettings.Builder builder(); + method public int getDataFormat(); + method public long getHighThreshold(); + method public long getLowThreshold(); + method public long getPacketSize(); + method public int getStatusMask(); + field public static final int DATA_FORMAT_ES = 2; // 0x2 + field public static final int DATA_FORMAT_PES = 1; // 0x1 + field public static final int DATA_FORMAT_SHV_TLV = 3; // 0x3 + field public static final int DATA_FORMAT_TS = 0; // 0x0 + } + + public static final class DvrSettings.Builder { + ctor public DvrSettings.Builder(); + method @NonNull public android.media.tv.tuner.dvr.DvrSettings build(); + method @NonNull public android.media.tv.tuner.dvr.DvrSettings.Builder setDataFormat(int); + method @NonNull public android.media.tv.tuner.dvr.DvrSettings.Builder setHighThreshold(long); + method @NonNull public android.media.tv.tuner.dvr.DvrSettings.Builder setLowThreshold(long); + method @NonNull public android.media.tv.tuner.dvr.DvrSettings.Builder setPacketSize(long); + method @NonNull public android.media.tv.tuner.dvr.DvrSettings.Builder setStatusMask(int); + } + + public interface OnPlaybackStatusChangedListener { + method public void onPlaybackStatusChanged(int); + } + + public interface OnRecordStatusChangedListener { + method public void onRecordStatusChanged(int); + } + +} + +package android.media.tv.tuner.filter { + + public final class AlpFilterConfiguration extends android.media.tv.tuner.filter.FilterConfiguration { + method @NonNull public static android.media.tv.tuner.filter.AlpFilterConfiguration.Builder builder(); + method public int getLengthType(); + method public int getPacketType(); + method public int getType(); + field public static final int LENGTH_TYPE_UNDEFINED = 0; // 0x0 + field public static final int LENGTH_TYPE_WITHOUT_ADDITIONAL_HEADER = 1; // 0x1 + field public static final int LENGTH_TYPE_WITH_ADDITIONAL_HEADER = 2; // 0x2 + field public static final int PACKET_TYPE_COMPRESSED = 2; // 0x2 + field public static final int PACKET_TYPE_EXTENSION = 6; // 0x6 + field public static final int PACKET_TYPE_IPV4 = 0; // 0x0 + field public static final int PACKET_TYPE_MPEG2_TS = 7; // 0x7 + field public static final int PACKET_TYPE_SIGNALING = 4; // 0x4 + } + + public static final class AlpFilterConfiguration.Builder { + method @NonNull public android.media.tv.tuner.filter.AlpFilterConfiguration build(); + method @NonNull public android.media.tv.tuner.filter.AlpFilterConfiguration.Builder setLengthType(int); + method @NonNull public android.media.tv.tuner.filter.AlpFilterConfiguration.Builder setPacketType(int); + method @NonNull public android.media.tv.tuner.filter.AlpFilterConfiguration.Builder setSettings(@Nullable android.media.tv.tuner.filter.Settings); + } + + public class AudioDescriptor { + method public byte getAdFade(); + method public byte getAdGainCenter(); + method public byte getAdGainFront(); + method public byte getAdGainSurround(); + method public byte getAdPan(); + method public char getAdVersionTextTag(); + } + + public class AvSettings extends android.media.tv.tuner.filter.Settings { + method @NonNull public static android.media.tv.tuner.filter.AvSettings.Builder builder(int, boolean); + method public boolean isPassthrough(); + } + + public static class AvSettings.Builder { + method @NonNull public android.media.tv.tuner.filter.AvSettings build(); + method @NonNull public android.media.tv.tuner.filter.AvSettings.Builder setPassthrough(boolean); + } + + public class DownloadEvent extends android.media.tv.tuner.filter.FilterEvent { + method public int getDataLength(); + method public int getItemFragmentIndex(); + method public int getItemId(); + method public int getLastItemFragmentIndex(); + method public int getMpuSequenceNumber(); + } + + public class DownloadSettings extends android.media.tv.tuner.filter.Settings { + method @NonNull public static android.media.tv.tuner.filter.DownloadSettings.Builder builder(int); + method public int getDownloadId(); + } + + public static class DownloadSettings.Builder { + method @NonNull public android.media.tv.tuner.filter.DownloadSettings build(); + method @NonNull public android.media.tv.tuner.filter.DownloadSettings.Builder setDownloadId(int); + } + + public class Filter implements java.lang.AutoCloseable { + method public void close(); + method public int configure(@NonNull android.media.tv.tuner.filter.FilterConfiguration); + method public int flush(); + method public int getId(); + method public int read(@NonNull byte[], long, long); + method public int setDataSource(@Nullable android.media.tv.tuner.filter.Filter); + method public int start(); + method public int stop(); + field public static final int STATUS_DATA_READY = 1; // 0x1 + field public static final int STATUS_HIGH_WATER = 4; // 0x4 + field public static final int STATUS_LOW_WATER = 2; // 0x2 + field public static final int STATUS_OVERFLOW = 8; // 0x8 + field public static final int SUBTYPE_AUDIO = 3; // 0x3 + field public static final int SUBTYPE_DOWNLOAD = 5; // 0x5 + field public static final int SUBTYPE_IP = 13; // 0xd + field public static final int SUBTYPE_IP_PAYLOAD = 12; // 0xc + field public static final int SUBTYPE_MMTP = 10; // 0xa + field public static final int SUBTYPE_NTP = 11; // 0xb + field public static final int SUBTYPE_PAYLOAD_THROUGH = 14; // 0xe + field public static final int SUBTYPE_PCR = 8; // 0x8 + field public static final int SUBTYPE_PES = 2; // 0x2 + field public static final int SUBTYPE_PTP = 16; // 0x10 + field public static final int SUBTYPE_RECORD = 6; // 0x6 + field public static final int SUBTYPE_SECTION = 1; // 0x1 + field public static final int SUBTYPE_TEMI = 9; // 0x9 + field public static final int SUBTYPE_TLV = 15; // 0xf + field public static final int SUBTYPE_TS = 7; // 0x7 + field public static final int SUBTYPE_UNDEFINED = 0; // 0x0 + field public static final int SUBTYPE_VIDEO = 4; // 0x4 + field public static final int TYPE_ALP = 16; // 0x10 + field public static final int TYPE_IP = 4; // 0x4 + field public static final int TYPE_MMTP = 2; // 0x2 + field public static final int TYPE_TLV = 8; // 0x8 + field public static final int TYPE_TS = 1; // 0x1 + field public static final int TYPE_UNDEFINED = 0; // 0x0 + } + + public interface FilterCallback { + method public void onFilterEvent(@NonNull android.media.tv.tuner.filter.Filter, @NonNull android.media.tv.tuner.filter.FilterEvent[]); + method public void onFilterStatusChanged(@NonNull android.media.tv.tuner.filter.Filter, int); + } + + public abstract class FilterConfiguration { + method @Nullable public android.media.tv.tuner.filter.Settings getSettings(); + method public abstract int getType(); + } + + public abstract class FilterEvent { + ctor public FilterEvent(); + } + + public final class IpFilterConfiguration extends android.media.tv.tuner.filter.FilterConfiguration { + method @NonNull public static android.media.tv.tuner.filter.IpFilterConfiguration.Builder builder(); + method @NonNull @Size(min=4, max=16) public byte[] getDstIpAddress(); + method public int getDstPort(); + method @NonNull @Size(min=4, max=16) public byte[] getSrcIpAddress(); + method public int getSrcPort(); + method public int getType(); + method public boolean isPassthrough(); + } + + public static final class IpFilterConfiguration.Builder { + method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration build(); + method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration.Builder setDstIpAddress(@NonNull byte[]); + method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration.Builder setDstPort(int); + method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration.Builder setPassthrough(boolean); + method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration.Builder setSettings(@Nullable android.media.tv.tuner.filter.Settings); + method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration.Builder setSrcIpAddress(@NonNull byte[]); + method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration.Builder setSrcPort(int); + } + + public class IpPayloadEvent extends android.media.tv.tuner.filter.FilterEvent { + method public int getDataLength(); + } + + public class MediaEvent extends android.media.tv.tuner.filter.FilterEvent { + method public long getAudioHandle(); + method public long getAvDataId(); + method public long getDataLength(); + method @Nullable public android.media.tv.tuner.filter.AudioDescriptor getExtraMetaData(); + method @Nullable public android.media.MediaCodec.LinearBlock getLinearBlock(); + method public int getMpuSequenceNumber(); + method public long getOffset(); + method public long getPts(); + method public int getStreamId(); + method public boolean isPrivateData(); + method public boolean isPtsPresent(); + method public boolean isSecureMemory(); + } + + public final class MmtpFilterConfiguration extends android.media.tv.tuner.filter.FilterConfiguration { + method @NonNull public static android.media.tv.tuner.filter.MmtpFilterConfiguration.Builder builder(); + method public int getMmtpPacketId(); + method public int getType(); + } + + public static final class MmtpFilterConfiguration.Builder { + method @NonNull public android.media.tv.tuner.filter.MmtpFilterConfiguration build(); + method @NonNull public android.media.tv.tuner.filter.MmtpFilterConfiguration.Builder setMmtpPacketId(int); + method @NonNull public android.media.tv.tuner.filter.MmtpFilterConfiguration.Builder setSettings(@Nullable android.media.tv.tuner.filter.Settings); + } + + public class MmtpRecordEvent extends android.media.tv.tuner.filter.FilterEvent { + method public long getDataLength(); + method public int getScHevcIndexMask(); + } + + public class PesEvent extends android.media.tv.tuner.filter.FilterEvent { + method public int getDataLength(); + method public int getMpuSequenceNumber(); + method public int getStreamId(); + } + + public class PesSettings extends android.media.tv.tuner.filter.Settings { + method @NonNull public static android.media.tv.tuner.filter.PesSettings.Builder builder(int); + method public int getStreamId(); + method public boolean isRaw(); + } + + public static class PesSettings.Builder { + method @NonNull public android.media.tv.tuner.filter.PesSettings build(); + method @NonNull public android.media.tv.tuner.filter.PesSettings.Builder setRaw(boolean); + method @NonNull public android.media.tv.tuner.filter.PesSettings.Builder setStreamId(int); + } + + public class RecordSettings extends android.media.tv.tuner.filter.Settings { + method @NonNull public static android.media.tv.tuner.filter.RecordSettings.Builder builder(int); + method public int getScIndexMask(); + method public int getScIndexType(); + method public int getTsIndexMask(); + field public static final int INDEX_TYPE_NONE = 0; // 0x0 + field public static final int INDEX_TYPE_SC = 1; // 0x1 + field public static final int INDEX_TYPE_SC_HEVC = 2; // 0x2 + field public static final int SC_HEVC_INDEX_AUD = 2; // 0x2 + field public static final int SC_HEVC_INDEX_SLICE_BLA_N_LP = 16; // 0x10 + field public static final int SC_HEVC_INDEX_SLICE_BLA_W_RADL = 8; // 0x8 + field public static final int SC_HEVC_INDEX_SLICE_CE_BLA_W_LP = 4; // 0x4 + field public static final int SC_HEVC_INDEX_SLICE_IDR_N_LP = 64; // 0x40 + field public static final int SC_HEVC_INDEX_SLICE_IDR_W_RADL = 32; // 0x20 + field public static final int SC_HEVC_INDEX_SLICE_TRAIL_CRA = 128; // 0x80 + field public static final int SC_HEVC_INDEX_SPS = 1; // 0x1 + field public static final int SC_INDEX_B_FRAME = 4; // 0x4 + field public static final int SC_INDEX_I_FRAME = 1; // 0x1 + field public static final int SC_INDEX_P_FRAME = 2; // 0x2 + field public static final int SC_INDEX_SEQUENCE = 8; // 0x8 + field public static final int TS_INDEX_ADAPTATION_EXTENSION_FLAG = 4096; // 0x1000 + field public static final int TS_INDEX_CHANGE_TO_EVEN_SCRAMBLED = 8; // 0x8 + field public static final int TS_INDEX_CHANGE_TO_NOT_SCRAMBLED = 4; // 0x4 + field public static final int TS_INDEX_CHANGE_TO_ODD_SCRAMBLED = 16; // 0x10 + field public static final int TS_INDEX_DISCONTINUITY_INDICATOR = 32; // 0x20 + field public static final int TS_INDEX_FIRST_PACKET = 1; // 0x1 + field public static final int TS_INDEX_OPCR_FLAG = 512; // 0x200 + field public static final int TS_INDEX_PAYLOAD_UNIT_START_INDICATOR = 2; // 0x2 + field public static final int TS_INDEX_PCR_FLAG = 256; // 0x100 + field public static final int TS_INDEX_PRIORITY_INDICATOR = 128; // 0x80 + field public static final int TS_INDEX_PRIVATE_DATA = 2048; // 0x800 + field public static final int TS_INDEX_RANDOM_ACCESS_INDICATOR = 64; // 0x40 + field public static final int TS_INDEX_SPLICING_POINT_FLAG = 1024; // 0x400 + } + + public static class RecordSettings.Builder { + method @NonNull public android.media.tv.tuner.filter.RecordSettings build(); + method @NonNull public android.media.tv.tuner.filter.RecordSettings.Builder setScIndexMask(int); + method @NonNull public android.media.tv.tuner.filter.RecordSettings.Builder setScIndexType(int); + method @NonNull public android.media.tv.tuner.filter.RecordSettings.Builder setTsIndexMask(int); + } + + public class SectionEvent extends android.media.tv.tuner.filter.FilterEvent { + method public int getDataLength(); + method public int getSectionNumber(); + method public int getTableId(); + method public int getVersion(); + } + + public abstract class SectionSettings extends android.media.tv.tuner.filter.Settings { + method public boolean isCrcEnabled(); + method public boolean isRaw(); + method public boolean isRepeat(); + } + + public abstract static class SectionSettings.Builder<T extends android.media.tv.tuner.filter.SectionSettings.Builder<T>> { + method @NonNull public T setCrcEnabled(boolean); + method @NonNull public T setRaw(boolean); + method @NonNull public T setRepeat(boolean); + } + + public class SectionSettingsWithSectionBits extends android.media.tv.tuner.filter.SectionSettings { + method @NonNull public static android.media.tv.tuner.filter.SectionSettingsWithSectionBits.Builder builder(int); + method @NonNull public byte[] getFilterBytes(); + method @NonNull public byte[] getMask(); + method @NonNull public byte[] getMode(); + } + + public static class SectionSettingsWithSectionBits.Builder extends android.media.tv.tuner.filter.SectionSettings.Builder<android.media.tv.tuner.filter.SectionSettingsWithSectionBits.Builder> { + method @NonNull public android.media.tv.tuner.filter.SectionSettingsWithSectionBits build(); + method @NonNull public android.media.tv.tuner.filter.SectionSettingsWithSectionBits.Builder setFilter(@NonNull byte[]); + method @NonNull public android.media.tv.tuner.filter.SectionSettingsWithSectionBits.Builder setMask(@NonNull byte[]); + method @NonNull public android.media.tv.tuner.filter.SectionSettingsWithSectionBits.Builder setMode(@NonNull byte[]); + } + + public class SectionSettingsWithTableInfo extends android.media.tv.tuner.filter.SectionSettings { + method @NonNull public static android.media.tv.tuner.filter.SectionSettingsWithTableInfo.Builder builder(int); + method public int getTableId(); + method public int getVersion(); + } + + public static class SectionSettingsWithTableInfo.Builder extends android.media.tv.tuner.filter.SectionSettings.Builder<android.media.tv.tuner.filter.SectionSettingsWithTableInfo.Builder> { + method @NonNull public android.media.tv.tuner.filter.SectionSettingsWithTableInfo build(); + method @NonNull public android.media.tv.tuner.filter.SectionSettingsWithTableInfo.Builder setTableId(int); + method @NonNull public android.media.tv.tuner.filter.SectionSettingsWithTableInfo.Builder setVersion(int); + } + + public abstract class Settings { + method public int getType(); + } + + public class TemiEvent extends android.media.tv.tuner.filter.FilterEvent { + method @NonNull public byte[] getDescriptorData(); + method public byte getDescriptorTag(); + method public long getPts(); + } + + public class TimeFilter implements java.lang.AutoCloseable { + method public int clearTimestamp(); + method public void close(); + method public long getSourceTime(); + method public long getTimeStamp(); + method public int setCurrentTimestamp(long); + } + + public final class TlvFilterConfiguration extends android.media.tv.tuner.filter.FilterConfiguration { + method @NonNull public static android.media.tv.tuner.filter.TlvFilterConfiguration.Builder builder(); + method public int getPacketType(); + method public int getType(); + method public boolean isCompressedIpPacket(); + method public boolean isPassthrough(); + field public static final int PACKET_TYPE_COMPRESSED = 3; // 0x3 + field public static final int PACKET_TYPE_IPV4 = 1; // 0x1 + field public static final int PACKET_TYPE_IPV6 = 2; // 0x2 + field public static final int PACKET_TYPE_NULL = 255; // 0xff + field public static final int PACKET_TYPE_SIGNALING = 254; // 0xfe + } + + public static final class TlvFilterConfiguration.Builder { + method @NonNull public android.media.tv.tuner.filter.TlvFilterConfiguration build(); + method @NonNull public android.media.tv.tuner.filter.TlvFilterConfiguration.Builder setCompressedIpPacket(boolean); + method @NonNull public android.media.tv.tuner.filter.TlvFilterConfiguration.Builder setPacketType(int); + method @NonNull public android.media.tv.tuner.filter.TlvFilterConfiguration.Builder setPassthrough(boolean); + method @NonNull public android.media.tv.tuner.filter.TlvFilterConfiguration.Builder setSettings(@Nullable android.media.tv.tuner.filter.Settings); + } + + public final class TsFilterConfiguration extends android.media.tv.tuner.filter.FilterConfiguration { + method @NonNull public static android.media.tv.tuner.filter.TsFilterConfiguration.Builder builder(); + method public int getTpid(); + method public int getType(); + } + + public static final class TsFilterConfiguration.Builder { + method @NonNull public android.media.tv.tuner.filter.TsFilterConfiguration build(); + method @NonNull public android.media.tv.tuner.filter.TsFilterConfiguration.Builder setSettings(@Nullable android.media.tv.tuner.filter.Settings); + method @NonNull public android.media.tv.tuner.filter.TsFilterConfiguration.Builder setTpid(int); + } + + public class TsRecordEvent extends android.media.tv.tuner.filter.FilterEvent { + method public long getDataLength(); + method public int getPacketId(); + method public int getScIndexMask(); + method public int getTsIndexMask(); + } + +} + +package android.media.tv.tuner.frontend { + + public class AnalogFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities { + method public int getSifStandardCapability(); + method public int getSignalTypeCapability(); + } + + public class AnalogFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings { + method @NonNull public static android.media.tv.tuner.frontend.AnalogFrontendSettings.Builder builder(); + method public int getSifStandard(); + method public int getSignalType(); + method public int getType(); + field public static final int SIF_AUTO = 1; // 0x1 + field public static final int SIF_BG = 2; // 0x2 + field public static final int SIF_BG_A2 = 4; // 0x4 + field public static final int SIF_BG_NICAM = 8; // 0x8 + field public static final int SIF_DK = 32; // 0x20 + field public static final int SIF_DK1_A2 = 64; // 0x40 + field public static final int SIF_DK2_A2 = 128; // 0x80 + field public static final int SIF_DK3_A2 = 256; // 0x100 + field public static final int SIF_DK_NICAM = 512; // 0x200 + field public static final int SIF_I = 16; // 0x10 + field public static final int SIF_I_NICAM = 32768; // 0x8000 + field public static final int SIF_L = 1024; // 0x400 + field public static final int SIF_L_NICAM = 65536; // 0x10000 + field public static final int SIF_L_PRIME = 131072; // 0x20000 + field public static final int SIF_M = 2048; // 0x800 + field public static final int SIF_M_A2 = 8192; // 0x2000 + field public static final int SIF_M_BTSC = 4096; // 0x1000 + field public static final int SIF_M_EIAJ = 16384; // 0x4000 + field public static final int SIF_UNDEFINED = 0; // 0x0 + field public static final int SIGNAL_TYPE_AUTO = 1; // 0x1 + field public static final int SIGNAL_TYPE_NTSC = 32; // 0x20 + field public static final int SIGNAL_TYPE_NTSC_443 = 64; // 0x40 + field public static final int SIGNAL_TYPE_PAL = 2; // 0x2 + field public static final int SIGNAL_TYPE_PAL_60 = 16; // 0x10 + field public static final int SIGNAL_TYPE_PAL_M = 4; // 0x4 + field public static final int SIGNAL_TYPE_PAL_N = 8; // 0x8 + field public static final int SIGNAL_TYPE_SECAM = 128; // 0x80 + field public static final int SIGNAL_TYPE_UNDEFINED = 0; // 0x0 + } + + public static class AnalogFrontendSettings.Builder { + method @NonNull public android.media.tv.tuner.frontend.AnalogFrontendSettings build(); + method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.AnalogFrontendSettings.Builder setFrequency(int); + method @NonNull public android.media.tv.tuner.frontend.AnalogFrontendSettings.Builder setSifStandard(int); + method @NonNull public android.media.tv.tuner.frontend.AnalogFrontendSettings.Builder setSignalType(int); + } + + public class Atsc3FrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities { + method public int getBandwidthCapability(); + method public int getDemodOutputFormatCapability(); + method public int getFecCapability(); + method public int getModulationCapability(); + method public int getPlpCodeRateCapability(); + method public int getTimeInterleaveModeCapability(); + } + + public class Atsc3FrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings { + method @NonNull public static android.media.tv.tuner.frontend.Atsc3FrontendSettings.Builder builder(); + method public int getBandwidth(); + method public int getDemodOutputFormat(); + method @NonNull public android.media.tv.tuner.frontend.Atsc3PlpSettings[] getPlpSettings(); + method public int getType(); + field public static final int BANDWIDTH_AUTO = 1; // 0x1 + field public static final int BANDWIDTH_BANDWIDTH_6MHZ = 2; // 0x2 + field public static final int BANDWIDTH_BANDWIDTH_7MHZ = 4; // 0x4 + field public static final int BANDWIDTH_BANDWIDTH_8MHZ = 8; // 0x8 + field public static final int BANDWIDTH_UNDEFINED = 0; // 0x0 + field public static final int CODERATE_10_15 = 512; // 0x200 + field public static final int CODERATE_11_15 = 1024; // 0x400 + field public static final int CODERATE_12_15 = 2048; // 0x800 + field public static final int CODERATE_13_15 = 4096; // 0x1000 + field public static final int CODERATE_2_15 = 2; // 0x2 + field public static final int CODERATE_3_15 = 4; // 0x4 + field public static final int CODERATE_4_15 = 8; // 0x8 + field public static final int CODERATE_5_15 = 16; // 0x10 + field public static final int CODERATE_6_15 = 32; // 0x20 + field public static final int CODERATE_7_15 = 64; // 0x40 + field public static final int CODERATE_8_15 = 128; // 0x80 + field public static final int CODERATE_9_15 = 256; // 0x100 + field public static final int CODERATE_AUTO = 1; // 0x1 + field public static final int CODERATE_UNDEFINED = 0; // 0x0 + field public static final int DEMOD_OUTPUT_FORMAT_ATSC3_LINKLAYER_PACKET = 1; // 0x1 + field public static final int DEMOD_OUTPUT_FORMAT_BASEBAND_PACKET = 2; // 0x2 + field public static final int DEMOD_OUTPUT_FORMAT_UNDEFINED = 0; // 0x0 + field public static final int FEC_AUTO = 1; // 0x1 + field public static final int FEC_BCH_LDPC_16K = 2; // 0x2 + field public static final int FEC_BCH_LDPC_64K = 4; // 0x4 + field public static final int FEC_CRC_LDPC_16K = 8; // 0x8 + field public static final int FEC_CRC_LDPC_64K = 16; // 0x10 + field public static final int FEC_LDPC_16K = 32; // 0x20 + field public static final int FEC_LDPC_64K = 64; // 0x40 + field public static final int FEC_UNDEFINED = 0; // 0x0 + field public static final int MODULATION_AUTO = 1; // 0x1 + field public static final int MODULATION_MOD_1024QAM = 32; // 0x20 + field public static final int MODULATION_MOD_16QAM = 4; // 0x4 + field public static final int MODULATION_MOD_256QAM = 16; // 0x10 + field public static final int MODULATION_MOD_4096QAM = 64; // 0x40 + field public static final int MODULATION_MOD_64QAM = 8; // 0x8 + field public static final int MODULATION_MOD_QPSK = 2; // 0x2 + field public static final int MODULATION_UNDEFINED = 0; // 0x0 + field public static final int TIME_INTERLEAVE_MODE_AUTO = 1; // 0x1 + field public static final int TIME_INTERLEAVE_MODE_CTI = 2; // 0x2 + field public static final int TIME_INTERLEAVE_MODE_HTI = 4; // 0x4 + field public static final int TIME_INTERLEAVE_MODE_UNDEFINED = 0; // 0x0 + } + + public static class Atsc3FrontendSettings.Builder { + method @NonNull public android.media.tv.tuner.frontend.Atsc3FrontendSettings build(); + method @NonNull public android.media.tv.tuner.frontend.Atsc3FrontendSettings.Builder setBandwidth(int); + method @NonNull public android.media.tv.tuner.frontend.Atsc3FrontendSettings.Builder setDemodOutputFormat(int); + method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.Atsc3FrontendSettings.Builder setFrequency(int); + method @NonNull public android.media.tv.tuner.frontend.Atsc3FrontendSettings.Builder setPlpSettings(@NonNull android.media.tv.tuner.frontend.Atsc3PlpSettings[]); + } + + public class Atsc3PlpInfo { + method public boolean getLlsFlag(); + method public int getPlpId(); + } + + public class Atsc3PlpSettings { + method @NonNull public static android.media.tv.tuner.frontend.Atsc3PlpSettings.Builder builder(); + method public int getCodeRate(); + method public int getFec(); + method public int getInterleaveMode(); + method public int getModulation(); + method public int getPlpId(); + } + + public static class Atsc3PlpSettings.Builder { + method @NonNull public android.media.tv.tuner.frontend.Atsc3PlpSettings build(); + method @NonNull public android.media.tv.tuner.frontend.Atsc3PlpSettings.Builder setCodeRate(int); + method @NonNull public android.media.tv.tuner.frontend.Atsc3PlpSettings.Builder setFec(int); + method @NonNull public android.media.tv.tuner.frontend.Atsc3PlpSettings.Builder setInterleaveMode(int); + method @NonNull public android.media.tv.tuner.frontend.Atsc3PlpSettings.Builder setModulation(int); + method @NonNull public android.media.tv.tuner.frontend.Atsc3PlpSettings.Builder setPlpId(int); + } + + public class AtscFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities { + method public int getModulationCapability(); + } + + public class AtscFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings { + method @NonNull public static android.media.tv.tuner.frontend.AtscFrontendSettings.Builder builder(); + method public int getModulation(); + method public int getType(); + field public static final int MODULATION_AUTO = 1; // 0x1 + field public static final int MODULATION_MOD_16VSB = 8; // 0x8 + field public static final int MODULATION_MOD_8VSB = 4; // 0x4 + field public static final int MODULATION_UNDEFINED = 0; // 0x0 + } + + public static class AtscFrontendSettings.Builder { + method @NonNull public android.media.tv.tuner.frontend.AtscFrontendSettings build(); + method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.AtscFrontendSettings.Builder setFrequency(int); + method @NonNull public android.media.tv.tuner.frontend.AtscFrontendSettings.Builder setModulation(int); + } + + public class DvbcFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities { + method public int getAnnexCapability(); + method public int getFecCapability(); + method public int getModulationCapability(); + } + + public class DvbcFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings { + method @NonNull public static android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder builder(); + method public int getAnnex(); + method public long getInnerFec(); + method public int getModulation(); + method public int getOuterFec(); + method public int getSpectralInversion(); + method public int getSymbolRate(); + method public int getType(); + field public static final int ANNEX_A = 1; // 0x1 + field public static final int ANNEX_B = 2; // 0x2 + field public static final int ANNEX_C = 4; // 0x4 + field public static final int ANNEX_UNDEFINED = 0; // 0x0 + field public static final int MODULATION_AUTO = 1; // 0x1 + field public static final int MODULATION_MOD_128QAM = 16; // 0x10 + field public static final int MODULATION_MOD_16QAM = 2; // 0x2 + field public static final int MODULATION_MOD_256QAM = 32; // 0x20 + field public static final int MODULATION_MOD_32QAM = 4; // 0x4 + field public static final int MODULATION_MOD_64QAM = 8; // 0x8 + field public static final int MODULATION_UNDEFINED = 0; // 0x0 + field public static final int OUTER_FEC_OUTER_FEC_NONE = 1; // 0x1 + field public static final int OUTER_FEC_OUTER_FEC_RS = 2; // 0x2 + field public static final int OUTER_FEC_UNDEFINED = 0; // 0x0 + field public static final int SPECTRAL_INVERSION_INVERTED = 2; // 0x2 + field public static final int SPECTRAL_INVERSION_NORMAL = 1; // 0x1 + field public static final int SPECTRAL_INVERSION_UNDEFINED = 0; // 0x0 + } + + public static class DvbcFrontendSettings.Builder { + method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings build(); + method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setAnnex(int); + method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setFrequency(int); + method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setInnerFec(long); + method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setModulation(int); + method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setOuterFec(int); + method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setSpectralInversion(int); + method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setSymbolRate(int); + } + + public class DvbsCodeRate { + method @NonNull public static android.media.tv.tuner.frontend.DvbsCodeRate.Builder builder(); + method public int getBitsPer1000Symbol(); + method public long getInnerFec(); + method public boolean isLinear(); + method public boolean isShortFrameEnabled(); + } + + public static class DvbsCodeRate.Builder { + method @NonNull public android.media.tv.tuner.frontend.DvbsCodeRate build(); + method @NonNull public android.media.tv.tuner.frontend.DvbsCodeRate.Builder setBitsPer1000Symbol(int); + method @NonNull public android.media.tv.tuner.frontend.DvbsCodeRate.Builder setInnerFec(long); + method @NonNull public android.media.tv.tuner.frontend.DvbsCodeRate.Builder setLinear(boolean); + method @NonNull public android.media.tv.tuner.frontend.DvbsCodeRate.Builder setShortFrameEnabled(boolean); + } + + public class DvbsFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities { + method public long getInnerFecCapability(); + method public int getModulationCapability(); + method public int getStandardCapability(); + } + + public class DvbsFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings { + method @NonNull public static android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder builder(); + method @Nullable public android.media.tv.tuner.frontend.DvbsCodeRate getCodeRate(); + method public int getInputStreamId(); + method public int getModulation(); + method public int getPilot(); + method public int getRolloff(); + method public int getStandard(); + method public int getSymbolRate(); + method public int getType(); + method public int getVcmMode(); + field public static final int MODULATION_AUTO = 1; // 0x1 + field public static final int MODULATION_MOD_128APSK = 2048; // 0x800 + field public static final int MODULATION_MOD_16APSK = 256; // 0x100 + field public static final int MODULATION_MOD_16PSK = 16; // 0x10 + field public static final int MODULATION_MOD_16QAM = 8; // 0x8 + field public static final int MODULATION_MOD_256APSK = 4096; // 0x1000 + field public static final int MODULATION_MOD_32APSK = 512; // 0x200 + field public static final int MODULATION_MOD_32PSK = 32; // 0x20 + field public static final int MODULATION_MOD_64APSK = 1024; // 0x400 + field public static final int MODULATION_MOD_8APSK = 128; // 0x80 + field public static final int MODULATION_MOD_8PSK = 4; // 0x4 + field public static final int MODULATION_MOD_ACM = 64; // 0x40 + field public static final int MODULATION_MOD_QPSK = 2; // 0x2 + field public static final int MODULATION_MOD_RESERVED = 8192; // 0x2000 + field public static final int MODULATION_UNDEFINED = 0; // 0x0 + field public static final int PILOT_AUTO = 3; // 0x3 + field public static final int PILOT_OFF = 2; // 0x2 + field public static final int PILOT_ON = 1; // 0x1 + field public static final int PILOT_UNDEFINED = 0; // 0x0 + field public static final int ROLLOFF_0_10 = 5; // 0x5 + field public static final int ROLLOFF_0_15 = 4; // 0x4 + field public static final int ROLLOFF_0_20 = 3; // 0x3 + field public static final int ROLLOFF_0_25 = 2; // 0x2 + field public static final int ROLLOFF_0_35 = 1; // 0x1 + field public static final int ROLLOFF_0_5 = 6; // 0x6 + field public static final int ROLLOFF_UNDEFINED = 0; // 0x0 + field public static final int STANDARD_AUTO = 1; // 0x1 + field public static final int STANDARD_S = 2; // 0x2 + field public static final int STANDARD_S2 = 4; // 0x4 + field public static final int STANDARD_S2X = 8; // 0x8 + field public static final int VCM_MODE_AUTO = 1; // 0x1 + field public static final int VCM_MODE_MANUAL = 2; // 0x2 + field public static final int VCM_MODE_UNDEFINED = 0; // 0x0 + } + + public static class DvbsFrontendSettings.Builder { + method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings build(); + method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setCodeRate(@Nullable android.media.tv.tuner.frontend.DvbsCodeRate); + method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setFrequency(int); + method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setInputStreamId(int); + method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setModulation(int); + method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setPilot(int); + method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setRolloff(int); + method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setStandard(int); + method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setSymbolRate(int); + method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setVcmMode(int); + } + + public class DvbtFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities { + method public int getBandwidthCapability(); + method public int getCodeRateCapability(); + method public int getConstellationCapability(); + method public int getGuardIntervalCapability(); + method public int getHierarchyCapability(); + method public int getTransmissionModeCapability(); + method public boolean isMisoSupported(); + method public boolean isT2Supported(); + } + + public class DvbtFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings { + method @NonNull public static android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder builder(); + method public int getBandwidth(); + method public int getConstellation(); + method public int getGuardInterval(); + method public int getHierarchy(); + method public int getHighPriorityCodeRate(); + method public int getLowPriorityCodeRate(); + method public int getPlpGroupId(); + method public int getPlpId(); + method public int getPlpMode(); + method public int getStandard(); + method public int getTransmissionMode(); + method public int getType(); + method public boolean isHighPriority(); + method public boolean isMiso(); + field public static final int BANDWIDTH_10MHZ = 64; // 0x40 + field public static final int BANDWIDTH_1_7MHZ = 32; // 0x20 + field public static final int BANDWIDTH_5MHZ = 16; // 0x10 + field public static final int BANDWIDTH_6MHZ = 8; // 0x8 + field public static final int BANDWIDTH_7MHZ = 4; // 0x4 + field public static final int BANDWIDTH_8MHZ = 2; // 0x2 + field public static final int BANDWIDTH_AUTO = 1; // 0x1 + field public static final int BANDWIDTH_UNDEFINED = 0; // 0x0 + field public static final int CODERATE_1_2 = 2; // 0x2 + field public static final int CODERATE_2_3 = 4; // 0x4 + field public static final int CODERATE_3_4 = 8; // 0x8 + field public static final int CODERATE_3_5 = 64; // 0x40 + field public static final int CODERATE_4_5 = 128; // 0x80 + field public static final int CODERATE_5_6 = 16; // 0x10 + field public static final int CODERATE_6_7 = 256; // 0x100 + field public static final int CODERATE_7_8 = 32; // 0x20 + field public static final int CODERATE_8_9 = 512; // 0x200 + field public static final int CODERATE_AUTO = 1; // 0x1 + field public static final int CODERATE_UNDEFINED = 0; // 0x0 + field public static final int CONSTELLATION_16QAM = 4; // 0x4 + field public static final int CONSTELLATION_256QAM = 16; // 0x10 + field public static final int CONSTELLATION_64QAM = 8; // 0x8 + field public static final int CONSTELLATION_AUTO = 1; // 0x1 + field public static final int CONSTELLATION_QPSK = 2; // 0x2 + field public static final int CONSTELLATION_UNDEFINED = 0; // 0x0 + field public static final int GUARD_INTERVAL_19_128 = 64; // 0x40 + field public static final int GUARD_INTERVAL_19_256 = 128; // 0x80 + field public static final int GUARD_INTERVAL_1_128 = 32; // 0x20 + field public static final int GUARD_INTERVAL_1_16 = 4; // 0x4 + field public static final int GUARD_INTERVAL_1_32 = 2; // 0x2 + field public static final int GUARD_INTERVAL_1_4 = 16; // 0x10 + field public static final int GUARD_INTERVAL_1_8 = 8; // 0x8 + field public static final int GUARD_INTERVAL_AUTO = 1; // 0x1 + field public static final int GUARD_INTERVAL_UNDEFINED = 0; // 0x0 + field public static final int HIERARCHY_1_INDEPTH = 64; // 0x40 + field public static final int HIERARCHY_1_NATIVE = 4; // 0x4 + field public static final int HIERARCHY_2_INDEPTH = 128; // 0x80 + field public static final int HIERARCHY_2_NATIVE = 8; // 0x8 + field public static final int HIERARCHY_4_INDEPTH = 256; // 0x100 + field public static final int HIERARCHY_4_NATIVE = 16; // 0x10 + field public static final int HIERARCHY_AUTO = 1; // 0x1 + field public static final int HIERARCHY_NON_INDEPTH = 32; // 0x20 + field public static final int HIERARCHY_NON_NATIVE = 2; // 0x2 + field public static final int HIERARCHY_UNDEFINED = 0; // 0x0 + field public static final int PLP_MODE_AUTO = 1; // 0x1 + field public static final int PLP_MODE_MANUAL = 2; // 0x2 + field public static final int PLP_MODE_UNDEFINED = 0; // 0x0 + field public static final int STANDARD_AUTO = 1; // 0x1 + field public static final int STANDARD_T = 2; // 0x2 + field public static final int STANDARD_T2 = 4; // 0x4 + field public static final int TRANSMISSION_MODE_16K = 32; // 0x20 + field public static final int TRANSMISSION_MODE_1K = 16; // 0x10 + field public static final int TRANSMISSION_MODE_2K = 2; // 0x2 + field public static final int TRANSMISSION_MODE_32K = 64; // 0x40 + field public static final int TRANSMISSION_MODE_4K = 8; // 0x8 + field public static final int TRANSMISSION_MODE_8K = 4; // 0x4 + field public static final int TRANSMISSION_MODE_AUTO = 1; // 0x1 + field public static final int TRANSMISSION_MODE_UNDEFINED = 0; // 0x0 + } + + public static class DvbtFrontendSettings.Builder { + method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings build(); + method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setBandwidth(int); + method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setConstellation(int); + method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setFrequency(int); + method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setGuardInterval(int); + method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setHierarchy(int); + method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setHighPriority(boolean); + method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setHighPriorityCodeRate(int); + method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setLowPriorityCodeRate(int); + method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setMiso(boolean); + method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setPlpGroupId(int); + method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setPlpId(int); + method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setPlpMode(int); + method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setStandard(int); + method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setTransmissionMode(int); + } + + public abstract class FrontendCapabilities { + ctor public FrontendCapabilities(); + } + + public class FrontendInfo { + method public int getAcquireRange(); + method public int getExclusiveGroupId(); + method @NonNull public android.util.Range<java.lang.Integer> getFrequencyRange(); + method @NonNull public android.media.tv.tuner.frontend.FrontendCapabilities getFrontendCapabilities(); + method public int getId(); + method @NonNull public int[] getStatusCapabilities(); + method @NonNull public android.util.Range<java.lang.Integer> getSymbolRateRange(); + method public int getType(); + } + + public abstract class FrontendSettings { + method public int getFrequency(); + method public abstract int getType(); + field public static final long FEC_11_15 = 4194304L; // 0x400000L + field public static final long FEC_11_20 = 8388608L; // 0x800000L + field public static final long FEC_11_45 = 16777216L; // 0x1000000L + field public static final long FEC_13_18 = 33554432L; // 0x2000000L + field public static final long FEC_13_45 = 67108864L; // 0x4000000L + field public static final long FEC_14_45 = 134217728L; // 0x8000000L + field public static final long FEC_1_2 = 2L; // 0x2L + field public static final long FEC_1_3 = 4L; // 0x4L + field public static final long FEC_1_4 = 8L; // 0x8L + field public static final long FEC_1_5 = 16L; // 0x10L + field public static final long FEC_23_36 = 268435456L; // 0x10000000L + field public static final long FEC_25_36 = 536870912L; // 0x20000000L + field public static final long FEC_26_45 = 1073741824L; // 0x40000000L + field public static final long FEC_28_45 = -2147483648L; // 0xffffffff80000000L + field public static final long FEC_29_45 = 1L; // 0x1L + field public static final long FEC_2_3 = 32L; // 0x20L + field public static final long FEC_2_5 = 64L; // 0x40L + field public static final long FEC_2_9 = 128L; // 0x80L + field public static final long FEC_31_45 = 2L; // 0x2L + field public static final long FEC_32_45 = 4L; // 0x4L + field public static final long FEC_3_4 = 256L; // 0x100L + field public static final long FEC_3_5 = 512L; // 0x200L + field public static final long FEC_4_15 = 2048L; // 0x800L + field public static final long FEC_4_5 = 1024L; // 0x400L + field public static final long FEC_5_6 = 4096L; // 0x1000L + field public static final long FEC_5_9 = 8192L; // 0x2000L + field public static final long FEC_6_7 = 16384L; // 0x4000L + field public static final long FEC_77_90 = 8L; // 0x8L + field public static final long FEC_7_15 = 131072L; // 0x20000L + field public static final long FEC_7_8 = 32768L; // 0x8000L + field public static final long FEC_7_9 = 65536L; // 0x10000L + field public static final long FEC_8_15 = 524288L; // 0x80000L + field public static final long FEC_8_9 = 262144L; // 0x40000L + field public static final long FEC_9_10 = 1048576L; // 0x100000L + field public static final long FEC_9_20 = 2097152L; // 0x200000L + field public static final long FEC_AUTO = 1L; // 0x1L + field public static final long FEC_UNDEFINED = 0L; // 0x0L + field public static final int TYPE_ANALOG = 1; // 0x1 + field public static final int TYPE_ATSC = 2; // 0x2 + field public static final int TYPE_ATSC3 = 3; // 0x3 + field public static final int TYPE_DVBC = 4; // 0x4 + field public static final int TYPE_DVBS = 5; // 0x5 + field public static final int TYPE_DVBT = 6; // 0x6 + field public static final int TYPE_ISDBS = 7; // 0x7 + field public static final int TYPE_ISDBS3 = 8; // 0x8 + field public static final int TYPE_ISDBT = 9; // 0x9 + field public static final int TYPE_UNDEFINED = 0; // 0x0 + } + + public class FrontendStatus { + method public int getAgc(); + method @NonNull public android.media.tv.tuner.frontend.FrontendStatus.Atsc3PlpTuningInfo[] getAtsc3PlpTuningInfo(); + method public int getBer(); + method public int getFreqOffset(); + method public int getHierarchy(); + method public long getInnerFec(); + method @NonNull public boolean[] getLayerErrors(); + method public int getLnbVoltage(); + method public int getMer(); + method public int getModulation(); + method public int getPer(); + method public int getPerBer(); + method public int getPlpId(); + method public int getSignalQuality(); + method public int getSignalStrength(); + method public int getSnr(); + method public int getSpectralInversion(); + method public int getSymbolRate(); + method public boolean isDemodLocked(); + method public boolean isEwbs(); + method public boolean isLnaOn(); + method public boolean isRfLocked(); + field public static final int FRONTEND_STATUS_TYPE_AGC = 14; // 0xe + field public static final int FRONTEND_STATUS_TYPE_ATSC3_PLP_INFO = 21; // 0x15 + field public static final int FRONTEND_STATUS_TYPE_BER = 2; // 0x2 + field public static final int FRONTEND_STATUS_TYPE_DEMOD_LOCK = 0; // 0x0 + field public static final int FRONTEND_STATUS_TYPE_EWBS = 13; // 0xd + field public static final int FRONTEND_STATUS_TYPE_FEC = 8; // 0x8 + field public static final int FRONTEND_STATUS_TYPE_FREQ_OFFSET = 18; // 0x12 + field public static final int FRONTEND_STATUS_TYPE_HIERARCHY = 19; // 0x13 + field public static final int FRONTEND_STATUS_TYPE_LAYER_ERROR = 16; // 0x10 + field public static final int FRONTEND_STATUS_TYPE_LNA = 15; // 0xf + field public static final int FRONTEND_STATUS_TYPE_LNB_VOLTAGE = 11; // 0xb + field public static final int FRONTEND_STATUS_TYPE_MER = 17; // 0x11 + field public static final int FRONTEND_STATUS_TYPE_MODULATION = 9; // 0x9 + field public static final int FRONTEND_STATUS_TYPE_PER = 3; // 0x3 + field public static final int FRONTEND_STATUS_TYPE_PLP_ID = 12; // 0xc + field public static final int FRONTEND_STATUS_TYPE_PRE_BER = 4; // 0x4 + field public static final int FRONTEND_STATUS_TYPE_RF_LOCK = 20; // 0x14 + field public static final int FRONTEND_STATUS_TYPE_SIGNAL_QUALITY = 5; // 0x5 + field public static final int FRONTEND_STATUS_TYPE_SIGNAL_STRENGTH = 6; // 0x6 + field public static final int FRONTEND_STATUS_TYPE_SNR = 1; // 0x1 + field public static final int FRONTEND_STATUS_TYPE_SPECTRAL = 10; // 0xa + field public static final int FRONTEND_STATUS_TYPE_SYMBOL_RATE = 7; // 0x7 + } + + public static class FrontendStatus.Atsc3PlpTuningInfo { + method public int getPlpId(); + method public int getUec(); + method public boolean isLocked(); + } + + public class Isdbs3FrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities { + method public int getCodeRateCapability(); + method public int getModulationCapability(); + } + + public class Isdbs3FrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings { + method @NonNull public static android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder builder(); + method public int getCodeRate(); + method public int getModulation(); + method public int getRolloff(); + method public int getStreamId(); + method public int getStreamIdType(); + method public int getSymbolRate(); + method public int getType(); + field public static final int CODERATE_1_2 = 8; // 0x8 + field public static final int CODERATE_1_3 = 2; // 0x2 + field public static final int CODERATE_2_3 = 32; // 0x20 + field public static final int CODERATE_2_5 = 4; // 0x4 + field public static final int CODERATE_3_4 = 64; // 0x40 + field public static final int CODERATE_3_5 = 16; // 0x10 + field public static final int CODERATE_4_5 = 256; // 0x100 + field public static final int CODERATE_5_6 = 512; // 0x200 + field public static final int CODERATE_7_8 = 1024; // 0x400 + field public static final int CODERATE_7_9 = 128; // 0x80 + field public static final int CODERATE_9_10 = 2048; // 0x800 + field public static final int CODERATE_AUTO = 1; // 0x1 + field public static final int CODERATE_UNDEFINED = 0; // 0x0 + field public static final int MODULATION_AUTO = 1; // 0x1 + field public static final int MODULATION_MOD_16APSK = 16; // 0x10 + field public static final int MODULATION_MOD_32APSK = 32; // 0x20 + field public static final int MODULATION_MOD_8PSK = 8; // 0x8 + field public static final int MODULATION_MOD_BPSK = 2; // 0x2 + field public static final int MODULATION_MOD_QPSK = 4; // 0x4 + field public static final int MODULATION_UNDEFINED = 0; // 0x0 + field public static final int ROLLOFF_0_03 = 1; // 0x1 + field public static final int ROLLOFF_UNDEFINED = 0; // 0x0 + } + + public static class Isdbs3FrontendSettings.Builder { + method @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings build(); + method @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setCodeRate(int); + method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setFrequency(int); + method @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setModulation(int); + method @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setRolloff(int); + method @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setStreamId(int); + method @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setStreamIdType(int); + method @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setSymbolRate(int); + } + + public class IsdbsFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities { + method public int getCodeRateCapability(); + method public int getModulationCapability(); + } + + public class IsdbsFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings { + method @NonNull public static android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder builder(); + method public int getCodeRate(); + method public int getModulation(); + method public int getRolloff(); + method public int getStreamId(); + method public int getStreamIdType(); + method public int getSymbolRate(); + method public int getType(); + field public static final int CODERATE_1_2 = 2; // 0x2 + field public static final int CODERATE_2_3 = 4; // 0x4 + field public static final int CODERATE_3_4 = 8; // 0x8 + field public static final int CODERATE_5_6 = 16; // 0x10 + field public static final int CODERATE_7_8 = 32; // 0x20 + field public static final int CODERATE_AUTO = 1; // 0x1 + field public static final int CODERATE_UNDEFINED = 0; // 0x0 + field public static final int MODULATION_AUTO = 1; // 0x1 + field public static final int MODULATION_MOD_BPSK = 2; // 0x2 + field public static final int MODULATION_MOD_QPSK = 4; // 0x4 + field public static final int MODULATION_MOD_TC8PSK = 8; // 0x8 + field public static final int MODULATION_UNDEFINED = 0; // 0x0 + field public static final int ROLLOFF_0_35 = 1; // 0x1 + field public static final int ROLLOFF_UNDEFINED = 0; // 0x0 + field public static final int STREAM_ID_TYPE_ID = 0; // 0x0 + field public static final int STREAM_ID_TYPE_RELATIVE_NUMBER = 1; // 0x1 + } + + public static class IsdbsFrontendSettings.Builder { + method @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings build(); + method @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setCodeRate(int); + method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setFrequency(int); + method @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setModulation(int); + method @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setRolloff(int); + method @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setStreamId(int); + method @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setStreamIdType(int); + method @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setSymbolRate(int); + } + + public class IsdbtFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities { + method public int getBandwidthCapability(); + method public int getCodeRateCapability(); + method public int getGuardIntervalCapability(); + method public int getModeCapability(); + method public int getModulationCapability(); + } + + public class IsdbtFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings { + method @NonNull public static android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder builder(); + method public int getBandwidth(); + method public int getCodeRate(); + method public int getGuardInterval(); + method public int getMode(); + method public int getModulation(); + method public int getServiceAreaId(); + method public int getType(); + field public static final int BANDWIDTH_6MHZ = 8; // 0x8 + field public static final int BANDWIDTH_7MHZ = 4; // 0x4 + field public static final int BANDWIDTH_8MHZ = 2; // 0x2 + field public static final int BANDWIDTH_AUTO = 1; // 0x1 + field public static final int BANDWIDTH_UNDEFINED = 0; // 0x0 + field public static final int MODE_1 = 2; // 0x2 + field public static final int MODE_2 = 4; // 0x4 + field public static final int MODE_3 = 8; // 0x8 + field public static final int MODE_AUTO = 1; // 0x1 + field public static final int MODE_UNDEFINED = 0; // 0x0 + field public static final int MODULATION_AUTO = 1; // 0x1 + field public static final int MODULATION_MOD_16QAM = 8; // 0x8 + field public static final int MODULATION_MOD_64QAM = 16; // 0x10 + field public static final int MODULATION_MOD_DQPSK = 2; // 0x2 + field public static final int MODULATION_MOD_QPSK = 4; // 0x4 + field public static final int MODULATION_UNDEFINED = 0; // 0x0 + } + + public static class IsdbtFrontendSettings.Builder { + method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings build(); + method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setBandwidth(int); + method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setCodeRate(int); + method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setFrequency(int); + method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setGuardInterval(int); + method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setMode(int); + method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setModulation(int); + method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setServiceAreaId(int); + } + + public interface OnTuneEventListener { + method public void onTuneEvent(int); + field public static final int SIGNAL_LOCKED = 0; // 0x0 + field public static final int SIGNAL_LOST_LOCK = 2; // 0x2 + field public static final int SIGNAL_NO_SIGNAL = 1; // 0x1 + } + + public interface ScanCallback { + method public void onAnalogSifStandardReported(int); + method public void onAtsc3PlpInfosReported(@NonNull android.media.tv.tuner.frontend.Atsc3PlpInfo[]); + method public void onDvbsStandardReported(int); + method public void onDvbtStandardReported(int); + method public void onFrequenciesReported(@NonNull int[]); + method public void onGroupIdsReported(@NonNull int[]); + method public void onHierarchyReported(int); + method public void onInputStreamIdsReported(@NonNull int[]); + method public void onLocked(); + method public void onPlpIdsReported(@NonNull int[]); + method public void onProgress(@IntRange(from=0, to=100) int); + method public void onScanStopped(); + method public void onSignalTypeReported(int); + method public void onSymbolRatesReported(@NonNull int[]); + } + +} + +package android.media.voice { + + public final class KeyphraseModelManager { + method @RequiresPermission("android.permission.MANAGE_VOICE_KEYPHRASES") public void deleteKeyphraseSoundModel(int, @NonNull java.util.Locale); + method @Nullable @RequiresPermission("android.permission.MANAGE_VOICE_KEYPHRASES") public android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel getKeyphraseSoundModel(int, @NonNull java.util.Locale); + method @RequiresPermission("android.permission.MANAGE_VOICE_KEYPHRASES") public void updateKeyphraseSoundModel(@NonNull android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel); + } + +} + package android.metrics { public class LogMaker { @@ -3996,49 +5972,132 @@ package android.net { public class CaptivePortal implements android.os.Parcelable { method public void logEvent(int, @NonNull String); + method @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public void reevaluateNetwork(); method public void useNetwork(); + field public static final int APP_REQUEST_REEVALUATION_REQUIRED = 100; // 0x64 field public static final int APP_RETURN_DISMISSED = 0; // 0x0 field public static final int APP_RETURN_UNWANTED = 1; // 0x1 field public static final int APP_RETURN_WANTED_AS_IS = 2; // 0x2 } + public final class CaptivePortalData implements android.os.Parcelable { + method public int describeContents(); + method public long getByteLimit(); + method public long getExpiryTimeMillis(); + method public long getRefreshTimeMillis(); + method @Nullable public android.net.Uri getUserPortalUrl(); + method @Nullable public android.net.Uri getVenueInfoUrl(); + method public boolean isCaptive(); + method public boolean isSessionExtendable(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.net.CaptivePortalData> CREATOR; + } + + public static class CaptivePortalData.Builder { + ctor public CaptivePortalData.Builder(); + ctor public CaptivePortalData.Builder(@Nullable android.net.CaptivePortalData); + method @NonNull public android.net.CaptivePortalData build(); + method @NonNull public android.net.CaptivePortalData.Builder setBytesRemaining(long); + method @NonNull public android.net.CaptivePortalData.Builder setCaptive(boolean); + method @NonNull public android.net.CaptivePortalData.Builder setExpiryTime(long); + method @NonNull public android.net.CaptivePortalData.Builder setRefreshTime(long); + method @NonNull public android.net.CaptivePortalData.Builder setSessionExtendable(boolean); + method @NonNull public android.net.CaptivePortalData.Builder setUserPortalUrl(@Nullable android.net.Uri); + method @NonNull public android.net.CaptivePortalData.Builder setVenueInfoUrl(@Nullable android.net.Uri); + } + public class ConnectivityManager { method @NonNull @RequiresPermission(android.Manifest.permission.PACKET_KEEPALIVE_OFFLOAD) public android.net.SocketKeepalive createNattKeepalive(@NonNull android.net.Network, @NonNull android.os.ParcelFileDescriptor, @NonNull java.net.InetAddress, @NonNull java.net.InetAddress, @NonNull java.util.concurrent.Executor, @NonNull android.net.SocketKeepalive.Callback); method @NonNull @RequiresPermission(android.Manifest.permission.PACKET_KEEPALIVE_OFFLOAD) public android.net.SocketKeepalive createSocketKeepalive(@NonNull android.net.Network, @NonNull java.net.Socket, @NonNull java.util.concurrent.Executor, @NonNull android.net.SocketKeepalive.Callback); - method @RequiresPermission(android.Manifest.permission.LOCAL_MAC_ADDRESS) public String getCaptivePortalServerUrl(); - method @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void getLatestTetheringEntitlementResult(int, boolean, @NonNull java.util.concurrent.Executor, @NonNull android.net.ConnectivityManager.OnTetheringEntitlementResultListener); - method @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.WRITE_SETTINGS}) public boolean isTetheringSupported(); - method @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void registerTetheringEventCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.ConnectivityManager.OnTetheringEventCallback); - method @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD, "android.permission.NETWORK_STACK"}) public void setAirplaneMode(boolean); - method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, "android.permission.NETWORK_STACK"}) public boolean shouldAvoidBadWifi(); + method @Deprecated @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public String getCaptivePortalServerUrl(); + method @Deprecated @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void getLatestTetheringEntitlementResult(int, boolean, @NonNull java.util.concurrent.Executor, @NonNull android.net.ConnectivityManager.OnTetheringEntitlementResultListener); + method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.WRITE_SETTINGS}) public boolean isTetheringSupported(); + method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_FACTORY}) public int registerNetworkProvider(@NonNull android.net.NetworkProvider); + method @Deprecated @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void registerTetheringEventCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.ConnectivityManager.OnTetheringEventCallback); + method @RequiresPermission(android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK) public void requestNetwork(@NonNull android.net.NetworkRequest, int, int, @NonNull android.os.Handler, @NonNull android.net.ConnectivityManager.NetworkCallback); + method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_AIRPLANE_MODE, android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.NETWORK_STACK}) public void setAirplaneMode(boolean); + method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public boolean shouldAvoidBadWifi(); method @RequiresPermission(android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK) public void startCaptivePortalApp(@NonNull android.net.Network, @NonNull android.os.Bundle); - method @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void startTethering(int, boolean, android.net.ConnectivityManager.OnStartTetheringCallback); - method @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void startTethering(int, boolean, android.net.ConnectivityManager.OnStartTetheringCallback, android.os.Handler); - method @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void stopTethering(int); - method @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void unregisterTetheringEventCallback(@NonNull android.net.ConnectivityManager.OnTetheringEventCallback); + method @Deprecated @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void startTethering(int, boolean, android.net.ConnectivityManager.OnStartTetheringCallback); + method @Deprecated @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void startTethering(int, boolean, android.net.ConnectivityManager.OnStartTetheringCallback, android.os.Handler); + method @Deprecated @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void stopTethering(int); + method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_FACTORY}) public void unregisterNetworkProvider(@NonNull android.net.NetworkProvider); + method @Deprecated @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void unregisterTetheringEventCallback(@NonNull android.net.ConnectivityManager.OnTetheringEventCallback); field public static final String EXTRA_CAPTIVE_PORTAL_PROBE_SPEC = "android.net.extra.CAPTIVE_PORTAL_PROBE_SPEC"; field public static final String EXTRA_CAPTIVE_PORTAL_USER_AGENT = "android.net.extra.CAPTIVE_PORTAL_USER_AGENT"; field public static final int TETHERING_BLUETOOTH = 2; // 0x2 field public static final int TETHERING_USB = 1; // 0x1 field public static final int TETHERING_WIFI = 0; // 0x0 - field public static final int TETHER_ERROR_ENTITLEMENT_UNKONWN = 13; // 0xd - field public static final int TETHER_ERROR_NO_ERROR = 0; // 0x0 - field public static final int TETHER_ERROR_PROVISION_FAILED = 11; // 0xb + field @Deprecated public static final int TETHER_ERROR_ENTITLEMENT_UNKONWN = 13; // 0xd + field @Deprecated public static final int TETHER_ERROR_NO_ERROR = 0; // 0x0 + field @Deprecated public static final int TETHER_ERROR_PROVISION_FAILED = 11; // 0xb + field public static final int TYPE_NONE = -1; // 0xffffffff + field @Deprecated public static final int TYPE_WIFI_P2P = 13; // 0xd } - public abstract static class ConnectivityManager.OnStartTetheringCallback { - ctor public ConnectivityManager.OnStartTetheringCallback(); - method public void onTetheringFailed(); - method public void onTetheringStarted(); + @Deprecated public abstract static class ConnectivityManager.OnStartTetheringCallback { + ctor @Deprecated public ConnectivityManager.OnStartTetheringCallback(); + method @Deprecated public void onTetheringFailed(); + method @Deprecated public void onTetheringStarted(); } - public static interface ConnectivityManager.OnTetheringEntitlementResultListener { - method public void onTetheringEntitlementResult(int); + @Deprecated public static interface ConnectivityManager.OnTetheringEntitlementResultListener { + method @Deprecated public void onTetheringEntitlementResult(int); } - public abstract static class ConnectivityManager.OnTetheringEventCallback { - ctor public ConnectivityManager.OnTetheringEventCallback(); - method public void onUpstreamChanged(@Nullable android.net.Network); + @Deprecated public abstract static class ConnectivityManager.OnTetheringEventCallback { + ctor @Deprecated public ConnectivityManager.OnTetheringEventCallback(); + method @Deprecated public void onUpstreamChanged(@Nullable android.net.Network); + } + + public class EthernetManager { + method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public android.net.EthernetManager.TetheredInterfaceRequest requestTetheredInterface(@NonNull java.util.concurrent.Executor, @NonNull android.net.EthernetManager.TetheredInterfaceCallback); + } + + public static interface EthernetManager.TetheredInterfaceCallback { + method public void onAvailable(@NonNull String); + method public void onUnavailable(); + } + + public static class EthernetManager.TetheredInterfaceRequest { + method public void release(); + } + + public final class InvalidPacketException extends java.lang.Exception { + ctor public InvalidPacketException(int); + method public int getError(); + field public static final int ERROR_INVALID_IP_ADDRESS = -21; // 0xffffffeb + field public static final int ERROR_INVALID_LENGTH = -23; // 0xffffffe9 + field public static final int ERROR_INVALID_PORT = -22; // 0xffffffea + } + + public final class IpConfiguration implements android.os.Parcelable { + ctor public IpConfiguration(); + ctor public IpConfiguration(@NonNull android.net.IpConfiguration); + method public int describeContents(); + method @Nullable public android.net.ProxyInfo getHttpProxy(); + method @NonNull public android.net.IpConfiguration.IpAssignment getIpAssignment(); + method @NonNull public android.net.IpConfiguration.ProxySettings getProxySettings(); + method @Nullable public android.net.StaticIpConfiguration getStaticIpConfiguration(); + method public void setHttpProxy(@Nullable android.net.ProxyInfo); + method public void setIpAssignment(@NonNull android.net.IpConfiguration.IpAssignment); + method public void setProxySettings(@NonNull android.net.IpConfiguration.ProxySettings); + method public void setStaticIpConfiguration(@Nullable android.net.StaticIpConfiguration); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.net.IpConfiguration> CREATOR; + } + + public enum IpConfiguration.IpAssignment { + enum_constant public static final android.net.IpConfiguration.IpAssignment DHCP; + enum_constant public static final android.net.IpConfiguration.IpAssignment STATIC; + enum_constant public static final android.net.IpConfiguration.IpAssignment UNASSIGNED; + } + + public enum IpConfiguration.ProxySettings { + enum_constant public static final android.net.IpConfiguration.ProxySettings NONE; + enum_constant public static final android.net.IpConfiguration.ProxySettings PAC; + enum_constant public static final android.net.IpConfiguration.ProxySettings STATIC; + enum_constant public static final android.net.IpConfiguration.ProxySettings UNASSIGNED; } public final class IpPrefix implements android.os.Parcelable { @@ -4062,28 +6121,52 @@ package android.net { method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_IPSEC_TUNNELS) public android.net.IpSecTransform buildTunnelModeTransform(@NonNull java.net.InetAddress, @NonNull android.net.IpSecManager.SecurityParameterIndex) throws java.io.IOException, android.net.IpSecManager.ResourceUnavailableException, android.net.IpSecManager.SpiUnavailableException; } + public class KeepalivePacketData { + ctor protected KeepalivePacketData(@NonNull java.net.InetAddress, @IntRange(from=0, to=65535) int, @NonNull java.net.InetAddress, @IntRange(from=0, to=65535) int, @NonNull byte[]) throws android.net.InvalidPacketException; + method @NonNull public java.net.InetAddress getDstAddress(); + method public int getDstPort(); + method @NonNull public byte[] getPacket(); + method @NonNull public java.net.InetAddress getSrcAddress(); + method public int getSrcPort(); + } + public class LinkAddress implements android.os.Parcelable { ctor public LinkAddress(@NonNull java.net.InetAddress, @IntRange(from=0, to=128) int, int, int); + ctor public LinkAddress(@NonNull java.net.InetAddress, @IntRange(from=0, to=128) int, int, int, long, long); ctor public LinkAddress(@NonNull java.net.InetAddress, @IntRange(from=0, to=128) int); ctor public LinkAddress(@NonNull String); ctor public LinkAddress(@NonNull String, int, int); + method public long getDeprecationTime(); + method public long getExpirationTime(); method public boolean isGlobalPreferred(); method public boolean isIpv4(); method public boolean isIpv6(); method public boolean isSameAddressAs(@Nullable android.net.LinkAddress); + field public static final long LIFETIME_PERMANENT = 9223372036854775807L; // 0x7fffffffffffffffL + field public static final long LIFETIME_UNKNOWN = -1L; // 0xffffffffffffffffL } public final class LinkProperties implements android.os.Parcelable { ctor public LinkProperties(@Nullable android.net.LinkProperties); + ctor public LinkProperties(@Nullable android.net.LinkProperties, boolean); method public boolean addDnsServer(@NonNull java.net.InetAddress); method public boolean addLinkAddress(@NonNull android.net.LinkAddress); - method @Nullable public android.net.IpPrefix getNat64Prefix(); + method public boolean addPcscfServer(@NonNull java.net.InetAddress); + method @NonNull public java.util.List<java.net.InetAddress> getAddresses(); + method @NonNull public java.util.List<java.lang.String> getAllInterfaceNames(); + method @NonNull public java.util.List<android.net.LinkAddress> getAllLinkAddresses(); + method @NonNull public java.util.List<android.net.RouteInfo> getAllRoutes(); + method @Nullable public android.net.Uri getCaptivePortalApiUrl(); + method @Nullable public android.net.CaptivePortalData getCaptivePortalData(); method @NonNull public java.util.List<java.net.InetAddress> getPcscfServers(); method @Nullable public String getTcpBufferSizes(); method @NonNull public java.util.List<java.net.InetAddress> getValidatedPrivateDnsServers(); method public boolean hasGlobalIpv6Address(); method public boolean hasIpv4Address(); + method public boolean hasIpv4DefaultRoute(); + method public boolean hasIpv4DnsServer(); method public boolean hasIpv6DefaultRoute(); + method public boolean hasIpv6DnsServer(); method public boolean isIpv4Provisioned(); method public boolean isIpv6Provisioned(); method public boolean isProvisioned(); @@ -4091,7 +6174,8 @@ package android.net { method public boolean removeDnsServer(@NonNull java.net.InetAddress); method public boolean removeLinkAddress(@NonNull android.net.LinkAddress); method public boolean removeRoute(@NonNull android.net.RouteInfo); - method public void setNat64Prefix(@Nullable android.net.IpPrefix); + method public void setCaptivePortalApiUrl(@Nullable android.net.Uri); + method public void setCaptivePortalData(@Nullable android.net.CaptivePortalData); method public void setPcscfServers(@NonNull java.util.Collection<java.net.InetAddress>); method public void setPrivateDnsServerName(@Nullable String); method public void setTcpBufferSizes(@Nullable String); @@ -4099,20 +6183,102 @@ package android.net { method public void setValidatedPrivateDnsServers(@NonNull java.util.Collection<java.net.InetAddress>); } + public final class MatchAllNetworkSpecifier extends android.net.NetworkSpecifier implements android.os.Parcelable { + ctor public MatchAllNetworkSpecifier(); + method public int describeContents(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.net.MatchAllNetworkSpecifier> CREATOR; + } + + public final class NattKeepalivePacketData extends android.net.KeepalivePacketData implements android.os.Parcelable { + ctor public NattKeepalivePacketData(@NonNull java.net.InetAddress, int, @NonNull java.net.InetAddress, int, @NonNull byte[]) throws android.net.InvalidPacketException; + method public int describeContents(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.net.NattKeepalivePacketData> CREATOR; + } + public class Network implements android.os.Parcelable { ctor public Network(@NonNull android.net.Network); + method public int getNetId(); method @NonNull public android.net.Network getPrivateDnsBypassingCopy(); } + public abstract class NetworkAgent { + ctor public NetworkAgent(@NonNull android.content.Context, @NonNull android.os.Looper, @NonNull String, @NonNull android.net.NetworkCapabilities, @NonNull android.net.LinkProperties, int, @NonNull android.net.NetworkAgentConfig, @Nullable android.net.NetworkProvider); + method @Nullable public android.net.Network getNetwork(); + method public void markConnected(); + method public void onAddKeepalivePacketFilter(int, @NonNull android.net.KeepalivePacketData); + method public void onAutomaticReconnectDisabled(); + method public void onNetworkUnwanted(); + method public void onRemoveKeepalivePacketFilter(int); + method public void onSaveAcceptUnvalidated(boolean); + method public void onSignalStrengthThresholdsUpdated(@NonNull int[]); + method public void onStartSocketKeepalive(int, @NonNull java.time.Duration, @NonNull android.net.KeepalivePacketData); + method public void onStopSocketKeepalive(int); + method public void onValidationStatus(int, @Nullable android.net.Uri); + method @NonNull public android.net.Network register(); + method public final void sendLinkProperties(@NonNull android.net.LinkProperties); + method public final void sendNetworkCapabilities(@NonNull android.net.NetworkCapabilities); + method public final void sendNetworkScore(@IntRange(from=0, to=99) int); + method public final void sendSocketKeepaliveEvent(int, int); + method public void unregister(); + field public static final int VALIDATION_STATUS_NOT_VALID = 2; // 0x2 + field public static final int VALIDATION_STATUS_VALID = 1; // 0x1 + } + + public final class NetworkAgentConfig implements android.os.Parcelable { + method public int describeContents(); + method public int getLegacyType(); + method @NonNull public String getLegacyTypeName(); + method public boolean isExplicitlySelected(); + method public boolean isPartialConnectivityAcceptable(); + method public boolean isUnvalidatedConnectivityAcceptable(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.net.NetworkAgentConfig> CREATOR; + } + + public static final class NetworkAgentConfig.Builder { + ctor public NetworkAgentConfig.Builder(); + method @NonNull public android.net.NetworkAgentConfig build(); + method @NonNull public android.net.NetworkAgentConfig.Builder setExplicitlySelected(boolean); + method @NonNull public android.net.NetworkAgentConfig.Builder setLegacyType(int); + method @NonNull public android.net.NetworkAgentConfig.Builder setLegacyTypeName(@NonNull String); + method @NonNull public android.net.NetworkAgentConfig.Builder setPartialConnectivityAcceptable(boolean); + method @NonNull public android.net.NetworkAgentConfig.Builder setUnvalidatedConnectivityAcceptable(boolean); + } + public final class NetworkCapabilities implements android.os.Parcelable { + method @NonNull public int[] getAdministratorUids(); + method @Nullable public String getSsid(); method @NonNull public int[] getTransportTypes(); method public boolean satisfiedByNetworkCapabilities(@Nullable android.net.NetworkCapabilities); field public static final int NET_CAPABILITY_OEM_PAID = 22; // 0x16 field public static final int NET_CAPABILITY_PARTIAL_CONNECTIVITY = 24; // 0x18 } + public static final class NetworkCapabilities.Builder { + ctor public NetworkCapabilities.Builder(); + ctor public NetworkCapabilities.Builder(@NonNull android.net.NetworkCapabilities); + method @NonNull public android.net.NetworkCapabilities.Builder addCapability(int); + method @NonNull public android.net.NetworkCapabilities.Builder addTransportType(int); + method @NonNull public android.net.NetworkCapabilities build(); + method @NonNull public android.net.NetworkCapabilities.Builder removeCapability(int); + method @NonNull public android.net.NetworkCapabilities.Builder removeTransportType(int); + method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public android.net.NetworkCapabilities.Builder setAdministratorUids(@NonNull int[]); + method @NonNull public android.net.NetworkCapabilities.Builder setLinkDownstreamBandwidthKbps(int); + method @NonNull public android.net.NetworkCapabilities.Builder setLinkUpstreamBandwidthKbps(int); + method @NonNull public android.net.NetworkCapabilities.Builder setNetworkSpecifier(@Nullable android.net.NetworkSpecifier); + method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public android.net.NetworkCapabilities.Builder setOwnerUid(int); + method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public android.net.NetworkCapabilities.Builder setRequestorPackageName(@Nullable String); + method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public android.net.NetworkCapabilities.Builder setRequestorUid(int); + method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_SIGNAL_STRENGTH_WAKEUP) public android.net.NetworkCapabilities.Builder setSignalStrength(int); + method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public android.net.NetworkCapabilities.Builder setSsid(@Nullable String); + method @NonNull public android.net.NetworkCapabilities.Builder setTransportInfo(@Nullable android.net.TransportInfo); + } + public class NetworkKey implements android.os.Parcelable { ctor public NetworkKey(android.net.WifiKey); + method @Nullable public static android.net.NetworkKey createFromScanResult(@NonNull android.net.wifi.ScanResult); method public int describeContents(); method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.net.NetworkKey> CREATOR; @@ -4121,38 +6287,97 @@ package android.net { field public final android.net.WifiKey wifiKey; } + public class NetworkProvider { + ctor public NetworkProvider(@NonNull android.content.Context, @NonNull android.os.Looper, @NonNull String); + method @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public void declareNetworkRequestUnfulfillable(@NonNull android.net.NetworkRequest); + method public int getProviderId(); + method public void onNetworkRequestWithdrawn(@NonNull android.net.NetworkRequest); + method public void onNetworkRequested(@NonNull android.net.NetworkRequest, @IntRange(from=0, to=99) int, int); + field public static final int ID_NONE = -1; // 0xffffffff + } + public abstract class NetworkRecommendationProvider { ctor public NetworkRecommendationProvider(android.content.Context, java.util.concurrent.Executor); method public final android.os.IBinder getBinder(); method public abstract void onRequestScores(android.net.NetworkKey[]); } + public class NetworkRequest implements android.os.Parcelable { + method @Nullable public String getRequestorPackageName(); + method public int getRequestorUid(); + } + public static class NetworkRequest.Builder { method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_SIGNAL_STRENGTH_WAKEUP) public android.net.NetworkRequest.Builder setSignalStrength(int); } public class NetworkScoreManager { - method @RequiresPermission(anyOf={android.Manifest.permission.SCORE_NETWORKS, "android.permission.REQUEST_NETWORK_SCORES"}) public boolean clearScores() throws java.lang.SecurityException; - method @RequiresPermission(anyOf={android.Manifest.permission.SCORE_NETWORKS, "android.permission.REQUEST_NETWORK_SCORES"}) public void disableScoring() throws java.lang.SecurityException; - method @RequiresPermission(anyOf={android.Manifest.permission.SCORE_NETWORKS, "android.permission.REQUEST_NETWORK_SCORES"}) public String getActiveScorerPackage(); - method @RequiresPermission(anyOf={android.Manifest.permission.SCORE_NETWORKS, "android.permission.REQUEST_NETWORK_SCORES"}) public boolean setActiveScorer(String) throws java.lang.SecurityException; - method @RequiresPermission(android.Manifest.permission.SCORE_NETWORKS) public boolean updateScores(android.net.ScoredNetwork[]) throws java.lang.SecurityException; - field public static final String ACTION_CHANGE_ACTIVE = "android.net.scoring.CHANGE_ACTIVE"; + method @RequiresPermission(anyOf={android.Manifest.permission.SCORE_NETWORKS, android.Manifest.permission.REQUEST_NETWORK_SCORES}) public boolean clearScores() throws java.lang.SecurityException; + method @RequiresPermission(anyOf={android.Manifest.permission.SCORE_NETWORKS, android.Manifest.permission.REQUEST_NETWORK_SCORES}) public void disableScoring() throws java.lang.SecurityException; + method @RequiresPermission(anyOf={android.Manifest.permission.SCORE_NETWORKS, android.Manifest.permission.REQUEST_NETWORK_SCORES}) public String getActiveScorerPackage(); + method @RequiresPermission(android.Manifest.permission.REQUEST_NETWORK_SCORES) public void registerNetworkScoreCallback(int, int, @NonNull java.util.concurrent.Executor, @NonNull android.net.NetworkScoreManager.NetworkScoreCallback) throws java.lang.SecurityException; + method @RequiresPermission(android.Manifest.permission.REQUEST_NETWORK_SCORES) public boolean requestScores(@NonNull java.util.Collection<android.net.NetworkKey>) throws java.lang.SecurityException; + method @RequiresPermission(anyOf={android.Manifest.permission.SCORE_NETWORKS, android.Manifest.permission.REQUEST_NETWORK_SCORES}) public boolean setActiveScorer(String) throws java.lang.SecurityException; + method @RequiresPermission(android.Manifest.permission.SCORE_NETWORKS) public boolean updateScores(@NonNull android.net.ScoredNetwork[]) throws java.lang.SecurityException; + field @Deprecated public static final String ACTION_CHANGE_ACTIVE = "android.net.scoring.CHANGE_ACTIVE"; field public static final String ACTION_CUSTOM_ENABLE = "android.net.scoring.CUSTOM_ENABLE"; field public static final String ACTION_RECOMMEND_NETWORKS = "android.net.action.RECOMMEND_NETWORKS"; field public static final String ACTION_SCORER_CHANGED = "android.net.scoring.SCORER_CHANGED"; - field public static final String ACTION_SCORE_NETWORKS = "android.net.scoring.SCORE_NETWORKS"; - field public static final String EXTRA_NETWORKS_TO_SCORE = "networksToScore"; + field @Deprecated public static final String ACTION_SCORE_NETWORKS = "android.net.scoring.SCORE_NETWORKS"; + field @Deprecated public static final String EXTRA_NETWORKS_TO_SCORE = "networksToScore"; field public static final String EXTRA_NEW_SCORER = "newScorer"; - field public static final String EXTRA_PACKAGE_NAME = "packageName"; + field @Deprecated public static final String EXTRA_PACKAGE_NAME = "packageName"; + field public static final int SCORE_FILTER_CURRENT_NETWORK = 1; // 0x1 + field public static final int SCORE_FILTER_NONE = 0; // 0x0 + field public static final int SCORE_FILTER_SCAN_RESULTS = 2; // 0x2 + } + + public abstract static class NetworkScoreManager.NetworkScoreCallback { + ctor public NetworkScoreManager.NetworkScoreCallback(); + method public abstract void onScoresInvalidated(); + method public abstract void onScoresUpdated(@NonNull java.util.Collection<android.net.ScoredNetwork>); + } + + public abstract class NetworkSpecifier { + method public boolean canBeSatisfiedBy(@Nullable android.net.NetworkSpecifier); + method @Nullable public android.net.NetworkSpecifier redact(); } public class NetworkStack { + method @Nullable public static android.os.IBinder getService(); field public static final String PERMISSION_MAINLINE_NETWORK_STACK = "android.permission.MAINLINE_NETWORK_STACK"; } + public final class NetworkStats implements android.os.Parcelable { + ctor public NetworkStats(long, int); + method @NonNull public android.net.NetworkStats add(@NonNull android.net.NetworkStats); + method @NonNull public android.net.NetworkStats addEntry(@NonNull android.net.NetworkStats.Entry); + method public int describeContents(); + method @NonNull public android.net.NetworkStats subtract(@NonNull android.net.NetworkStats); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.net.NetworkStats> CREATOR; + field public static final int DEFAULT_NETWORK_NO = 0; // 0x0 + field public static final int DEFAULT_NETWORK_YES = 1; // 0x1 + field public static final String IFACE_VT = "vt_data0"; + field public static final int METERED_NO = 0; // 0x0 + field public static final int METERED_YES = 1; // 0x1 + field public static final int ROAMING_NO = 0; // 0x0 + field public static final int ROAMING_YES = 1; // 0x1 + field public static final int SET_DEFAULT = 0; // 0x0 + field public static final int SET_FOREGROUND = 1; // 0x1 + field public static final int TAG_NONE = 0; // 0x0 + field public static final int UID_ALL = -1; // 0xffffffff + field public static final int UID_TETHERING = -5; // 0xfffffffb + } + + public static class NetworkStats.Entry { + ctor public NetworkStats.Entry(@Nullable String, int, int, int, int, int, int, long, long, long, long, long); + } + public final class RouteInfo implements android.os.Parcelable { ctor public RouteInfo(@Nullable android.net.IpPrefix, @Nullable java.net.InetAddress, @Nullable String, int); + ctor public RouteInfo(@Nullable android.net.IpPrefix, @Nullable java.net.InetAddress, @Nullable String, int, int); + method public int getMtu(); method public int getType(); field public static final int RTN_THROW = 9; // 0x9 field public static final int RTN_UNICAST = 1; // 0x1 @@ -4190,6 +6415,10 @@ package android.net { field public final android.net.RssiCurve rssiCurve; } + public abstract class SocketKeepalive implements java.lang.AutoCloseable { + field public static final int SUCCESS = 0; // 0x0 + } + public final class StaticIpConfiguration implements android.os.Parcelable { ctor public StaticIpConfiguration(); ctor public StaticIpConfiguration(@Nullable android.net.StaticIpConfiguration); @@ -4214,6 +6443,100 @@ package android.net { method @NonNull public android.net.StaticIpConfiguration.Builder setIpAddress(@Nullable android.net.LinkAddress); } + public final class TetheredClient implements android.os.Parcelable { + ctor public TetheredClient(@NonNull android.net.MacAddress, @NonNull java.util.Collection<android.net.TetheredClient.AddressInfo>, int); + method public int describeContents(); + method @NonNull public java.util.List<android.net.TetheredClient.AddressInfo> getAddresses(); + method @NonNull public android.net.MacAddress getMacAddress(); + method public int getTetheringType(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.net.TetheredClient> CREATOR; + } + + public static final class TetheredClient.AddressInfo implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.net.LinkAddress getAddress(); + method @Nullable public String getHostname(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.net.TetheredClient.AddressInfo> CREATOR; + } + + public class TetheringManager { + method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public void registerTetheringEventCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.TetheringManager.TetheringEventCallback); + method @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.WRITE_SETTINGS}) public void requestLatestTetheringEntitlementResult(int, boolean, @NonNull java.util.concurrent.Executor, @NonNull android.net.TetheringManager.OnTetheringEntitlementResultListener); + method @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.WRITE_SETTINGS}) public void startTethering(@NonNull android.net.TetheringManager.TetheringRequest, @NonNull java.util.concurrent.Executor, @NonNull android.net.TetheringManager.StartTetheringCallback); + method @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.WRITE_SETTINGS}) public void stopAllTethering(); + method @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.WRITE_SETTINGS}) public void stopTethering(int); + method @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.ACCESS_NETWORK_STATE}) public void unregisterTetheringEventCallback(@NonNull android.net.TetheringManager.TetheringEventCallback); + field public static final String ACTION_TETHER_STATE_CHANGED = "android.net.conn.TETHER_STATE_CHANGED"; + field public static final String EXTRA_ACTIVE_LOCAL_ONLY = "android.net.extra.ACTIVE_LOCAL_ONLY"; + field public static final String EXTRA_ACTIVE_TETHER = "tetherArray"; + field public static final String EXTRA_AVAILABLE_TETHER = "availableArray"; + field public static final String EXTRA_ERRORED_TETHER = "erroredArray"; + field public static final int TETHERING_BLUETOOTH = 2; // 0x2 + field public static final int TETHERING_ETHERNET = 5; // 0x5 + field public static final int TETHERING_INVALID = -1; // 0xffffffff + field public static final int TETHERING_NCM = 4; // 0x4 + field public static final int TETHERING_USB = 1; // 0x1 + field public static final int TETHERING_WIFI = 0; // 0x0 + field public static final int TETHERING_WIFI_P2P = 3; // 0x3 + field public static final int TETHER_ERROR_DHCPSERVER_ERROR = 12; // 0xc + field public static final int TETHER_ERROR_DISABLE_FORWARDING_ERROR = 9; // 0x9 + field public static final int TETHER_ERROR_ENABLE_FORWARDING_ERROR = 8; // 0x8 + field public static final int TETHER_ERROR_ENTITLEMENT_UNKNOWN = 13; // 0xd + field public static final int TETHER_ERROR_IFACE_CFG_ERROR = 10; // 0xa + field public static final int TETHER_ERROR_INTERNAL_ERROR = 5; // 0x5 + field public static final int TETHER_ERROR_NO_ACCESS_TETHERING_PERMISSION = 15; // 0xf + field public static final int TETHER_ERROR_NO_CHANGE_TETHERING_PERMISSION = 14; // 0xe + field public static final int TETHER_ERROR_NO_ERROR = 0; // 0x0 + field public static final int TETHER_ERROR_PROVISIONING_FAILED = 11; // 0xb + field public static final int TETHER_ERROR_SERVICE_UNAVAIL = 2; // 0x2 + field public static final int TETHER_ERROR_TETHER_IFACE_ERROR = 6; // 0x6 + field public static final int TETHER_ERROR_UNAVAIL_IFACE = 4; // 0x4 + field public static final int TETHER_ERROR_UNKNOWN_IFACE = 1; // 0x1 + field public static final int TETHER_ERROR_UNKNOWN_TYPE = 16; // 0x10 + field public static final int TETHER_ERROR_UNSUPPORTED = 3; // 0x3 + field public static final int TETHER_ERROR_UNTETHER_IFACE_ERROR = 7; // 0x7 + field public static final int TETHER_HARDWARE_OFFLOAD_FAILED = 2; // 0x2 + field public static final int TETHER_HARDWARE_OFFLOAD_STARTED = 1; // 0x1 + field public static final int TETHER_HARDWARE_OFFLOAD_STOPPED = 0; // 0x0 + } + + public static interface TetheringManager.OnTetheringEntitlementResultListener { + method public void onTetheringEntitlementResult(int); + } + + public static interface TetheringManager.StartTetheringCallback { + method public default void onTetheringFailed(int); + method public default void onTetheringStarted(); + } + + public static interface TetheringManager.TetheringEventCallback { + method public default void onClientsChanged(@NonNull java.util.Collection<android.net.TetheredClient>); + method public default void onError(@NonNull String, int); + method public default void onOffloadStatusChanged(int); + method public default void onTetherableInterfacesChanged(@NonNull java.util.List<java.lang.String>); + method public default void onTetheredInterfacesChanged(@NonNull java.util.List<java.lang.String>); + method public default void onTetheringSupported(boolean); + method public default void onUpstreamChanged(@Nullable android.net.Network); + } + + public static class TetheringManager.TetheringRequest { + method @Nullable public android.net.LinkAddress getClientStaticIpv4Address(); + method @Nullable public android.net.LinkAddress getLocalIpv4Address(); + method public boolean getShouldShowEntitlementUi(); + method public int getTetheringType(); + method public boolean isExemptFromEntitlementCheck(); + } + + public static class TetheringManager.TetheringRequest.Builder { + ctor public TetheringManager.TetheringRequest.Builder(int); + method @NonNull public android.net.TetheringManager.TetheringRequest build(); + method @NonNull @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public android.net.TetheringManager.TetheringRequest.Builder setExemptFromEntitlementCheck(boolean); + method @NonNull @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public android.net.TetheringManager.TetheringRequest.Builder setShouldShowEntitlementUi(boolean); + method @NonNull @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public android.net.TetheringManager.TetheringRequest.Builder setStaticIpv4Addresses(@NonNull android.net.LinkAddress, @NonNull android.net.LinkAddress); + } + public class TrafficStats { method public static void setThreadStatsTagApp(); method public static void setThreadStatsTagBackup(); @@ -4423,6 +6746,43 @@ package android.net.metrics { } +package android.net.netstats.provider { + + public abstract class NetworkStatsProvider { + ctor public NetworkStatsProvider(); + method public void notifyAlertReached(); + method public void notifyLimitReached(); + method public void notifyStatsUpdated(int, @NonNull android.net.NetworkStats, @NonNull android.net.NetworkStats); + method public abstract void onRequestStatsUpdate(int); + method public abstract void onSetAlert(long); + method public abstract void onSetLimit(@NonNull String, long); + field public static final int QUOTA_UNLIMITED = -1; // 0xffffffff + } + +} + +package android.net.sip { + + public class SipAudioCall { + method @Nullable public android.net.rtp.AudioGroup getAudioGroup(); + method public void setAudioGroup(@NonNull android.net.rtp.AudioGroup); + } + + public class SipManager { + method @NonNull public java.util.List<android.net.sip.SipProfile> getProfiles() throws android.net.sip.SipException; + field public static final String ACTION_SIP_CALL_OPTION_CHANGED = "android.net.sip.action.SIP_CALL_OPTION_CHANGED"; + field public static final String ACTION_SIP_INCOMING_CALL = "android.net.sip.action.SIP_INCOMING_CALL"; + field public static final String ACTION_SIP_REMOVE_PROFILE = "android.net.sip.action.SIP_REMOVE_PROFILE"; + field public static final String ACTION_SIP_SERVICE_UP = "android.net.sip.action.SIP_SERVICE_UP"; + field public static final String ACTION_START_SIP = "android.net.sip.action.START_SIP"; + } + + public class SipProfile implements java.lang.Cloneable android.os.Parcelable java.io.Serializable { + method public int getCallingUid(); + } + +} + package android.net.util { public final class SocketUtils { @@ -4430,7 +6790,8 @@ package android.net.util { method public static void closeSocket(@Nullable java.io.FileDescriptor) throws java.io.IOException; method @NonNull public static java.net.SocketAddress makeNetlinkSocketAddress(int, int); method @NonNull public static java.net.SocketAddress makePacketSocketAddress(int, int); - method @NonNull public static java.net.SocketAddress makePacketSocketAddress(int, @NonNull byte[]); + method @Deprecated @NonNull public static java.net.SocketAddress makePacketSocketAddress(int, @NonNull byte[]); + method @NonNull public static java.net.SocketAddress makePacketSocketAddress(int, int, @NonNull byte[]); } } @@ -4441,19 +6802,14 @@ package android.net.wifi { ctor public EasyConnectStatusCallback(); method public abstract void onConfiguratorSuccess(int); method public abstract void onEnrolleeSuccess(int); - method public abstract void onFailure(int); + method public void onFailure(int); + method public void onFailure(int, @Nullable String, @NonNull android.util.SparseArray<int[]>, @NonNull int[]); method public abstract void onProgress(int); - field public static final int EASY_CONNECT_EVENT_FAILURE_AUTHENTICATION = -2; // 0xfffffffe - field public static final int EASY_CONNECT_EVENT_FAILURE_BUSY = -5; // 0xfffffffb - field public static final int EASY_CONNECT_EVENT_FAILURE_CONFIGURATION = -4; // 0xfffffffc - field public static final int EASY_CONNECT_EVENT_FAILURE_GENERIC = -7; // 0xfffffff9 - field public static final int EASY_CONNECT_EVENT_FAILURE_INVALID_NETWORK = -9; // 0xfffffff7 - field public static final int EASY_CONNECT_EVENT_FAILURE_INVALID_URI = -1; // 0xffffffff - field public static final int EASY_CONNECT_EVENT_FAILURE_NOT_COMPATIBLE = -3; // 0xfffffffd - field public static final int EASY_CONNECT_EVENT_FAILURE_NOT_SUPPORTED = -8; // 0xfffffff8 - field public static final int EASY_CONNECT_EVENT_FAILURE_TIMEOUT = -6; // 0xfffffffa field public static final int EASY_CONNECT_EVENT_PROGRESS_AUTHENTICATION_SUCCESS = 0; // 0x0 + field public static final int EASY_CONNECT_EVENT_PROGRESS_CONFIGURATION_ACCEPTED = 3; // 0x3 + field public static final int EASY_CONNECT_EVENT_PROGRESS_CONFIGURATION_SENT_WAITING_RESPONSE = 2; // 0x2 field public static final int EASY_CONNECT_EVENT_PROGRESS_RESPONSE_PENDING = 1; // 0x1 + field public static final int EASY_CONNECT_EVENT_SUCCESS_CONFIGURATION_APPLIED = 1; // 0x1 field public static final int EASY_CONNECT_EVENT_SUCCESS_CONFIGURATION_SENT = 0; // 0x0 } @@ -4649,56 +7005,284 @@ package android.net.wifi { field @Deprecated public byte id; } + public final class ScanResult implements android.os.Parcelable { + field public static final int CIPHER_CCMP = 3; // 0x3 + field public static final int CIPHER_GCMP_256 = 4; // 0x4 + field public static final int CIPHER_NONE = 0; // 0x0 + field public static final int CIPHER_NO_GROUP_ADDRESSED = 1; // 0x1 + field public static final int CIPHER_SMS4 = 5; // 0x5 + field public static final int CIPHER_TKIP = 2; // 0x2 + field public static final int KEY_MGMT_EAP = 2; // 0x2 + field public static final int KEY_MGMT_EAP_SHA256 = 6; // 0x6 + field public static final int KEY_MGMT_EAP_SUITE_B_192 = 10; // 0xa + field public static final int KEY_MGMT_FT_EAP = 4; // 0x4 + field public static final int KEY_MGMT_FT_PSK = 3; // 0x3 + field public static final int KEY_MGMT_FT_SAE = 11; // 0xb + field public static final int KEY_MGMT_NONE = 0; // 0x0 + field public static final int KEY_MGMT_OSEN = 7; // 0x7 + field public static final int KEY_MGMT_OWE = 9; // 0x9 + field public static final int KEY_MGMT_OWE_TRANSITION = 12; // 0xc + field public static final int KEY_MGMT_PSK = 1; // 0x1 + field public static final int KEY_MGMT_PSK_SHA256 = 5; // 0x5 + field public static final int KEY_MGMT_SAE = 8; // 0x8 + field public static final int KEY_MGMT_WAPI_CERT = 14; // 0xe + field public static final int KEY_MGMT_WAPI_PSK = 13; // 0xd + field public static final int PROTOCOL_NONE = 0; // 0x0 + field public static final int PROTOCOL_OSEN = 3; // 0x3 + field public static final int PROTOCOL_RSN = 2; // 0x2 + field public static final int PROTOCOL_WAPI = 4; // 0x4 + field public static final int PROTOCOL_WPA = 1; // 0x1 + } + + public final class SoftApCapability implements android.os.Parcelable { + method public boolean areFeaturesSupported(long); + method public int describeContents(); + method public int getMaxSupportedClients(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.SoftApCapability> CREATOR; + field public static final long SOFTAP_FEATURE_ACS_OFFLOAD = 1L; // 0x1L + field public static final long SOFTAP_FEATURE_CLIENT_FORCE_DISCONNECT = 2L; // 0x2L + field public static final long SOFTAP_FEATURE_WPA3_SAE = 4L; // 0x4L + } + + public final class SoftApConfiguration implements android.os.Parcelable { + method @NonNull public java.util.List<android.net.MacAddress> getAllowedClientList(); + method public int getBand(); + method @NonNull public java.util.List<android.net.MacAddress> getBlockedClientList(); + method public int getChannel(); + method public int getMaxNumberOfClients(); + method public long getShutdownTimeoutMillis(); + method public boolean isAutoShutdownEnabled(); + method public boolean isClientControlByUserEnabled(); + method @Nullable public android.net.wifi.WifiConfiguration toWifiConfiguration(); + field public static final int BAND_2GHZ = 1; // 0x1 + field public static final int BAND_5GHZ = 2; // 0x2 + field public static final int BAND_6GHZ = 4; // 0x4 + field public static final int BAND_ANY = 7; // 0x7 + } + + public static final class SoftApConfiguration.Builder { + ctor public SoftApConfiguration.Builder(); + ctor public SoftApConfiguration.Builder(@NonNull android.net.wifi.SoftApConfiguration); + method @NonNull public android.net.wifi.SoftApConfiguration build(); + method @NonNull public android.net.wifi.SoftApConfiguration.Builder setAllowedClientList(@NonNull java.util.List<android.net.MacAddress>); + method @NonNull public android.net.wifi.SoftApConfiguration.Builder setAutoShutdownEnabled(boolean); + method @NonNull public android.net.wifi.SoftApConfiguration.Builder setBand(int); + method @NonNull public android.net.wifi.SoftApConfiguration.Builder setBlockedClientList(@NonNull java.util.List<android.net.MacAddress>); + method @NonNull public android.net.wifi.SoftApConfiguration.Builder setBssid(@Nullable android.net.MacAddress); + method @NonNull public android.net.wifi.SoftApConfiguration.Builder setChannel(int, int); + method @NonNull public android.net.wifi.SoftApConfiguration.Builder setClientControlByUserEnabled(boolean); + method @NonNull public android.net.wifi.SoftApConfiguration.Builder setHiddenSsid(boolean); + method @NonNull public android.net.wifi.SoftApConfiguration.Builder setMaxNumberOfClients(@IntRange(from=0) int); + method @NonNull public android.net.wifi.SoftApConfiguration.Builder setPassphrase(@Nullable String, int); + method @NonNull public android.net.wifi.SoftApConfiguration.Builder setShutdownTimeoutMillis(@IntRange(from=0) long); + method @NonNull public android.net.wifi.SoftApConfiguration.Builder setSsid(@Nullable String); + } + + public final class SoftApInfo implements android.os.Parcelable { + method public int describeContents(); + method public int getBandwidth(); + method public int getFrequency(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final int CHANNEL_WIDTH_160MHZ = 6; // 0x6 + field public static final int CHANNEL_WIDTH_20MHZ = 2; // 0x2 + field public static final int CHANNEL_WIDTH_20MHZ_NOHT = 1; // 0x1 + field public static final int CHANNEL_WIDTH_40MHZ = 3; // 0x3 + field public static final int CHANNEL_WIDTH_80MHZ = 4; // 0x4 + field public static final int CHANNEL_WIDTH_80MHZ_PLUS_MHZ = 5; // 0x5 + field public static final int CHANNEL_WIDTH_INVALID = 0; // 0x0 + field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.SoftApInfo> CREATOR; + } + + public final class WifiClient implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.net.MacAddress getMacAddress(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiClient> CREATOR; + } + @Deprecated public class WifiConfiguration implements android.os.Parcelable { + method @Deprecated public int getAuthType(); + method @Deprecated @NonNull public android.net.IpConfiguration getIpConfiguration(); + method @Deprecated @NonNull public android.net.wifi.WifiConfiguration.NetworkSelectionStatus getNetworkSelectionStatus(); + method @Deprecated @NonNull public String getPrintableSsid(); + method @Deprecated public int getRecentFailureReason(); method @Deprecated public boolean hasNoInternetAccess(); method @Deprecated public boolean isEphemeral(); + method @Deprecated public static boolean isMetered(@Nullable android.net.wifi.WifiConfiguration, @Nullable android.net.wifi.WifiInfo); method @Deprecated public boolean isNoInternetAccessExpected(); + method @Deprecated public void setIpConfiguration(@Nullable android.net.IpConfiguration); + method @Deprecated public void setNetworkSelectionStatus(@NonNull android.net.wifi.WifiConfiguration.NetworkSelectionStatus); + field @Deprecated public static final int INVALID_NETWORK_ID = -1; // 0xffffffff + field @Deprecated public static final int METERED_OVERRIDE_METERED = 1; // 0x1 + field @Deprecated public static final int METERED_OVERRIDE_NONE = 0; // 0x0 + field @Deprecated public static final int METERED_OVERRIDE_NOT_METERED = 2; // 0x2 + field @Deprecated public static final int RANDOMIZATION_NONE = 0; // 0x0 + field @Deprecated public static final int RANDOMIZATION_PERSISTENT = 1; // 0x1 + field @Deprecated public static final int RECENT_FAILURE_AP_UNABLE_TO_HANDLE_NEW_STA = 17; // 0x11 + field @Deprecated public static final int RECENT_FAILURE_NONE = 0; // 0x0 + field @Deprecated public boolean allowAutojoin; + field @Deprecated public int carrierId; field @Deprecated public String creatorName; field @Deprecated public int creatorUid; + field @Deprecated public boolean fromWifiNetworkSpecifier; + field @Deprecated public boolean fromWifiNetworkSuggestion; field @Deprecated public String lastUpdateName; field @Deprecated public int lastUpdateUid; + field @Deprecated public int macRandomizationSetting; field @Deprecated public boolean meteredHint; + field @Deprecated public int meteredOverride; field @Deprecated public int numAssociation; field @Deprecated public int numScorerOverride; field @Deprecated public int numScorerOverrideAndSwitchedNetwork; + field @Deprecated public boolean requirePmf; + field @Deprecated public boolean shared; field @Deprecated public boolean useExternalScores; } @Deprecated public static class WifiConfiguration.KeyMgmt { + field @Deprecated public static final int WAPI_CERT = 14; // 0xe + field @Deprecated public static final int WAPI_PSK = 13; // 0xd field @Deprecated public static final int WPA2_PSK = 4; // 0x4 } + @Deprecated public static class WifiConfiguration.NetworkSelectionStatus { + method @Deprecated public int getDisableReasonCounter(int); + method @Deprecated public long getDisableTime(); + method @Deprecated public static int getMaxNetworkSelectionDisableReason(); + method @Deprecated public int getNetworkSelectionDisableReason(); + method @Deprecated @Nullable public static String getNetworkSelectionDisableReasonString(int); + method @Deprecated public int getNetworkSelectionStatus(); + method @Deprecated @NonNull public String getNetworkStatusString(); + method @Deprecated public boolean hasEverConnected(); + field @Deprecated public static final int DISABLED_ASSOCIATION_REJECTION = 1; // 0x1 + field @Deprecated public static final int DISABLED_AUTHENTICATION_FAILURE = 2; // 0x2 + field @Deprecated public static final int DISABLED_AUTHENTICATION_NO_CREDENTIALS = 5; // 0x5 + field @Deprecated public static final int DISABLED_AUTHENTICATION_NO_SUBSCRIPTION = 9; // 0x9 + field @Deprecated public static final int DISABLED_BY_WIFI_MANAGER = 7; // 0x7 + field @Deprecated public static final int DISABLED_BY_WRONG_PASSWORD = 8; // 0x8 + field @Deprecated public static final int DISABLED_DHCP_FAILURE = 3; // 0x3 + field @Deprecated public static final int DISABLED_NONE = 0; // 0x0 + field @Deprecated public static final int DISABLED_NO_INTERNET_PERMANENT = 6; // 0x6 + field @Deprecated public static final int DISABLED_NO_INTERNET_TEMPORARY = 4; // 0x4 + field @Deprecated public static final int NETWORK_SELECTION_ENABLED = 0; // 0x0 + field @Deprecated public static final int NETWORK_SELECTION_PERMANENTLY_DISABLED = 2; // 0x2 + field @Deprecated public static final int NETWORK_SELECTION_TEMPORARY_DISABLED = 1; // 0x1 + } + + @Deprecated public static final class WifiConfiguration.NetworkSelectionStatus.Builder { + ctor @Deprecated public WifiConfiguration.NetworkSelectionStatus.Builder(); + method @Deprecated @NonNull public android.net.wifi.WifiConfiguration.NetworkSelectionStatus build(); + method @Deprecated @NonNull public android.net.wifi.WifiConfiguration.NetworkSelectionStatus.Builder setNetworkSelectionDisableReason(int); + method @Deprecated @NonNull public android.net.wifi.WifiConfiguration.NetworkSelectionStatus.Builder setNetworkSelectionStatus(int); + } + + public class WifiEnterpriseConfig implements android.os.Parcelable { + method @Nullable public String[] getCaCertificateAliases(); + method @NonNull public String getCaPath(); + method @NonNull public String getClientCertificateAlias(); + method public int getOcsp(); + method @NonNull public String getWapiCertSuite(); + method public void setCaCertificateAliases(@Nullable String[]); + method public void setCaPath(@NonNull String); + method public void setClientCertificateAlias(@NonNull String); + method public void setOcsp(int); + method public void setWapiCertSuite(@NonNull String); + field public static final int OCSP_NONE = 0; // 0x0 + field public static final int OCSP_REQUEST_CERT_STATUS = 1; // 0x1 + field public static final int OCSP_REQUIRE_ALL_NON_TRUSTED_CERTS_STATUS = 3; // 0x3 + field public static final int OCSP_REQUIRE_CERT_STATUS = 2; // 0x2 + } + + public class WifiFrameworkInitializer { + method public static void registerServiceWrappers(); + } + public class WifiInfo implements android.os.Parcelable { + method public double getLostTxPacketsPerSecond(); + method @Nullable public String getRequestingPackageName(); + method public double getRetriedTxPacketsPerSecond(); + method public int getScore(); + method public double getSuccessfulRxPacketsPerSecond(); + method public double getSuccessfulTxPacketsPerSecond(); + method public boolean isEphemeral(); method public boolean isOsuAp(); method public boolean isPasspointAp(); + method @Nullable public static String sanitizeSsid(@Nullable String); + field public static final String DEFAULT_MAC_ADDRESS = "02:00:00:00:00:00"; + field public static final int INVALID_RSSI = -127; // 0xffffff81 } public class WifiManager { - method @RequiresPermission("android.permission.WIFI_UPDATE_USABILITY_STATS_SCORE") public void addOnWifiUsabilityStatsListener(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.OnWifiUsabilityStatsListener); - method @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD, "android.permission.NETWORK_STACK"}) public void connect(@NonNull android.net.wifi.WifiConfiguration, @Nullable android.net.wifi.WifiManager.ActionListener); - method @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD, "android.permission.NETWORK_STACK"}) public void connect(int, @Nullable android.net.wifi.WifiManager.ActionListener); - method @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD, "android.permission.NETWORK_STACK"}) public void disable(int, @Nullable android.net.wifi.WifiManager.ActionListener); - method @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD, "android.permission.NETWORK_STACK"}) public void forget(int, @Nullable android.net.wifi.WifiManager.ActionListener); - method @NonNull @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD}) public java.util.List<android.util.Pair<android.net.wifi.WifiConfiguration,java.util.Map<java.lang.Integer,java.util.List<android.net.wifi.ScanResult>>>> getAllMatchingWifiConfigs(@NonNull java.util.List<android.net.wifi.ScanResult>); - method @NonNull @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD}) public java.util.Map<android.net.wifi.hotspot2.OsuProvider,java.util.List<android.net.wifi.ScanResult>> getMatchingOsuProviders(@Nullable java.util.List<android.net.wifi.ScanResult>); - method @NonNull @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD}) public java.util.Map<android.net.wifi.hotspot2.OsuProvider,android.net.wifi.hotspot2.PasspointConfiguration> getMatchingPasspointConfigsForOsuProviders(@NonNull java.util.Set<android.net.wifi.hotspot2.OsuProvider>); + method @RequiresPermission(android.Manifest.permission.WIFI_UPDATE_USABILITY_STATS_SCORE) public void addOnWifiUsabilityStatsListener(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.OnWifiUsabilityStatsListener); + method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void allowAutojoin(int, boolean); + method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void allowAutojoinGlobal(boolean); + method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void allowAutojoinPasspoint(@NonNull String, boolean); + method @RequiresPermission(android.Manifest.permission.WIFI_UPDATE_USABILITY_STATS_SCORE) public void clearWifiConnectedNetworkScorer(); + method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.NETWORK_STACK}) public void connect(@NonNull android.net.wifi.WifiConfiguration, @Nullable android.net.wifi.WifiManager.ActionListener); + method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.NETWORK_STACK}) public void connect(int, @Nullable android.net.wifi.WifiManager.ActionListener); + method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.NETWORK_STACK}) public void disable(int, @Nullable android.net.wifi.WifiManager.ActionListener); + method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK}) public void disableEphemeralNetwork(@NonNull String); + method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void factoryReset(); + method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.NETWORK_STACK}) public void forget(int, @Nullable android.net.wifi.WifiManager.ActionListener); + method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public java.util.List<android.util.Pair<android.net.wifi.WifiConfiguration,java.util.Map<java.lang.Integer,java.util.List<android.net.wifi.ScanResult>>>> getAllMatchingWifiConfigs(@NonNull java.util.List<android.net.wifi.ScanResult>); + method @Nullable @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public String getCountryCode(); + method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public android.net.Network getCurrentNetwork(); + method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public String[] getFactoryMacAddresses(); + method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public java.util.Map<android.net.wifi.hotspot2.OsuProvider,java.util.List<android.net.wifi.ScanResult>> getMatchingOsuProviders(@Nullable java.util.List<android.net.wifi.ScanResult>); + method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public java.util.Map<android.net.wifi.hotspot2.OsuProvider,android.net.wifi.hotspot2.PasspointConfiguration> getMatchingPasspointConfigsForOsuProviders(@NonNull java.util.Set<android.net.wifi.hotspot2.OsuProvider>); + method @NonNull @RequiresPermission(allOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_WIFI_STATE}) public java.util.Map<android.net.wifi.WifiNetworkSuggestion,java.util.List<android.net.wifi.ScanResult>> getMatchingScanResults(@NonNull java.util.List<android.net.wifi.WifiNetworkSuggestion>, @Nullable java.util.List<android.net.wifi.ScanResult>); method @RequiresPermission(allOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_WIFI_STATE, android.Manifest.permission.READ_WIFI_CREDENTIAL}) public java.util.List<android.net.wifi.WifiConfiguration> getPrivilegedConfiguredNetworks(); - method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public android.net.wifi.WifiConfiguration getWifiApConfiguration(); + method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public android.net.wifi.SoftApConfiguration getSoftApConfiguration(); + method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public void getWifiActivityEnergyInfoAsync(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.OnWifiActivityEnergyInfoListener); + method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public android.net.wifi.WifiConfiguration getWifiApConfiguration(); method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public int getWifiApState(); + method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public java.util.List<android.net.wifi.WifiConfiguration> getWifiConfigForMatchedNetworkSuggestionsSharedWithUser(@NonNull java.util.List<android.net.wifi.ScanResult>); + method public boolean isApMacRandomizationSupported(); + method public boolean isConnectedMacRandomizationSupported(); method @Deprecated public boolean isDeviceToDeviceRttSupported(); method public boolean isPortableHotspotSupported(); + method public boolean isVerboseLoggingEnabled(); method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isWifiApEnabled(); method public boolean isWifiScannerSupported(); - method @RequiresPermission("android.permission.WIFI_UPDATE_USABILITY_STATS_SCORE") public void removeOnWifiUsabilityStatsListener(@NonNull android.net.wifi.WifiManager.OnWifiUsabilityStatsListener); - method @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD, "android.permission.NETWORK_STACK"}) public void save(@NonNull android.net.wifi.WifiConfiguration, @Nullable android.net.wifi.WifiManager.ActionListener); - method @RequiresPermission("android.permission.WIFI_SET_DEVICE_MOBILITY_STATE") public void setDeviceMobilityState(int); - method @RequiresPermission(android.Manifest.permission.CHANGE_WIFI_STATE) public boolean setWifiApConfiguration(android.net.wifi.WifiConfiguration); - method @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD}) public void startEasyConnectAsConfiguratorInitiator(@NonNull String, int, int, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.EasyConnectStatusCallback); - method @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD}) public void startEasyConnectAsEnrolleeInitiator(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.EasyConnectStatusCallback); + method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void registerNetworkRequestMatchCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.NetworkRequestMatchCallback); + method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void registerSoftApCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.SoftApCallback); + method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void registerTrafficStateCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.TrafficStateCallback); + method @RequiresPermission(android.Manifest.permission.WIFI_UPDATE_USABILITY_STATS_SCORE) public void removeOnWifiUsabilityStatsListener(@NonNull android.net.wifi.WifiManager.OnWifiUsabilityStatsListener); + method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void restoreBackupData(@NonNull byte[]); + method @Nullable @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public android.net.wifi.SoftApConfiguration restoreSoftApBackupData(@NonNull byte[]); + method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void restoreSupplicantBackupData(@NonNull byte[], @NonNull byte[]); + method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public byte[] retrieveBackupData(); + method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public byte[] retrieveSoftApBackupData(); + method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.NETWORK_STACK}) public void save(@NonNull android.net.wifi.WifiConfiguration, @Nullable android.net.wifi.WifiManager.ActionListener); + method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void setAutoWakeupEnabled(boolean); + method @RequiresPermission(android.Manifest.permission.WIFI_SET_DEVICE_MOBILITY_STATE) public void setDeviceMobilityState(int); + method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void setMacRandomizationSettingPasspointEnabled(@NonNull String, boolean); + method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void setPasspointMeteredOverride(@NonNull String, int); + method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void setScanAlwaysAvailable(boolean); + method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void setScanThrottleEnabled(boolean); + method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public boolean setSoftApConfiguration(@NonNull android.net.wifi.SoftApConfiguration); + method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void setVerboseLoggingEnabled(boolean); + method @Deprecated @RequiresPermission(android.Manifest.permission.CHANGE_WIFI_STATE) public boolean setWifiApConfiguration(android.net.wifi.WifiConfiguration); + method @RequiresPermission(android.Manifest.permission.WIFI_UPDATE_USABILITY_STATS_SCORE) public boolean setWifiConnectedNetworkScorer(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.WifiConnectedNetworkScorer); + method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public void startEasyConnectAsConfiguratorInitiator(@NonNull String, int, int, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.EasyConnectStatusCallback); + method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public void startEasyConnectAsEnrolleeInitiator(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.EasyConnectStatusCallback); + method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public void startLocalOnlyHotspot(@NonNull android.net.wifi.SoftApConfiguration, @Nullable java.util.concurrent.Executor, @Nullable android.net.wifi.WifiManager.LocalOnlyHotspotCallback); method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public boolean startScan(android.os.WorkSource); - method @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD}) public void startSubscriptionProvisioning(@NonNull android.net.wifi.hotspot2.OsuProvider, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.hotspot2.ProvisioningCallback); - method @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD}) public void stopEasyConnectSession(); - method @RequiresPermission("android.permission.WIFI_UPDATE_USABILITY_STATS_SCORE") public void updateWifiUsabilityScore(int, int, int); + method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public void startSubscriptionProvisioning(@NonNull android.net.wifi.hotspot2.OsuProvider, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.hotspot2.ProvisioningCallback); + method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public boolean startTetheredHotspot(@Nullable android.net.wifi.SoftApConfiguration); + method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public void stopEasyConnectSession(); + method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public boolean stopSoftAp(); + method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void unregisterNetworkRequestMatchCallback(@NonNull android.net.wifi.WifiManager.NetworkRequestMatchCallback); + method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void unregisterSoftApCallback(@NonNull android.net.wifi.WifiManager.SoftApCallback); + method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void unregisterTrafficStateCallback(@NonNull android.net.wifi.WifiManager.TrafficStateCallback); + method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void updateInterfaceIpState(@Nullable String, int); + method @RequiresPermission(android.Manifest.permission.WIFI_UPDATE_USABILITY_STATS_SCORE) public void updateWifiUsabilityScore(int, int, int); + field public static final String ACTION_LINK_CONFIGURATION_CHANGED = "android.net.wifi.LINK_CONFIGURATION_CHANGED"; + field @RequiresPermission(android.Manifest.permission.NETWORK_CARRIER_PROVISIONING) public static final String ACTION_NETWORK_SETTINGS_RESET = "android.net.wifi.action.NETWORK_SETTINGS_RESET"; + field public static final String ACTION_PASSPOINT_LAUNCH_OSU_VIEW = "android.net.wifi.action.PASSPOINT_LAUNCH_OSU_VIEW"; + field public static final String ACTION_REQUEST_DISABLE = "android.net.wifi.action.REQUEST_DISABLE"; + field public static final String ACTION_REQUEST_ENABLE = "android.net.wifi.action.REQUEST_ENABLE"; field public static final int CHANGE_REASON_ADDED = 0; // 0x0 field public static final int CHANGE_REASON_CONFIG_CHANGE = 2; // 0x2 field public static final int CHANGE_REASON_REMOVED = 1; // 0x1 @@ -4710,14 +7294,29 @@ package android.net.wifi { field public static final int EASY_CONNECT_NETWORK_ROLE_AP = 1; // 0x1 field public static final int EASY_CONNECT_NETWORK_ROLE_STA = 0; // 0x0 field public static final String EXTRA_CHANGE_REASON = "changeReason"; + field public static final String EXTRA_LINK_PROPERTIES = "android.net.wifi.extra.LINK_PROPERTIES"; field public static final String EXTRA_MULTIPLE_NETWORKS_CHANGED = "multipleChanges"; + field public static final String EXTRA_OSU_NETWORK = "android.net.wifi.extra.OSU_NETWORK"; field public static final String EXTRA_PREVIOUS_WIFI_AP_STATE = "previous_wifi_state"; + field public static final String EXTRA_URL = "android.net.wifi.extra.URL"; + field public static final String EXTRA_WIFI_AP_FAILURE_REASON = "android.net.wifi.extra.WIFI_AP_FAILURE_REASON"; + field public static final String EXTRA_WIFI_AP_INTERFACE_NAME = "android.net.wifi.extra.WIFI_AP_INTERFACE_NAME"; + field public static final String EXTRA_WIFI_AP_MODE = "android.net.wifi.extra.WIFI_AP_MODE"; field public static final String EXTRA_WIFI_AP_STATE = "wifi_state"; field public static final String EXTRA_WIFI_CONFIGURATION = "wifiConfiguration"; field public static final String EXTRA_WIFI_CREDENTIAL_EVENT_TYPE = "et"; field public static final String EXTRA_WIFI_CREDENTIAL_SSID = "ssid"; + field public static final int IFACE_IP_MODE_CONFIGURATION_ERROR = 0; // 0x0 + field public static final int IFACE_IP_MODE_LOCAL_ONLY = 2; // 0x2 + field public static final int IFACE_IP_MODE_TETHERED = 1; // 0x1 + field public static final int IFACE_IP_MODE_UNSPECIFIED = -1; // 0xffffffff field public static final int PASSPOINT_HOME_NETWORK = 0; // 0x0 field public static final int PASSPOINT_ROAMING_NETWORK = 1; // 0x1 + field public static final int SAP_CLIENT_BLOCK_REASON_CODE_BLOCKED_BY_USER = 0; // 0x0 + field public static final int SAP_CLIENT_BLOCK_REASON_CODE_NO_MORE_STAS = 1; // 0x1 + field public static final int SAP_START_FAILURE_GENERAL = 0; // 0x0 + field public static final int SAP_START_FAILURE_NO_CHANNEL = 1; // 0x1 + field public static final int SAP_START_FAILURE_UNSUPPORTED_CONFIGURATION = 2; // 0x2 field public static final String WIFI_AP_STATE_CHANGED_ACTION = "android.net.wifi.WIFI_AP_STATE_CHANGED"; field public static final int WIFI_AP_STATE_DISABLED = 11; // 0xb field public static final int WIFI_AP_STATE_DISABLING = 10; // 0xa @@ -4734,10 +7333,91 @@ package android.net.wifi { method public void onSuccess(); } + public static interface WifiManager.NetworkRequestMatchCallback { + method public default void onAbort(); + method public default void onMatch(@NonNull java.util.List<android.net.wifi.ScanResult>); + method public default void onUserSelectionCallbackRegistration(@NonNull android.net.wifi.WifiManager.NetworkRequestUserSelectionCallback); + method public default void onUserSelectionConnectFailure(@NonNull android.net.wifi.WifiConfiguration); + method public default void onUserSelectionConnectSuccess(@NonNull android.net.wifi.WifiConfiguration); + } + + public static interface WifiManager.NetworkRequestUserSelectionCallback { + method public default void reject(); + method public default void select(@NonNull android.net.wifi.WifiConfiguration); + } + + public static interface WifiManager.OnWifiActivityEnergyInfoListener { + method public void onWifiActivityEnergyInfo(@Nullable android.os.connectivity.WifiActivityEnergyInfo); + } + public static interface WifiManager.OnWifiUsabilityStatsListener { method public void onWifiUsabilityStats(int, boolean, @NonNull android.net.wifi.WifiUsabilityStatsEntry); } + public static interface WifiManager.ScoreUpdateObserver { + method public void notifyScoreUpdate(int, int); + method public void triggerUpdateOfWifiUsabilityStats(int); + } + + public static interface WifiManager.SoftApCallback { + method public default void onBlockedClientConnecting(@NonNull android.net.wifi.WifiClient, int); + method public default void onCapabilityChanged(@NonNull android.net.wifi.SoftApCapability); + method public default void onConnectedClientsChanged(@NonNull java.util.List<android.net.wifi.WifiClient>); + method public default void onInfoChanged(@NonNull android.net.wifi.SoftApInfo); + method public default void onStateChanged(int, int); + } + + public static interface WifiManager.TrafficStateCallback { + method public void onStateChanged(int); + field public static final int DATA_ACTIVITY_IN = 1; // 0x1 + field public static final int DATA_ACTIVITY_INOUT = 3; // 0x3 + field public static final int DATA_ACTIVITY_NONE = 0; // 0x0 + field public static final int DATA_ACTIVITY_OUT = 2; // 0x2 + } + + public static interface WifiManager.WifiConnectedNetworkScorer { + method public void onSetScoreUpdateObserver(@NonNull android.net.wifi.WifiManager.ScoreUpdateObserver); + method public void onStart(int); + method public void onStop(int); + } + + public final class WifiMigration { + method @Nullable public static java.io.InputStream convertAndRetrieveSharedConfigStoreFile(int); + method @Nullable public static java.io.InputStream convertAndRetrieveUserConfigStoreFile(int, @NonNull android.os.UserHandle); + method @NonNull public static android.net.wifi.WifiMigration.SettingsMigrationData loadFromSettings(@NonNull android.content.Context); + method public static void removeSharedConfigStoreFile(int); + method public static void removeUserConfigStoreFile(int, @NonNull android.os.UserHandle); + field public static final int STORE_FILE_SHARED_GENERAL = 0; // 0x0 + field public static final int STORE_FILE_SHARED_SOFTAP = 1; // 0x1 + field public static final int STORE_FILE_USER_GENERAL = 2; // 0x2 + field public static final int STORE_FILE_USER_NETWORK_SUGGESTIONS = 3; // 0x3 + } + + public static final class WifiMigration.SettingsMigrationData implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public String getP2pDeviceName(); + method public boolean isP2pFactoryResetPending(); + method public boolean isScanAlwaysAvailable(); + method public boolean isScanThrottleEnabled(); + method public boolean isSoftApTimeoutEnabled(); + method public boolean isVerboseLoggingEnabled(); + method public boolean isWakeUpEnabled(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiMigration.SettingsMigrationData> CREATOR; + } + + public static final class WifiMigration.SettingsMigrationData.Builder { + ctor public WifiMigration.SettingsMigrationData.Builder(); + method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData build(); + method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData.Builder setP2pDeviceName(@Nullable String); + method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData.Builder setP2pFactoryResetPending(boolean); + method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData.Builder setScanAlwaysAvailable(boolean); + method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData.Builder setScanThrottleEnabled(boolean); + method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData.Builder setSoftApTimeoutEnabled(boolean); + method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData.Builder setVerboseLoggingEnabled(boolean); + method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData.Builder setWakeUpEnabled(boolean); + } + public class WifiNetworkConnectionStatistics implements android.os.Parcelable { ctor public WifiNetworkConnectionStatistics(int, int); ctor public WifiNetworkConnectionStatistics(); @@ -4749,20 +7429,33 @@ package android.net.wifi { field public int numUsage; } + public final class WifiNetworkSuggestion implements android.os.Parcelable { + method @NonNull public android.net.wifi.WifiConfiguration getWifiConfiguration(); + } + + public static final class WifiNetworkSuggestion.Builder { + method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_CARRIER_PROVISIONING) public android.net.wifi.WifiNetworkSuggestion.Builder setCarrierId(int); + } + public class WifiScanner { method @Deprecated public void configureWifiChange(int, int, int, int, int, android.net.wifi.WifiScanner.BssidInfo[]); method @Deprecated public void configureWifiChange(android.net.wifi.WifiScanner.WifiChangeSettings); - method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public boolean getScanResults(); + method @NonNull @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public java.util.List<java.lang.Integer> getAvailableChannels(int); + method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public boolean getScanResults(); + method @NonNull @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public java.util.List<android.net.wifi.ScanResult> getSingleScanResults(); + method @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public void registerScanListener(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiScanner.ScanListener); + method @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public void setScanningEnabled(boolean); method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void startBackgroundScan(android.net.wifi.WifiScanner.ScanSettings, android.net.wifi.WifiScanner.ScanListener); - method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void startBackgroundScan(android.net.wifi.WifiScanner.ScanSettings, android.net.wifi.WifiScanner.ScanListener, android.os.WorkSource); + method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void startBackgroundScan(android.net.wifi.WifiScanner.ScanSettings, android.net.wifi.WifiScanner.ScanListener, android.os.WorkSource); method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void startScan(android.net.wifi.WifiScanner.ScanSettings, android.net.wifi.WifiScanner.ScanListener); method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void startScan(android.net.wifi.WifiScanner.ScanSettings, android.net.wifi.WifiScanner.ScanListener, android.os.WorkSource); method @Deprecated public void startTrackingBssids(android.net.wifi.WifiScanner.BssidInfo[], int, android.net.wifi.WifiScanner.BssidListener); method @Deprecated public void startTrackingWifiChange(android.net.wifi.WifiScanner.WifiChangeListener); - method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void stopBackgroundScan(android.net.wifi.WifiScanner.ScanListener); + method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void stopBackgroundScan(android.net.wifi.WifiScanner.ScanListener); method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void stopScan(android.net.wifi.WifiScanner.ScanListener); method @Deprecated public void stopTrackingBssids(android.net.wifi.WifiScanner.BssidListener); method @Deprecated public void stopTrackingWifiChange(android.net.wifi.WifiScanner.WifiChangeListener); + method public void unregisterScanListener(@NonNull android.net.wifi.WifiScanner.ScanListener); field public static final int MAX_SCAN_PERIOD_MS = 1024000; // 0xfa000 field public static final int MIN_SCAN_PERIOD_MS = 1000; // 0x3e8 field public static final int REASON_DUPLICATE_REQEUST = -5; // 0xfffffffb @@ -4775,10 +7468,16 @@ package android.net.wifi { field public static final int REPORT_EVENT_AFTER_EACH_SCAN = 1; // 0x1 field public static final int REPORT_EVENT_FULL_SCAN_RESULT = 2; // 0x2 field public static final int REPORT_EVENT_NO_BATCH = 4; // 0x4 + field public static final int SCAN_TYPE_HIGH_ACCURACY = 2; // 0x2 + field public static final int SCAN_TYPE_LOW_LATENCY = 0; // 0x0 + field public static final int SCAN_TYPE_LOW_POWER = 1; // 0x1 + field public static final int WIFI_BAND_24_5_6_GHZ = 11; // 0xb + field public static final int WIFI_BAND_24_5_WITH_DFS_6_GHZ = 15; // 0xf field public static final int WIFI_BAND_24_GHZ = 1; // 0x1 field public static final int WIFI_BAND_5_GHZ = 2; // 0x2 field public static final int WIFI_BAND_5_GHZ_DFS_ONLY = 4; // 0x4 field public static final int WIFI_BAND_5_GHZ_WITH_DFS = 6; // 0x6 + field public static final int WIFI_BAND_6_GHZ = 8; // 0x8 field public static final int WIFI_BAND_BOTH = 3; // 0x3 field public static final int WIFI_BAND_BOTH_WITH_DFS = 7; // 0x7 field public static final int WIFI_BAND_UNSPECIFIED = 0; // 0x0 @@ -4835,7 +7534,7 @@ package android.net.wifi { public static interface WifiScanner.ScanListener extends android.net.wifi.WifiScanner.ActionListener { method public void onFullResult(android.net.wifi.ScanResult); - method public void onPeriodChanged(int); + method @Deprecated public void onPeriodChanged(int); method public void onResults(android.net.wifi.WifiScanner.ScanData[]); } @@ -4843,14 +7542,21 @@ package android.net.wifi { ctor public WifiScanner.ScanSettings(); field public int band; field public android.net.wifi.WifiScanner.ChannelSpec[] channels; + field @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public final java.util.List<android.net.wifi.WifiScanner.ScanSettings.HiddenNetwork> hiddenNetworks; field public boolean hideFromAppOps; field public boolean ignoreLocationSettings; - field public int maxPeriodInMs; - field public int maxScansToCache; - field public int numBssidsPerScan; - field public int periodInMs; - field public int reportEvents; - field public int stepCount; + field @Deprecated public int maxPeriodInMs; + field @Deprecated public int maxScansToCache; + field @Deprecated public int numBssidsPerScan; + field @Deprecated public int periodInMs; + field @Deprecated public int reportEvents; + field @Deprecated public int stepCount; + field @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public int type; + } + + public static class WifiScanner.ScanSettings.HiddenNetwork { + ctor public WifiScanner.ScanSettings.HiddenNetwork(@NonNull String); + field @NonNull public final String ssid; } @Deprecated public static interface WifiScanner.WifiChangeListener extends android.net.wifi.WifiScanner.ActionListener { @@ -4913,10 +7619,6 @@ package android.net.wifi.aware { method @Deprecated public android.net.NetworkSpecifier createNetworkSpecifierPmk(@NonNull android.net.wifi.aware.PeerHandle, @NonNull byte[]); } - public static final class WifiAwareNetworkSpecifier.Builder { - method @NonNull public android.net.wifi.aware.WifiAwareNetworkSpecifier.Builder setPmk(@NonNull byte[]); - } - public class WifiAwareSession implements java.lang.AutoCloseable { method public android.net.NetworkSpecifier createNetworkSpecifierPmk(int, @NonNull byte[], @NonNull byte[]); } @@ -4933,6 +7635,12 @@ package android.net.wifi.hotspot2 { field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.hotspot2.OsuProvider> CREATOR; } + public final class PasspointConfiguration implements android.os.Parcelable { + method public int getMeteredOverride(); + method public boolean isAutojoinEnabled(); + method public boolean isMacRandomizationEnabled(); + } + public abstract class ProvisioningCallback { ctor public ProvisioningCallback(); method public abstract void onProvisioningComplete(); @@ -4976,6 +7684,202 @@ package android.net.wifi.hotspot2 { } +package android.net.wifi.nl80211 { + + public final class DeviceWiphyCapabilities implements android.os.Parcelable { + ctor public DeviceWiphyCapabilities(); + method public int describeContents(); + method public int getMaxNumberRxSpatialStreams(); + method public int getMaxNumberTxSpatialStreams(); + method public boolean isChannelWidthSupported(int); + method public boolean isWifiStandardSupported(int); + method public void setWifiStandardSupport(int, boolean); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.nl80211.DeviceWiphyCapabilities> CREATOR; + } + + public final class NativeScanResult implements android.os.Parcelable { + ctor public NativeScanResult(); + method public int describeContents(); + method @Nullable public android.net.MacAddress getBssid(); + method public int getCapabilities(); + method public int getFrequencyMhz(); + method @NonNull public byte[] getInformationElements(); + method @NonNull public java.util.List<android.net.wifi.nl80211.RadioChainInfo> getRadioChainInfos(); + method public int getSignalMbm(); + method @NonNull public byte[] getSsid(); + method public long getTsf(); + method public boolean isAssociated(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final int BSS_CAPABILITY_APSD = 2048; // 0x800 + field public static final int BSS_CAPABILITY_CF_POLLABLE = 4; // 0x4 + field public static final int BSS_CAPABILITY_CF_POLL_REQUEST = 8; // 0x8 + field public static final int BSS_CAPABILITY_CHANNEL_AGILITY = 128; // 0x80 + field public static final int BSS_CAPABILITY_DELAYED_BLOCK_ACK = 16384; // 0x4000 + field public static final int BSS_CAPABILITY_DSSS_OFDM = 8192; // 0x2000 + field public static final int BSS_CAPABILITY_ESS = 1; // 0x1 + field public static final int BSS_CAPABILITY_IBSS = 2; // 0x2 + field public static final int BSS_CAPABILITY_IMMEDIATE_BLOCK_ACK = 32768; // 0x8000 + field public static final int BSS_CAPABILITY_PBCC = 64; // 0x40 + field public static final int BSS_CAPABILITY_PRIVACY = 16; // 0x10 + field public static final int BSS_CAPABILITY_QOS = 512; // 0x200 + field public static final int BSS_CAPABILITY_RADIO_MANAGEMENT = 4096; // 0x1000 + field public static final int BSS_CAPABILITY_SHORT_PREAMBLE = 32; // 0x20 + field public static final int BSS_CAPABILITY_SHORT_SLOT_TIME = 1024; // 0x400 + field public static final int BSS_CAPABILITY_SPECTRUM_MANAGEMENT = 256; // 0x100 + field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.nl80211.NativeScanResult> CREATOR; + } + + public final class NativeWifiClient implements android.os.Parcelable { + ctor public NativeWifiClient(@Nullable android.net.MacAddress); + method public int describeContents(); + method @Nullable public android.net.MacAddress getMacAddress(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.nl80211.NativeWifiClient> CREATOR; + } + + public final class PnoNetwork implements android.os.Parcelable { + ctor public PnoNetwork(); + method public int describeContents(); + method @NonNull public int[] getFrequenciesMhz(); + method @NonNull public byte[] getSsid(); + method public boolean isHidden(); + method public void setFrequenciesMhz(@NonNull int[]); + method public void setHidden(boolean); + method public void setSsid(@NonNull byte[]); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.nl80211.PnoNetwork> CREATOR; + } + + public final class PnoSettings implements android.os.Parcelable { + ctor public PnoSettings(); + method public int describeContents(); + method public long getIntervalMillis(); + method public int getMin2gRssiDbm(); + method public int getMin5gRssiDbm(); + method public int getMin6gRssiDbm(); + method @NonNull public java.util.List<android.net.wifi.nl80211.PnoNetwork> getPnoNetworks(); + method public void setIntervalMillis(long); + method public void setMin2gRssiDbm(int); + method public void setMin5gRssiDbm(int); + method public void setMin6gRssiDbm(int); + method public void setPnoNetworks(@NonNull java.util.List<android.net.wifi.nl80211.PnoNetwork>); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.nl80211.PnoSettings> CREATOR; + } + + public final class RadioChainInfo implements android.os.Parcelable { + ctor public RadioChainInfo(int, int); + method public int describeContents(); + method public int getChainId(); + method public int getLevelDbm(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.nl80211.RadioChainInfo> CREATOR; + } + + public class WifiNl80211Manager { + method public void abortScan(@NonNull String); + method public void enableVerboseLogging(boolean); + method @NonNull public int[] getChannelsMhzForBand(int); + method @Nullable public android.net.wifi.nl80211.DeviceWiphyCapabilities getDeviceWiphyCapabilities(@NonNull String); + method @NonNull public java.util.List<android.net.wifi.nl80211.NativeScanResult> getScanResults(@NonNull String, int); + method @Nullable public android.net.wifi.nl80211.WifiNl80211Manager.TxPacketCounters getTxPacketCounters(@NonNull String); + method @Nullable public static android.net.wifi.nl80211.WifiNl80211Manager.OemSecurityType parseOemSecurityTypeElement(int, int, @NonNull byte[]); + method public boolean registerApCallback(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.nl80211.WifiNl80211Manager.SoftApCallback); + method public void sendMgmtFrame(@NonNull String, @NonNull byte[], int, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.nl80211.WifiNl80211Manager.SendMgmtFrameCallback); + method public void setOnServiceDeadCallback(@NonNull Runnable); + method public boolean setupInterfaceForClientMode(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.nl80211.WifiNl80211Manager.ScanEventCallback, @NonNull android.net.wifi.nl80211.WifiNl80211Manager.ScanEventCallback); + method public boolean setupInterfaceForSoftApMode(@NonNull String); + method @Nullable public android.net.wifi.nl80211.WifiNl80211Manager.SignalPollResult signalPoll(@NonNull String); + method public boolean startPnoScan(@NonNull String, @NonNull android.net.wifi.nl80211.PnoSettings, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.nl80211.WifiNl80211Manager.PnoScanRequestCallback); + method public boolean startScan(@NonNull String, int, @Nullable java.util.Set<java.lang.Integer>, @Nullable java.util.List<byte[]>); + method public boolean stopPnoScan(@NonNull String); + method public boolean tearDownClientInterface(@NonNull String); + method public boolean tearDownInterfaces(); + method public boolean tearDownSoftApInterface(@NonNull String); + field public static final int SCAN_TYPE_PNO_SCAN = 1; // 0x1 + field public static final int SCAN_TYPE_SINGLE_SCAN = 0; // 0x0 + field public static final int SEND_MGMT_FRAME_ERROR_ALREADY_STARTED = 5; // 0x5 + field public static final int SEND_MGMT_FRAME_ERROR_MCS_UNSUPPORTED = 2; // 0x2 + field public static final int SEND_MGMT_FRAME_ERROR_NO_ACK = 3; // 0x3 + field public static final int SEND_MGMT_FRAME_ERROR_TIMEOUT = 4; // 0x4 + field public static final int SEND_MGMT_FRAME_ERROR_UNKNOWN = 1; // 0x1 + } + + public static class WifiNl80211Manager.OemSecurityType { + ctor public WifiNl80211Manager.OemSecurityType(int, @NonNull java.util.List<java.lang.Integer>, @NonNull java.util.List<java.lang.Integer>, int); + field public final int groupCipher; + field @NonNull public final java.util.List<java.lang.Integer> keyManagement; + field @NonNull public final java.util.List<java.lang.Integer> pairwiseCipher; + field public final int protocol; + } + + public static interface WifiNl80211Manager.PnoScanRequestCallback { + method public void onPnoRequestFailed(); + method public void onPnoRequestSucceeded(); + } + + public static interface WifiNl80211Manager.ScanEventCallback { + method public void onScanFailed(); + method public void onScanResultReady(); + } + + public static interface WifiNl80211Manager.SendMgmtFrameCallback { + method public void onAck(int); + method public void onFailure(int); + } + + public static class WifiNl80211Manager.SignalPollResult { + field public final int associationFrequencyMHz; + field public final int currentRssiDbm; + field public final int rxBitrateMbps; + field public final int txBitrateMbps; + } + + public static interface WifiNl80211Manager.SoftApCallback { + method public void onConnectedClientsChanged(@NonNull android.net.wifi.nl80211.NativeWifiClient, boolean); + method public void onFailure(); + method public void onSoftApChannelSwitched(int, int); + } + + public static class WifiNl80211Manager.TxPacketCounters { + field public final int txPacketFailed; + field public final int txPacketSucceeded; + } + +} + +package android.net.wifi.p2p { + + public final class WifiP2pGroupList implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public java.util.List<android.net.wifi.p2p.WifiP2pGroup> getGroupList(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pGroupList> CREATOR; + } + + public class WifiP2pManager { + method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.OVERRIDE_WIFI_CONFIG}) public void deletePersistentGroup(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, int, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener); + method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void factoryReset(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener); + method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.READ_WIFI_CREDENTIAL}) public void requestPersistentGroupInfo(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @Nullable android.net.wifi.p2p.WifiP2pManager.PersistentGroupInfoListener); + method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.OVERRIDE_WIFI_CONFIG}) public void setDeviceName(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @NonNull String, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener); + method @RequiresPermission(android.Manifest.permission.CONFIGURE_WIFI_DISPLAY) public void setMiracastMode(int); + method @RequiresPermission(android.Manifest.permission.CONFIGURE_WIFI_DISPLAY) public void setWfdInfo(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @NonNull android.net.wifi.p2p.WifiP2pWfdInfo, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener); + method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.OVERRIDE_WIFI_CONFIG}) public void setWifiP2pChannels(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, int, int, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener); + method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void startListening(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener); + method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void stopListening(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener); + field public static final String ACTION_WIFI_P2P_PERSISTENT_GROUPS_CHANGED = "android.net.wifi.p2p.action.WIFI_P2P_PERSISTENT_GROUPS_CHANGED"; + field public static final int MIRACAST_DISABLED = 0; // 0x0 + field public static final int MIRACAST_SINK = 2; // 0x2 + field public static final int MIRACAST_SOURCE = 1; // 0x1 + } + + public static interface WifiP2pManager.PersistentGroupInfoListener { + method public void onPersistentGroupInfoAvailable(@NonNull android.net.wifi.p2p.WifiP2pGroupList); + } + +} + package android.net.wifi.rtt { public static final class RangingRequest.Builder { @@ -5001,6 +7905,7 @@ package android.net.wifi.rtt { field public static final int CHANNEL_WIDTH_80MHZ = 2; // 0x2 field public static final int CHANNEL_WIDTH_80MHZ_PLUS_MHZ = 4; // 0x4 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.rtt.ResponderConfig> CREATOR; + field public static final int PREAMBLE_HE = 3; // 0x3 field public static final int PREAMBLE_HT = 1; // 0x1 field public static final int PREAMBLE_LEGACY = 0; // 0x0 field public static final int PREAMBLE_VHT = 2; // 0x2 @@ -5109,7 +8014,47 @@ package android.os { method @NonNull public android.os.BatterySaverPolicyConfig.Builder setLocationMode(int); } + public final class BatteryStatsManager { + method @NonNull @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public android.os.connectivity.CellularBatteryStats getCellularBatteryStats(); + method @NonNull @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public android.os.connectivity.WifiBatteryStats getWifiBatteryStats(); + method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportFullWifiLockAcquiredFromSource(@NonNull android.os.WorkSource); + method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportFullWifiLockReleasedFromSource(@NonNull android.os.WorkSource); + method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiBatchedScanStartedFromSource(@NonNull android.os.WorkSource, @IntRange(from=0) int); + method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiBatchedScanStoppedFromSource(@NonNull android.os.WorkSource); + method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiMulticastDisabled(@NonNull android.os.WorkSource); + method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiMulticastEnabled(@NonNull android.os.WorkSource); + method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiOff(); + method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiOn(); + method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiRssiChanged(@IntRange(from=0xffffff81, to=0) int); + method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiScanStartedFromSource(@NonNull android.os.WorkSource); + method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiScanStoppedFromSource(@NonNull android.os.WorkSource); + method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiState(int, @Nullable String); + method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiSupplicantStateChanged(int, boolean); + field public static final int WIFI_STATE_OFF = 0; // 0x0 + field public static final int WIFI_STATE_OFF_SCANNING = 1; // 0x1 + field public static final int WIFI_STATE_ON_CONNECTED_P2P = 5; // 0x5 + field public static final int WIFI_STATE_ON_CONNECTED_STA = 4; // 0x4 + field public static final int WIFI_STATE_ON_CONNECTED_STA_P2P = 6; // 0x6 + field public static final int WIFI_STATE_ON_DISCONNECTED = 3; // 0x3 + field public static final int WIFI_STATE_ON_NO_NETWORKS = 2; // 0x2 + field public static final int WIFI_STATE_SOFT_AP = 7; // 0x7 + field public static final int WIFI_SUPPL_STATE_ASSOCIATED = 7; // 0x7 + field public static final int WIFI_SUPPL_STATE_ASSOCIATING = 6; // 0x6 + field public static final int WIFI_SUPPL_STATE_AUTHENTICATING = 5; // 0x5 + field public static final int WIFI_SUPPL_STATE_COMPLETED = 10; // 0xa + field public static final int WIFI_SUPPL_STATE_DISCONNECTED = 1; // 0x1 + field public static final int WIFI_SUPPL_STATE_DORMANT = 11; // 0xb + field public static final int WIFI_SUPPL_STATE_FOUR_WAY_HANDSHAKE = 8; // 0x8 + field public static final int WIFI_SUPPL_STATE_GROUP_HANDSHAKE = 9; // 0x9 + field public static final int WIFI_SUPPL_STATE_INACTIVE = 3; // 0x3 + field public static final int WIFI_SUPPL_STATE_INTERFACE_DISABLED = 2; // 0x2 + field public static final int WIFI_SUPPL_STATE_INVALID = 0; // 0x0 + field public static final int WIFI_SUPPL_STATE_SCANNING = 4; // 0x4 + field public static final int WIFI_SUPPL_STATE_UNINITIALIZED = 12; // 0xc + } + public class Binder implements android.os.IBinder { + method public int handleShellCommand(@NonNull android.os.ParcelFileDescriptor, @NonNull android.os.ParcelFileDescriptor, @NonNull android.os.ParcelFileDescriptor, @NonNull String[]); method public static void setProxyTransactListener(@Nullable android.os.Binder.ProxyTransactListener); } @@ -5120,6 +8065,7 @@ package android.os { public final class BugreportManager { method @RequiresPermission(android.Manifest.permission.DUMP) public void cancelBugreport(); + method @RequiresPermission(android.Manifest.permission.DUMP) public void requestBugreport(@NonNull android.os.BugreportParams, @Nullable CharSequence, @Nullable CharSequence); method @RequiresPermission(android.Manifest.permission.DUMP) public void startBugreport(@NonNull android.os.ParcelFileDescriptor, @Nullable android.os.ParcelFileDescriptor, @NonNull android.os.BugreportParams, @NonNull java.util.concurrent.Executor, @NonNull android.os.BugreportManager.BugreportCallback); } @@ -5155,22 +8101,38 @@ package android.os { field public static final String ACTION_UPDATE_CARRIER_PROVISIONING_URLS = "android.intent.action.UPDATE_CARRIER_PROVISIONING_URLS"; field public static final String ACTION_UPDATE_CONVERSATION_ACTIONS = "android.intent.action.UPDATE_CONVERSATION_ACTIONS"; field public static final String ACTION_UPDATE_CT_LOGS = "android.intent.action.UPDATE_CT_LOGS"; + field public static final String ACTION_UPDATE_EMERGENCY_NUMBER_DB = "android.os.action.UPDATE_EMERGENCY_NUMBER_DB"; field public static final String ACTION_UPDATE_INTENT_FIREWALL = "android.intent.action.UPDATE_INTENT_FIREWALL"; field public static final String ACTION_UPDATE_LANG_ID = "android.intent.action.UPDATE_LANG_ID"; field public static final String ACTION_UPDATE_NETWORK_WATCHLIST = "android.intent.action.UPDATE_NETWORK_WATCHLIST"; field public static final String ACTION_UPDATE_PINS = "android.intent.action.UPDATE_PINS"; field public static final String ACTION_UPDATE_SMART_SELECTION = "android.intent.action.UPDATE_SMART_SELECTION"; field public static final String ACTION_UPDATE_SMS_SHORT_CODES = "android.intent.action.UPDATE_SMS_SHORT_CODES"; + field public static final String EXTRA_REQUIRED_HASH = "android.os.extra.REQUIRED_HASH"; + field public static final String EXTRA_VERSION = "android.os.extra.VERSION"; } public class Environment { + method @NonNull public static java.util.Collection<java.io.File> getInternalMediaDirectories(); method @NonNull public static java.io.File getOdmDirectory(); method @NonNull public static java.io.File getOemDirectory(); method @NonNull public static java.io.File getProductDirectory(); - method @NonNull public static java.io.File getProductServicesDirectory(); + method @Deprecated @NonNull public static java.io.File getProductServicesDirectory(); + method @NonNull public static java.io.File getSystemExtDirectory(); method @NonNull public static java.io.File getVendorDirectory(); } + public class HidlMemory implements java.io.Closeable { + ctor public HidlMemory(@NonNull String, @IntRange(from=0) long, @Nullable android.os.NativeHandle); + method public void close() throws java.io.IOException; + method @NonNull public android.os.HidlMemory dup() throws java.io.IOException; + method protected void finalize(); + method @Nullable public android.os.NativeHandle getHandle(); + method @NonNull public String getName(); + method public long getSize(); + method @Nullable public android.os.NativeHandle releaseHandle(); + } + public class HidlSupport { method public static boolean deepEquals(Object, Object); method public static int deepHashCode(Object); @@ -5201,6 +8163,7 @@ package android.os { method public final void copyToInt8Array(long, byte[], int); method public final boolean getBool(long); method public final double getDouble(long); + method public final long getFieldHandle(long); method public final float getFloat(long); method public final short getInt16(long); method public final int getInt32(long); @@ -5215,6 +8178,7 @@ package android.os { method public final void putDoubleArray(long, double[]); method public final void putFloat(long, float); method public final void putFloatArray(long, float[]); + method public final void putHidlMemory(long, @NonNull android.os.HidlMemory); method public final void putInt16(long, short); method public final void putInt16Array(long, short[]); method public final void putInt32(long, int); @@ -5243,9 +8207,11 @@ package android.os { method public final double readDouble(); method public final java.util.ArrayList<java.lang.Double> readDoubleVector(); method public final android.os.HwBlob readEmbeddedBuffer(long, long, long, boolean); + method @NonNull @Nullable public final android.os.HidlMemory readEmbeddedHidlMemory(long, long, long); method @Nullable public final android.os.NativeHandle readEmbeddedNativeHandle(long, long); method public final float readFloat(); method public final java.util.ArrayList<java.lang.Float> readFloatVector(); + method @NonNull public final android.os.HidlMemory readHidlMemory(); method public final short readInt16(); method public final java.util.ArrayList<java.lang.Short> readInt16Vector(); method public final int readInt32(); @@ -5270,6 +8236,7 @@ package android.os { method public final void writeDoubleVector(java.util.ArrayList<java.lang.Double>); method public final void writeFloat(float); method public final void writeFloatVector(java.util.ArrayList<java.lang.Float>); + method public final void writeHidlMemory(@NonNull android.os.HidlMemory); method public final void writeInt16(short); method public final void writeInt16Vector(java.util.ArrayList<java.lang.Short>); method public final void writeInt32(int); @@ -5288,9 +8255,6 @@ package android.os { field public static final int STATUS_SUCCESS = 0; // 0x0 } - @IntDef(prefix={"STATUS_"}, value={android.os.HwParcel.STATUS_SUCCESS}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface HwParcel.Status { - } - public interface IHwBinder { method public boolean linkToDeath(android.os.IHwBinder.DeathRecipient, long); method public android.os.IHwInterface queryLocalInterface(String); @@ -5311,11 +8275,13 @@ package android.os { method @RequiresPermission("android.permission.REQUEST_INCIDENT_REPORT_APPROVAL") public void cancelAuthorization(android.os.IncidentManager.AuthListener); method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void deleteIncidentReports(android.net.Uri); method @RequiresPermission(android.Manifest.permission.APPROVE_INCIDENT_REPORTS) public void denyReport(android.net.Uri); - method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) @Nullable public android.os.IncidentManager.IncidentReport getIncidentReport(android.net.Uri); - method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) @NonNull public java.util.List<android.net.Uri> getIncidentReportList(String); + method @Nullable @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public android.os.IncidentManager.IncidentReport getIncidentReport(android.net.Uri); + method @NonNull @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public java.util.List<android.net.Uri> getIncidentReportList(String); method @RequiresPermission(android.Manifest.permission.APPROVE_INCIDENT_REPORTS) public java.util.List<android.os.IncidentManager.PendingReport> getPendingReports(); + method public void registerSection(int, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.os.IncidentManager.DumpCallback); method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void reportIncident(android.os.IncidentReportArgs); method @RequiresPermission("android.permission.REQUEST_INCIDENT_REPORT_APPROVAL") public void requestAuthorization(int, String, int, android.os.IncidentManager.AuthListener); + method public void unregisterSection(int); field public static final int FLAG_CONFIRMATION_DIALOG = 1; // 0x1 field public static final int PRIVACY_POLICY_AUTO = 200; // 0xc8 field public static final int PRIVACY_POLICY_EXPLICIT = 100; // 0x64 @@ -5328,6 +8294,11 @@ package android.os { method public void onReportDenied(); } + public static class IncidentManager.DumpCallback { + ctor public IncidentManager.DumpCallback(); + method public void onDumpSection(int, @NonNull java.io.OutputStream); + } + public static class IncidentManager.IncidentReport implements java.io.Closeable android.os.Parcelable { ctor public IncidentManager.IncidentReport(android.os.Parcel); method public void close(); @@ -5379,13 +8350,18 @@ package android.os { method @RequiresPermission(allOf={android.Manifest.permission.READ_DREAM_STATE, android.Manifest.permission.WRITE_DREAM_STATE}) public void dream(long); method @RequiresPermission(android.Manifest.permission.DEVICE_POWER) public boolean forceSuspend(); method @RequiresPermission(android.Manifest.permission.POWER_SAVER) public int getPowerSaveModeTrigger(); + method @RequiresPermission(android.Manifest.permission.READ_DREAM_STATE) public boolean isAmbientDisplayAvailable(); + method @RequiresPermission(android.Manifest.permission.READ_DREAM_STATE) public boolean isAmbientDisplaySuppressed(); + method @RequiresPermission(android.Manifest.permission.READ_DREAM_STATE) public boolean isAmbientDisplaySuppressedForToken(@NonNull String); method @RequiresPermission(anyOf={android.Manifest.permission.DEVICE_POWER, android.Manifest.permission.POWER_SAVER}) public boolean setAdaptivePowerSaveEnabled(boolean); method @RequiresPermission(anyOf={android.Manifest.permission.DEVICE_POWER, android.Manifest.permission.POWER_SAVER}) public boolean setAdaptivePowerSavePolicy(@NonNull android.os.BatterySaverPolicyConfig); method @RequiresPermission(android.Manifest.permission.POWER_SAVER) public boolean setDynamicPowerSaveHint(boolean, int); method @RequiresPermission(anyOf={android.Manifest.permission.DEVICE_POWER, android.Manifest.permission.POWER_SAVER}) public boolean setPowerSaveModeEnabled(boolean); + method @RequiresPermission(android.Manifest.permission.WRITE_DREAM_STATE) public void suppressAmbientDisplay(@NonNull String, boolean); method @RequiresPermission(anyOf={android.Manifest.permission.DEVICE_POWER, android.Manifest.permission.USER_ACTIVITY}) public void userActivity(long, int, int); field public static final int POWER_SAVE_MODE_TRIGGER_DYNAMIC = 1; // 0x1 field public static final int POWER_SAVE_MODE_TRIGGER_PERCENTAGE = 0; // 0x0 + field public static final String REBOOT_USERSPACE = "userspace"; field public static final int USER_ACTIVITY_EVENT_ACCESSIBILITY = 3; // 0x3 field public static final int USER_ACTIVITY_EVENT_BUTTON = 1; // 0x1 field public static final int USER_ACTIVITY_EVENT_OTHER = 0; // 0x0 @@ -5394,11 +8370,24 @@ package android.os { field public static final int USER_ACTIVITY_FLAG_NO_CHANGE_LIGHTS = 1; // 0x1 } + public class PowerWhitelistManager { + method @RequiresPermission(android.Manifest.permission.DEVICE_POWER) public void addToWhitelist(@NonNull String); + method @RequiresPermission(android.Manifest.permission.DEVICE_POWER) public void addToWhitelist(@NonNull java.util.List<java.lang.String>); + method @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public void whitelistAppTemporarily(@NonNull String, long); + method @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public long whitelistAppTemporarilyForEvent(@NonNull String, int, @NonNull String); + field public static final int EVENT_MMS = 2; // 0x2 + field public static final int EVENT_SMS = 1; // 0x1 + field public static final int EVENT_UNSPECIFIED = 0; // 0x0 + } + public class RecoverySystem { method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void cancelScheduledUpdate(android.content.Context) throws java.io.IOException; + method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void clearPrepareForUnattendedUpdate(@NonNull android.content.Context) throws java.io.IOException; method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void installPackage(android.content.Context, java.io.File, boolean) throws java.io.IOException; + method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void prepareForUnattendedUpdate(@NonNull android.content.Context, @NonNull String, @Nullable android.content.IntentSender) throws java.io.IOException; method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void processPackage(android.content.Context, java.io.File, android.os.RecoverySystem.ProgressListener, android.os.Handler) throws java.io.IOException; method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void processPackage(android.content.Context, java.io.File, android.os.RecoverySystem.ProgressListener) throws java.io.IOException; + method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void rebootAndApply(@NonNull android.content.Context, @NonNull String, @NonNull String) throws java.io.IOException; method @RequiresPermission(allOf={android.Manifest.permission.RECOVERY, android.Manifest.permission.REBOOT}) public static void rebootWipeAb(android.content.Context, java.io.File, String) throws java.io.IOException; method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void scheduleUpdateOnBoot(android.content.Context, java.io.File) throws java.io.IOException; method public static boolean verifyPackageCompatibility(java.io.File) throws java.io.IOException; @@ -5444,6 +8433,11 @@ package android.os { field public static final int TUPLE_VALUE_TYPE = 7; // 0x7 } + public class SystemConfigManager { + method @NonNull @RequiresPermission(android.Manifest.permission.READ_CARRIER_APP_INFO) public java.util.Set<java.lang.String> getDisabledUntilUsedPreinstalledCarrierApps(); + method @NonNull @RequiresPermission(android.Manifest.permission.READ_CARRIER_APP_INFO) public java.util.Map<java.lang.String,java.util.List<java.lang.String>> getDisabledUntilUsedPreinstalledCarrierAssociatedApps(); + } + public class SystemProperties { method @NonNull public static String get(@NonNull String); method @NonNull public static String get(@NonNull String, @Nullable String); @@ -5470,10 +8464,13 @@ package android.os { public class UpdateEngine { ctor public UpdateEngine(); + method @NonNull @WorkerThread public android.os.UpdateEngine.AllocateSpaceResult allocateSpace(@NonNull String, @NonNull String[]); method public void applyPayload(String, long, long, String[]); + method public void applyPayload(@NonNull android.content.res.AssetFileDescriptor, @NonNull String[]); method public boolean bind(android.os.UpdateEngineCallback, android.os.Handler); method public boolean bind(android.os.UpdateEngineCallback); method public void cancel(); + method @WorkerThread public int cleanupAppliedPayload(); method public void resetStatus(); method public void resume(); method public void suspend(); @@ -5481,14 +8478,21 @@ package android.os { method public boolean verifyPayloadMetadata(String); } + public static final class UpdateEngine.AllocateSpaceResult { + method public int getErrorCode(); + method public long getFreeSpaceRequired(); + } + public static final class UpdateEngine.ErrorCodeConstants { ctor public UpdateEngine.ErrorCodeConstants(); + field public static final int DEVICE_CORRUPTED = 61; // 0x3d field public static final int DOWNLOAD_PAYLOAD_VERIFICATION_ERROR = 12; // 0xc field public static final int DOWNLOAD_TRANSFER_ERROR = 9; // 0x9 field public static final int ERROR = 1; // 0x1 field public static final int FILESYSTEM_COPIER_ERROR = 4; // 0x4 field public static final int INSTALL_DEVICE_OPEN_ERROR = 7; // 0x7 field public static final int KERNEL_DEVICE_OPEN_ERROR = 8; // 0x8 + field public static final int NOT_ENOUGH_SPACE = 60; // 0x3c field public static final int PAYLOAD_HASH_MISMATCH_ERROR = 10; // 0xa field public static final int PAYLOAD_MISMATCHED_TYPE_ERROR = 6; // 0x6 field public static final int PAYLOAD_SIZE_MISMATCH_ERROR = 11; // 0xb @@ -5519,6 +8523,7 @@ package android.os { } public final class UserHandle implements android.os.Parcelable { + method @NonNull public static String formatUid(int); method public static int getAppId(int); method public int getIdentifier(); method @Deprecated public boolean isOwner(); @@ -5532,25 +8537,34 @@ package android.os { public class UserManager { method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void clearSeedAccountData(); + method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public android.os.UserHandle createProfile(@NonNull String, @NonNull String, @NonNull java.util.Set<java.lang.String>) throws android.os.UserManager.UserOperationException; + method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}, conditional=true) public java.util.List<android.os.UserHandle> getAllProfiles(); + method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}, conditional=true) public java.util.List<android.os.UserHandle> getEnabledProfiles(); method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public android.os.UserHandle getProfileParent(@NonNull android.os.UserHandle); method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public String getSeedAccountName(); method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public android.os.PersistableBundle getSeedAccountOptions(); method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public String getSeedAccountType(); method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public long[] getSerialNumbersOfUsers(boolean); + method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public java.util.List<android.os.UserHandle> getUserHandles(boolean); method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.GET_ACCOUNTS_PRIVILEGED}) public android.graphics.Bitmap getUserIcon(); method @Deprecated @android.os.UserManager.UserRestrictionSource @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public int getUserRestrictionSource(String, android.os.UserHandle); method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public java.util.List<android.os.UserManager.EnforcingUser> getUserRestrictionSources(String, android.os.UserHandle); method @RequiresPermission(allOf={android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS}, conditional=true) public int getUserSwitchability(); - method public boolean hasRestrictedProfiles(); + method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean hasRestrictedProfiles(); + method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS}, conditional=true) public boolean hasUserRestrictionForUser(@NonNull String, @NonNull android.os.UserHandle); method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isAdminUser(); - method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isGuestUser(); - method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isManagedProfile(); - method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isManagedProfile(int); - method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isPrimaryUser(); + method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public boolean isGuestUser(); + method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS}, conditional=true) public boolean isManagedProfile(int); + method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public boolean isPrimaryUser(); + method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS}, conditional=true) public boolean isProfile(); method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isRestrictedProfile(); - method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isRestrictedProfile(@NonNull android.os.UserHandle); - method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean removeUser(@NonNull android.os.UserHandle); - method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void setUserIcon(@NonNull android.graphics.Bitmap); + method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public boolean isRestrictedProfile(@NonNull android.os.UserHandle); + method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isSameProfileGroup(@NonNull android.os.UserHandle, @NonNull android.os.UserHandle); + method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.GET_ACCOUNTS_PRIVILEGED}) public boolean isUserNameSet(); + method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isUserOfType(@NonNull String); + method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS}, conditional=true) public boolean isUserUnlockingOrUnlocked(@NonNull android.os.UserHandle); + method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public boolean removeUser(@NonNull android.os.UserHandle); + method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void setUserIcon(@NonNull android.graphics.Bitmap) throws android.os.UserManager.UserOperationException; method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void setUserName(@Nullable String); field public static final String ACTION_USER_RESTRICTIONS_CHANGED = "android.os.action.USER_RESTRICTIONS_CHANGED"; field @Deprecated public static final String DISALLOW_OEM_UNLOCK = "no_oem_unlock"; @@ -5563,6 +8577,10 @@ package android.os { field public static final int SWITCHABILITY_STATUS_SYSTEM_USER_LOCKED = 4; // 0x4 field public static final int SWITCHABILITY_STATUS_USER_IN_CALL = 1; // 0x1 field public static final int SWITCHABILITY_STATUS_USER_SWITCH_DISALLOWED = 2; // 0x2 + field public static final String USER_TYPE_FULL_SECONDARY = "android.os.usertype.full.SECONDARY"; + field public static final String USER_TYPE_FULL_SYSTEM = "android.os.usertype.full.SYSTEM"; + field public static final String USER_TYPE_PROFILE_MANAGED = "android.os.usertype.profile.MANAGED"; + field public static final String USER_TYPE_SYSTEM_HEADLESS = "android.os.usertype.system.HEADLESS"; } public static final class UserManager.EnforcingUser implements android.os.Parcelable { @@ -5576,8 +8594,27 @@ package android.os { @IntDef(flag=true, prefix={"RESTRICTION_"}, value={android.os.UserManager.RESTRICTION_NOT_SET, android.os.UserManager.RESTRICTION_SOURCE_SYSTEM, android.os.UserManager.RESTRICTION_SOURCE_DEVICE_OWNER, android.os.UserManager.RESTRICTION_SOURCE_PROFILE_OWNER}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface UserManager.UserRestrictionSource { } + public abstract class Vibrator { + method @RequiresPermission(android.Manifest.permission.ACCESS_VIBRATOR_STATE) public void addVibratorStateListener(@NonNull android.os.Vibrator.OnVibratorStateChangedListener); + method @RequiresPermission(android.Manifest.permission.ACCESS_VIBRATOR_STATE) public void addVibratorStateListener(@NonNull java.util.concurrent.Executor, @NonNull android.os.Vibrator.OnVibratorStateChangedListener); + method @RequiresPermission(android.Manifest.permission.ACCESS_VIBRATOR_STATE) public boolean isVibrating(); + method @RequiresPermission(android.Manifest.permission.ACCESS_VIBRATOR_STATE) public void removeVibratorStateListener(@NonNull android.os.Vibrator.OnVibratorStateChangedListener); + } + + public static interface Vibrator.OnVibratorStateChangedListener { + method public void onVibratorStateChanged(boolean); + } + public class WorkSource implements android.os.Parcelable { + ctor public WorkSource(int); + ctor public WorkSource(int, @NonNull String); method public android.os.WorkSource.WorkChain createWorkChain(); + method @Nullable public String getPackageName(int); + method public int getUid(int); + method @Nullable public java.util.List<android.os.WorkSource.WorkChain> getWorkChains(); + method public boolean isEmpty(); + method public int size(); + method @NonNull public android.os.WorkSource withoutNames(); } public static final class WorkSource.WorkChain implements android.os.Parcelable { @@ -5592,6 +8629,75 @@ package android.os { } +package android.os.connectivity { + + public final class CellularBatteryStats implements android.os.Parcelable { + method public int describeContents(); + method public long getEnergyConsumedMaMillis(); + method public long getIdleTimeMillis(); + method public long getKernelActiveTimeMillis(); + method public long getLoggingDurationMillis(); + method public long getMonitoredRailChargeConsumedMaMillis(); + method public long getNumBytesRx(); + method public long getNumBytesTx(); + method public long getNumPacketsRx(); + method public long getNumPacketsTx(); + method public long getRxTimeMillis(); + method public long getSleepTimeMillis(); + method @NonNull public long getTimeInRatMicros(int); + method @NonNull public long getTimeInRxSignalStrengthLevelMicros(@IntRange(from=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_NONE_OR_UNKNOWN, to=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_GREAT) int); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.os.connectivity.CellularBatteryStats> CREATOR; + } + + public final class WifiActivityEnergyInfo implements android.os.Parcelable { + ctor public WifiActivityEnergyInfo(long, int, @IntRange(from=0) long, @IntRange(from=0) long, @IntRange(from=0) long, @IntRange(from=0) long); + method public int describeContents(); + method @IntRange(from=0) public long getControllerEnergyUsedMicroJoules(); + method @IntRange(from=0) public long getControllerIdleDurationMillis(); + method @IntRange(from=0) public long getControllerRxDurationMillis(); + method @IntRange(from=0) public long getControllerScanDurationMillis(); + method @IntRange(from=0) public long getControllerTxDurationMillis(); + method public int getStackState(); + method public long getTimeSinceBootMillis(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.os.connectivity.WifiActivityEnergyInfo> CREATOR; + field public static final int STACK_STATE_INVALID = 0; // 0x0 + field public static final int STACK_STATE_STATE_ACTIVE = 1; // 0x1 + field public static final int STACK_STATE_STATE_IDLE = 3; // 0x3 + field public static final int STACK_STATE_STATE_SCANNING = 2; // 0x2 + } + + public final class WifiBatteryStats implements android.os.Parcelable { + method public int describeContents(); + method public long getAppScanRequestCount(); + method public long getEnergyConsumedMaMillis(); + method public long getIdleTimeMillis(); + method public long getKernelActiveTimeMillis(); + method public long getLoggingDurationMillis(); + method public long getMonitoredRailChargeConsumedMaMillis(); + method public long getNumBytesRx(); + method public long getNumBytesTx(); + method public long getNumPacketsRx(); + method public long getNumPacketsTx(); + method public long getRxTimeMillis(); + method public long getScanTimeMillis(); + method public long getSleepTimeMillis(); + method public long getTxTimeMillis(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.os.connectivity.WifiBatteryStats> CREATOR; + } + +} + +package android.os.ext { + + public class SdkExtensions { + method public static int getExtensionVersion(int); + } + +} + package android.os.image { public class DynamicSystemClient { @@ -5629,7 +8735,16 @@ package android.os.storage { method @WorkerThread public void allocateBytes(java.io.FileDescriptor, long, @RequiresPermission int) throws java.io.IOException; method @WorkerThread public long getAllocatableBytes(@NonNull java.util.UUID, @RequiresPermission int) throws java.io.IOException; method public static boolean hasIsolatedStorage(); + method public void updateExternalStorageFileQuotaType(@NonNull java.io.File, int) throws java.io.IOException; field @RequiresPermission(android.Manifest.permission.ALLOCATE_AGGRESSIVE) public static final int FLAG_ALLOCATE_AGGRESSIVE = 1; // 0x1 + field public static final int QUOTA_TYPE_MEDIA_AUDIO = 2; // 0x2 + field public static final int QUOTA_TYPE_MEDIA_IMAGE = 1; // 0x1 + field public static final int QUOTA_TYPE_MEDIA_NONE = 0; // 0x0 + field public static final int QUOTA_TYPE_MEDIA_VIDEO = 3; // 0x3 + } + + public final class StorageVolume implements android.os.Parcelable { + method @NonNull public String getId(); } } @@ -5637,7 +8752,10 @@ package android.os.storage { package android.permission { public final class PermissionControllerManager { + method @RequiresPermission(anyOf={android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS, android.Manifest.permission.RESTORE_RUNTIME_PERMISSIONS}) public void applyStagedRuntimePermissionBackup(@NonNull String, @NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>); + method @RequiresPermission(android.Manifest.permission.GET_RUNTIME_PERMISSIONS) public void getRuntimePermissionBackup(@NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<byte[]>); method @RequiresPermission(android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS) public void revokeRuntimePermissions(@NonNull java.util.Map<java.lang.String,java.util.List<java.lang.String>>, boolean, int, @NonNull java.util.concurrent.Executor, @NonNull android.permission.PermissionControllerManager.OnRevokeRuntimePermissionsCallback); + method @RequiresPermission(anyOf={android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS, android.Manifest.permission.RESTORE_RUNTIME_PERMISSIONS}) public void stageAndApplyRuntimePermissionsBackup(@NonNull byte[], @NonNull android.os.UserHandle); field public static final int COUNT_ONLY_WHEN_GRANTED = 1; // 0x1 field public static final int COUNT_WHEN_SYSTEM = 2; // 0x2 field public static final int REASON_INSTALLER_POLICY_VIOLATION = 2; // 0x2 @@ -5651,24 +8769,34 @@ package android.permission { public abstract class PermissionControllerService extends android.app.Service { ctor public PermissionControllerService(); + method @BinderThread public void onApplyStagedRuntimePermissionBackup(@NonNull String, @NonNull android.os.UserHandle, @NonNull java.util.function.Consumer<java.lang.Boolean>); method @NonNull public final android.os.IBinder onBind(android.content.Intent); method @BinderThread public abstract void onCountPermissionApps(@NonNull java.util.List<java.lang.String>, int, @NonNull java.util.function.IntConsumer); method @BinderThread public abstract void onGetAppPermissions(@NonNull String, @NonNull java.util.function.Consumer<java.util.List<android.permission.RuntimePermissionPresentationInfo>>); method @BinderThread public abstract void onGetPermissionUsages(boolean, long, @NonNull java.util.function.Consumer<java.util.List<android.permission.RuntimePermissionUsageInfo>>); method @BinderThread public abstract void onGetRuntimePermissionsBackup(@NonNull android.os.UserHandle, @NonNull java.io.OutputStream, @NonNull Runnable); method @BinderThread public abstract void onGrantOrUpgradeDefaultRuntimePermissions(@NonNull Runnable); - method @BinderThread public abstract void onRestoreDelayedRuntimePermissionsBackup(@NonNull String, @NonNull android.os.UserHandle, @NonNull java.util.function.Consumer<java.lang.Boolean>); - method @BinderThread public abstract void onRestoreRuntimePermissionsBackup(@NonNull android.os.UserHandle, @NonNull java.io.InputStream, @NonNull Runnable); + method @BinderThread public void onOneTimePermissionSessionTimeout(@NonNull String); + method @Deprecated @BinderThread public void onRestoreDelayedRuntimePermissionsBackup(@NonNull String, @NonNull android.os.UserHandle, @NonNull java.util.function.Consumer<java.lang.Boolean>); + method @Deprecated @BinderThread public void onRestoreRuntimePermissionsBackup(@NonNull android.os.UserHandle, @NonNull java.io.InputStream, @NonNull Runnable); method @BinderThread public abstract void onRevokeRuntimePermission(@NonNull String, @NonNull String, @NonNull Runnable); method @BinderThread public abstract void onRevokeRuntimePermissions(@NonNull java.util.Map<java.lang.String,java.util.List<java.lang.String>>, boolean, int, @NonNull String, @NonNull java.util.function.Consumer<java.util.Map<java.lang.String,java.util.List<java.lang.String>>>); method @BinderThread public abstract void onSetRuntimePermissionGrantStateByDeviceAdmin(@NonNull String, @NonNull String, @NonNull String, int, @NonNull java.util.function.Consumer<java.lang.Boolean>); + method @BinderThread public void onStageAndApplyRuntimePermissionsBackup(@NonNull android.os.UserHandle, @NonNull java.io.InputStream, @NonNull Runnable); + method @BinderThread public void onUpdateUserSensitivePermissionFlags(int, @NonNull java.util.concurrent.Executor, @NonNull Runnable); + method @BinderThread public void onUpdateUserSensitivePermissionFlags(int, @NonNull Runnable); field public static final String SERVICE_INTERFACE = "android.permission.PermissionControllerService"; } public final class PermissionManager { - method @IntRange(from=0) @RequiresPermission(android.Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY) public int getRuntimePermissionsVersion(); + method public int checkDeviceIdentifierAccess(@Nullable String, @Nullable String, @Nullable String, int, int); + method @NonNull @RequiresPermission(android.Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY) public java.util.Set<java.lang.String> getAutoRevokeExemptionGrantedPackages(); + method @NonNull @RequiresPermission(android.Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY) public java.util.Set<java.lang.String> getAutoRevokeExemptionRequestedPackages(); + method @IntRange(from=0) @RequiresPermission(anyOf={android.Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY, android.Manifest.permission.UPGRADE_RUNTIME_PERMISSIONS}) public int getRuntimePermissionsVersion(); method @NonNull public java.util.List<android.permission.PermissionManager.SplitPermissionInfo> getSplitPermissions(); - method @RequiresPermission(android.Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY) public void setRuntimePermissionsVersion(@IntRange(from=0) int); + method @RequiresPermission(anyOf={android.Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY, android.Manifest.permission.UPGRADE_RUNTIME_PERMISSIONS}) public void setRuntimePermissionsVersion(@IntRange(from=0) int); + method @RequiresPermission(android.Manifest.permission.MANAGE_ONE_TIME_PERMISSION_SESSIONS) public void startOneTimePermissionSession(@NonNull String, long, int, int); + method @RequiresPermission(android.Manifest.permission.MANAGE_ONE_TIME_PERMISSION_SESSIONS) public void stopOneTimePermissionSession(@NonNull String); } public static final class PermissionManager.SplitPermissionInfo { @@ -5780,34 +8908,34 @@ package android.printservice.recommendation { package android.provider { - public static final class ContactsContract.MetadataSync implements android.provider.BaseColumns android.provider.ContactsContract.MetadataSyncColumns { - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contact_metadata"; - field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contact_metadata"; - field public static final android.net.Uri CONTENT_URI; - field public static final String METADATA_AUTHORITY = "com.android.contacts.metadata"; - field public static final android.net.Uri METADATA_AUTHORITY_URI; + @Deprecated public static final class ContactsContract.MetadataSync implements android.provider.BaseColumns android.provider.ContactsContract.MetadataSyncColumns { + field @Deprecated public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contact_metadata"; + field @Deprecated public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contact_metadata"; + field @Deprecated public static final android.net.Uri CONTENT_URI; + field @Deprecated public static final String METADATA_AUTHORITY = "com.android.contacts.metadata"; + field @Deprecated public static final android.net.Uri METADATA_AUTHORITY_URI; } - protected static interface ContactsContract.MetadataSyncColumns { - field public static final String ACCOUNT_NAME = "account_name"; - field public static final String ACCOUNT_TYPE = "account_type"; - field public static final String DATA = "data"; - field public static final String DATA_SET = "data_set"; - field public static final String DELETED = "deleted"; - field public static final String RAW_CONTACT_BACKUP_ID = "raw_contact_backup_id"; + @Deprecated protected static interface ContactsContract.MetadataSyncColumns { + field @Deprecated public static final String ACCOUNT_NAME = "account_name"; + field @Deprecated public static final String ACCOUNT_TYPE = "account_type"; + field @Deprecated public static final String DATA = "data"; + field @Deprecated public static final String DATA_SET = "data_set"; + field @Deprecated public static final String DELETED = "deleted"; + field @Deprecated public static final String RAW_CONTACT_BACKUP_ID = "raw_contact_backup_id"; } - public static final class ContactsContract.MetadataSyncState implements android.provider.BaseColumns android.provider.ContactsContract.MetadataSyncStateColumns { - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contact_metadata_sync_state"; - field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contact_metadata_sync_state"; - field public static final android.net.Uri CONTENT_URI; + @Deprecated public static final class ContactsContract.MetadataSyncState implements android.provider.BaseColumns android.provider.ContactsContract.MetadataSyncStateColumns { + field @Deprecated public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contact_metadata_sync_state"; + field @Deprecated public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contact_metadata_sync_state"; + field @Deprecated public static final android.net.Uri CONTENT_URI; } - protected static interface ContactsContract.MetadataSyncStateColumns { - field public static final String ACCOUNT_NAME = "account_name"; - field public static final String ACCOUNT_TYPE = "account_type"; - field public static final String DATA_SET = "data_set"; - field public static final String STATE = "state"; + @Deprecated protected static interface ContactsContract.MetadataSyncStateColumns { + field @Deprecated public static final String ACCOUNT_NAME = "account_name"; + field @Deprecated public static final String ACCOUNT_TYPE = "account_type"; + field @Deprecated public static final String DATA_SET = "data_set"; + field @Deprecated public static final String STATE = "state"; } public final class DeviceConfig { @@ -5816,24 +8944,31 @@ package android.provider { method @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public static float getFloat(@NonNull String, @NonNull String, float); method @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public static int getInt(@NonNull String, @NonNull String, int); method @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public static long getLong(@NonNull String, @NonNull String, long); + method @NonNull @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public static android.provider.DeviceConfig.Properties getProperties(@NonNull String, @NonNull java.lang.String...); method @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public static String getProperty(@NonNull String, @NonNull String); method @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public static String getString(@NonNull String, @NonNull String, @Nullable String); method public static void removeOnPropertiesChangedListener(@NonNull android.provider.DeviceConfig.OnPropertiesChangedListener); method @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static void resetToDefaults(int, @Nullable String); + method @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static boolean setProperties(@NonNull android.provider.DeviceConfig.Properties) throws android.provider.DeviceConfig.BadConfigException; method @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static boolean setProperty(@NonNull String, @NonNull String, @Nullable String, boolean); field public static final String NAMESPACE_ACTIVITY_MANAGER = "activity_manager"; field public static final String NAMESPACE_ACTIVITY_MANAGER_NATIVE_BOOT = "activity_manager_native_boot"; field public static final String NAMESPACE_APP_COMPAT = "app_compat"; field public static final String NAMESPACE_ATTENTION_MANAGER_SERVICE = "attention_manager_service"; field public static final String NAMESPACE_AUTOFILL = "autofill"; + field public static final String NAMESPACE_BIOMETRICS = "biometrics"; + field public static final String NAMESPACE_BLOBSTORE = "blobstore"; field public static final String NAMESPACE_CONNECTIVITY = "connectivity"; field public static final String NAMESPACE_CONTENT_CAPTURE = "content_capture"; - field public static final String NAMESPACE_DEX_BOOT = "dex_boot"; + field @Deprecated public static final String NAMESPACE_DEX_BOOT = "dex_boot"; + field public static final String NAMESPACE_DISPLAY_MANAGER = "display_manager"; field public static final String NAMESPACE_GAME_DRIVER = "game_driver"; field public static final String NAMESPACE_INPUT_NATIVE_BOOT = "input_native_boot"; field public static final String NAMESPACE_INTELLIGENCE_ATTENTION = "intelligence_attention"; field public static final String NAMESPACE_MEDIA_NATIVE = "media_native"; field public static final String NAMESPACE_NETD_NATIVE = "netd_native"; + field public static final String NAMESPACE_PACKAGE_MANAGER_SERVICE = "package_manager_service"; + field public static final String NAMESPACE_PERMISSIONS = "permissions"; field public static final String NAMESPACE_PRIVACY = "privacy"; field public static final String NAMESPACE_ROLLBACK = "rollback"; field public static final String NAMESPACE_ROLLBACK_BOOT = "rollback_boot"; @@ -5841,10 +8976,16 @@ package android.provider { field public static final String NAMESPACE_RUNTIME_NATIVE = "runtime_native"; field public static final String NAMESPACE_RUNTIME_NATIVE_BOOT = "runtime_native_boot"; field public static final String NAMESPACE_SCHEDULER = "scheduler"; - field public static final String NAMESPACE_STORAGE = "storage"; + field @Deprecated public static final String NAMESPACE_STORAGE = "storage"; + field public static final String NAMESPACE_STORAGE_NATIVE_BOOT = "storage_native_boot"; field public static final String NAMESPACE_SYSTEMUI = "systemui"; field public static final String NAMESPACE_TELEPHONY = "telephony"; field public static final String NAMESPACE_TEXTCLASSIFIER = "textclassifier"; + field public static final String NAMESPACE_WINDOW_MANAGER_NATIVE_BOOT = "window_manager_native_boot"; + } + + public static class DeviceConfig.BadConfigException extends java.lang.Exception { + ctor public DeviceConfig.BadConfigException(); } public static interface DeviceConfig.OnPropertiesChangedListener { @@ -5861,7 +9002,18 @@ package android.provider { method @Nullable public String getString(@NonNull String, @Nullable String); } + public static final class DeviceConfig.Properties.Builder { + ctor public DeviceConfig.Properties.Builder(@NonNull String); + method @NonNull public android.provider.DeviceConfig.Properties build(); + method @NonNull public android.provider.DeviceConfig.Properties.Builder setBoolean(@NonNull String, boolean); + method @NonNull public android.provider.DeviceConfig.Properties.Builder setFloat(@NonNull String, float); + method @NonNull public android.provider.DeviceConfig.Properties.Builder setInt(@NonNull String, int); + method @NonNull public android.provider.DeviceConfig.Properties.Builder setLong(@NonNull String, long); + method @NonNull public android.provider.DeviceConfig.Properties.Builder setString(@NonNull String, @Nullable String); + } + public final class DocumentsContract { + method @NonNull public static android.net.Uri buildDocumentUriAsUser(@NonNull String, @NonNull String, @NonNull android.os.UserHandle); method public static boolean isManageMode(@NonNull android.net.Uri); method @NonNull public static android.net.Uri setManageMode(@NonNull android.net.Uri); field public static final String ACTION_DOCUMENT_ROOT_SETTINGS = "android.provider.action.DOCUMENT_ROOT_SETTINGS"; @@ -5876,6 +9028,15 @@ package android.provider { field public static final int FLAG_REMOVABLE_USB = 524288; // 0x80000 } + public final class MediaStore { + method @NonNull public static android.net.Uri rewriteToLegacy(@NonNull android.net.Uri); + method @NonNull @WorkerThread public static android.net.Uri scanFile(@NonNull android.content.ContentResolver, @NonNull java.io.File); + method @WorkerThread public static void scanVolume(@NonNull android.content.ContentResolver, @NonNull String); + method @WorkerThread public static void waitForIdle(@NonNull android.content.ContentResolver); + field public static final String AUTHORITY_LEGACY = "media_legacy"; + field @NonNull public static final android.net.Uri AUTHORITY_LEGACY_URI; + } + public abstract class SearchIndexableData { ctor public SearchIndexableData(); ctor public SearchIndexableData(android.content.Context); @@ -5923,6 +9084,8 @@ package android.provider { field public static final int COLUMN_INDEX_XML_RES_INTENT_TARGET_PACKAGE = 5; // 0x5 field public static final int COLUMN_INDEX_XML_RES_RANK = 0; // 0x0 field public static final int COLUMN_INDEX_XML_RES_RESID = 1; // 0x1 + field public static final String DYNAMIC_INDEXABLES_RAW = "dynamic_indexables_raw"; + field public static final String DYNAMIC_INDEXABLES_RAW_PATH = "settings/dynamic_indexables_raw"; field public static final String INDEXABLES_RAW = "indexables_raw"; field public static final String[] INDEXABLES_RAW_COLUMNS; field public static final String INDEXABLES_RAW_PATH = "settings/indexables_raw"; @@ -5980,6 +9143,7 @@ package android.provider { method public String getType(android.net.Uri); method public final android.net.Uri insert(android.net.Uri, android.content.ContentValues); method public android.database.Cursor query(android.net.Uri, String[], String, String[], String); + method @Nullable public android.database.Cursor queryDynamicRawData(@Nullable String[]); method public abstract android.database.Cursor queryNonIndexableKeys(String[]); method public abstract android.database.Cursor queryRawData(String[]); method @Nullable public android.database.Cursor querySliceUriPairs(); @@ -5988,19 +9152,25 @@ package android.provider { } public final class Settings { + method public static boolean checkAndNoteWriteSettingsOperation(@NonNull android.content.Context, int, @NonNull String, boolean); field public static final String ACTION_ACCESSIBILITY_DETAILS_SETTINGS = "android.settings.ACCESSIBILITY_DETAILS_SETTINGS"; + field public static final String ACTION_BUGREPORT_HANDLER_SETTINGS = "android.settings.BUGREPORT_HANDLER_SETTINGS"; field public static final String ACTION_ENTERPRISE_PRIVACY_SETTINGS = "android.settings.ENTERPRISE_PRIVACY_SETTINGS"; field public static final String ACTION_LOCATION_CONTROLLER_EXTRA_PACKAGE_SETTINGS = "android.settings.LOCATION_CONTROLLER_EXTRA_PACKAGE_SETTINGS"; + field public static final String ACTION_MANAGE_APP_OVERLAY_PERMISSION = "android.settings.MANAGE_APP_OVERLAY_PERMISSION"; field public static final String ACTION_MANAGE_DOMAIN_URLS = "android.settings.MANAGE_DOMAIN_URLS"; field public static final String ACTION_MANAGE_MORE_DEFAULT_APPS_SETTINGS = "android.settings.MANAGE_MORE_DEFAULT_APPS_SETTINGS"; field public static final String ACTION_NOTIFICATION_POLICY_ACCESS_DETAIL_SETTINGS = "android.settings.NOTIFICATION_POLICY_ACCESS_DETAIL_SETTINGS"; field public static final String ACTION_REQUEST_ENABLE_CONTENT_CAPTURE = "android.settings.REQUEST_ENABLE_CONTENT_CAPTURE"; field public static final String ACTION_SHOW_ADMIN_SUPPORT_DETAILS = "android.settings.SHOW_ADMIN_SUPPORT_DETAILS"; + field public static final String ACTION_TETHER_PROVISIONING_UI = "android.settings.TETHER_PROVISIONING_UI"; + field public static final String ACTION_TETHER_SETTINGS = "android.settings.TETHER_SETTINGS"; } public static final class Settings.Global extends android.provider.Settings.NameValueTable { method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public static boolean putString(@NonNull android.content.ContentResolver, @NonNull String, @Nullable String, @Nullable String, boolean); method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public static void resetToDefaults(@NonNull android.content.ContentResolver, @Nullable String); + field public static final String AIRPLANE_MODE_TOGGLEABLE_RADIOS = "airplane_mode_toggleable_radios"; field public static final String APP_STANDBY_ENABLED = "app_standby_enabled"; field public static final String AUTOFILL_COMPAT_MODE_ALLOWED_PACKAGES = "autofill_compat_mode_allowed_packages"; field public static final String CARRIER_APP_NAMES = "carrier_app_names"; @@ -6009,20 +9179,24 @@ package android.provider { field public static final String DEVICE_DEMO_MODE = "device_demo_mode"; field public static final String DEVICE_PROVISIONING_MOBILE_DATA_ENABLED = "device_provisioning_mobile_data"; field public static final String EUICC_PROVISIONED = "euicc_provisioned"; + field public static final String EUICC_SUPPORTED_COUNTRIES = "euicc_supported_countries"; + field public static final String EUICC_UNSUPPORTED_COUNTRIES = "euicc_unsupported_countries"; field public static final String INSTALL_CARRIER_APP_NOTIFICATION_PERSISTENT = "install_carrier_app_notification_persistent"; field public static final String INSTALL_CARRIER_APP_NOTIFICATION_SLEEP_MILLIS = "install_carrier_app_notification_sleep_millis"; field public static final String OTA_DISABLE_AUTOMATIC_UPDATE = "ota_disable_automatic_update"; field public static final String REQUIRE_PASSWORD_TO_DECRYPT = "require_password_to_decrypt"; + field public static final String TETHER_OFFLOAD_DISABLED = "tether_offload_disabled"; + field public static final String TETHER_SUPPORTED = "tether_supported"; field public static final String THEATER_MODE_ON = "theater_mode_on"; field public static final String WEBVIEW_MULTIPROCESS = "webview_multiprocess"; field public static final String WIFI_BADGING_THRESHOLDS = "wifi_badging_thresholds"; - field public static final String WIFI_WAKEUP_ENABLED = "wifi_wakeup_enabled"; + field @Deprecated public static final String WIFI_WAKEUP_ENABLED = "wifi_wakeup_enabled"; } public static final class Settings.Secure extends android.provider.Settings.NameValueTable { method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public static boolean putString(@NonNull android.content.ContentResolver, @NonNull String, @Nullable String, @Nullable String, boolean); method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public static void resetToDefaults(@NonNull android.content.ContentResolver, @Nullable String); - field public static final String ACCESSIBILITY_DISPLAY_MAGNIFICATION_NAVBAR_ENABLED = "accessibility_display_magnification_navbar_enabled"; + field @Deprecated public static final String ACCESSIBILITY_DISPLAY_MAGNIFICATION_NAVBAR_ENABLED = "accessibility_display_magnification_navbar_enabled"; field public static final String ASSIST_GESTURE_SETUP_COMPLETE = "assist_gesture_setup_complete"; field public static final String AUTOFILL_FEATURE_FIELD_CLASSIFICATION = "autofill_field_classification"; field public static final String AUTOFILL_USER_DATA_MAX_CATEGORY_COUNT = "autofill_user_data_max_category_count"; @@ -6030,6 +9204,7 @@ package android.provider { field public static final String AUTOFILL_USER_DATA_MAX_USER_DATA_SIZE = "autofill_user_data_max_user_data_size"; field public static final String AUTOFILL_USER_DATA_MAX_VALUE_LENGTH = "autofill_user_data_max_value_length"; field public static final String AUTOFILL_USER_DATA_MIN_VALUE_LENGTH = "autofill_user_data_min_value_length"; + field public static final String AUTO_REVOKE_DISABLED = "auto_revoke_disabled"; field public static final String COMPLETED_CATEGORY_PREFIX = "suggested.completed_category."; field public static final String DOZE_ALWAYS_ON = "doze_always_on"; field public static final String HUSH_GESTURE_USED = "hush_gesture_used"; @@ -6038,7 +9213,7 @@ package android.provider { field public static final String LOCATION_ACCESS_CHECK_DELAY_MILLIS = "location_access_check_delay_millis"; field public static final String LOCATION_ACCESS_CHECK_INTERVAL_MILLIS = "location_access_check_interval_millis"; field public static final int LOCATION_MODE_ON = 3; // 0x3 - field public static final String LOCATION_PERMISSIONS_UPGRADE_TO_Q_MODE = "location_permissions_upgrade_to_q_mode"; + field @Deprecated public static final String LOCATION_PERMISSIONS_UPGRADE_TO_Q_MODE = "location_permissions_upgrade_to_q_mode"; field public static final String LOCK_SCREEN_ALLOW_PRIVATE_NOTIFICATIONS = "lock_screen_allow_private_notifications"; field public static final String LOCK_SCREEN_SHOW_NOTIFICATIONS = "lock_screen_show_notifications"; field public static final String ODI_CAPTIONS_ENABLED = "odi_captions_enabled"; @@ -6055,6 +9230,10 @@ package android.provider { field public static final int VOLUME_HUSH_VIBRATE = 1; // 0x1 } + public static final class Settings.System extends android.provider.Settings.NameValueTable { + method @RequiresPermission(android.Manifest.permission.MODIFY_SETTINGS_OVERRIDEABLE_BY_RESTORE) public static boolean putString(@NonNull android.content.ContentResolver, @NonNull String, @Nullable String, boolean); + } + public static final class Telephony.Carriers implements android.provider.BaseColumns { field public static final String APN_SET_ID = "apn_set_id"; field public static final int CARRIER_EDITED = 4; // 0x4 @@ -6072,6 +9251,61 @@ package android.provider { field public static final String WAIT_TIME_RETRY = "wait_time"; } + public static final class Telephony.CellBroadcasts implements android.provider.BaseColumns { + field @NonNull public static final String AUTHORITY_LEGACY = "cellbroadcast-legacy"; + field @NonNull public static final android.net.Uri AUTHORITY_LEGACY_URI; + field @NonNull public static final String CALL_METHOD_GET_PREFERENCE = "get_preference"; + field public static final String CID = "cid"; + field public static final String CMAS_CATEGORY = "cmas_category"; + field public static final String CMAS_CERTAINTY = "cmas_certainty"; + field public static final String CMAS_MESSAGE_CLASS = "cmas_message_class"; + field public static final String CMAS_RESPONSE_TYPE = "cmas_response_type"; + field public static final String CMAS_SEVERITY = "cmas_severity"; + field public static final String CMAS_URGENCY = "cmas_urgency"; + field @NonNull public static final android.net.Uri CONTENT_URI; + field public static final String DATA_CODING_SCHEME = "dcs"; + field public static final String DEFAULT_SORT_ORDER = "date DESC"; + field public static final String DELIVERY_TIME = "date"; + field public static final String ETWS_WARNING_TYPE = "etws_warning_type"; + field public static final String GEOGRAPHICAL_SCOPE = "geo_scope"; + field public static final String GEOMETRIES = "geometries"; + field public static final String LAC = "lac"; + field public static final String LANGUAGE_CODE = "language"; + field public static final String LOCATION_CHECK_TIME = "location_check_time"; + field public static final String MAXIMUM_WAIT_TIME = "maximum_wait_time"; + field public static final String MESSAGE_BODY = "body"; + field public static final String MESSAGE_BROADCASTED = "message_broadcasted"; + field public static final String MESSAGE_DISPLAYED = "message_displayed"; + field public static final String MESSAGE_FORMAT = "format"; + field @NonNull @RequiresPermission(android.Manifest.permission.READ_CELL_BROADCASTS) public static final android.net.Uri MESSAGE_HISTORY_URI; + field public static final String MESSAGE_PRIORITY = "priority"; + field public static final String MESSAGE_READ = "read"; + field public static final String PLMN = "plmn"; + field public static final String RECEIVED_TIME = "received_time"; + field public static final String SERIAL_NUMBER = "serial_number"; + field public static final String SERVICE_CATEGORY = "service_category"; + field public static final String SLOT_INDEX = "slot_index"; + field public static final String SUBSCRIPTION_ID = "sub_id"; + } + + public static final class Telephony.CellBroadcasts.Preference { + field @NonNull public static final String ENABLE_ALERT_VIBRATION_PREF = "enable_alert_vibrate"; + field @NonNull public static final String ENABLE_AREA_UPDATE_INFO_PREF = "enable_area_update_info_alerts"; + field @NonNull public static final String ENABLE_CMAS_AMBER_PREF = "enable_cmas_amber_alerts"; + field @NonNull public static final String ENABLE_CMAS_EXTREME_THREAT_PREF = "enable_cmas_extreme_threat_alerts"; + field @NonNull public static final String ENABLE_CMAS_IN_SECOND_LANGUAGE_PREF = "receive_cmas_in_second_language"; + field @NonNull public static final String ENABLE_CMAS_PRESIDENTIAL_PREF = "enable_cmas_presidential_alerts"; + field @NonNull public static final String ENABLE_CMAS_SEVERE_THREAT_PREF = "enable_cmas_severe_threat_alerts"; + field @NonNull public static final String ENABLE_EMERGENCY_PERF = "enable_emergency_alerts"; + field @NonNull public static final String ENABLE_PUBLIC_SAFETY_PREF = "enable_public_safety_messages"; + field @NonNull public static final String ENABLE_STATE_LOCAL_TEST_PREF = "enable_state_local_test_alerts"; + field @NonNull public static final String ENABLE_TEST_ALERT_PREF = "enable_test_alerts"; + } + + public static final class Telephony.Sms.Intents { + field public static final String ACTION_SMS_EMERGENCY_CB_RECEIVED = "android.provider.action.SMS_EMERGENCY_CB_RECEIVED"; + } + public final class TimeZoneRulesDataContract { field public static final String AUTHORITY = "com.android.timezone"; } @@ -6090,13 +9324,26 @@ package android.provider { } +package android.se.omapi { + + public final class Reader { + method @RequiresPermission(android.Manifest.permission.SECURE_ELEMENT_PRIVILEGED_OPERATION) public boolean reset(); + } + +} + package android.security.keystore { + public class AndroidKeyStoreProvider extends java.security.Provider { + method @NonNull public static java.security.KeyStore getKeyStoreForUid(int) throws java.security.KeyStoreException, java.security.NoSuchProviderException; + } + public abstract class AttestationUtils { - method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @NonNull public static java.security.cert.X509Certificate[] attestDeviceIds(android.content.Context, @NonNull int[], @NonNull byte[]) throws android.security.keystore.DeviceIdAttestationException; + method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static java.security.cert.X509Certificate[] attestDeviceIds(android.content.Context, @NonNull int[], @NonNull byte[]) throws android.security.keystore.DeviceIdAttestationException; field public static final int ID_TYPE_IMEI = 2; // 0x2 field public static final int ID_TYPE_MEID = 3; // 0x3 field public static final int ID_TYPE_SERIAL = 1; // 0x1 + field public static final int USE_INDIVIDUAL_ATTESTATION = 4; // 0x4 } public class DeviceIdAttestationException extends java.lang.Exception { @@ -6104,6 +9351,10 @@ package android.security.keystore { ctor public DeviceIdAttestationException(@Nullable String, @Nullable Throwable); } + public static final class KeyGenParameterSpec.Builder { + method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setUid(int); + } + } package android.security.keystore.recovery { @@ -6173,18 +9424,18 @@ package android.security.keystore.recovery { } public class RecoveryController { - method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) @NonNull public android.security.keystore.recovery.RecoverySession createRecoverySession(); + method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public android.security.keystore.recovery.RecoverySession createRecoverySession(); method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public java.security.Key generateKey(@NonNull String) throws android.security.keystore.recovery.InternalRecoveryServiceException, android.security.keystore.recovery.LockScreenRequiredException; - method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) @NonNull public java.security.Key generateKey(@NonNull String, @Nullable byte[]) throws android.security.keystore.recovery.InternalRecoveryServiceException, android.security.keystore.recovery.LockScreenRequiredException; - method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) @NonNull public java.util.List<java.lang.String> getAliases() throws android.security.keystore.recovery.InternalRecoveryServiceException; - method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) @NonNull public static android.security.keystore.recovery.RecoveryController getInstance(@NonNull android.content.Context); - method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) @Nullable public java.security.Key getKey(@NonNull String) throws android.security.keystore.recovery.InternalRecoveryServiceException, java.security.UnrecoverableKeyException; - method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) @Nullable public android.security.keystore.recovery.KeyChainSnapshot getKeyChainSnapshot() throws android.security.keystore.recovery.InternalRecoveryServiceException; + method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public java.security.Key generateKey(@NonNull String, @Nullable byte[]) throws android.security.keystore.recovery.InternalRecoveryServiceException, android.security.keystore.recovery.LockScreenRequiredException; + method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public java.util.List<java.lang.String> getAliases() throws android.security.keystore.recovery.InternalRecoveryServiceException; + method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public static android.security.keystore.recovery.RecoveryController getInstance(@NonNull android.content.Context); + method @Nullable @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public java.security.Key getKey(@NonNull String) throws android.security.keystore.recovery.InternalRecoveryServiceException, java.security.UnrecoverableKeyException; + method @Nullable @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public android.security.keystore.recovery.KeyChainSnapshot getKeyChainSnapshot() throws android.security.keystore.recovery.InternalRecoveryServiceException; method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public int[] getRecoverySecretTypes() throws android.security.keystore.recovery.InternalRecoveryServiceException; method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public int getRecoveryStatus(@NonNull String) throws android.security.keystore.recovery.InternalRecoveryServiceException; - method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) @NonNull public java.util.Map<java.lang.String,java.security.cert.X509Certificate> getRootCertificates(); + method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public java.util.Map<java.lang.String,java.security.cert.X509Certificate> getRootCertificates(); method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public java.security.Key importKey(@NonNull String, @NonNull byte[]) throws android.security.keystore.recovery.InternalRecoveryServiceException, android.security.keystore.recovery.LockScreenRequiredException; - method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) @NonNull public java.security.Key importKey(@NonNull String, @NonNull byte[], @Nullable byte[]) throws android.security.keystore.recovery.InternalRecoveryServiceException, android.security.keystore.recovery.LockScreenRequiredException; + method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public java.security.Key importKey(@NonNull String, @NonNull byte[], @Nullable byte[]) throws android.security.keystore.recovery.InternalRecoveryServiceException, android.security.keystore.recovery.LockScreenRequiredException; method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void initRecoveryService(@NonNull String, @NonNull byte[], @NonNull byte[]) throws java.security.cert.CertificateException, android.security.keystore.recovery.InternalRecoveryServiceException; method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public static boolean isRecoverableKeyStoreEnabled(@NonNull android.content.Context); method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void removeKey(@NonNull String) throws android.security.keystore.recovery.InternalRecoveryServiceException; @@ -6199,8 +9450,8 @@ package android.security.keystore.recovery { public class RecoverySession implements java.lang.AutoCloseable { method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void close(); - method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) @NonNull public java.util.Map<java.lang.String,java.security.Key> recoverKeyChainSnapshot(@NonNull byte[], @NonNull java.util.List<android.security.keystore.recovery.WrappedApplicationKey>) throws android.security.keystore.recovery.DecryptionFailedException, android.security.keystore.recovery.InternalRecoveryServiceException, android.security.keystore.recovery.SessionExpiredException; - method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) @NonNull public byte[] start(@NonNull String, @NonNull java.security.cert.CertPath, @NonNull byte[], @NonNull byte[], @NonNull java.util.List<android.security.keystore.recovery.KeyChainProtectionParams>) throws java.security.cert.CertificateException, android.security.keystore.recovery.InternalRecoveryServiceException; + method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public java.util.Map<java.lang.String,java.security.Key> recoverKeyChainSnapshot(@NonNull byte[], @NonNull java.util.List<android.security.keystore.recovery.WrappedApplicationKey>) throws android.security.keystore.recovery.DecryptionFailedException, android.security.keystore.recovery.InternalRecoveryServiceException, android.security.keystore.recovery.SessionExpiredException; + method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public byte[] start(@NonNull String, @NonNull java.security.cert.CertPath, @NonNull byte[], @NonNull byte[], @NonNull java.util.List<android.security.keystore.recovery.KeyChainProtectionParams>) throws java.security.cert.CertificateException, android.security.keystore.recovery.InternalRecoveryServiceException; } public class SessionExpiredException extends java.security.GeneralSecurityException { @@ -6271,9 +9522,11 @@ package android.service.attention { package android.service.autofill { public abstract class AutofillFieldClassificationService extends android.app.Service { + ctor public AutofillFieldClassificationService(); method public android.os.IBinder onBind(android.content.Intent); method @Nullable public float[][] onCalculateScores(@NonNull java.util.List<android.view.autofill.AutofillValue>, @NonNull java.util.List<java.lang.String>, @NonNull java.util.List<java.lang.String>, @Nullable String, @Nullable android.os.Bundle, @Nullable java.util.Map, @Nullable java.util.Map); method @Deprecated @Nullable public float[][] onGetScores(@Nullable String, @Nullable android.os.Bundle, @NonNull java.util.List<android.view.autofill.AutofillValue>, @NonNull java.util.List<java.lang.String>); + field public static final String REQUIRED_ALGORITHM_CREDIT_CARD = "CREDIT_CARD"; field public static final String REQUIRED_ALGORITHM_EDIT_DISTANCE = "EDIT_DISTANCE"; field public static final String REQUIRED_ALGORITHM_EXACT_MATCH = "EXACT_MATCH"; field public static final String SERVICE_INTERFACE = "android.service.autofill.AutofillFieldClassificationService"; @@ -6281,6 +9534,20 @@ package android.service.autofill { field public static final String SERVICE_META_DATA_KEY_DEFAULT_ALGORITHM = "android.autofill.field_classification.default_algorithm"; } + public static final class Dataset.Builder { + ctor public Dataset.Builder(@NonNull android.service.autofill.InlinePresentation); + method @NonNull public android.service.autofill.Dataset.Builder setFieldInlinePresentation(@NonNull android.view.autofill.AutofillId, @Nullable android.view.autofill.AutofillValue, @Nullable java.util.regex.Pattern, @NonNull android.service.autofill.InlinePresentation); + } + + public abstract class InlineSuggestionRenderService extends android.app.Service { + ctor public InlineSuggestionRenderService(); + method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent); + method @NonNull public android.os.Bundle onGetInlineSuggestionsRendererInfo(); + method @Nullable public android.view.View onRenderSuggestion(@NonNull android.service.autofill.InlinePresentation, int, int); + method public final void startIntentSender(@NonNull android.content.IntentSender); + field public static final String SERVICE_INTERFACE = "android.service.autofill.InlineSuggestionRenderService"; + } + } package android.service.autofill.augmented { @@ -6289,9 +9556,11 @@ package android.service.autofill.augmented { ctor public AugmentedAutofillService(); method protected final void dump(java.io.FileDescriptor, java.io.PrintWriter, String[]); method protected void dump(@NonNull java.io.PrintWriter, @NonNull String[]); + method @Nullable public final android.service.autofill.FillEventHistory getFillEventHistory(); method public void onConnected(); method public void onDisconnected(); method public void onFillRequest(@NonNull android.service.autofill.augmented.FillRequest, @NonNull android.os.CancellationSignal, @NonNull android.service.autofill.augmented.FillController, @NonNull android.service.autofill.augmented.FillCallback); + method public final boolean requestAutofill(@NonNull android.content.ComponentName, @NonNull android.view.autofill.AutofillId); field public static final String SERVICE_INTERFACE = "android.service.autofill.augmented.AugmentedAutofillService"; } @@ -6307,6 +9576,7 @@ package android.service.autofill.augmented { method @NonNull public android.content.ComponentName getActivityComponent(); method @NonNull public android.view.autofill.AutofillId getFocusedId(); method @NonNull public android.view.autofill.AutofillValue getFocusedValue(); + method @Nullable public android.view.inputmethod.InlineSuggestionsRequest getInlineSuggestionsRequest(); method @Nullable public android.service.autofill.augmented.PresentationParams getPresentationParams(); method public int getTaskId(); } @@ -6317,7 +9587,9 @@ package android.service.autofill.augmented { public static final class FillResponse.Builder { ctor public FillResponse.Builder(); method @NonNull public android.service.autofill.augmented.FillResponse build(); + method @NonNull public android.service.autofill.augmented.FillResponse.Builder setClientState(@NonNull android.os.Bundle); method @NonNull public android.service.autofill.augmented.FillResponse.Builder setFillWindow(@NonNull android.service.autofill.augmented.FillWindow); + method @NonNull public android.service.autofill.augmented.FillResponse.Builder setInlineSuggestions(@NonNull java.util.List<android.service.autofill.Dataset>); } public final class FillWindow implements java.lang.AutoCloseable { @@ -6341,7 +9613,7 @@ package android.service.carrier { public abstract class ApnService extends android.app.Service { ctor public ApnService(); method @NonNull public android.os.IBinder onBind(@Nullable android.content.Intent); - method @WorkerThread @NonNull public abstract java.util.List<android.content.ContentValues> onRestoreApns(int); + method @NonNull @WorkerThread public abstract java.util.List<android.content.ContentValues> onRestoreApns(int); } } @@ -6369,6 +9641,7 @@ package android.service.contentcapture { method public void onContentCaptureEvent(@NonNull android.view.contentcapture.ContentCaptureSessionId, @NonNull android.view.contentcapture.ContentCaptureEvent); method public void onCreateContentCaptureSession(@NonNull android.view.contentcapture.ContentCaptureContext, @NonNull android.view.contentcapture.ContentCaptureSessionId); method public void onDataRemovalRequest(@NonNull android.view.contentcapture.DataRemovalRequest); + method public void onDataShareRequest(@NonNull android.view.contentcapture.DataShareRequest, @NonNull android.service.contentcapture.DataShareCallback); method public void onDestroyContentCaptureSession(@NonNull android.view.contentcapture.ContentCaptureSessionId); method public void onDisconnected(); method public final void setContentCaptureConditions(@NonNull String, @Nullable java.util.Set<android.view.contentcapture.ContentCaptureCondition>); @@ -6377,6 +9650,16 @@ package android.service.contentcapture { field public static final String SERVICE_META_DATA = "android.content_capture"; } + public interface DataShareCallback { + method public void onAccept(@NonNull java.util.concurrent.Executor, @NonNull android.service.contentcapture.DataShareReadAdapter); + method public void onReject(); + } + + public interface DataShareReadAdapter { + method public void onError(int); + method public void onStart(@NonNull android.os.ParcelFileDescriptor); + } + public final class SnapshotData implements android.os.Parcelable { method public int describeContents(); method @Nullable public android.app.assist.AssistContent getAssistContent(); @@ -6401,6 +9684,24 @@ package android.service.contentsuggestions { } +package android.service.dataloader { + + public abstract class DataLoaderService extends android.app.Service { + ctor public DataLoaderService(); + method @Nullable public android.service.dataloader.DataLoaderService.DataLoader onCreateDataLoader(@NonNull android.content.pm.DataLoaderParams); + } + + public static interface DataLoaderService.DataLoader { + method public boolean onCreate(@NonNull android.content.pm.DataLoaderParams, @NonNull android.service.dataloader.DataLoaderService.FileSystemConnector); + method public boolean onPrepareImage(@NonNull java.util.Collection<android.content.pm.InstallationFile>, @NonNull java.util.Collection<java.lang.String>); + } + + public static final class DataLoaderService.FileSystemConnector { + method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void writeData(@NonNull String, long, long, @NonNull android.os.ParcelFileDescriptor) throws java.io.IOException; + } + +} + package android.service.euicc { public final class DownloadSubscriptionResult implements android.os.Parcelable { @@ -6453,22 +9754,25 @@ package android.service.euicc { method public android.service.euicc.EuiccProfileInfo.Builder setUiccAccessRule(@Nullable java.util.List<android.telephony.UiccAccessRule>); } - @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) @IntDef(flag=true, prefix={"POLICY_RULE_"}, value={android.service.euicc.EuiccProfileInfo.POLICY_RULE_DO_NOT_DISABLE, android.service.euicc.EuiccProfileInfo.POLICY_RULE_DO_NOT_DELETE, android.service.euicc.EuiccProfileInfo.POLICY_RULE_DELETE_AFTER_DISABLING}) public static @interface EuiccProfileInfo.PolicyRule { + @IntDef(flag=true, prefix={"POLICY_RULE_"}, value={android.service.euicc.EuiccProfileInfo.POLICY_RULE_DO_NOT_DISABLE, android.service.euicc.EuiccProfileInfo.POLICY_RULE_DO_NOT_DELETE, android.service.euicc.EuiccProfileInfo.POLICY_RULE_DELETE_AFTER_DISABLING}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface EuiccProfileInfo.PolicyRule { } - @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) @IntDef(prefix={"PROFILE_CLASS_"}, value={android.service.euicc.EuiccProfileInfo.PROFILE_CLASS_TESTING, android.service.euicc.EuiccProfileInfo.PROFILE_CLASS_PROVISIONING, android.service.euicc.EuiccProfileInfo.PROFILE_CLASS_OPERATIONAL, 0xffffffff}) public static @interface EuiccProfileInfo.ProfileClass { + @IntDef(prefix={"PROFILE_CLASS_"}, value={android.service.euicc.EuiccProfileInfo.PROFILE_CLASS_TESTING, android.service.euicc.EuiccProfileInfo.PROFILE_CLASS_PROVISIONING, android.service.euicc.EuiccProfileInfo.PROFILE_CLASS_OPERATIONAL, 0xffffffff}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface EuiccProfileInfo.ProfileClass { } - @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) @IntDef(prefix={"PROFILE_STATE_"}, value={android.service.euicc.EuiccProfileInfo.PROFILE_STATE_DISABLED, android.service.euicc.EuiccProfileInfo.PROFILE_STATE_ENABLED, 0xffffffff}) public static @interface EuiccProfileInfo.ProfileState { + @IntDef(prefix={"PROFILE_STATE_"}, value={android.service.euicc.EuiccProfileInfo.PROFILE_STATE_DISABLED, android.service.euicc.EuiccProfileInfo.PROFILE_STATE_ENABLED, 0xffffffff}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface EuiccProfileInfo.ProfileState { } public abstract class EuiccService extends android.app.Service { ctor public EuiccService(); + method public void dump(@NonNull java.io.PrintWriter); + method public int encodeSmdxSubjectAndReasonCode(@Nullable String, @Nullable String) throws java.lang.IllegalArgumentException, java.lang.NumberFormatException, java.lang.UnsupportedOperationException; method @CallSuper public android.os.IBinder onBind(android.content.Intent); method public abstract int onDeleteSubscription(int, String); method public android.service.euicc.DownloadSubscriptionResult onDownloadSubscription(int, @NonNull android.telephony.euicc.DownloadableSubscription, boolean, boolean, @Nullable android.os.Bundle); method @Deprecated public int onDownloadSubscription(int, @NonNull android.telephony.euicc.DownloadableSubscription, boolean, boolean); - method public abstract int onEraseSubscriptions(int); + method @Deprecated public abstract int onEraseSubscriptions(int); + method public int onEraseSubscriptions(int, @android.telephony.euicc.EuiccCardManager.ResetOption int); method public abstract android.service.euicc.GetDefaultDownloadableSubscriptionListResult onGetDefaultDownloadableSubscriptionList(int, boolean); method public abstract android.service.euicc.GetDownloadableSubscriptionMetadataResult onGetDownloadableSubscriptionMetadata(int, android.telephony.euicc.DownloadableSubscription, boolean); method public abstract String onGetEid(int); @@ -6488,6 +9792,8 @@ package android.service.euicc { field public static final String ACTION_RESOLVE_DEACTIVATE_SIM = "android.service.euicc.action.RESOLVE_DEACTIVATE_SIM"; field public static final String ACTION_RESOLVE_NO_PRIVILEGES = "android.service.euicc.action.RESOLVE_NO_PRIVILEGES"; field public static final String ACTION_RESOLVE_RESOLVABLE_ERRORS = "android.service.euicc.action.RESOLVE_RESOLVABLE_ERRORS"; + field public static final String ACTION_START_CARRIER_ACTIVATION = "android.service.euicc.action.START_CARRIER_ACTIVATION"; + field public static final String ACTION_START_EUICC_ACTIVATION = "android.service.euicc.action.START_EUICC_ACTIVATION"; field public static final String ACTION_TOGGLE_SUBSCRIPTION_PRIVILEGED = "android.service.euicc.action.TOGGLE_SUBSCRIPTION_PRIVILEGED"; field public static final String CATEGORY_EUICC_UI = "android.service.euicc.category.EUICC_UI"; field public static final String EUICC_SERVICE_INTERFACE = "android.service.euicc.EuiccService"; @@ -6559,7 +9865,9 @@ package android.service.notification { field @NonNull public static final android.os.Parcelable.Creator<android.service.notification.Adjustment> CREATOR; field public static final String KEY_CONTEXTUAL_ACTIONS = "key_contextual_actions"; field public static final String KEY_IMPORTANCE = "key_importance"; + field public static final String KEY_NOT_CONVERSATION = "key_not_conversation"; field public static final String KEY_PEOPLE = "key_people"; + field public static final String KEY_RANKING_SCORE = "key_ranking_score"; field public static final String KEY_SNOOZE_CRITERIA = "key_snooze_criteria"; field public static final String KEY_TEXT_REPLIES = "key_text_replies"; field public static final String KEY_USER_SENTIMENT = "key_user_sentiment"; @@ -6577,7 +9885,10 @@ package android.service.notification { method @Nullable public android.service.notification.Adjustment onNotificationEnqueued(@NonNull android.service.notification.StatusBarNotification, @NonNull android.app.NotificationChannel); method public void onNotificationExpansionChanged(@NonNull String, boolean, boolean); method public abstract void onNotificationSnoozedUntilContext(@NonNull android.service.notification.StatusBarNotification, @NonNull String); + method public void onNotificationVisibilityChanged(@NonNull String, boolean); method public void onNotificationsSeen(@NonNull java.util.List<java.lang.String>); + method public void onPanelHidden(); + method public void onPanelRevealed(int); method public void onSuggestedReplySent(@NonNull String, @NonNull CharSequence, int); method public final void unsnoozeNotification(@NonNull String); field public static final String SERVICE_INTERFACE = "android.service.notification.NotificationAssistantService"; @@ -6637,7 +9948,7 @@ package android.service.notification { package android.service.oemlock { public class OemLockManager { - method @RequiresPermission(android.Manifest.permission.MANAGE_CARRIER_OEM_UNLOCK_STATE) @Nullable public String getLockName(); + method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_CARRIER_OEM_UNLOCK_STATE) public String getLockName(); method @RequiresPermission(android.Manifest.permission.MANAGE_CARRIER_OEM_UNLOCK_STATE) public boolean isOemUnlockAllowedByCarrier(); method @RequiresPermission(android.Manifest.permission.MANAGE_USER_OEM_UNLOCK_STATE) public boolean isOemUnlockAllowedByUser(); method @RequiresPermission(android.Manifest.permission.MANAGE_CARRIER_OEM_UNLOCK_STATE) public void setOemUnlockAllowedByCarrier(boolean, @Nullable byte[]); @@ -6650,7 +9961,7 @@ package android.service.persistentdata { public class PersistentDataBlockManager { method @RequiresPermission("android.permission.ACCESS_PDB_STATE") public int getDataBlockSize(); - method @RequiresPermission(anyOf={android.Manifest.permission.READ_OEM_UNLOCK_STATE, "android.permission.OEM_UNLOCK_STATE"}) @android.service.persistentdata.PersistentDataBlockManager.FlashLockState public int getFlashLockState(); + method @android.service.persistentdata.PersistentDataBlockManager.FlashLockState @RequiresPermission(anyOf={android.Manifest.permission.READ_OEM_UNLOCK_STATE, "android.permission.OEM_UNLOCK_STATE"}) public int getFlashLockState(); method public long getMaximumDataBlockSize(); method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_OEM_UNLOCK_STATE, "android.permission.OEM_UNLOCK_STATE"}) public boolean getOemUnlockEnabled(); method public byte[] read(); @@ -6741,12 +10052,17 @@ package android.service.settings.suggestions { } -package android.service.sms { +package android.service.storage { - public abstract class FinancialSmsService extends android.app.Service { - method public android.os.IBinder onBind(android.content.Intent); - method @Nullable public abstract android.database.CursorWindow onGetSmsMessages(@NonNull android.os.Bundle); - field public static final String ACTION_FINANCIAL_SERVICE_INTENT = "android.service.sms.action.FINANCIAL_SERVICE_INTENT"; + public abstract class ExternalStorageService extends android.app.Service { + ctor public ExternalStorageService(); + method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent); + method public abstract void onEndSession(@NonNull String) throws java.io.IOException; + method public abstract void onStartSession(@NonNull String, int, @NonNull android.os.ParcelFileDescriptor, @NonNull java.io.File, @NonNull java.io.File) throws java.io.IOException; + method public abstract void onVolumeStateChanged(@NonNull android.os.storage.StorageVolume) throws java.io.IOException; + field public static final int FLAG_SESSION_ATTRIBUTE_INDEXABLE = 2; // 0x2 + field public static final int FLAG_SESSION_TYPE_FUSE = 1; // 0x1 + field public static final String SERVICE_INTERFACE = "android.service.storage.ExternalStorageService"; } } @@ -6757,11 +10073,13 @@ package android.service.textclassifier { ctor public TextClassifierService(); method @NonNull public static android.view.textclassifier.TextClassifier getDefaultTextClassifierImplementation(@NonNull android.content.Context); method @Deprecated public final android.view.textclassifier.TextClassifier getLocalTextClassifier(); - method @Nullable public final android.os.IBinder onBind(android.content.Intent); + method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent); method @MainThread public abstract void onClassifyText(@Nullable android.view.textclassifier.TextClassificationSessionId, @NonNull android.view.textclassifier.TextClassification.Request, @NonNull android.os.CancellationSignal, @NonNull android.service.textclassifier.TextClassifierService.Callback<android.view.textclassifier.TextClassification>); + method public void onConnected(); method @MainThread public void onCreateTextClassificationSession(@NonNull android.view.textclassifier.TextClassificationContext, @NonNull android.view.textclassifier.TextClassificationSessionId); method @MainThread public void onDestroyTextClassificationSession(@NonNull android.view.textclassifier.TextClassificationSessionId); method @MainThread public void onDetectLanguage(@Nullable android.view.textclassifier.TextClassificationSessionId, @NonNull android.view.textclassifier.TextLanguage.Request, @NonNull android.os.CancellationSignal, @NonNull android.service.textclassifier.TextClassifierService.Callback<android.view.textclassifier.TextLanguage>); + method public void onDisconnected(); method @MainThread public abstract void onGenerateLinks(@Nullable android.view.textclassifier.TextClassificationSessionId, @NonNull android.view.textclassifier.TextLinks.Request, @NonNull android.os.CancellationSignal, @NonNull android.service.textclassifier.TextClassifierService.Callback<android.view.textclassifier.TextLinks>); method @Deprecated @MainThread public void onSelectionEvent(@Nullable android.view.textclassifier.TextClassificationSessionId, @NonNull android.view.textclassifier.SelectionEvent); method @MainThread public void onSuggestConversationActions(@Nullable android.view.textclassifier.TextClassificationSessionId, @NonNull android.view.textclassifier.ConversationActions.Request, @NonNull android.os.CancellationSignal, @NonNull android.service.textclassifier.TextClassifierService.Callback<android.view.textclassifier.ConversationActions>); @@ -6771,7 +10089,7 @@ package android.service.textclassifier { } public static interface TextClassifierService.Callback<T> { - method public void onFailure(CharSequence); + method public void onFailure(@NonNull CharSequence); method public void onSuccess(T); } @@ -6810,6 +10128,14 @@ package android.service.trust { } +package android.service.voice { + + public class VoiceInteractionService extends android.app.Service { + method @NonNull @RequiresPermission("android.permission.MANAGE_VOICE_KEYPHRASES") public final android.media.voice.KeyphraseModelManager createKeyphraseModelManager(); + } + +} + package android.service.wallpaper { public class WallpaperService.Engine { @@ -6866,6 +10192,8 @@ package android.telecom { public final class Call { method @Deprecated public void addListener(android.telecom.Call.Listener); + method public void enterBackgroundAudioProcessing(); + method public void exitBackgroundAudioProcessing(boolean); method @Deprecated public void removeListener(android.telecom.Call.Listener); field @Deprecated public static final int STATE_PRE_DIAL_WAIT = 8; // 0x8 } @@ -6874,17 +10202,50 @@ package android.telecom { ctor @Deprecated public Call.Listener(); } + public static class CallScreeningService.CallResponse.Builder { + method @NonNull public android.telecom.CallScreeningService.CallResponse.Builder setShouldScreenCallViaAudioProcessing(boolean); + } + public abstract class Conference extends android.telecom.Conferenceable { method @Deprecated public final android.telecom.AudioState getAudioState(); method @Deprecated public final long getConnectTimeMillis(); method public android.telecom.Connection getPrimaryConnection(); + method @NonNull public final String getTelecomCallId(); method @Deprecated public void onAudioStateChanged(android.telecom.AudioState); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public final void setAddress(@NonNull android.net.Uri, int); + method public final void setCallerDisplayName(@NonNull String, int); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setConferenceState(boolean); method @Deprecated public final void setConnectTimeMillis(long); } public abstract class Connection extends android.telecom.Conferenceable { method @Deprecated public final android.telecom.AudioState getAudioState(); + method @IntRange(from=0) public final long getConnectTimeMillis(); + method public final long getConnectionStartElapsedRealtimeMillis(); + method @Nullable public android.telecom.PhoneAccountHandle getPhoneAccountHandle(); + method @Nullable public final String getTelecomCallId(); method @Deprecated public void onAudioStateChanged(android.telecom.AudioState); + method public final void resetConnectionTime(); + method public void setCallDirection(int); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public final void setConnectTimeMillis(@IntRange(from=0) long); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public final void setConnectionStartElapsedRealtimeMillis(long); + method public void setPhoneAccountHandle(@NonNull android.telecom.PhoneAccountHandle); + method public void setTelecomCallId(@NonNull String); + field public static final int CAPABILITY_CONFERENCE_HAS_NO_CHILDREN = 2097152; // 0x200000 + field public static final int CAPABILITY_SPEED_UP_MT_AUDIO = 262144; // 0x40000 + field public static final String EXTRA_DISABLE_ADD_CALL = "android.telecom.extra.DISABLE_ADD_CALL"; + field public static final int PROPERTY_EMERGENCY_CALLBACK_MODE = 1; // 0x1 + field public static final int PROPERTY_GENERIC_CONFERENCE = 2; // 0x2 + field public static final int PROPERTY_IS_DOWNGRADED_CONFERENCE = 64; // 0x40 + field public static final int PROPERTY_REMOTELY_HOSTED = 2048; // 0x800 + } + + public final class ConnectionRequest implements android.os.Parcelable { + method @Nullable public String getTelecomCallId(); + } + + public abstract class ConnectionService extends android.app.Service { + method public final void addExistingConnection(@NonNull android.telecom.PhoneAccountHandle, @NonNull android.telecom.Connection, @NonNull android.telecom.Conference); } public abstract class InCallService extends android.app.Service { @@ -7018,6 +10379,10 @@ package android.telecom { field public static final int CAPABILITY_MULTI_USER = 32; // 0x20 } + public static class PhoneAccount.Builder { + method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.telecom.PhoneAccount.Builder setGroupId(@NonNull String); + } + public class PhoneAccountSuggestionService extends android.app.Service { ctor public PhoneAccountSuggestionService(); method public void onAccountSuggestionRequest(@NonNull String); @@ -7080,14 +10445,17 @@ package android.telecom { method public void addNewUnknownCall(android.telecom.PhoneAccountHandle, android.os.Bundle); method @Deprecated public void clearAccounts(); method public void clearPhoneAccounts(); + method @NonNull public android.content.Intent createLaunchEmergencyDialerIntent(@Nullable String); method @RequiresPermission(android.Manifest.permission.DUMP) public android.telecom.TelecomAnalytics dumpAnalytics(); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void enablePhoneAccount(android.telecom.PhoneAccountHandle, boolean); method public java.util.List<android.telecom.PhoneAccountHandle> getAllPhoneAccountHandles(); method public java.util.List<android.telecom.PhoneAccount> getAllPhoneAccounts(); method public int getAllPhoneAccountsCount(); + method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.List<android.telecom.PhoneAccountHandle> getCallCapablePhoneAccounts(boolean); method public int getCallState(); method public android.telecom.PhoneAccountHandle getConnectionManager(); method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getCurrentTtyMode(); + method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getDefaultDialerPackage(@NonNull android.os.UserHandle); method @Deprecated public android.content.ComponentName getDefaultPhoneApp(); method public java.util.List<android.telecom.PhoneAccountHandle> getPhoneAccountsForPackage(); method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public java.util.List<android.telecom.PhoneAccountHandle> getPhoneAccountsSupportingScheme(String); @@ -7110,8 +10478,18 @@ package android.telephony { public final class AccessNetworkConstants { field public static final int TRANSPORT_TYPE_INVALID = -1; // 0xffffffff - field public static final int TRANSPORT_TYPE_WLAN = 2; // 0x2 - field public static final int TRANSPORT_TYPE_WWAN = 1; // 0x1 + } + + public static final class AccessNetworkConstants.NgranBands { + method public static int getFrequencyRangeGroup(int); + field public static final int FREQUENCY_RANGE_GROUP_1 = 1; // 0x1 + field public static final int FREQUENCY_RANGE_GROUP_2 = 2; // 0x2 + field public static final int FREQUENCY_RANGE_GROUP_UNKNOWN = 0; // 0x0 + } + + public final class BarringInfo implements android.os.Parcelable { + ctor public BarringInfo(); + method @NonNull public android.telephony.BarringInfo createLocationInfoSanitizedCopy(); } public final class CallAttributes implements android.os.Parcelable { @@ -7126,6 +10504,7 @@ package android.telephony { public final class CallQuality implements android.os.Parcelable { ctor public CallQuality(int, int, int, int, int, int, int, int, int, int, int); + ctor public CallQuality(int, int, int, int, int, int, int, int, int, int, int, boolean, boolean, boolean); method public int describeContents(); method public int getAverageRelativeJitter(); method public int getAverageRoundTripTime(); @@ -7138,6 +10517,9 @@ package android.telephony { method public int getNumRtpPacketsTransmitted(); method public int getNumRtpPacketsTransmittedLost(); method public int getUplinkCallQualityLevel(); + method public boolean isIncomingSilenceDetectedAtCallSetup(); + method public boolean isOutgoingSilenceDetectedAtCallSetup(); + method public boolean isRtpInactivityDetected(); method public void writeToParcel(android.os.Parcel, int); field public static final int CALL_QUALITY_BAD = 4; // 0x4 field public static final int CALL_QUALITY_EXCELLENT = 0; // 0x0 @@ -7149,10 +10531,17 @@ package android.telephony { } public class CarrierConfigManager { + method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getDefaultCarrierServicePackageName(); method @NonNull public static android.os.PersistableBundle getDefaultConfig(); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void overrideConfig(int, @Nullable android.os.PersistableBundle); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void updateConfigForPhoneId(int, String); field public static final String KEY_CARRIER_SETUP_APP_STRING = "carrier_setup_app_string"; + field public static final String KEY_SUPPORT_CDMA_1X_VOICE_CALLS_BOOL = "support_cdma_1x_voice_calls_bool"; + } + + public static final class CarrierConfigManager.Wifi { + field public static final String KEY_HOTSPOT_MAX_CLIENT_COUNT = "wifi.hotspot_maximum_client_count"; + field public static final String KEY_PREFIX = "wifi."; } public final class CarrierRestrictionRules implements android.os.Parcelable { @@ -7181,347 +10570,86 @@ package android.telephony { method @NonNull public android.telephony.CarrierRestrictionRules.Builder setMultiSimPolicy(int); } + public class CbGeoUtils { + } + + public static class CbGeoUtils.Circle implements android.telephony.CbGeoUtils.Geometry { + ctor public CbGeoUtils.Circle(@NonNull android.telephony.CbGeoUtils.LatLng, double); + method public boolean contains(@NonNull android.telephony.CbGeoUtils.LatLng); + method @NonNull public android.telephony.CbGeoUtils.LatLng getCenter(); + method public double getRadius(); + } + + public static interface CbGeoUtils.Geometry { + method public boolean contains(@NonNull android.telephony.CbGeoUtils.LatLng); + } + + public static class CbGeoUtils.LatLng { + ctor public CbGeoUtils.LatLng(double, double); + method public double distance(@NonNull android.telephony.CbGeoUtils.LatLng); + method @NonNull public android.telephony.CbGeoUtils.LatLng subtract(@NonNull android.telephony.CbGeoUtils.LatLng); + field public final double lat; + field public final double lng; + } + + public static class CbGeoUtils.Polygon implements android.telephony.CbGeoUtils.Geometry { + ctor public CbGeoUtils.Polygon(@NonNull java.util.List<android.telephony.CbGeoUtils.LatLng>); + method public boolean contains(@NonNull android.telephony.CbGeoUtils.LatLng); + method @NonNull public java.util.List<android.telephony.CbGeoUtils.LatLng> getVertices(); + } + + public class CellBroadcastIntents { + method public static void sendSmsCbReceivedBroadcast(@NonNull android.content.Context, @Nullable android.os.UserHandle, @NonNull android.telephony.SmsCbMessage, @Nullable android.content.BroadcastReceiver, @Nullable android.os.Handler, int, int); + field public static final String ACTION_AREA_INFO_UPDATED = "android.telephony.action.AREA_INFO_UPDATED"; + } + + public abstract class CellBroadcastService extends android.app.Service { + ctor public CellBroadcastService(); + method @NonNull @WorkerThread public abstract CharSequence getCellBroadcastAreaInfo(int); + method @CallSuper public android.os.IBinder onBind(@Nullable android.content.Intent); + method public abstract void onCdmaCellBroadcastSms(int, @NonNull byte[], int); + method public abstract void onCdmaScpMessage(int, @NonNull java.util.List<android.telephony.cdma.CdmaSmsCbProgramData>, @NonNull String, @NonNull java.util.function.Consumer<android.os.Bundle>); + method public abstract void onGsmCellBroadcastSms(int, @NonNull byte[]); + field public static final String CELL_BROADCAST_SERVICE_INTERFACE = "android.telephony.CellBroadcastService"; + } + + public abstract class CellIdentity implements android.os.Parcelable { + method @NonNull public abstract android.telephony.CellLocation asCellLocation(); + method @NonNull public abstract android.telephony.CellIdentity sanitizeLocationInfo(); + } + + public final class CellIdentityCdma extends android.telephony.CellIdentity { + method @NonNull public android.telephony.cdma.CdmaCellLocation asCellLocation(); + method @NonNull public android.telephony.CellIdentityCdma sanitizeLocationInfo(); + } + + public final class CellIdentityGsm extends android.telephony.CellIdentity { + method @NonNull public android.telephony.gsm.GsmCellLocation asCellLocation(); + method @NonNull public android.telephony.CellIdentityGsm sanitizeLocationInfo(); + } + + public final class CellIdentityLte extends android.telephony.CellIdentity { + method @NonNull public android.telephony.gsm.GsmCellLocation asCellLocation(); + method @NonNull public android.telephony.CellIdentityLte sanitizeLocationInfo(); + } + + public final class CellIdentityNr extends android.telephony.CellIdentity { + method @NonNull public android.telephony.CellLocation asCellLocation(); + method @NonNull public android.telephony.CellIdentityNr sanitizeLocationInfo(); + } + + public final class CellIdentityTdscdma extends android.telephony.CellIdentity { + method @NonNull public android.telephony.gsm.GsmCellLocation asCellLocation(); + method @NonNull public android.telephony.CellIdentityTdscdma sanitizeLocationInfo(); + } + + public final class CellIdentityWcdma extends android.telephony.CellIdentity { + method @NonNull public android.telephony.gsm.GsmCellLocation asCellLocation(); + method @NonNull public android.telephony.CellIdentityWcdma sanitizeLocationInfo(); + } + public final class DataFailCause { - field public static final int ACCESS_ATTEMPT_ALREADY_IN_PROGRESS = 2219; // 0x8ab - field public static final int ACCESS_BLOCK = 2087; // 0x827 - field public static final int ACCESS_BLOCK_ALL = 2088; // 0x828 - field public static final int ACCESS_CLASS_DSAC_REJECTION = 2108; // 0x83c - field public static final int ACCESS_CONTROL_LIST_CHECK_FAILURE = 2128; // 0x850 - field public static final int ACTIVATION_REJECTED_BCM_VIOLATION = 48; // 0x30 - field public static final int ACTIVATION_REJECT_GGSN = 30; // 0x1e - field public static final int ACTIVATION_REJECT_UNSPECIFIED = 31; // 0x1f - field public static final int ACTIVE_PDP_CONTEXT_MAX_NUMBER_REACHED = 65; // 0x41 - field public static final int APN_DISABLED = 2045; // 0x7fd - field public static final int APN_DISALLOWED_ON_ROAMING = 2059; // 0x80b - field public static final int APN_MISMATCH = 2054; // 0x806 - field public static final int APN_PARAMETERS_CHANGED = 2060; // 0x80c - field public static final int APN_PENDING_HANDOVER = 2041; // 0x7f9 - field public static final int APN_TYPE_CONFLICT = 112; // 0x70 - field public static final int AUTH_FAILURE_ON_EMERGENCY_CALL = 122; // 0x7a - field public static final int BEARER_HANDLING_NOT_SUPPORTED = 60; // 0x3c - field public static final int CALL_DISALLOWED_IN_ROAMING = 2068; // 0x814 - field public static final int CALL_PREEMPT_BY_EMERGENCY_APN = 127; // 0x7f - field public static final int CANNOT_ENCODE_OTA_MESSAGE = 2159; // 0x86f - field public static final int CDMA_ALERT_STOP = 2077; // 0x81d - field public static final int CDMA_INCOMING_CALL = 2076; // 0x81c - field public static final int CDMA_INTERCEPT = 2073; // 0x819 - field public static final int CDMA_LOCK = 2072; // 0x818 - field public static final int CDMA_RELEASE_DUE_TO_SO_REJECTION = 2075; // 0x81b - field public static final int CDMA_REORDER = 2074; // 0x81a - field public static final int CDMA_RETRY_ORDER = 2086; // 0x826 - field public static final int CHANNEL_ACQUISITION_FAILURE = 2078; // 0x81e - field public static final int CLOSE_IN_PROGRESS = 2030; // 0x7ee - field public static final int COLLISION_WITH_NETWORK_INITIATED_REQUEST = 56; // 0x38 - field public static final int COMPANION_IFACE_IN_USE = 118; // 0x76 - field public static final int CONCURRENT_SERVICES_INCOMPATIBLE = 2083; // 0x823 - field public static final int CONCURRENT_SERVICES_NOT_ALLOWED = 2091; // 0x82b - field public static final int CONCURRENT_SERVICE_NOT_SUPPORTED_BY_BASE_STATION = 2080; // 0x820 - field public static final int CONDITIONAL_IE_ERROR = 100; // 0x64 - field public static final int CONGESTION = 2106; // 0x83a - field public static final int CONNECTION_RELEASED = 2113; // 0x841 - field public static final int CS_DOMAIN_NOT_AVAILABLE = 2181; // 0x885 - field public static final int CS_FALLBACK_CALL_ESTABLISHMENT_NOT_ALLOWED = 2188; // 0x88c - field public static final int DATA_PLAN_EXPIRED = 2198; // 0x896 - field public static final int DATA_ROAMING_SETTINGS_DISABLED = 2064; // 0x810 - field public static final int DATA_SETTINGS_DISABLED = 2063; // 0x80f - field public static final int DBM_OR_SMS_IN_PROGRESS = 2211; // 0x8a3 - field public static final int DDS_SWITCHED = 2065; // 0x811 - field public static final int DDS_SWITCH_IN_PROGRESS = 2067; // 0x813 - field public static final int DRB_RELEASED_BY_RRC = 2112; // 0x840 - field public static final int DS_EXPLICIT_DEACTIVATION = 2125; // 0x84d - field public static final int DUAL_SWITCH = 2227; // 0x8b3 - field public static final int DUN_CALL_DISALLOWED = 2056; // 0x808 - field public static final int DUPLICATE_BEARER_ID = 2118; // 0x846 - field public static final int EHRPD_TO_HRPD_FALLBACK = 2049; // 0x801 - field public static final int EMBMS_NOT_ENABLED = 2193; // 0x891 - field public static final int EMBMS_REGULAR_DEACTIVATION = 2195; // 0x893 - field public static final int EMERGENCY_IFACE_ONLY = 116; // 0x74 - field public static final int EMERGENCY_MODE = 2221; // 0x8ad - field public static final int EMM_ACCESS_BARRED = 115; // 0x73 - field public static final int EMM_ACCESS_BARRED_INFINITE_RETRY = 121; // 0x79 - field public static final int EMM_ATTACH_FAILED = 2115; // 0x843 - field public static final int EMM_ATTACH_STARTED = 2116; // 0x844 - field public static final int EMM_DETACHED = 2114; // 0x842 - field public static final int EMM_T3417_EXPIRED = 2130; // 0x852 - field public static final int EMM_T3417_EXT_EXPIRED = 2131; // 0x853 - field public static final int EPS_SERVICES_AND_NON_EPS_SERVICES_NOT_ALLOWED = 2178; // 0x882 - field public static final int EPS_SERVICES_NOT_ALLOWED_IN_PLMN = 2179; // 0x883 - field public static final int ERROR_UNSPECIFIED = 65535; // 0xffff - field public static final int ESM_BAD_OTA_MESSAGE = 2122; // 0x84a - field public static final int ESM_BEARER_DEACTIVATED_TO_SYNC_WITH_NETWORK = 2120; // 0x848 - field public static final int ESM_COLLISION_SCENARIOS = 2119; // 0x847 - field public static final int ESM_CONTEXT_TRANSFERRED_DUE_TO_IRAT = 2124; // 0x84c - field public static final int ESM_DOWNLOAD_SERVER_REJECTED_THE_CALL = 2123; // 0x84b - field public static final int ESM_FAILURE = 2182; // 0x886 - field public static final int ESM_INFO_NOT_RECEIVED = 53; // 0x35 - field public static final int ESM_LOCAL_CAUSE_NONE = 2126; // 0x84e - field public static final int ESM_NW_ACTIVATED_DED_BEARER_WITH_ID_OF_DEF_BEARER = 2121; // 0x849 - field public static final int ESM_PROCEDURE_TIME_OUT = 2155; // 0x86b - field public static final int ESM_UNKNOWN_EPS_BEARER_CONTEXT = 2111; // 0x83f - field public static final int EVDO_CONNECTION_DENY_BY_BILLING_OR_AUTHENTICATION_FAILURE = 2201; // 0x899 - field public static final int EVDO_CONNECTION_DENY_BY_GENERAL_OR_NETWORK_BUSY = 2200; // 0x898 - field public static final int EVDO_HDR_CHANGED = 2202; // 0x89a - field public static final int EVDO_HDR_CONNECTION_SETUP_TIMEOUT = 2206; // 0x89e - field public static final int EVDO_HDR_EXITED = 2203; // 0x89b - field public static final int EVDO_HDR_NO_SESSION = 2204; // 0x89c - field public static final int EVDO_USING_GPS_FIX_INSTEAD_OF_HDR_CALL = 2205; // 0x89d - field public static final int FADE = 2217; // 0x8a9 - field public static final int FAILED_TO_ACQUIRE_COLOCATED_HDR = 2207; // 0x89f - field public static final int FEATURE_NOT_SUPP = 40; // 0x28 - field public static final int FILTER_SEMANTIC_ERROR = 44; // 0x2c - field public static final int FILTER_SYTAX_ERROR = 45; // 0x2d - field public static final int FORBIDDEN_APN_NAME = 2066; // 0x812 - field public static final int GPRS_REGISTRATION_FAIL = -2; // 0xfffffffe - field public static final int GPRS_SERVICES_AND_NON_GPRS_SERVICES_NOT_ALLOWED = 2097; // 0x831 - field public static final int GPRS_SERVICES_NOT_ALLOWED = 2098; // 0x832 - field public static final int GPRS_SERVICES_NOT_ALLOWED_IN_THIS_PLMN = 2103; // 0x837 - field public static final int HANDOFF_PREFERENCE_CHANGED = 2251; // 0x8cb - field public static final int HDR_ACCESS_FAILURE = 2213; // 0x8a5 - field public static final int HDR_FADE = 2212; // 0x8a4 - field public static final int HDR_NO_LOCK_GRANTED = 2210; // 0x8a2 - field public static final int IFACE_AND_POL_FAMILY_MISMATCH = 120; // 0x78 - field public static final int IFACE_MISMATCH = 117; // 0x75 - field public static final int ILLEGAL_ME = 2096; // 0x830 - field public static final int ILLEGAL_MS = 2095; // 0x82f - field public static final int IMEI_NOT_ACCEPTED = 2177; // 0x881 - field public static final int IMPLICITLY_DETACHED = 2100; // 0x834 - field public static final int IMSI_UNKNOWN_IN_HOME_SUBSCRIBER_SERVER = 2176; // 0x880 - field public static final int INCOMING_CALL_REJECTED = 2092; // 0x82c - field public static final int INSUFFICIENT_RESOURCES = 26; // 0x1a - field public static final int INTERFACE_IN_USE = 2058; // 0x80a - field public static final int INTERNAL_CALL_PREEMPT_BY_HIGH_PRIO_APN = 114; // 0x72 - field public static final int INTERNAL_EPC_NONEPC_TRANSITION = 2057; // 0x809 - field public static final int INVALID_CONNECTION_ID = 2156; // 0x86c - field public static final int INVALID_DNS_ADDR = 123; // 0x7b - field public static final int INVALID_EMM_STATE = 2190; // 0x88e - field public static final int INVALID_MANDATORY_INFO = 96; // 0x60 - field public static final int INVALID_MODE = 2223; // 0x8af - field public static final int INVALID_PCSCF_ADDR = 113; // 0x71 - field public static final int INVALID_PCSCF_OR_DNS_ADDRESS = 124; // 0x7c - field public static final int INVALID_PRIMARY_NSAPI = 2158; // 0x86e - field public static final int INVALID_SIM_STATE = 2224; // 0x8b0 - field public static final int INVALID_TRANSACTION_ID = 81; // 0x51 - field public static final int IPV6_ADDRESS_TRANSFER_FAILED = 2047; // 0x7ff - field public static final int IPV6_PREFIX_UNAVAILABLE = 2250; // 0x8ca - field public static final int IP_ADDRESS_MISMATCH = 119; // 0x77 - field public static final int IP_VERSION_MISMATCH = 2055; // 0x807 - field public static final int IRAT_HANDOVER_FAILED = 2194; // 0x892 - field public static final int IS707B_MAX_ACCESS_PROBES = 2089; // 0x829 - field public static final int LIMITED_TO_IPV4 = 2234; // 0x8ba - field public static final int LIMITED_TO_IPV6 = 2235; // 0x8bb - field public static final int LLC_SNDCP = 25; // 0x19 - field public static final int LOCAL_END = 2215; // 0x8a7 - field public static final int LOCATION_AREA_NOT_ALLOWED = 2102; // 0x836 - field public static final int LOST_CONNECTION = 65540; // 0x10004 - field public static final int LOWER_LAYER_REGISTRATION_FAILURE = 2197; // 0x895 - field public static final int LOW_POWER_MODE_OR_POWERING_DOWN = 2044; // 0x7fc - field public static final int LTE_NAS_SERVICE_REQUEST_FAILED = 2117; // 0x845 - field public static final int LTE_THROTTLING_NOT_REQUIRED = 2127; // 0x84f - field public static final int MAC_FAILURE = 2183; // 0x887 - field public static final int MAXIMIUM_NSAPIS_EXCEEDED = 2157; // 0x86d - field public static final int MAXINUM_SIZE_OF_L2_MESSAGE_EXCEEDED = 2166; // 0x876 - field public static final int MAX_ACCESS_PROBE = 2079; // 0x81f - field public static final int MAX_IPV4_CONNECTIONS = 2052; // 0x804 - field public static final int MAX_IPV6_CONNECTIONS = 2053; // 0x805 - field public static final int MAX_PPP_INACTIVITY_TIMER_EXPIRED = 2046; // 0x7fe - field public static final int MESSAGE_INCORRECT_SEMANTIC = 95; // 0x5f - field public static final int MESSAGE_TYPE_UNSUPPORTED = 97; // 0x61 - field public static final int MIP_CONFIG_FAILURE = 2050; // 0x802 - field public static final int MIP_FA_ADMIN_PROHIBITED = 2001; // 0x7d1 - field public static final int MIP_FA_DELIVERY_STYLE_NOT_SUPPORTED = 2012; // 0x7dc - field public static final int MIP_FA_ENCAPSULATION_UNAVAILABLE = 2008; // 0x7d8 - field public static final int MIP_FA_HOME_AGENT_AUTHENTICATION_FAILURE = 2004; // 0x7d4 - field public static final int MIP_FA_INSUFFICIENT_RESOURCES = 2002; // 0x7d2 - field public static final int MIP_FA_MALFORMED_REPLY = 2007; // 0x7d7 - field public static final int MIP_FA_MALFORMED_REQUEST = 2006; // 0x7d6 - field public static final int MIP_FA_MISSING_CHALLENGE = 2017; // 0x7e1 - field public static final int MIP_FA_MISSING_HOME_ADDRESS = 2015; // 0x7df - field public static final int MIP_FA_MISSING_HOME_AGENT = 2014; // 0x7de - field public static final int MIP_FA_MISSING_NAI = 2013; // 0x7dd - field public static final int MIP_FA_MOBILE_NODE_AUTHENTICATION_FAILURE = 2003; // 0x7d3 - field public static final int MIP_FA_REASON_UNSPECIFIED = 2000; // 0x7d0 - field public static final int MIP_FA_REQUESTED_LIFETIME_TOO_LONG = 2005; // 0x7d5 - field public static final int MIP_FA_REVERSE_TUNNEL_IS_MANDATORY = 2011; // 0x7db - field public static final int MIP_FA_REVERSE_TUNNEL_UNAVAILABLE = 2010; // 0x7da - field public static final int MIP_FA_STALE_CHALLENGE = 2018; // 0x7e2 - field public static final int MIP_FA_UNKNOWN_CHALLENGE = 2016; // 0x7e0 - field public static final int MIP_FA_VJ_HEADER_COMPRESSION_UNAVAILABLE = 2009; // 0x7d9 - field public static final int MIP_HA_ADMIN_PROHIBITED = 2020; // 0x7e4 - field public static final int MIP_HA_ENCAPSULATION_UNAVAILABLE = 2029; // 0x7ed - field public static final int MIP_HA_FOREIGN_AGENT_AUTHENTICATION_FAILURE = 2023; // 0x7e7 - field public static final int MIP_HA_INSUFFICIENT_RESOURCES = 2021; // 0x7e5 - field public static final int MIP_HA_MALFORMED_REQUEST = 2025; // 0x7e9 - field public static final int MIP_HA_MOBILE_NODE_AUTHENTICATION_FAILURE = 2022; // 0x7e6 - field public static final int MIP_HA_REASON_UNSPECIFIED = 2019; // 0x7e3 - field public static final int MIP_HA_REGISTRATION_ID_MISMATCH = 2024; // 0x7e8 - field public static final int MIP_HA_REVERSE_TUNNEL_IS_MANDATORY = 2028; // 0x7ec - field public static final int MIP_HA_REVERSE_TUNNEL_UNAVAILABLE = 2027; // 0x7eb - field public static final int MIP_HA_UNKNOWN_HOME_AGENT_ADDRESS = 2026; // 0x7ea - field public static final int MISSING_UNKNOWN_APN = 27; // 0x1b - field public static final int MODEM_APP_PREEMPTED = 2032; // 0x7f0 - field public static final int MODEM_RESTART = 2037; // 0x7f5 - field public static final int MSC_TEMPORARILY_NOT_REACHABLE = 2180; // 0x884 - field public static final int MSG_AND_PROTOCOL_STATE_UNCOMPATIBLE = 101; // 0x65 - field public static final int MSG_TYPE_NONCOMPATIBLE_STATE = 98; // 0x62 - field public static final int MS_IDENTITY_CANNOT_BE_DERIVED_BY_THE_NETWORK = 2099; // 0x833 - field public static final int MULTIPLE_PDP_CALL_NOT_ALLOWED = 2192; // 0x890 - field public static final int MULTI_CONN_TO_SAME_PDN_NOT_ALLOWED = 55; // 0x37 - field public static final int NAS_LAYER_FAILURE = 2191; // 0x88f - field public static final int NAS_REQUEST_REJECTED_BY_NETWORK = 2167; // 0x877 - field public static final int NAS_SIGNALLING = 14; // 0xe - field public static final int NETWORK_FAILURE = 38; // 0x26 - field public static final int NETWORK_INITIATED_DETACH_NO_AUTO_REATTACH = 2154; // 0x86a - field public static final int NETWORK_INITIATED_DETACH_WITH_AUTO_REATTACH = 2153; // 0x869 - field public static final int NETWORK_INITIATED_TERMINATION = 2031; // 0x7ef - field public static final int NONE = 0; // 0x0 - field public static final int NON_IP_NOT_SUPPORTED = 2069; // 0x815 - field public static final int NORMAL_RELEASE = 2218; // 0x8aa - field public static final int NO_CDMA_SERVICE = 2084; // 0x824 - field public static final int NO_COLLOCATED_HDR = 2225; // 0x8b1 - field public static final int NO_EPS_BEARER_CONTEXT_ACTIVATED = 2189; // 0x88d - field public static final int NO_GPRS_CONTEXT = 2094; // 0x82e - field public static final int NO_HYBRID_HDR_SERVICE = 2209; // 0x8a1 - field public static final int NO_PDP_CONTEXT_ACTIVATED = 2107; // 0x83b - field public static final int NO_RESPONSE_FROM_BASE_STATION = 2081; // 0x821 - field public static final int NO_SERVICE = 2216; // 0x8a8 - field public static final int NO_SERVICE_ON_GATEWAY = 2093; // 0x82d - field public static final int NSAPI_IN_USE = 35; // 0x23 - field public static final int NULL_APN_DISALLOWED = 2061; // 0x80d - field public static final int OEM_DCFAILCAUSE_1 = 4097; // 0x1001 - field public static final int OEM_DCFAILCAUSE_10 = 4106; // 0x100a - field public static final int OEM_DCFAILCAUSE_11 = 4107; // 0x100b - field public static final int OEM_DCFAILCAUSE_12 = 4108; // 0x100c - field public static final int OEM_DCFAILCAUSE_13 = 4109; // 0x100d - field public static final int OEM_DCFAILCAUSE_14 = 4110; // 0x100e - field public static final int OEM_DCFAILCAUSE_15 = 4111; // 0x100f - field public static final int OEM_DCFAILCAUSE_2 = 4098; // 0x1002 - field public static final int OEM_DCFAILCAUSE_3 = 4099; // 0x1003 - field public static final int OEM_DCFAILCAUSE_4 = 4100; // 0x1004 - field public static final int OEM_DCFAILCAUSE_5 = 4101; // 0x1005 - field public static final int OEM_DCFAILCAUSE_6 = 4102; // 0x1006 - field public static final int OEM_DCFAILCAUSE_7 = 4103; // 0x1007 - field public static final int OEM_DCFAILCAUSE_8 = 4104; // 0x1008 - field public static final int OEM_DCFAILCAUSE_9 = 4105; // 0x1009 - field public static final int ONLY_IPV4V6_ALLOWED = 57; // 0x39 - field public static final int ONLY_IPV4_ALLOWED = 50; // 0x32 - field public static final int ONLY_IPV6_ALLOWED = 51; // 0x33 - field public static final int ONLY_NON_IP_ALLOWED = 58; // 0x3a - field public static final int ONLY_SINGLE_BEARER_ALLOWED = 52; // 0x34 - field public static final int OPERATOR_BARRED = 8; // 0x8 - field public static final int OTASP_COMMIT_IN_PROGRESS = 2208; // 0x8a0 - field public static final int PDN_CONN_DOES_NOT_EXIST = 54; // 0x36 - field public static final int PDN_INACTIVITY_TIMER_EXPIRED = 2051; // 0x803 - field public static final int PDN_IPV4_CALL_DISALLOWED = 2033; // 0x7f1 - field public static final int PDN_IPV4_CALL_THROTTLED = 2034; // 0x7f2 - field public static final int PDN_IPV6_CALL_DISALLOWED = 2035; // 0x7f3 - field public static final int PDN_IPV6_CALL_THROTTLED = 2036; // 0x7f4 - field public static final int PDN_NON_IP_CALL_DISALLOWED = 2071; // 0x817 - field public static final int PDN_NON_IP_CALL_THROTTLED = 2070; // 0x816 - field public static final int PDP_ACTIVATE_MAX_RETRY_FAILED = 2109; // 0x83d - field public static final int PDP_DUPLICATE = 2104; // 0x838 - field public static final int PDP_ESTABLISH_TIMEOUT_EXPIRED = 2161; // 0x871 - field public static final int PDP_INACTIVE_TIMEOUT_EXPIRED = 2163; // 0x873 - field public static final int PDP_LOWERLAYER_ERROR = 2164; // 0x874 - field public static final int PDP_MODIFY_COLLISION = 2165; // 0x875 - field public static final int PDP_MODIFY_TIMEOUT_EXPIRED = 2162; // 0x872 - field public static final int PDP_PPP_NOT_SUPPORTED = 2038; // 0x7f6 - field public static final int PDP_WITHOUT_ACTIVE_TFT = 46; // 0x2e - field public static final int PHONE_IN_USE = 2222; // 0x8ae - field public static final int PHYSICAL_LINK_CLOSE_IN_PROGRESS = 2040; // 0x7f8 - field public static final int PLMN_NOT_ALLOWED = 2101; // 0x835 - field public static final int PPP_AUTH_FAILURE = 2229; // 0x8b5 - field public static final int PPP_CHAP_FAILURE = 2232; // 0x8b8 - field public static final int PPP_CLOSE_IN_PROGRESS = 2233; // 0x8b9 - field public static final int PPP_OPTION_MISMATCH = 2230; // 0x8b6 - field public static final int PPP_PAP_FAILURE = 2231; // 0x8b7 - field public static final int PPP_TIMEOUT = 2228; // 0x8b4 - field public static final int PREF_RADIO_TECH_CHANGED = -4; // 0xfffffffc - field public static final int PROFILE_BEARER_INCOMPATIBLE = 2042; // 0x7fa - field public static final int PROTOCOL_ERRORS = 111; // 0x6f - field public static final int QOS_NOT_ACCEPTED = 37; // 0x25 - field public static final int RADIO_ACCESS_BEARER_FAILURE = 2110; // 0x83e - field public static final int RADIO_ACCESS_BEARER_SETUP_FAILURE = 2160; // 0x870 - field public static final int RADIO_NOT_AVAILABLE = 65537; // 0x10001 - field public static final int RADIO_POWER_OFF = -5; // 0xfffffffb - field public static final int REDIRECTION_OR_HANDOFF_IN_PROGRESS = 2220; // 0x8ac - field public static final int REGISTRATION_FAIL = -1; // 0xffffffff - field public static final int REGULAR_DEACTIVATION = 36; // 0x24 - field public static final int REJECTED_BY_BASE_STATION = 2082; // 0x822 - field public static final int RRC_CONNECTION_ABORTED_AFTER_HANDOVER = 2173; // 0x87d - field public static final int RRC_CONNECTION_ABORTED_AFTER_IRAT_CELL_CHANGE = 2174; // 0x87e - field public static final int RRC_CONNECTION_ABORTED_DUE_TO_IRAT_CHANGE = 2171; // 0x87b - field public static final int RRC_CONNECTION_ABORTED_DURING_IRAT_CELL_CHANGE = 2175; // 0x87f - field public static final int RRC_CONNECTION_ABORT_REQUEST = 2151; // 0x867 - field public static final int RRC_CONNECTION_ACCESS_BARRED = 2139; // 0x85b - field public static final int RRC_CONNECTION_ACCESS_STRATUM_FAILURE = 2137; // 0x859 - field public static final int RRC_CONNECTION_ANOTHER_PROCEDURE_IN_PROGRESS = 2138; // 0x85a - field public static final int RRC_CONNECTION_CELL_NOT_CAMPED = 2144; // 0x860 - field public static final int RRC_CONNECTION_CELL_RESELECTION = 2140; // 0x85c - field public static final int RRC_CONNECTION_CONFIG_FAILURE = 2141; // 0x85d - field public static final int RRC_CONNECTION_INVALID_REQUEST = 2168; // 0x878 - field public static final int RRC_CONNECTION_LINK_FAILURE = 2143; // 0x85f - field public static final int RRC_CONNECTION_NORMAL_RELEASE = 2147; // 0x863 - field public static final int RRC_CONNECTION_OUT_OF_SERVICE_DURING_CELL_REGISTER = 2150; // 0x866 - field public static final int RRC_CONNECTION_RADIO_LINK_FAILURE = 2148; // 0x864 - field public static final int RRC_CONNECTION_REESTABLISHMENT_FAILURE = 2149; // 0x865 - field public static final int RRC_CONNECTION_REJECT_BY_NETWORK = 2146; // 0x862 - field public static final int RRC_CONNECTION_RELEASED_SECURITY_NOT_ACTIVE = 2172; // 0x87c - field public static final int RRC_CONNECTION_RF_UNAVAILABLE = 2170; // 0x87a - field public static final int RRC_CONNECTION_SYSTEM_INFORMATION_BLOCK_READ_ERROR = 2152; // 0x868 - field public static final int RRC_CONNECTION_SYSTEM_INTERVAL_FAILURE = 2145; // 0x861 - field public static final int RRC_CONNECTION_TIMER_EXPIRED = 2142; // 0x85e - field public static final int RRC_CONNECTION_TRACKING_AREA_ID_CHANGED = 2169; // 0x879 - field public static final int RRC_UPLINK_CONNECTION_RELEASE = 2134; // 0x856 - field public static final int RRC_UPLINK_DATA_TRANSMISSION_FAILURE = 2132; // 0x854 - field public static final int RRC_UPLINK_DELIVERY_FAILED_DUE_TO_HANDOVER = 2133; // 0x855 - field public static final int RRC_UPLINK_ERROR_REQUEST_FROM_NAS = 2136; // 0x858 - field public static final int RRC_UPLINK_RADIO_LINK_FAILURE = 2135; // 0x857 - field public static final int RUIM_NOT_PRESENT = 2085; // 0x825 - field public static final int SECURITY_MODE_REJECTED = 2186; // 0x88a - field public static final int SERVICE_NOT_ALLOWED_ON_PLMN = 2129; // 0x851 - field public static final int SERVICE_OPTION_NOT_SUBSCRIBED = 33; // 0x21 - field public static final int SERVICE_OPTION_NOT_SUPPORTED = 32; // 0x20 - field public static final int SERVICE_OPTION_OUT_OF_ORDER = 34; // 0x22 - field public static final int SIGNAL_LOST = -3; // 0xfffffffd - field public static final int SIM_CARD_CHANGED = 2043; // 0x7fb - field public static final int SYNCHRONIZATION_FAILURE = 2184; // 0x888 - field public static final int TEST_LOOPBACK_REGULAR_DEACTIVATION = 2196; // 0x894 - field public static final int TETHERED_CALL_ACTIVE = -6; // 0xfffffffa - field public static final int TFT_SEMANTIC_ERROR = 41; // 0x29 - field public static final int TFT_SYTAX_ERROR = 42; // 0x2a - field public static final int THERMAL_EMERGENCY = 2090; // 0x82a - field public static final int THERMAL_MITIGATION = 2062; // 0x80e - field public static final int TRAT_SWAP_FAILED = 2048; // 0x800 - field public static final int UE_INITIATED_DETACH_OR_DISCONNECT = 128; // 0x80 - field public static final int UE_IS_ENTERING_POWERSAVE_MODE = 2226; // 0x8b2 - field public static final int UE_RAT_CHANGE = 2105; // 0x839 - field public static final int UE_SECURITY_CAPABILITIES_MISMATCH = 2185; // 0x889 - field public static final int UMTS_HANDOVER_TO_IWLAN = 2199; // 0x897 - field public static final int UMTS_REACTIVATION_REQ = 39; // 0x27 - field public static final int UNACCEPTABLE_NON_EPS_AUTHENTICATION = 2187; // 0x88b - field public static final int UNKNOWN = 65536; // 0x10000 - field public static final int UNKNOWN_INFO_ELEMENT = 99; // 0x63 - field public static final int UNKNOWN_PDP_ADDRESS_TYPE = 28; // 0x1c - field public static final int UNKNOWN_PDP_CONTEXT = 43; // 0x2b - field public static final int UNPREFERRED_RAT = 2039; // 0x7f7 - field public static final int UNSUPPORTED_1X_PREV = 2214; // 0x8a6 - field public static final int UNSUPPORTED_APN_IN_CURRENT_PLMN = 66; // 0x42 - field public static final int UNSUPPORTED_QCI_VALUE = 59; // 0x3b - field public static final int USER_AUTHENTICATION = 29; // 0x1d - field public static final int VSNCP_ADMINISTRATIVELY_PROHIBITED = 2245; // 0x8c5 - field public static final int VSNCP_APN_UNATHORIZED = 2238; // 0x8be - field public static final int VSNCP_GEN_ERROR = 2237; // 0x8bd - field public static final int VSNCP_INSUFFICIENT_PARAMETERS = 2243; // 0x8c3 - field public static final int VSNCP_NO_PDN_GATEWAY_ADDRESS = 2240; // 0x8c0 - field public static final int VSNCP_PDN_EXISTS_FOR_THIS_APN = 2248; // 0x8c8 - field public static final int VSNCP_PDN_GATEWAY_REJECT = 2242; // 0x8c2 - field public static final int VSNCP_PDN_GATEWAY_UNREACHABLE = 2241; // 0x8c1 - field public static final int VSNCP_PDN_ID_IN_USE = 2246; // 0x8c6 - field public static final int VSNCP_PDN_LIMIT_EXCEEDED = 2239; // 0x8bf - field public static final int VSNCP_RECONNECT_NOT_ALLOWED = 2249; // 0x8c9 - field public static final int VSNCP_RESOURCE_UNAVAILABLE = 2244; // 0x8c4 - field public static final int VSNCP_SUBSCRIBER_LIMITATION = 2247; // 0x8c7 - field public static final int VSNCP_TIMEOUT = 2236; // 0x8bc + field @Deprecated public static final int VSNCP_APN_UNATHORIZED = 2238; // 0x8be } public final class DataSpecificRegistrationInfo implements android.os.Parcelable { @@ -7576,6 +10704,7 @@ package android.telephony { field public static final int IMS_ACCESS_BLOCKED = 60; // 0x3c field public static final int IMS_MERGED_SUCCESSFULLY = 45; // 0x2d field public static final int IMS_SIP_ALTERNATE_EMERGENCY_CALL = 71; // 0x47 + field public static final int INCOMING_AUTO_REJECTED = 81; // 0x51 field public static final int INCOMING_MISSED = 1; // 0x1 field public static final int INCOMING_REJECTED = 16; // 0x10 field public static final int INVALID_CREDENTIALS = 10; // 0xa @@ -7594,6 +10723,7 @@ package android.telephony { field public static final int NUMBER_UNREACHABLE = 8; // 0x8 field public static final int OTASP_PROVISIONING_IN_PROCESS = 76; // 0x4c field public static final int OUTGOING_CANCELED = 44; // 0x2c + field public static final int OUTGOING_EMERGENCY_CALL_PLACED = 80; // 0x50 field public static final int OUTGOING_FAILURE = 43; // 0x2b field public static final int OUT_OF_NETWORK = 11; // 0xb field public static final int OUT_OF_SERVICE = 18; // 0x12 @@ -7608,6 +10738,14 @@ package android.telephony { field public static final int WIFI_LOST = 59; // 0x3b } + public final class ImsiEncryptionInfo implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public String getKeyIdentifier(); + method @Nullable public java.security.PublicKey getPublicKey(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ImsiEncryptionInfo> CREATOR; + } + public final class LteVopsSupportInfo implements android.os.Parcelable { ctor public LteVopsSupportInfo(int, int); method public int describeContents(); @@ -7633,34 +10771,18 @@ package android.telephony { } public final class NetworkRegistrationInfo implements android.os.Parcelable { - method public int describeContents(); - method public int getAccessNetworkTechnology(); - method @NonNull public java.util.List<java.lang.Integer> getAvailableServices(); - method @Nullable public android.telephony.CellIdentity getCellIdentity(); method @Nullable public android.telephony.DataSpecificRegistrationInfo getDataSpecificInfo(); - method public int getDomain(); method public int getRegistrationState(); method public int getRejectCause(); method public int getRoamingType(); - method public int getTransportType(); method public boolean isEmergencyEnabled(); - method public boolean isRoaming(); method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator<android.telephony.NetworkRegistrationInfo> CREATOR; - field public static final int DOMAIN_CS = 1; // 0x1 - field public static final int DOMAIN_PS = 2; // 0x2 field public static final int REGISTRATION_STATE_DENIED = 3; // 0x3 field public static final int REGISTRATION_STATE_HOME = 1; // 0x1 field public static final int REGISTRATION_STATE_NOT_REGISTERED_OR_SEARCHING = 0; // 0x0 field public static final int REGISTRATION_STATE_NOT_REGISTERED_SEARCHING = 2; // 0x2 field public static final int REGISTRATION_STATE_ROAMING = 5; // 0x5 field public static final int REGISTRATION_STATE_UNKNOWN = 4; // 0x4 - field public static final int SERVICE_TYPE_DATA = 2; // 0x2 - field public static final int SERVICE_TYPE_EMERGENCY = 5; // 0x5 - field public static final int SERVICE_TYPE_SMS = 3; // 0x3 - field public static final int SERVICE_TYPE_UNKNOWN = 0; // 0x0 - field public static final int SERVICE_TYPE_VIDEO = 4; // 0x4 - field public static final int SERVICE_TYPE_VOICE = 1; // 0x1 } public static final class NetworkRegistrationInfo.Builder { @@ -7671,6 +10793,7 @@ package android.telephony { method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setCellIdentity(@Nullable android.telephony.CellIdentity); method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setDomain(int); method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setEmergencyOnly(boolean); + method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setRegisteredPlmn(@Nullable String); method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setRegistrationState(int); method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setRejectCause(int); method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setTransportType(int); @@ -7721,26 +10844,31 @@ package android.telephony { field @NonNull public static final android.os.Parcelable.Creator<android.telephony.PhoneNumberRange> CREATOR; } + public class PhoneNumberUtils { + method @NonNull public static String getUsernameFromUriNumber(@NonNull String); + method public static boolean isUriNumber(@Nullable String); + method public static boolean isVoiceMailNumber(@NonNull android.content.Context, int, @Nullable String); + } + public class PhoneStateListener { method public void onCallAttributesChanged(@NonNull android.telephony.CallAttributes); - method @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public void onCallDisconnectCauseChanged(int, int); - method @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public void onImsCallDisconnectCauseChanged(@NonNull android.telephony.ims.ImsReasonInfo); + method public void onOutgoingEmergencyCall(@NonNull android.telephony.emergency.EmergencyNumber); + method public void onOutgoingEmergencySms(@NonNull android.telephony.emergency.EmergencyNumber); method @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public void onPreciseCallStateChanged(@NonNull android.telephony.PreciseCallState); - method @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public void onPreciseDataConnectionStateChanged(@NonNull android.telephony.PreciseDataConnectionState); method public void onRadioPowerStateChanged(int); method public void onSrvccStateChanged(int); method public void onVoiceActivationStateChanged(int); - field public static final int LISTEN_CALL_ATTRIBUTES_CHANGED = 67108864; // 0x4000000 - field @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public static final int LISTEN_CALL_DISCONNECT_CAUSES = 33554432; // 0x2000000 - field @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public static final int LISTEN_IMS_CALL_DISCONNECT_CAUSES = 134217728; // 0x8000000 + field @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public static final int LISTEN_CALL_ATTRIBUTES_CHANGED = 67108864; // 0x4000000 + field @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public static final int LISTEN_OUTGOING_EMERGENCY_CALL = 268435456; // 0x10000000 + field @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public static final int LISTEN_OUTGOING_EMERGENCY_SMS = 536870912; // 0x20000000 field @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public static final int LISTEN_PRECISE_CALL_STATE = 2048; // 0x800 - field @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public static final int LISTEN_PRECISE_DATA_CONNECTION_STATE = 4096; // 0x1000 - field public static final int LISTEN_RADIO_POWER_STATE_CHANGED = 8388608; // 0x800000 + field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int LISTEN_RADIO_POWER_STATE_CHANGED = 8388608; // 0x800000 field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int LISTEN_SRVCC_STATE_CHANGED = 16384; // 0x4000 - field public static final int LISTEN_VOICE_ACTIVATION_STATE = 131072; // 0x20000 + field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int LISTEN_VOICE_ACTIVATION_STATE = 131072; // 0x20000 } public final class PreciseCallState implements android.os.Parcelable { + ctor public PreciseCallState(int, int, int, int, int); method public int describeContents(); method public int getBackgroundCallState(); method public int getForegroundCallState(); @@ -7760,13 +10888,10 @@ package android.telephony { } public final class PreciseDataConnectionState implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public String getDataConnectionApn(); - method public int getDataConnectionApnTypeBitMask(); - method public int getDataConnectionFailCause(); - method public int getDataConnectionState(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator<android.telephony.PreciseDataConnectionState> CREATOR; + method @Deprecated @NonNull public String getDataConnectionApn(); + method @Deprecated public int getDataConnectionApnTypeBitMask(); + method @Deprecated public int getDataConnectionFailCause(); + method @Deprecated public int getDataConnectionState(); } public final class PreciseDisconnectCause { @@ -7868,7 +10993,6 @@ package android.telephony { public class ServiceState implements android.os.Parcelable { method @Nullable public android.telephony.NetworkRegistrationInfo getNetworkRegistrationInfo(int, int); - method @NonNull public java.util.List<android.telephony.NetworkRegistrationInfo> getNetworkRegistrationInfoList(); method @NonNull public java.util.List<android.telephony.NetworkRegistrationInfo> getNetworkRegistrationInfoListForDomain(int); method @NonNull public java.util.List<android.telephony.NetworkRegistrationInfo> getNetworkRegistrationInfoListForTransportType(int); field public static final int ROAMING_TYPE_DOMESTIC = 2; // 0x2 @@ -7877,45 +11001,176 @@ package android.telephony { field public static final int ROAMING_TYPE_UNKNOWN = 1; // 0x1 } + public final class SmsCbCmasInfo implements android.os.Parcelable { + ctor public SmsCbCmasInfo(int, int, int, int, int, int); + method public int describeContents(); + method public int getCategory(); + method public int getCertainty(); + method public int getMessageClass(); + method public int getResponseType(); + method public int getSeverity(); + method public int getUrgency(); + method public void writeToParcel(android.os.Parcel, int); + field public static final int CMAS_CATEGORY_CBRNE = 10; // 0xa + field public static final int CMAS_CATEGORY_ENV = 7; // 0x7 + field public static final int CMAS_CATEGORY_FIRE = 5; // 0x5 + field public static final int CMAS_CATEGORY_GEO = 0; // 0x0 + field public static final int CMAS_CATEGORY_HEALTH = 6; // 0x6 + field public static final int CMAS_CATEGORY_INFRA = 9; // 0x9 + field public static final int CMAS_CATEGORY_MET = 1; // 0x1 + field public static final int CMAS_CATEGORY_OTHER = 11; // 0xb + field public static final int CMAS_CATEGORY_RESCUE = 4; // 0x4 + field public static final int CMAS_CATEGORY_SAFETY = 2; // 0x2 + field public static final int CMAS_CATEGORY_SECURITY = 3; // 0x3 + field public static final int CMAS_CATEGORY_TRANSPORT = 8; // 0x8 + field public static final int CMAS_CATEGORY_UNKNOWN = -1; // 0xffffffff + field public static final int CMAS_CERTAINTY_LIKELY = 1; // 0x1 + field public static final int CMAS_CERTAINTY_OBSERVED = 0; // 0x0 + field public static final int CMAS_CERTAINTY_UNKNOWN = -1; // 0xffffffff + field public static final int CMAS_CLASS_CHILD_ABDUCTION_EMERGENCY = 3; // 0x3 + field public static final int CMAS_CLASS_CMAS_EXERCISE = 5; // 0x5 + field public static final int CMAS_CLASS_EXTREME_THREAT = 1; // 0x1 + field public static final int CMAS_CLASS_OPERATOR_DEFINED_USE = 6; // 0x6 + field public static final int CMAS_CLASS_PRESIDENTIAL_LEVEL_ALERT = 0; // 0x0 + field public static final int CMAS_CLASS_REQUIRED_MONTHLY_TEST = 4; // 0x4 + field public static final int CMAS_CLASS_SEVERE_THREAT = 2; // 0x2 + field public static final int CMAS_CLASS_UNKNOWN = -1; // 0xffffffff + field public static final int CMAS_RESPONSE_TYPE_ASSESS = 6; // 0x6 + field public static final int CMAS_RESPONSE_TYPE_AVOID = 5; // 0x5 + field public static final int CMAS_RESPONSE_TYPE_EVACUATE = 1; // 0x1 + field public static final int CMAS_RESPONSE_TYPE_EXECUTE = 3; // 0x3 + field public static final int CMAS_RESPONSE_TYPE_MONITOR = 4; // 0x4 + field public static final int CMAS_RESPONSE_TYPE_NONE = 7; // 0x7 + field public static final int CMAS_RESPONSE_TYPE_PREPARE = 2; // 0x2 + field public static final int CMAS_RESPONSE_TYPE_SHELTER = 0; // 0x0 + field public static final int CMAS_RESPONSE_TYPE_UNKNOWN = -1; // 0xffffffff + field public static final int CMAS_SEVERITY_EXTREME = 0; // 0x0 + field public static final int CMAS_SEVERITY_SEVERE = 1; // 0x1 + field public static final int CMAS_SEVERITY_UNKNOWN = -1; // 0xffffffff + field public static final int CMAS_URGENCY_EXPECTED = 1; // 0x1 + field public static final int CMAS_URGENCY_IMMEDIATE = 0; // 0x0 + field public static final int CMAS_URGENCY_UNKNOWN = -1; // 0xffffffff + field @NonNull public static final android.os.Parcelable.Creator<android.telephony.SmsCbCmasInfo> CREATOR; + } + + public final class SmsCbEtwsInfo implements android.os.Parcelable { + ctor public SmsCbEtwsInfo(int, boolean, boolean, boolean, @Nullable byte[]); + method public int describeContents(); + method @Nullable public byte[] getPrimaryNotificationSignature(); + method public long getPrimaryNotificationTimestamp(); + method public int getWarningType(); + method public boolean isEmergencyUserAlert(); + method public boolean isPopupAlert(); + method public boolean isPrimary(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.telephony.SmsCbEtwsInfo> CREATOR; + field public static final int ETWS_WARNING_TYPE_EARTHQUAKE = 0; // 0x0 + field public static final int ETWS_WARNING_TYPE_EARTHQUAKE_AND_TSUNAMI = 2; // 0x2 + field public static final int ETWS_WARNING_TYPE_OTHER_EMERGENCY = 4; // 0x4 + field public static final int ETWS_WARNING_TYPE_TEST_MESSAGE = 3; // 0x3 + field public static final int ETWS_WARNING_TYPE_TSUNAMI = 1; // 0x1 + field public static final int ETWS_WARNING_TYPE_UNKNOWN = -1; // 0xffffffff + } + + public final class SmsCbLocation implements android.os.Parcelable { + ctor public SmsCbLocation(@NonNull String, int, int); + method public int describeContents(); + method public int getCid(); + method public int getLac(); + method @NonNull public String getPlmn(); + method public boolean isInLocationArea(@NonNull android.telephony.SmsCbLocation); + method public boolean isInLocationArea(@Nullable String, int, int); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.telephony.SmsCbLocation> CREATOR; + } + + public final class SmsCbMessage implements android.os.Parcelable { + ctor public SmsCbMessage(int, int, int, @NonNull android.telephony.SmsCbLocation, int, @Nullable String, int, @Nullable String, int, @Nullable android.telephony.SmsCbEtwsInfo, @Nullable android.telephony.SmsCbCmasInfo, int, @Nullable java.util.List<android.telephony.CbGeoUtils.Geometry>, long, int, int); + method @NonNull public static android.telephony.SmsCbMessage createFromCursor(@NonNull android.database.Cursor); + method public int describeContents(); + method @Nullable public android.telephony.SmsCbCmasInfo getCmasWarningInfo(); + method @NonNull public android.content.ContentValues getContentValues(); + method public int getDataCodingScheme(); + method @Nullable public android.telephony.SmsCbEtwsInfo getEtwsWarningInfo(); + method public int getGeographicalScope(); + method @NonNull public java.util.List<android.telephony.CbGeoUtils.Geometry> getGeometries(); + method @Nullable public String getLanguageCode(); + method @NonNull public android.telephony.SmsCbLocation getLocation(); + method public int getMaximumWaitingDuration(); + method @Nullable public String getMessageBody(); + method public int getMessageFormat(); + method public int getMessagePriority(); + method public long getReceivedTime(); + method public int getSerialNumber(); + method public int getServiceCategory(); + method public int getSlotIndex(); + method public int getSubscriptionId(); + method public boolean isCmasMessage(); + method public boolean isEmergencyMessage(); + method public boolean isEtwsMessage(); + method public boolean needGeoFencingCheck(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.telephony.SmsCbMessage> CREATOR; + field public static final int GEOGRAPHICAL_SCOPE_CELL_WIDE = 3; // 0x3 + field public static final int GEOGRAPHICAL_SCOPE_CELL_WIDE_IMMEDIATE = 0; // 0x0 + field public static final int GEOGRAPHICAL_SCOPE_LOCATION_AREA_WIDE = 2; // 0x2 + field public static final int GEOGRAPHICAL_SCOPE_PLMN_WIDE = 1; // 0x1 + field public static final int MAXIMUM_WAIT_TIME_NOT_SET = 255; // 0xff + field public static final int MESSAGE_FORMAT_3GPP = 1; // 0x1 + field public static final int MESSAGE_FORMAT_3GPP2 = 2; // 0x2 + field public static final int MESSAGE_PRIORITY_EMERGENCY = 3; // 0x3 + field public static final int MESSAGE_PRIORITY_INTERACTIVE = 1; // 0x1 + field public static final int MESSAGE_PRIORITY_NORMAL = 0; // 0x0 + field public static final int MESSAGE_PRIORITY_URGENT = 2; // 0x2 + } + public final class SmsManager { + method public boolean disableCellBroadcastRange(int, int, int); + method public boolean enableCellBroadcastRange(int, int, int); + method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getPremiumSmsConsent(@NonNull String); + method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getSmsCapacityOnIcc(); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void sendMultipartTextMessageWithoutPersisting(String, String, java.util.List<java.lang.String>, java.util.List<android.app.PendingIntent>, java.util.List<android.app.PendingIntent>); - field public static final int RESULT_CANCELLED = 23; // 0x17 - field public static final int RESULT_ENCODING_ERROR = 18; // 0x12 - field public static final int RESULT_ERROR_FDN_CHECK_FAILURE = 6; // 0x6 - field public static final int RESULT_ERROR_NONE = 0; // 0x0 - field public static final int RESULT_INTERNAL_ERROR = 21; // 0x15 - field public static final int RESULT_INVALID_ARGUMENTS = 11; // 0xb - field public static final int RESULT_INVALID_SMSC_ADDRESS = 19; // 0x13 - field public static final int RESULT_INVALID_SMS_FORMAT = 14; // 0xe - field public static final int RESULT_INVALID_STATE = 12; // 0xc - field public static final int RESULT_MODEM_ERROR = 16; // 0x10 - field public static final int RESULT_NETWORK_ERROR = 17; // 0x11 - field public static final int RESULT_NETWORK_REJECT = 10; // 0xa - field public static final int RESULT_NO_MEMORY = 13; // 0xd - field public static final int RESULT_NO_RESOURCES = 22; // 0x16 - field public static final int RESULT_OPERATION_NOT_ALLOWED = 20; // 0x14 - field public static final int RESULT_RADIO_NOT_AVAILABLE = 9; // 0x9 - field public static final int RESULT_REQUEST_NOT_SUPPORTED = 24; // 0x18 - field public static final int RESULT_SYSTEM_ERROR = 15; // 0xf + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setPremiumSmsConsent(@NonNull String, int); + field public static final int PREMIUM_SMS_CONSENT_ALWAYS_ALLOW = 3; // 0x3 + field public static final int PREMIUM_SMS_CONSENT_ASK_USER = 1; // 0x1 + field public static final int PREMIUM_SMS_CONSENT_NEVER_ALLOW = 2; // 0x2 + field public static final int PREMIUM_SMS_CONSENT_UNKNOWN = 0; // 0x0 + } + + public class SmsMessage { + method @Nullable public static android.telephony.SmsMessage createFromNativeSmsSubmitPdu(@NonNull byte[], boolean); + method @Nullable public static android.telephony.SmsMessage.SubmitPdu getSmsPdu(int, int, @Nullable String, @NonNull String, @NonNull String, long); + method @NonNull @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public static byte[] getSubmitPduEncodedMessage(boolean, @NonNull String, @NonNull String, int, @IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0, to=255) int, @IntRange(from=1, to=255) int, @IntRange(from=1, to=255) int); } public class SubscriptionInfo implements android.os.Parcelable { + method public boolean areUiccApplicationsEnabled(); method @Nullable public java.util.List<android.telephony.UiccAccessRule> getAccessRules(); method public int getProfileClass(); + method public boolean isGroupDisabled(); } public class SubscriptionManager { + method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean canDisablePhysicalSubscription(); + method public boolean canManageSubscription(@NonNull android.telephony.SubscriptionInfo, @NonNull String); + method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int[] getActiveSubscriptionIdList(); + method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public android.telephony.SubscriptionInfo getActiveSubscriptionInfoForIcc(@NonNull String); method public java.util.List<android.telephony.SubscriptionInfo> getAvailableSubscriptionInfoList(); + method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int[] getCompleteActiveSubscriptionIdList(); method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getEnabledSubscriptionId(int); + method @NonNull public static android.content.res.Resources getResourcesForSubId(@NonNull android.content.Context, int); method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isSubscriptionEnabled(int); method public void requestEmbeddedSubscriptionInfoListRefresh(); method public void requestEmbeddedSubscriptionInfoListRefresh(int); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDefaultDataSubId(int); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDefaultSmsSubId(int); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDefaultVoiceSubscriptionId(int); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setPreferredDataSubscriptionId(int, boolean, @Nullable java.util.concurrent.Executor, @Nullable java.util.function.Consumer<java.lang.Integer>); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setSubscriptionEnabled(int, boolean); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setUiccApplicationsEnabled(int, boolean); + field @RequiresPermission(android.Manifest.permission.MANAGE_SUBSCRIPTION_PLANS) public static final String ACTION_SUBSCRIPTION_PLANS_CHANGED = "android.telephony.action.SUBSCRIPTION_PLANS_CHANGED"; field @NonNull public static final android.net.Uri ADVANCED_CALLING_ENABLED_CONTENT_URI; - field public static final int PROFILE_CLASS_DEFAULT = -1; // 0xffffffff + field @Deprecated public static final int PROFILE_CLASS_DEFAULT = -1; // 0xffffffff field public static final int PROFILE_CLASS_OPERATIONAL = 2; // 0x2 field public static final int PROFILE_CLASS_PROVISIONING = 1; // 0x1 field public static final int PROFILE_CLASS_TESTING = 0; // 0x0 @@ -7961,11 +11216,16 @@ package android.telephony { method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean disableDataConnectivity(); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean enableDataConnectivity(); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean enableModemForSlot(int, boolean); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void enableVideoCalling(boolean); + method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void enableVideoCalling(boolean); method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getAidForAppType(int); method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.List<android.service.carrier.CarrierIdentifier> getAllowedCarriers(int); + method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public long getAllowedNetworkTypes(); + method @Nullable @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public android.content.ComponentName getAndUpdateDefaultRespondViaMessageApplication(); + method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public android.telephony.ImsiEncryptionInfo getCarrierInfoForImsiEncryption(int); method public java.util.List<java.lang.String> getCarrierPackageNamesForIntent(android.content.Intent); method public java.util.List<java.lang.String> getCarrierPackageNamesForIntentAndPhone(android.content.Intent, int); + method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getCarrierPrivilegeStatus(int); + method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.List<java.lang.String> getCarrierPrivilegedPackagesForAllActiveSubscriptions(); method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public android.telephony.CarrierRestrictionRules getCarrierRestrictionRules(); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String getCdmaMdn(); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String getCdmaMdn(int); @@ -7977,15 +11237,22 @@ package android.telephony { method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getDataActivationState(); method @Deprecated public boolean getDataEnabled(); method @Deprecated public boolean getDataEnabled(int); + method @Nullable @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public android.content.ComponentName getDefaultRespondViaMessageApplication(); + method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getDeviceSoftwareVersion(int); method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean getEmergencyCallbackMode(); + method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getEmergencyNumberDbVersion(); method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getIsimDomain(); method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getIsimIst(); method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.Map<java.lang.Integer,java.lang.Integer> getLogicalToPhysicalSlotMapping(); + method public int getMaxNumberOfSimultaneouslyActiveSims(); method public static long getMaxNumberVerificationTimeoutMillis(); + method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String[] getMergedImsisFromGroup(); method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public long getPreferredNetworkTypeBitmask(); method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public int getRadioPowerState(); method public int getSimApplicationState(); + method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getSimApplicationState(int); method public int getSimCardState(); + method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getSimCardState(int); method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.Locale getSimLocale(); method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public long getSupportedRadioAccessFamily(); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public java.util.List<android.telephony.TelephonyHistogram> getTelephonyHistograms(); @@ -7994,46 +11261,77 @@ package android.telephony { method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getVoiceActivationState(); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean handlePinMmi(String); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean handlePinMmiForSubscriber(int, String); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean iccCloseLogicalChannelBySlot(int, int); + method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean iccCloseLogicalChannelBySlot(int, int); method @Nullable @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.telephony.IccOpenLogicalChannelResponse iccOpenLogicalChannelBySlot(int, @Nullable String, int); - method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String iccTransmitApduBasicChannelBySlot(int, int, int, int, int, int, @Nullable String); - method @Nullable @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String iccTransmitApduLogicalChannelBySlot(int, int, int, int, int, int, int, @Nullable String); + method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String iccTransmitApduBasicChannelBySlot(int, int, int, int, int, int, @Nullable String); + method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String iccTransmitApduLogicalChannelBySlot(int, int, int, int, int, int, int, @Nullable String); + method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isAnyRadioPoweredOn(); + method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isApnMetered(int); + method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isApplicationOnUicc(int); + method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isDataConnectionAllowed(); method public boolean isDataConnectivityPossible(); + method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isDataEnabledForApn(int); method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isEmergencyAssistanceEnabled(); + method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @WorkerThread public boolean isIccLockEnabled(); method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isIdle(); + method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isLteCdmaEvdoGsmWcdmaEnabled(); method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isOffhook(); + method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isOpportunisticNetworkEnabled(); method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isPotentialEmergencyNumber(@NonNull String); method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isRadioOn(); method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isRinging(); - method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isVideoCallingEnabled(); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean isTetheringApnRequired(); + method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isVideoCallingEnabled(); method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public boolean isVisualVoicemailEnabled(android.telecom.PhoneAccountHandle); + method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean matchesCurrentSimOperator(@NonNull String, int, @Nullable String); method public boolean needsOtaServiceProvisioning(); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void notifyOtaEmergencyNumberDbInstalled(); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean rebootRadio(); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void reportDefaultNetworkStatus(boolean); method @RequiresPermission(allOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.MODIFY_PHONE_STATE}) public void requestCellInfoUpdate(@NonNull android.os.WorkSource, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.TelephonyManager.CellInfoCallback); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void requestNumberVerification(@NonNull android.telephony.PhoneNumberRange, long, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.NumberVerificationCallback); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void resetAllCarrierActions(); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void resetCarrierKeysForImsiEncryption(); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public void resetIms(int); + method @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public void resetOtaEmergencyNumberDbFilePath(); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean resetRadioConfig(); + method @RequiresPermission(android.Manifest.permission.CONNECTIVITY_INTERNAL) public void resetSettings(); method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int setAllowedCarriers(int, java.util.List<android.service.carrier.CarrierIdentifier>); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setAllowedNetworkTypes(long); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setCarrierDataEnabled(boolean); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int setCarrierRestrictionRules(@NonNull android.telephony.CarrierRestrictionRules); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataActivationState(int); method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataEnabled(int, boolean); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataRoamingEnabled(boolean); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setMultiSimCarrierRestriction(boolean); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setOpportunisticNetworkState(boolean); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setPreferredNetworkTypeBitmask(long); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setRadio(boolean); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setRadioEnabled(boolean); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setRadioPower(boolean); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setSimPowerState(int); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setSimPowerStateForSlot(int, int); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setSystemSelectionChannels(@NonNull java.util.List<android.telephony.RadioAccessSpecifier>, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setSystemSelectionChannels(@NonNull java.util.List<android.telephony.RadioAccessSpecifier>); method @Deprecated public void setVisualVoicemailEnabled(android.telecom.PhoneAccountHandle, boolean); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoiceActivationState(int); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void shutdownAllRadios(); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean supplyPin(String); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int[] supplyPinReportResult(String); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean supplyPuk(String, String); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int[] supplyPukReportResult(String, String); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean switchSlots(int[]); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void toggleRadioOnOff(); + method @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public void updateOtaEmergencyNumberDbFilePath(@NonNull android.os.ParcelFileDescriptor); method public void updateServiceLocation(); field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final String ACTION_ANOMALY_REPORTED = "android.telephony.action.ANOMALY_REPORTED"; + field public static final String ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED = "android.intent.action.ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED"; + field public static final String ACTION_DEFAULT_VOICE_SUBSCRIPTION_CHANGED = "android.intent.action.ACTION_DEFAULT_VOICE_SUBSCRIPTION_CHANGED"; + field public static final String ACTION_EMERGENCY_ASSISTANCE = "android.telephony.action.EMERGENCY_ASSISTANCE"; + field public static final String ACTION_EMERGENCY_CALLBACK_MODE_CHANGED = "android.intent.action.EMERGENCY_CALLBACK_MODE_CHANGED"; + field public static final String ACTION_EMERGENCY_CALL_STATE_CHANGED = "android.intent.action.EMERGENCY_CALL_STATE_CHANGED"; + field public static final String ACTION_REQUEST_OMADM_CONFIGURATION_UPDATE = "com.android.omadm.service.CONFIGURATION_UPDATE"; + field public static final String ACTION_SHOW_NOTICE_ECM_BLOCK_OTHERS = "android.telephony.action.SHOW_NOTICE_ECM_BLOCK_OTHERS"; field public static final String ACTION_SIM_APPLICATION_STATE_CHANGED = "android.telephony.action.SIM_APPLICATION_STATE_CHANGED"; field public static final String ACTION_SIM_CARD_STATE_CHANGED = "android.telephony.action.SIM_CARD_STATE_CHANGED"; field public static final String ACTION_SIM_SLOT_STATUS_CHANGED = "android.telephony.action.SIM_SLOT_STATUS_CHANGED"; @@ -8043,9 +11341,14 @@ package android.telephony { field public static final int CARRIER_PRIVILEGE_STATUS_RULES_NOT_LOADED = -1; // 0xffffffff field public static final String EXTRA_ANOMALY_DESCRIPTION = "android.telephony.extra.ANOMALY_DESCRIPTION"; field public static final String EXTRA_ANOMALY_ID = "android.telephony.extra.ANOMALY_ID"; + field public static final String EXTRA_PHONE_IN_ECM_STATE = "android.telephony.extra.PHONE_IN_ECM_STATE"; + field public static final String EXTRA_PHONE_IN_EMERGENCY_CALL = "android.telephony.extra.PHONE_IN_EMERGENCY_CALL"; field public static final String EXTRA_SIM_STATE = "android.telephony.extra.SIM_STATE"; field public static final String EXTRA_VISUAL_VOICEMAIL_ENABLED_BY_USER_BOOL = "android.telephony.extra.VISUAL_VOICEMAIL_ENABLED_BY_USER_BOOL"; field public static final String EXTRA_VOICEMAIL_SCRAMBLED_PIN_STRING = "android.telephony.extra.VOICEMAIL_SCRAMBLED_PIN_STRING"; + field public static final int INVALID_EMERGENCY_NUMBER_DB_VERSION = -1; // 0xffffffff + field public static final int KEY_TYPE_EPDG = 1; // 0x1 + field public static final int KEY_TYPE_WLAN = 2; // 0x2 field public static final long NETWORK_TYPE_BITMASK_1xRTT = 64L; // 0x40L field public static final long NETWORK_TYPE_BITMASK_CDMA = 8L; // 0x8L field public static final long NETWORK_TYPE_BITMASK_EDGE = 2L; // 0x2L @@ -8122,6 +11425,27 @@ package android.telephony { } +package android.telephony.cdma { + + public final class CdmaSmsCbProgramData implements android.os.Parcelable { + method public int describeContents(); + method public int getCategory(); + method public int getOperation(); + method public void writeToParcel(android.os.Parcel, int); + field public static final int CATEGORY_CMAS_CHILD_ABDUCTION_EMERGENCY = 4099; // 0x1003 + field public static final int CATEGORY_CMAS_EXTREME_THREAT = 4097; // 0x1001 + field public static final int CATEGORY_CMAS_LAST_RESERVED_VALUE = 4351; // 0x10ff + field public static final int CATEGORY_CMAS_PRESIDENTIAL_LEVEL_ALERT = 4096; // 0x1000 + field public static final int CATEGORY_CMAS_SEVERE_THREAT = 4098; // 0x1002 + field public static final int CATEGORY_CMAS_TEST_MESSAGE = 4100; // 0x1004 + field @NonNull public static final android.os.Parcelable.Creator<android.telephony.cdma.CdmaSmsCbProgramData> CREATOR; + field public static final int OPERATION_ADD_CATEGORY = 1; // 0x1 + field public static final int OPERATION_CLEAR_CATEGORIES = 2; // 0x2 + field public static final int OPERATION_DELETE_CATEGORY = 0; // 0x0 + } + +} + package android.telephony.data { public final class DataCallResponse implements android.os.Parcelable { @@ -8133,7 +11457,9 @@ package android.telephony.data { method public int getId(); method @NonNull public String getInterfaceName(); method public int getLinkStatus(); - method public int getMtu(); + method @Deprecated public int getMtu(); + method public int getMtuV4(); + method public int getMtuV6(); method @NonNull public java.util.List<java.net.InetAddress> getPcscfAddresses(); method public int getProtocolType(); method public int getSuggestedRetryTime(); @@ -8155,7 +11481,9 @@ package android.telephony.data { method @NonNull public android.telephony.data.DataCallResponse.Builder setId(int); method @NonNull public android.telephony.data.DataCallResponse.Builder setInterfaceName(@NonNull String); method @NonNull public android.telephony.data.DataCallResponse.Builder setLinkStatus(int); - method @NonNull public android.telephony.data.DataCallResponse.Builder setMtu(int); + method @Deprecated @NonNull public android.telephony.data.DataCallResponse.Builder setMtu(int); + method @NonNull public android.telephony.data.DataCallResponse.Builder setMtuV4(int); + method @NonNull public android.telephony.data.DataCallResponse.Builder setMtuV6(int); method @NonNull public android.telephony.data.DataCallResponse.Builder setPcscfAddresses(@NonNull java.util.List<java.net.InetAddress>); method @NonNull public android.telephony.data.DataCallResponse.Builder setProtocolType(int); method @NonNull public android.telephony.data.DataCallResponse.Builder setSuggestedRetryTime(int); @@ -8166,7 +11494,9 @@ package android.telephony.data { method @NonNull public String getApn(); method public int getAuthType(); method public int getBearerBitmask(); - method public int getMtu(); + method @Deprecated public int getMtu(); + method public int getMtuV4(); + method public int getMtuV6(); method @Nullable public String getPassword(); method public int getProfileId(); method public int getProtocolType(); @@ -8191,7 +11521,9 @@ package android.telephony.data { method @NonNull public android.telephony.data.DataProfile.Builder setApn(@NonNull String); method @NonNull public android.telephony.data.DataProfile.Builder setAuthType(int); method @NonNull public android.telephony.data.DataProfile.Builder setBearerBitmask(int); - method @NonNull public android.telephony.data.DataProfile.Builder setMtu(int); + method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setMtu(int); + method @NonNull public android.telephony.data.DataProfile.Builder setMtuV4(int); + method @NonNull public android.telephony.data.DataProfile.Builder setMtuV6(int); method @NonNull public android.telephony.data.DataProfile.Builder setPassword(@NonNull String); method @NonNull public android.telephony.data.DataProfile.Builder setPersistent(boolean); method @NonNull public android.telephony.data.DataProfile.Builder setPreferred(boolean); @@ -8308,10 +11640,10 @@ package android.telephony.euicc { field public static final int RESULT_UNKNOWN_ERROR = -1; // 0xffffffff } - @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) @IntDef(prefix={"CANCEL_REASON_"}, value={android.telephony.euicc.EuiccCardManager.CANCEL_REASON_END_USER_REJECTED, android.telephony.euicc.EuiccCardManager.CANCEL_REASON_POSTPONED, android.telephony.euicc.EuiccCardManager.CANCEL_REASON_TIMEOUT, android.telephony.euicc.EuiccCardManager.CANCEL_REASON_PPR_NOT_ALLOWED}) public static @interface EuiccCardManager.CancelReason { + @IntDef(prefix={"CANCEL_REASON_"}, value={android.telephony.euicc.EuiccCardManager.CANCEL_REASON_END_USER_REJECTED, android.telephony.euicc.EuiccCardManager.CANCEL_REASON_POSTPONED, android.telephony.euicc.EuiccCardManager.CANCEL_REASON_TIMEOUT, android.telephony.euicc.EuiccCardManager.CANCEL_REASON_PPR_NOT_ALLOWED}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface EuiccCardManager.CancelReason { } - @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) @IntDef(flag=true, prefix={"RESET_OPTION_"}, value={android.telephony.euicc.EuiccCardManager.RESET_OPTION_DELETE_OPERATIONAL_PROFILES, android.telephony.euicc.EuiccCardManager.RESET_OPTION_DELETE_FIELD_LOADED_TEST_PROFILES, android.telephony.euicc.EuiccCardManager.RESET_OPTION_RESET_DEFAULT_SMDP_ADDRESS}) public static @interface EuiccCardManager.ResetOption { + @IntDef(flag=true, prefix={"RESET_OPTION_"}, value={android.telephony.euicc.EuiccCardManager.RESET_OPTION_DELETE_OPERATIONAL_PROFILES, android.telephony.euicc.EuiccCardManager.RESET_OPTION_DELETE_FIELD_LOADED_TEST_PROFILES, android.telephony.euicc.EuiccCardManager.RESET_OPTION_RESET_DEFAULT_SMDP_ADDRESS}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface EuiccCardManager.ResetOption { } public static interface EuiccCardManager.ResultCallback<T> { @@ -8320,10 +11652,16 @@ package android.telephony.euicc { public class EuiccManager { method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void continueOperation(android.content.Intent, android.os.Bundle); - method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void eraseSubscriptions(android.app.PendingIntent); + method @Deprecated @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void eraseSubscriptions(@NonNull android.app.PendingIntent); + method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void eraseSubscriptions(@android.telephony.euicc.EuiccCardManager.ResetOption int, @NonNull android.app.PendingIntent); method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void getDefaultDownloadableSubscriptionList(android.app.PendingIntent); method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void getDownloadableSubscriptionMetadata(android.telephony.euicc.DownloadableSubscription, android.app.PendingIntent); method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public int getOtaStatus(); + method @NonNull @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public java.util.List<java.lang.String> getSupportedCountries(); + method @NonNull @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public java.util.List<java.lang.String> getUnsupportedCountries(); + method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public boolean isSupportedCountry(@NonNull String); + method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void setSupportedCountries(@NonNull java.util.List<java.lang.String>); + method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void setUnsupportedCountries(@NonNull java.util.List<java.lang.String>); field public static final String ACTION_DELETE_SUBSCRIPTION_PRIVILEGED = "android.telephony.euicc.action.DELETE_SUBSCRIPTION_PRIVILEGED"; field @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public static final String ACTION_OTA_STATUS_CHANGED = "android.telephony.euicc.action.OTA_STATUS_CHANGED"; field public static final String ACTION_PROVISION_EMBEDDED_SUBSCRIPTION = "android.telephony.euicc.action.PROVISION_EMBEDDED_SUBSCRIPTION"; @@ -8343,6 +11681,7 @@ package android.telephony.euicc { field public static final String EXTRA_ENABLE_SUBSCRIPTION = "android.telephony.euicc.extra.ENABLE_SUBSCRIPTION"; field public static final String EXTRA_FORCE_PROVISION = "android.telephony.euicc.extra.FORCE_PROVISION"; field public static final String EXTRA_FROM_SUBSCRIPTION_ID = "android.telephony.euicc.extra.FROM_SUBSCRIPTION_ID"; + field public static final String EXTRA_PHYSICAL_SLOT_ID = "android.telephony.euicc.extra.PHYSICAL_SLOT_ID"; field public static final String EXTRA_SUBSCRIPTION_ID = "android.telephony.euicc.extra.SUBSCRIPTION_ID"; field public static final String EXTRA_SUBSCRIPTION_NICKNAME = "android.telephony.euicc.extra.SUBSCRIPTION_NICKNAME"; } @@ -8366,7 +11705,7 @@ package android.telephony.euicc { field public static final int EVENT_INSTALL = 1; // 0x1 } - @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) @IntDef(flag=true, prefix={"EVENT_"}, value={android.telephony.euicc.EuiccNotification.EVENT_INSTALL, android.telephony.euicc.EuiccNotification.EVENT_ENABLE, android.telephony.euicc.EuiccNotification.EVENT_DISABLE, android.telephony.euicc.EuiccNotification.EVENT_DELETE}) public static @interface EuiccNotification.Event { + @IntDef(flag=true, prefix={"EVENT_"}, value={android.telephony.euicc.EuiccNotification.EVENT_INSTALL, android.telephony.euicc.EuiccNotification.EVENT_ENABLE, android.telephony.euicc.EuiccNotification.EVENT_DISABLE, android.telephony.euicc.EuiccNotification.EVENT_DELETE}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface EuiccNotification.Event { } public final class EuiccRulesAuthTable implements android.os.Parcelable { @@ -8384,7 +11723,7 @@ package android.telephony.euicc { method public android.telephony.euicc.EuiccRulesAuthTable build(); } - @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) @IntDef(flag=true, prefix={"POLICY_RULE_FLAG_"}, value={android.telephony.euicc.EuiccRulesAuthTable.POLICY_RULE_FLAG_CONSENT_REQUIRED}) public static @interface EuiccRulesAuthTable.PolicyRuleFlag { + @IntDef(flag=true, prefix={"POLICY_RULE_FLAG_"}, value={android.telephony.euicc.EuiccRulesAuthTable.POLICY_RULE_FLAG_CONSENT_REQUIRED}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface EuiccRulesAuthTable.PolicyRuleFlag { } } @@ -8429,10 +11768,12 @@ package android.telephony.ims { method public android.os.Bundle getCallExtras(); method public int getCallType(); method public static int getCallTypeFromVideoState(int); + method public int getCallerNumberVerificationStatus(); method public int getEmergencyCallRouting(); method public int getEmergencyServiceCategories(); method @NonNull public java.util.List<java.lang.String> getEmergencyUrns(); method public android.telephony.ims.ImsStreamMediaProfile getMediaProfile(); + method @NonNull public android.os.Bundle getProprietaryCallExtras(); method public int getRestrictCause(); method public int getServiceType(); method public static int getVideoStateFromCallType(int); @@ -8446,6 +11787,7 @@ package android.telephony.ims { method public void setCallExtraBoolean(String, boolean); method public void setCallExtraInt(String, int); method public void setCallRestrictCause(int); + method public void setCallerNumberVerificationStatus(int); method public void setEmergencyCallRouting(int); method public void setEmergencyCallTesting(boolean); method public void setEmergencyServiceCategories(int); @@ -8475,7 +11817,9 @@ package android.telephony.ims { field public static final int DIALSTRING_USSD = 2; // 0x2 field public static final String EXTRA_ADDITIONAL_CALL_INFO = "AdditionalCallInfo"; field public static final String EXTRA_ADDITIONAL_SIP_INVITE_FIELDS = "android.telephony.ims.extra.ADDITIONAL_SIP_INVITE_FIELDS"; - field public static final String EXTRA_CALL_RAT_TYPE = "CallRadioTech"; + field public static final String EXTRA_CALL_DISCONNECT_CAUSE = "android.telephony.ims.extra.CALL_DISCONNECT_CAUSE"; + field public static final String EXTRA_CALL_NETWORK_TYPE = "android.telephony.ims.extra.CALL_NETWORK_TYPE"; + field @Deprecated public static final String EXTRA_CALL_RAT_TYPE = "CallRadioTech"; field public static final String EXTRA_CHILD_NUMBER = "ChildNum"; field public static final String EXTRA_CNA = "cna"; field public static final String EXTRA_CNAP = "cnap"; @@ -8483,6 +11827,7 @@ package android.telephony.ims { field public static final String EXTRA_DIALSTRING = "dialstring"; field public static final String EXTRA_DISPLAY_TEXT = "DisplayText"; field public static final String EXTRA_EMERGENCY_CALL = "e_call"; + field public static final String EXTRA_FORWARDED_NUMBER = "android.telephony.ims.extra.FORWARDED_NUMBER"; field public static final String EXTRA_IS_CALL_PULL = "CallPull"; field public static final String EXTRA_OI = "oi"; field public static final String EXTRA_OIR = "oir"; @@ -8496,6 +11841,9 @@ package android.telephony.ims { field public static final int SERVICE_TYPE_EMERGENCY = 2; // 0x2 field public static final int SERVICE_TYPE_NONE = 0; // 0x0 field public static final int SERVICE_TYPE_NORMAL = 1; // 0x1 + field public static final int VERIFICATION_STATUS_FAILED = 2; // 0x2 + field public static final int VERIFICATION_STATUS_NOT_VERIFIED = 0; // 0x0 + field public static final int VERIFICATION_STATUS_PASSED = 1; // 0x1 } public class ImsCallSessionListener { @@ -8504,8 +11852,8 @@ package android.telephony.ims { method public void callSessionConferenceExtendReceived(android.telephony.ims.stub.ImsCallSessionImplBase, android.telephony.ims.ImsCallProfile); method public void callSessionConferenceExtended(android.telephony.ims.stub.ImsCallSessionImplBase, android.telephony.ims.ImsCallProfile); method public void callSessionConferenceStateUpdated(android.telephony.ims.ImsConferenceState); - method public void callSessionHandover(int, int, android.telephony.ims.ImsReasonInfo); - method public void callSessionHandoverFailed(int, int, android.telephony.ims.ImsReasonInfo); + method @Deprecated public void callSessionHandover(int, int, android.telephony.ims.ImsReasonInfo); + method @Deprecated public void callSessionHandoverFailed(int, int, android.telephony.ims.ImsReasonInfo); method public void callSessionHeld(android.telephony.ims.ImsCallProfile); method public void callSessionHoldFailed(android.telephony.ims.ImsReasonInfo); method public void callSessionHoldReceived(android.telephony.ims.ImsCallProfile); @@ -8513,7 +11861,7 @@ package android.telephony.ims { method public void callSessionInitiatedFailed(android.telephony.ims.ImsReasonInfo); method public void callSessionInviteParticipantsRequestDelivered(); method public void callSessionInviteParticipantsRequestFailed(android.telephony.ims.ImsReasonInfo); - method public void callSessionMayHandover(int, int); + method @Deprecated public void callSessionMayHandover(int, int); method public void callSessionMergeComplete(android.telephony.ims.stub.ImsCallSessionImplBase); method public void callSessionMergeFailed(android.telephony.ims.ImsReasonInfo); method public void callSessionMergeStarted(android.telephony.ims.stub.ImsCallSessionImplBase, android.telephony.ims.ImsCallProfile); @@ -8535,6 +11883,9 @@ package android.telephony.ims { method public void callSessionUpdateReceived(android.telephony.ims.ImsCallProfile); method public void callSessionUpdated(android.telephony.ims.ImsCallProfile); method public void callSessionUssdMessageReceived(int, String); + method public void onHandover(int, int, @Nullable android.telephony.ims.ImsReasonInfo); + method public void onHandoverFailed(int, int, @NonNull android.telephony.ims.ImsReasonInfo); + method public void onMayHandover(int, int); } public final class ImsConferenceState implements android.os.Parcelable { @@ -8566,10 +11917,6 @@ package android.telephony.ims { ctor public ImsException(@Nullable String); ctor public ImsException(@Nullable String, int); ctor public ImsException(@Nullable String, int, @Nullable Throwable); - method public int getCode(); - field public static final int CODE_ERROR_SERVICE_UNAVAILABLE = 1; // 0x1 - field public static final int CODE_ERROR_UNSPECIFIED = 0; // 0x0 - field public static final int CODE_ERROR_UNSUPPORTED_OPERATION = 2; // 0x2 } public final class ImsExternalCallState implements android.os.Parcelable { @@ -8588,18 +11935,15 @@ package android.telephony.ims { field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsExternalCallState> CREATOR; } - public class ImsMmTelManager { - method @NonNull public static android.telephony.ims.ImsMmTelManager createForSubscriptionId(int); - method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getVoWiFiModeSetting(); + public class ImsMmTelManager implements android.telephony.ims.RegistrationManager { + method @Deprecated @NonNull @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public static android.telephony.ims.ImsMmTelManager createForSubscriptionId(int); + method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void getFeatureState(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>) throws android.telephony.ims.ImsException; + method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void getRegistrationState(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>); method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getVoWiFiRoamingModeSetting(); - method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isAdvancedCallingSettingEnabled(); - method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isAvailable(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int, int); - method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isCapable(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int, int); - method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isVoWiFiRoamingSettingEnabled(); - method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isVoWiFiSettingEnabled(); - method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isVtSettingEnabled(); - method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void registerImsRegistrationCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.ImsMmTelManager.RegistrationCallback) throws android.telephony.ims.ImsException; - method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void registerMmTelCapabilityCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.ImsMmTelManager.CapabilityCallback) throws android.telephony.ims.ImsException; + method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isAvailable(int, int); + method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isCapable(int, int); + method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void isSupported(int, int, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>) throws android.telephony.ims.ImsException; + method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void registerImsRegistrationCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.ImsMmTelManager.RegistrationCallback) throws android.telephony.ims.ImsException; method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setAdvancedCallingSettingEnabled(boolean); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setRttCapabilitySetting(boolean); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiModeSetting(int); @@ -8608,207 +11952,14 @@ package android.telephony.ims { method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiRoamingSettingEnabled(boolean); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiSettingEnabled(boolean); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVtSettingEnabled(boolean); - method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void unregisterImsRegistrationCallback(@NonNull android.telephony.ims.ImsMmTelManager.RegistrationCallback); - method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void unregisterMmTelCapabilityCallback(@NonNull android.telephony.ims.ImsMmTelManager.CapabilityCallback); - field public static final int WIFI_MODE_CELLULAR_PREFERRED = 1; // 0x1 - field public static final int WIFI_MODE_WIFI_ONLY = 0; // 0x0 - field public static final int WIFI_MODE_WIFI_PREFERRED = 2; // 0x2 + method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void unregisterImsRegistrationCallback(@NonNull android.telephony.ims.ImsMmTelManager.RegistrationCallback); } - public static class ImsMmTelManager.CapabilityCallback { - ctor public ImsMmTelManager.CapabilityCallback(); - method public void onCapabilitiesStatusChanged(@NonNull android.telephony.ims.feature.MmTelFeature.MmTelCapabilities); - } - - public static class ImsMmTelManager.RegistrationCallback { - ctor public ImsMmTelManager.RegistrationCallback(); - method public void onRegistered(int); - method public void onRegistering(int); - method public void onTechnologyChangeFailed(int, @Nullable android.telephony.ims.ImsReasonInfo); - method public void onUnregistered(@Nullable android.telephony.ims.ImsReasonInfo); + @Deprecated public static class ImsMmTelManager.RegistrationCallback extends android.telephony.ims.RegistrationManager.RegistrationCallback { + ctor @Deprecated public ImsMmTelManager.RegistrationCallback(); } public final class ImsReasonInfo implements android.os.Parcelable { - ctor public ImsReasonInfo(int, int, String); - method public int describeContents(); - method public int getCode(); - method public int getExtraCode(); - method public String getExtraMessage(); - method public void writeToParcel(android.os.Parcel, int); - field public static final int CODE_ACCESS_CLASS_BLOCKED = 1512; // 0x5e8 - field public static final int CODE_ANSWERED_ELSEWHERE = 1014; // 0x3f6 - field public static final int CODE_BLACKLISTED_CALL_ID = 506; // 0x1fa - field public static final int CODE_CALL_BARRED = 240; // 0xf0 - field public static final int CODE_CALL_DROP_IWLAN_TO_LTE_UNAVAILABLE = 1100; // 0x44c - field public static final int CODE_CALL_END_CAUSE_CALL_PULL = 1016; // 0x3f8 - field public static final int CODE_CALL_PULL_OUT_OF_SYNC = 1015; // 0x3f7 - field public static final int CODE_DATA_DISABLED = 1406; // 0x57e - field public static final int CODE_DATA_LIMIT_REACHED = 1405; // 0x57d - field public static final int CODE_DIAL_MODIFIED_TO_DIAL = 246; // 0xf6 - field public static final int CODE_DIAL_MODIFIED_TO_DIAL_VIDEO = 247; // 0xf7 - field public static final int CODE_DIAL_MODIFIED_TO_SS = 245; // 0xf5 - field public static final int CODE_DIAL_MODIFIED_TO_USSD = 244; // 0xf4 - field public static final int CODE_DIAL_VIDEO_MODIFIED_TO_DIAL = 248; // 0xf8 - field public static final int CODE_DIAL_VIDEO_MODIFIED_TO_DIAL_VIDEO = 249; // 0xf9 - field public static final int CODE_DIAL_VIDEO_MODIFIED_TO_SS = 250; // 0xfa - field public static final int CODE_DIAL_VIDEO_MODIFIED_TO_USSD = 251; // 0xfb - field public static final int CODE_ECBM_NOT_SUPPORTED = 901; // 0x385 - field public static final int CODE_EMERGENCY_PERM_FAILURE = 364; // 0x16c - field public static final int CODE_EMERGENCY_TEMP_FAILURE = 363; // 0x16b - field public static final int CODE_EPDG_TUNNEL_ESTABLISH_FAILURE = 1400; // 0x578 - field public static final int CODE_EPDG_TUNNEL_LOST_CONNECTION = 1402; // 0x57a - field public static final int CODE_EPDG_TUNNEL_REKEY_FAILURE = 1401; // 0x579 - field public static final int CODE_FDN_BLOCKED = 241; // 0xf1 - field public static final int CODE_IKEV2_AUTH_FAILURE = 1408; // 0x580 - field public static final int CODE_IMEI_NOT_ACCEPTED = 243; // 0xf3 - field public static final int CODE_IWLAN_DPD_FAILURE = 1300; // 0x514 - field public static final int CODE_LOCAL_CALL_BUSY = 142; // 0x8e - field public static final int CODE_LOCAL_CALL_CS_RETRY_REQUIRED = 146; // 0x92 - field public static final int CODE_LOCAL_CALL_DECLINE = 143; // 0x8f - field public static final int CODE_LOCAL_CALL_EXCEEDED = 141; // 0x8d - field public static final int CODE_LOCAL_CALL_RESOURCE_RESERVATION_FAILED = 145; // 0x91 - field public static final int CODE_LOCAL_CALL_TERMINATED = 148; // 0x94 - field public static final int CODE_LOCAL_CALL_VCC_ON_PROGRESSING = 144; // 0x90 - field public static final int CODE_LOCAL_CALL_VOLTE_RETRY_REQUIRED = 147; // 0x93 - field public static final int CODE_LOCAL_ENDED_BY_CONFERENCE_MERGE = 108; // 0x6c - field public static final int CODE_LOCAL_HO_NOT_FEASIBLE = 149; // 0x95 - field public static final int CODE_LOCAL_ILLEGAL_ARGUMENT = 101; // 0x65 - field public static final int CODE_LOCAL_ILLEGAL_STATE = 102; // 0x66 - field public static final int CODE_LOCAL_IMS_SERVICE_DOWN = 106; // 0x6a - field public static final int CODE_LOCAL_INTERNAL_ERROR = 103; // 0x67 - field public static final int CODE_LOCAL_LOW_BATTERY = 112; // 0x70 - field public static final int CODE_LOCAL_NETWORK_IP_CHANGED = 124; // 0x7c - field public static final int CODE_LOCAL_NETWORK_NO_LTE_COVERAGE = 122; // 0x7a - field public static final int CODE_LOCAL_NETWORK_NO_SERVICE = 121; // 0x79 - field public static final int CODE_LOCAL_NETWORK_ROAMING = 123; // 0x7b - field public static final int CODE_LOCAL_NOT_REGISTERED = 132; // 0x84 - field public static final int CODE_LOCAL_NO_PENDING_CALL = 107; // 0x6b - field public static final int CODE_LOCAL_POWER_OFF = 111; // 0x6f - field public static final int CODE_LOCAL_SERVICE_UNAVAILABLE = 131; // 0x83 - field public static final int CODE_LOW_BATTERY = 505; // 0x1f9 - field public static final int CODE_MAXIMUM_NUMBER_OF_CALLS_REACHED = 1403; // 0x57b - field public static final int CODE_MEDIA_INIT_FAILED = 401; // 0x191 - field public static final int CODE_MEDIA_NOT_ACCEPTABLE = 403; // 0x193 - field public static final int CODE_MEDIA_NO_DATA = 402; // 0x192 - field public static final int CODE_MEDIA_UNSPECIFIED = 404; // 0x194 - field public static final int CODE_MULTIENDPOINT_NOT_SUPPORTED = 902; // 0x386 - field public static final int CODE_NETWORK_DETACH = 1513; // 0x5e9 - field public static final int CODE_NETWORK_REJECT = 1504; // 0x5e0 - field public static final int CODE_NETWORK_RESP_TIMEOUT = 1503; // 0x5df - field public static final int CODE_NO_CSFB_IN_CS_ROAM = 1516; // 0x5ec - field public static final int CODE_NO_VALID_SIM = 1501; // 0x5dd - field public static final int CODE_OEM_CAUSE_1 = 61441; // 0xf001 - field public static final int CODE_OEM_CAUSE_10 = 61450; // 0xf00a - field public static final int CODE_OEM_CAUSE_11 = 61451; // 0xf00b - field public static final int CODE_OEM_CAUSE_12 = 61452; // 0xf00c - field public static final int CODE_OEM_CAUSE_13 = 61453; // 0xf00d - field public static final int CODE_OEM_CAUSE_14 = 61454; // 0xf00e - field public static final int CODE_OEM_CAUSE_15 = 61455; // 0xf00f - field public static final int CODE_OEM_CAUSE_2 = 61442; // 0xf002 - field public static final int CODE_OEM_CAUSE_3 = 61443; // 0xf003 - field public static final int CODE_OEM_CAUSE_4 = 61444; // 0xf004 - field public static final int CODE_OEM_CAUSE_5 = 61445; // 0xf005 - field public static final int CODE_OEM_CAUSE_6 = 61446; // 0xf006 - field public static final int CODE_OEM_CAUSE_7 = 61447; // 0xf007 - field public static final int CODE_OEM_CAUSE_8 = 61448; // 0xf008 - field public static final int CODE_OEM_CAUSE_9 = 61449; // 0xf009 - field public static final int CODE_RADIO_ACCESS_FAILURE = 1505; // 0x5e1 - field public static final int CODE_RADIO_INTERNAL_ERROR = 1502; // 0x5de - field public static final int CODE_RADIO_LINK_FAILURE = 1506; // 0x5e2 - field public static final int CODE_RADIO_LINK_LOST = 1507; // 0x5e3 - field public static final int CODE_RADIO_OFF = 1500; // 0x5dc - field public static final int CODE_RADIO_RELEASE_ABNORMAL = 1511; // 0x5e7 - field public static final int CODE_RADIO_RELEASE_NORMAL = 1510; // 0x5e6 - field public static final int CODE_RADIO_SETUP_FAILURE = 1509; // 0x5e5 - field public static final int CODE_RADIO_UPLINK_FAILURE = 1508; // 0x5e4 - field public static final int CODE_REGISTRATION_ERROR = 1000; // 0x3e8 - field public static final int CODE_REJECTED_ELSEWHERE = 1017; // 0x3f9 - field public static final int CODE_REJECT_1X_COLLISION = 1603; // 0x643 - field public static final int CODE_REJECT_CALL_ON_OTHER_SUB = 1602; // 0x642 - field public static final int CODE_REJECT_CALL_TYPE_NOT_ALLOWED = 1605; // 0x645 - field public static final int CODE_REJECT_CONFERENCE_TTY_NOT_ALLOWED = 1617; // 0x651 - field public static final int CODE_REJECT_INTERNAL_ERROR = 1612; // 0x64c - field public static final int CODE_REJECT_MAX_CALL_LIMIT_REACHED = 1608; // 0x648 - field public static final int CODE_REJECT_ONGOING_CALL_SETUP = 1607; // 0x647 - field public static final int CODE_REJECT_ONGOING_CALL_TRANSFER = 1611; // 0x64b - field public static final int CODE_REJECT_ONGOING_CALL_UPGRADE = 1616; // 0x650 - field public static final int CODE_REJECT_ONGOING_CALL_WAITING_DISABLED = 1601; // 0x641 - field public static final int CODE_REJECT_ONGOING_CONFERENCE_CALL = 1618; // 0x652 - field public static final int CODE_REJECT_ONGOING_CS_CALL = 1621; // 0x655 - field public static final int CODE_REJECT_ONGOING_E911_CALL = 1606; // 0x646 - field public static final int CODE_REJECT_ONGOING_ENCRYPTED_CALL = 1620; // 0x654 - field public static final int CODE_REJECT_ONGOING_HANDOVER = 1614; // 0x64e - field public static final int CODE_REJECT_QOS_FAILURE = 1613; // 0x64d - field public static final int CODE_REJECT_SERVICE_NOT_REGISTERED = 1604; // 0x644 - field public static final int CODE_REJECT_UNKNOWN = 1600; // 0x640 - field public static final int CODE_REJECT_UNSUPPORTED_SDP_HEADERS = 1610; // 0x64a - field public static final int CODE_REJECT_UNSUPPORTED_SIP_HEADERS = 1609; // 0x649 - field public static final int CODE_REJECT_VT_AVPF_NOT_ALLOWED = 1619; // 0x653 - field public static final int CODE_REJECT_VT_TTY_NOT_ALLOWED = 1615; // 0x64f - field public static final int CODE_REMOTE_CALL_DECLINE = 1404; // 0x57c - field public static final int CODE_SESSION_MODIFICATION_FAILED = 1517; // 0x5ed - field public static final int CODE_SIP_ALTERNATE_EMERGENCY_CALL = 1514; // 0x5ea - field public static final int CODE_SIP_AMBIGUOUS = 376; // 0x178 - field public static final int CODE_SIP_BAD_ADDRESS = 337; // 0x151 - field public static final int CODE_SIP_BAD_REQUEST = 331; // 0x14b - field public static final int CODE_SIP_BUSY = 338; // 0x152 - field public static final int CODE_SIP_CALL_OR_TRANS_DOES_NOT_EXIST = 372; // 0x174 - field public static final int CODE_SIP_CLIENT_ERROR = 342; // 0x156 - field public static final int CODE_SIP_EXTENSION_REQUIRED = 370; // 0x172 - field public static final int CODE_SIP_FORBIDDEN = 332; // 0x14c - field public static final int CODE_SIP_GLOBAL_ERROR = 362; // 0x16a - field public static final int CODE_SIP_INTERVAL_TOO_BRIEF = 371; // 0x173 - field public static final int CODE_SIP_LOOP_DETECTED = 373; // 0x175 - field public static final int CODE_SIP_METHOD_NOT_ALLOWED = 366; // 0x16e - field public static final int CODE_SIP_NOT_ACCEPTABLE = 340; // 0x154 - field public static final int CODE_SIP_NOT_FOUND = 333; // 0x14d - field public static final int CODE_SIP_NOT_REACHABLE = 341; // 0x155 - field public static final int CODE_SIP_NOT_SUPPORTED = 334; // 0x14e - field public static final int CODE_SIP_PROXY_AUTHENTICATION_REQUIRED = 367; // 0x16f - field public static final int CODE_SIP_REDIRECTED = 321; // 0x141 - field public static final int CODE_SIP_REQUEST_CANCELLED = 339; // 0x153 - field public static final int CODE_SIP_REQUEST_ENTITY_TOO_LARGE = 368; // 0x170 - field public static final int CODE_SIP_REQUEST_PENDING = 377; // 0x179 - field public static final int CODE_SIP_REQUEST_TIMEOUT = 335; // 0x14f - field public static final int CODE_SIP_REQUEST_URI_TOO_LARGE = 369; // 0x171 - field public static final int CODE_SIP_SERVER_ERROR = 354; // 0x162 - field public static final int CODE_SIP_SERVER_INTERNAL_ERROR = 351; // 0x15f - field public static final int CODE_SIP_SERVER_TIMEOUT = 353; // 0x161 - field public static final int CODE_SIP_SERVICE_UNAVAILABLE = 352; // 0x160 - field public static final int CODE_SIP_TEMPRARILY_UNAVAILABLE = 336; // 0x150 - field public static final int CODE_SIP_TOO_MANY_HOPS = 374; // 0x176 - field public static final int CODE_SIP_TRANSACTION_DOES_NOT_EXIST = 343; // 0x157 - field public static final int CODE_SIP_UNDECIPHERABLE = 378; // 0x17a - field public static final int CODE_SIP_USER_MARKED_UNWANTED = 365; // 0x16d - field public static final int CODE_SIP_USER_REJECTED = 361; // 0x169 - field public static final int CODE_SUPP_SVC_CANCELLED = 1202; // 0x4b2 - field public static final int CODE_SUPP_SVC_FAILED = 1201; // 0x4b1 - field public static final int CODE_SUPP_SVC_REINVITE_COLLISION = 1203; // 0x4b3 - field public static final int CODE_TIMEOUT_1XX_WAITING = 201; // 0xc9 - field public static final int CODE_TIMEOUT_NO_ANSWER = 202; // 0xca - field public static final int CODE_TIMEOUT_NO_ANSWER_CALL_UPDATE = 203; // 0xcb - field public static final int CODE_UNSPECIFIED = 0; // 0x0 - field public static final int CODE_USER_CANCELLED_SESSION_MODIFICATION = 512; // 0x200 - field public static final int CODE_USER_DECLINE = 504; // 0x1f8 - field public static final int CODE_USER_IGNORE = 503; // 0x1f7 - field public static final int CODE_USER_NOANSWER = 502; // 0x1f6 - field public static final int CODE_USER_REJECTED_SESSION_MODIFICATION = 511; // 0x1ff - field public static final int CODE_USER_TERMINATED = 501; // 0x1f5 - field public static final int CODE_USER_TERMINATED_BY_REMOTE = 510; // 0x1fe - field public static final int CODE_UT_CB_PASSWORD_MISMATCH = 821; // 0x335 - field public static final int CODE_UT_NETWORK_ERROR = 804; // 0x324 - field public static final int CODE_UT_NOT_SUPPORTED = 801; // 0x321 - field public static final int CODE_UT_OPERATION_NOT_ALLOWED = 803; // 0x323 - field public static final int CODE_UT_SERVICE_UNAVAILABLE = 802; // 0x322 - field public static final int CODE_UT_SS_MODIFIED_TO_DIAL = 822; // 0x336 - field public static final int CODE_UT_SS_MODIFIED_TO_DIAL_VIDEO = 825; // 0x339 - field public static final int CODE_UT_SS_MODIFIED_TO_SS = 824; // 0x338 - field public static final int CODE_UT_SS_MODIFIED_TO_USSD = 823; // 0x337 - field public static final int CODE_WIFI_LOST = 1407; // 0x57f - field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsReasonInfo> CREATOR; - field public static final int EXTRA_CODE_CALL_RETRY_BY_SETTINGS = 3; // 0x3 - field public static final int EXTRA_CODE_CALL_RETRY_NORMAL = 1; // 0x1 - field public static final int EXTRA_CODE_CALL_RETRY_SILENT_REDIAL = 2; // 0x2 field public static final String EXTRA_MSG_SERVICE_NOT_AUTHORIZED = "Forbidden. Not Authorized for Service"; } @@ -9001,14 +12152,17 @@ package android.telephony.ims { } public class ImsUtListener { + method public void onLineIdentificationSupplementaryServiceResponse(int, @NonNull android.telephony.ims.ImsSsInfo); method public void onSupplementaryServiceIndication(android.telephony.ims.ImsSsData); method public void onUtConfigurationCallBarringQueried(int, android.telephony.ims.ImsSsInfo[]); method public void onUtConfigurationCallForwardQueried(int, android.telephony.ims.ImsCallForwardInfo[]); method public void onUtConfigurationCallWaitingQueried(int, android.telephony.ims.ImsSsInfo[]); - method public void onUtConfigurationQueried(int, android.os.Bundle); + method @Deprecated public void onUtConfigurationQueried(int, android.os.Bundle); method public void onUtConfigurationQueryFailed(int, android.telephony.ims.ImsReasonInfo); method public void onUtConfigurationUpdateFailed(int, android.telephony.ims.ImsReasonInfo); method public void onUtConfigurationUpdated(int); + field @Deprecated public static final String BUNDLE_KEY_CLIR = "queryClir"; + field @Deprecated public static final String BUNDLE_KEY_SSINFO = "imsSsInfo"; } public abstract class ImsVideoCallProvider { @@ -9035,13 +12189,16 @@ package android.telephony.ims { public class ProvisioningManager { method @NonNull public static android.telephony.ims.ProvisioningManager createForSubscriptionId(int); - method @WorkerThread @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getProvisioningIntValue(int); - method @WorkerThread @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean getProvisioningStatusForCapability(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int, int); + method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @WorkerThread public int getProvisioningIntValue(int); + method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @WorkerThread public boolean getProvisioningStatusForCapability(int, int); method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @WorkerThread public String getProvisioningStringValue(int); + method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @WorkerThread public boolean getRcsProvisioningStatusForCapability(int); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void notifyRcsAutoConfigurationReceived(@NonNull byte[], boolean); method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void registerProvisioningChangedCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.ProvisioningManager.Callback) throws android.telephony.ims.ImsException; method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public int setProvisioningIntValue(int, int); - method @WorkerThread @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setProvisioningStatusForCapability(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int, int, boolean); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public void setProvisioningStatusForCapability(int, int, boolean); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public int setProvisioningStringValue(int, @NonNull String); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public void setRcsProvisioningStatusForCapability(int, boolean); method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void unregisterProvisioningChangedCallback(@NonNull android.telephony.ims.ProvisioningManager.Callback); field public static final int KEY_VOICE_OVER_WIFI_MODE_OVERRIDE = 27; // 0x1b field public static final int KEY_VOICE_OVER_WIFI_ROAMING_ENABLED_OVERRIDE = 26; // 0x1a @@ -9057,13 +12214,17 @@ package android.telephony.ims { method public void onProvisioningStringChanged(int, @NonNull String); } + public class RcsUceAdapter { + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setUceSettingEnabled(boolean) throws android.telephony.ims.ImsException; + } + } package android.telephony.ims.feature { public final class CapabilityChangeRequest implements android.os.Parcelable { - method public void addCapabilitiesToDisableForTech(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int, int); - method public void addCapabilitiesToEnableForTech(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int, int); + method public void addCapabilitiesToDisableForTech(int, int); + method public void addCapabilitiesToEnableForTech(int, int); method public int describeContents(); method public java.util.List<android.telephony.ims.feature.CapabilityChangeRequest.CapabilityPair> getCapabilitiesToDisable(); method public java.util.List<android.telephony.ims.feature.CapabilityChangeRequest.CapabilityPair> getCapabilitiesToEnable(); @@ -9072,14 +12233,16 @@ package android.telephony.ims.feature { } public static class CapabilityChangeRequest.CapabilityPair { - ctor public CapabilityChangeRequest.CapabilityPair(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int, int); - method @android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability public int getCapability(); + ctor public CapabilityChangeRequest.CapabilityPair(int, int); + method public int getCapability(); method public int getRadioTech(); } public abstract class ImsFeature { ctor public ImsFeature(); method public abstract void changeEnabledCapabilities(android.telephony.ims.feature.CapabilityChangeRequest, android.telephony.ims.feature.ImsFeature.CapabilityCallbackProxy); + method public int getFeatureState(); + method public final int getSlotIndex(); method public abstract void onFeatureReady(); method public abstract void onFeatureRemoved(); method public final void setFeatureState(int); @@ -9116,10 +12279,12 @@ package android.telephony.ims.feature { method public final void notifyVoiceMessageCountUpdate(int); method public void onFeatureReady(); method public void onFeatureRemoved(); - method public boolean queryCapabilityConfiguration(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int, int); - method public final android.telephony.ims.feature.MmTelFeature.MmTelCapabilities queryCapabilityStatus(); + method public boolean queryCapabilityConfiguration(int, int); + method @NonNull public final android.telephony.ims.feature.MmTelFeature.MmTelCapabilities queryCapabilityStatus(); method public void setUiTtyMode(int, @Nullable android.os.Message); - method @android.telephony.ims.feature.MmTelFeature.ProcessCallResult public int shouldProcessCall(@NonNull String[]); + method public int shouldProcessCall(@NonNull String[]); + field public static final String EXTRA_IS_UNKNOWN_CALL = "android.telephony.ims.feature.extra.IS_UNKNOWN_CALL"; + field public static final String EXTRA_IS_USSD = "android.telephony.ims.feature.extra.IS_USSD"; field public static final int PROCESS_CALL_CSFB = 1; // 0x1 field public static final int PROCESS_CALL_IMS = 0; // 0x0 } @@ -9128,24 +12293,14 @@ package android.telephony.ims.feature { ctor public MmTelFeature.MmTelCapabilities(); ctor @Deprecated public MmTelFeature.MmTelCapabilities(android.telephony.ims.feature.ImsFeature.Capabilities); ctor public MmTelFeature.MmTelCapabilities(int); - method public final void addCapabilities(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int); - method public final boolean isCapable(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int); - method public final void removeCapabilities(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int); - field public static final int CAPABILITY_TYPE_SMS = 8; // 0x8 - field public static final int CAPABILITY_TYPE_UT = 4; // 0x4 - field public static final int CAPABILITY_TYPE_VIDEO = 2; // 0x2 - field public static final int CAPABILITY_TYPE_VOICE = 1; // 0x1 - } - - @IntDef(flag=true, value={android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VOICE, android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VIDEO, android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_UT, android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_SMS}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface MmTelFeature.MmTelCapabilities.MmTelCapability { - } - - @IntDef(flag=true, value={android.telephony.ims.feature.MmTelFeature.PROCESS_CALL_IMS, android.telephony.ims.feature.MmTelFeature.PROCESS_CALL_CSFB}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface MmTelFeature.ProcessCallResult { + method public final void addCapabilities(int); + method public final boolean isCapable(int); + method public final void removeCapabilities(int); } public class RcsFeature extends android.telephony.ims.feature.ImsFeature { ctor public RcsFeature(); - method public void changeEnabledCapabilities(android.telephony.ims.feature.CapabilityChangeRequest, android.telephony.ims.feature.ImsFeature.CapabilityCallbackProxy); + method public void changeEnabledCapabilities(@NonNull android.telephony.ims.feature.CapabilityChangeRequest, @NonNull android.telephony.ims.feature.ImsFeature.CapabilityCallbackProxy); method public void onFeatureReady(); method public void onFeatureRemoved(); } @@ -9212,6 +12367,7 @@ package android.telephony.ims.stub { method public String getConfigString(int); method public final void notifyProvisionedValueChanged(int, int); method public final void notifyProvisionedValueChanged(int, String); + method public void notifyRcsAutoConfigurationReceived(@NonNull byte[], boolean); method public int setConfig(int, int); method public int setConfig(int, String); field public static final int CONFIG_RESULT_FAILED = 1; // 0x1 @@ -9265,18 +12421,22 @@ package android.telephony.ims.stub { public class ImsSmsImplBase { ctor public ImsSmsImplBase(); - method public void acknowledgeSms(int, int, int); - method public void acknowledgeSmsReport(int, int, int); + method public void acknowledgeSms(int, @IntRange(from=0, to=65535) int, int); + method public void acknowledgeSmsReport(int, @IntRange(from=0, to=65535) int, int); method public String getSmsFormat(); method public void onReady(); - method public final void onSendSmsResult(int, int, int, int) throws java.lang.RuntimeException; + method @Deprecated public final void onSendSmsResult(int, @IntRange(from=0, to=65535) int, int, int) throws java.lang.RuntimeException; + method public final void onSendSmsResultError(int, @IntRange(from=0, to=65535) int, int, int, int) throws java.lang.RuntimeException; + method public final void onSendSmsResultSuccess(int, @IntRange(from=0, to=65535) int) throws java.lang.RuntimeException; method public final void onSmsReceived(int, String, byte[]) throws java.lang.RuntimeException; - method public final void onSmsStatusReportReceived(int, int, String, byte[]) throws java.lang.RuntimeException; - method public void sendSms(int, int, String, String, boolean, byte[]); + method @Deprecated public final void onSmsStatusReportReceived(int, @IntRange(from=0, to=65535) int, String, byte[]) throws java.lang.RuntimeException; + method public final void onSmsStatusReportReceived(int, String, byte[]) throws java.lang.RuntimeException; + method public void sendSms(int, @IntRange(from=0, to=65535) int, String, String, boolean, byte[]); field public static final int DELIVER_STATUS_ERROR_GENERIC = 2; // 0x2 field public static final int DELIVER_STATUS_ERROR_NO_MEMORY = 3; // 0x3 field public static final int DELIVER_STATUS_ERROR_REQUEST_NOT_SUPPORTED = 4; // 0x4 field public static final int DELIVER_STATUS_OK = 1; // 0x1 + field public static final int RESULT_NO_NETWORK_ERROR = -1; // 0xffffffff field public static final int SEND_STATUS_ERROR = 2; // 0x2 field public static final int SEND_STATUS_ERROR_FALLBACK = 4; // 0x4 field public static final int SEND_STATUS_ERROR_RETRY = 3; // 0x3 @@ -9350,7 +12510,7 @@ package android.telephony.mbms { package android.telephony.mbms.vendor { - public class MbmsDownloadServiceBase extends android.os.Binder { + public class MbmsDownloadServiceBase extends android.os.Binder implements android.os.IInterface { ctor public MbmsDownloadServiceBase(); method public int addProgressListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadProgressListener) throws android.os.RemoteException; method public int addStatusListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStatusListener) throws android.os.RemoteException; @@ -9381,7 +12541,7 @@ package android.telephony.mbms.vendor { method public void updateGroupCall(int, long, @NonNull java.util.List<java.lang.Integer>, @NonNull java.util.List<java.lang.Integer>); } - public class MbmsStreamingServiceBase extends android.os.Binder { + public class MbmsStreamingServiceBase extends android.os.Binder implements android.os.IInterface { ctor public MbmsStreamingServiceBase(); method public android.os.IBinder asBinder(); method public void dispose(int) throws android.os.RemoteException; @@ -9423,7 +12583,28 @@ package android.util { method public int getUid(); } + public final class StatsEvent { + method @NonNull public static android.util.StatsEvent.Builder newBuilder(); + } + + public static final class StatsEvent.Builder { + method @NonNull public android.util.StatsEvent.Builder addBooleanAnnotation(byte, boolean); + method @NonNull public android.util.StatsEvent.Builder addIntAnnotation(byte, int); + method @NonNull public android.util.StatsEvent build(); + method @NonNull public android.util.StatsEvent.Builder setAtomId(int); + method @NonNull public android.util.StatsEvent.Builder usePooledBuffer(); + method @NonNull public android.util.StatsEvent.Builder writeAttributionChain(@NonNull int[], @NonNull String[]); + method @NonNull public android.util.StatsEvent.Builder writeBoolean(boolean); + method @NonNull public android.util.StatsEvent.Builder writeByteArray(@NonNull byte[]); + method @NonNull public android.util.StatsEvent.Builder writeFloat(float); + method @NonNull public android.util.StatsEvent.Builder writeInt(int); + method @NonNull public android.util.StatsEvent.Builder writeKeyValuePairs(@Nullable android.util.SparseIntArray, @Nullable android.util.SparseLongArray, @Nullable android.util.SparseArray<java.lang.String>, @Nullable android.util.SparseArray<java.lang.Float>); + method @NonNull public android.util.StatsEvent.Builder writeLong(long); + method @NonNull public android.util.StatsEvent.Builder writeString(@NonNull String); + } + public final class StatsLog { + method public static void write(@NonNull android.util.StatsEvent); method public static void writeRaw(@NonNull byte[], int); } @@ -9443,9 +12624,10 @@ package android.view { method public final long getUserActivityTimeout(); method public final void setUserActivityTimeout(long); field @RequiresPermission(android.Manifest.permission.HIDE_NON_SYSTEM_OVERLAY_WINDOWS) public static final int SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS = 524288; // 0x80000 + field @RequiresPermission(android.Manifest.permission.INTERNAL_SYSTEM_WINDOW) public static final int SYSTEM_FLAG_SHOW_FOR_ALL_USERS = 16; // 0x10 } - @IntDef(flag=true, prefix={"SYSTEM_FLAG_"}, value={android.view.WindowManager.LayoutParams.SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface WindowManager.LayoutParams.SystemFlags { + @IntDef(flag=true, prefix={"SYSTEM_FLAG_"}, value={android.view.WindowManager.LayoutParams.SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS, android.view.WindowManager.LayoutParams.SYSTEM_FLAG_SHOW_FOR_ALL_USERS}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface WindowManager.LayoutParams.SystemFlags { } } @@ -9455,6 +12637,8 @@ package android.view.accessibility { public final class AccessibilityManager { method public int getAccessibilityWindowId(@Nullable android.os.IBinder); method @RequiresPermission(android.Manifest.permission.MANAGE_ACCESSIBILITY) public void performAccessibilityShortcut(); + method @RequiresPermission(android.Manifest.permission.MANAGE_ACCESSIBILITY) public void registerSystemAction(@NonNull android.app.RemoteAction, int); + method @RequiresPermission(android.Manifest.permission.MANAGE_ACCESSIBILITY) public void unregisterSystemAction(int); } } @@ -9486,6 +12670,7 @@ package android.view.contentcapture { method public long getEventTime(); method @Nullable public android.view.autofill.AutofillId getId(); method @Nullable public java.util.List<android.view.autofill.AutofillId> getIds(); + method @Nullable public android.graphics.Insets getInsets(); method @Nullable public CharSequence getText(); method public int getType(); method @Nullable public android.view.contentcapture.ViewNode getViewNode(); @@ -9496,6 +12681,7 @@ package android.view.contentcapture { field public static final int TYPE_SESSION_RESUMED = 7; // 0x7 field public static final int TYPE_VIEW_APPEARED = 1; // 0x1 field public static final int TYPE_VIEW_DISAPPEARED = 2; // 0x2 + field public static final int TYPE_VIEW_INSETS_CHANGED = 9; // 0x9 field public static final int TYPE_VIEW_TEXT_CHANGED = 3; // 0x3 field public static final int TYPE_VIEW_TREE_APPEARED = 5; // 0x5 field public static final int TYPE_VIEW_TREE_APPEARING = 4; // 0x4 @@ -9503,6 +12689,7 @@ package android.view.contentcapture { public final class ContentCaptureManager { method public boolean isContentCaptureFeatureEnabled(); + field public static final int NO_SESSION_ID = 0; // 0x0 } public final class ViewNode extends android.app.assist.AssistStructure.ViewNode { @@ -9582,6 +12769,12 @@ package android.webkit { method public void onJsResultComplete(android.webkit.JsResult); } + public interface PacProcessor { + method @Nullable public String findProxyForUrl(@NonNull String); + method @NonNull public static android.webkit.PacProcessor getInstance(); + method public boolean setProxyScript(@NonNull String); + } + public class SslErrorHandler extends android.os.Handler { ctor public SslErrorHandler(); } @@ -9716,6 +12909,7 @@ package android.webkit { method public android.webkit.WebViewProvider createWebView(android.webkit.WebView, android.webkit.WebView.PrivateAccess); method public android.webkit.CookieManager getCookieManager(); method public android.webkit.GeolocationPermissions getGeolocationPermissions(); + method @NonNull public default android.webkit.PacProcessor getPacProcessor(); method public android.webkit.ServiceWorkerController getServiceWorkerController(); method public android.webkit.WebViewFactoryProvider.Statics getStatics(); method @Deprecated public android.webkit.TokenBindingService getTokenBindingService(); diff --git a/api/system-lint-baseline.txt b/api/system-lint-baseline.txt new file mode 100644 index 000000000000..10c96a330bf4 --- /dev/null +++ b/api/system-lint-baseline.txt @@ -0,0 +1,510 @@ +// Baseline format: 1.0 +AcronymName: android.net.NetworkCapabilities#setSSID(String): + Acronyms should not be capitalized in method names: was `setSSID`, should this be `setSsid`? + + +ActionValue: android.location.Location#EXTRA_NO_GPS_LOCATION: + +ActionValue: android.net.wifi.WifiManager#ACTION_LINK_CONFIGURATION_CHANGED: + + +// Tethering broadcast action / extras cannot change name for backwards compatibility +ActionValue: android.net.TetheringManager#ACTION_TETHER_STATE_CHANGED: + Inconsistent action value; expected `android.net.action.TETHER_STATE_CHANGED`, was `android.net.conn.TETHER_STATE_CHANGED` +ActionValue: android.net.TetheringManager#EXTRA_ACTIVE_TETHER: + Inconsistent extra value; expected `android.net.extra.ACTIVE_TETHER`, was `tetherArray` +ActionValue: android.net.TetheringManager#EXTRA_AVAILABLE_TETHER: + Inconsistent extra value; expected `android.net.extra.AVAILABLE_TETHER`, was `availableArray` +ActionValue: android.net.TetheringManager#EXTRA_ERRORED_TETHER: + Inconsistent extra value; expected `android.net.extra.ERRORED_TETHER`, was `erroredArray` + +ArrayReturn: android.bluetooth.BluetoothCodecStatus#BluetoothCodecStatus(android.bluetooth.BluetoothCodecConfig, android.bluetooth.BluetoothCodecConfig[], android.bluetooth.BluetoothCodecConfig[]) parameter #1: + Method parameter should be Collection<BluetoothCodecConfig> (or subclass) instead of raw array; was `android.bluetooth.BluetoothCodecConfig[]` +ArrayReturn: android.bluetooth.BluetoothCodecStatus#BluetoothCodecStatus(android.bluetooth.BluetoothCodecConfig, android.bluetooth.BluetoothCodecConfig[], android.bluetooth.BluetoothCodecConfig[]) parameter #2: + Method parameter should be Collection<BluetoothCodecConfig> (or subclass) instead of raw array; was `android.bluetooth.BluetoothCodecConfig[]` +ArrayReturn: android.bluetooth.BluetoothCodecStatus#getCodecsLocalCapabilities(): + Method should return Collection<BluetoothCodecConfig> (or subclass) instead of raw array; was `android.bluetooth.BluetoothCodecConfig[]` +ArrayReturn: android.bluetooth.BluetoothCodecStatus#getCodecsSelectableCapabilities(): + Method should return Collection<BluetoothCodecConfig> (or subclass) instead of raw array; was `android.bluetooth.BluetoothCodecConfig[]` +ArrayReturn: android.bluetooth.BluetoothUuid#containsAnyUuid(android.os.ParcelUuid[], android.os.ParcelUuid[]) parameter #0: + Method parameter should be Collection<ParcelUuid> (or subclass) instead of raw array; was `android.os.ParcelUuid[]` +ArrayReturn: android.bluetooth.BluetoothUuid#containsAnyUuid(android.os.ParcelUuid[], android.os.ParcelUuid[]) parameter #1: + Method parameter should be Collection<ParcelUuid> (or subclass) instead of raw array; was `android.os.ParcelUuid[]` +ArrayReturn: android.media.tv.tuner.Tuner.FilterCallback#onFilterEvent(android.media.tv.tuner.Tuner.Filter, android.media.tv.tuner.filter.FilterEvent[]) parameter #1: + Method parameter should be Collection<FilterEvent> (or subclass) instead of raw array; was `android.media.tv.tuner.filter.FilterEvent[]` +ArrayReturn: android.net.NetworkScoreManager#requestScores(android.net.NetworkKey[]) parameter #0: + Method parameter should be Collection<NetworkKey> (or subclass) instead of raw array; was `android.net.NetworkKey[]` +ArrayReturn: android.view.contentcapture.ViewNode#getAutofillOptions(): + + + +ExecutorRegistration: android.net.wifi.p2p.WifiP2pManager#deletePersistentGroup(android.net.wifi.p2p.WifiP2pManager.Channel, int, android.net.wifi.p2p.WifiP2pManager.ActionListener): + +ExecutorRegistration: android.net.wifi.p2p.WifiP2pManager#factoryReset(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ActionListener): + +ExecutorRegistration: android.net.wifi.p2p.WifiP2pManager#listen(android.net.wifi.p2p.WifiP2pManager.Channel, boolean, android.net.wifi.p2p.WifiP2pManager.ActionListener): + +ExecutorRegistration: android.net.wifi.p2p.WifiP2pManager#requestPersistentGroupInfo(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.PersistentGroupInfoListener): + +ExecutorRegistration: android.net.wifi.p2p.WifiP2pManager#setDeviceName(android.net.wifi.p2p.WifiP2pManager.Channel, String, android.net.wifi.p2p.WifiP2pManager.ActionListener): + +ExecutorRegistration: android.net.wifi.p2p.WifiP2pManager#setWfdInfo(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pWfdInfo, android.net.wifi.p2p.WifiP2pManager.ActionListener): + +ExecutorRegistration: android.net.wifi.p2p.WifiP2pManager#setWifiP2pChannels(android.net.wifi.p2p.WifiP2pManager.Channel, int, int, android.net.wifi.p2p.WifiP2pManager.ActionListener): + + + +GenericException: android.app.prediction.AppPredictor#finalize(): + +GenericException: android.hardware.location.ContextHubClient#finalize(): + +GenericException: android.net.IpSecManager.IpSecTunnelInterface#finalize(): + +GenericException: android.service.autofill.augmented.FillWindow#finalize(): + + + +IntentBuilderName: android.content.Context#registerReceiverForAllUsers(android.content.BroadcastReceiver, android.content.IntentFilter, String, android.os.Handler): + Methods creating an Intent should be named `create<Foo>Intent()`, was `registerReceiverForAllUsers` + + +KotlinKeyword: android.app.Notification#when: + + + +KotlinOperator: android.telephony.CbGeoUtils.Geometry#contains(android.telephony.CbGeoUtils.LatLng): + Method can be invoked as a "in" operator from Kotlin: `contains` (this is usually desirable; just make sure it makes sense for this type of object) + + +MissingNullability: android.hardware.soundtrigger.SoundTrigger.ModuleProperties#toString(): + +MissingNullability: android.hardware.soundtrigger.SoundTrigger.ModuleProperties#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.media.session.MediaSessionManager.Callback#onAddressedPlayerChanged(android.content.ComponentName) parameter #0: + +MissingNullability: android.media.session.MediaSessionManager.Callback#onAddressedPlayerChanged(android.media.session.MediaSession.Token) parameter #0: + +MissingNullability: android.media.session.MediaSessionManager.Callback#onMediaKeyEventDispatched(android.view.KeyEvent, android.content.ComponentName) parameter #0: + +MissingNullability: android.media.session.MediaSessionManager.Callback#onMediaKeyEventDispatched(android.view.KeyEvent, android.content.ComponentName) parameter #1: + +MissingNullability: android.media.session.MediaSessionManager.Callback#onMediaKeyEventDispatched(android.view.KeyEvent, android.media.session.MediaSession.Token) parameter #0: + +MissingNullability: android.media.session.MediaSessionManager.Callback#onMediaKeyEventDispatched(android.view.KeyEvent, android.media.session.MediaSession.Token) parameter #1: + +MissingNullability: android.media.soundtrigger.SoundTriggerDetectionService#onUnbind(android.content.Intent) parameter #0: + +MissingNullability: android.media.tv.TvRecordingClient.RecordingCallback#onEvent(String, String, android.os.Bundle) parameter #0: + +MissingNullability: android.media.tv.TvRecordingClient.RecordingCallback#onEvent(String, String, android.os.Bundle) parameter #1: + +MissingNullability: android.media.tv.TvRecordingClient.RecordingCallback#onEvent(String, String, android.os.Bundle) parameter #2: + +MissingNullability: android.net.wifi.rtt.RangingRequest.Builder#addResponder(android.net.wifi.rtt.ResponderConfig): + +MissingNullability: android.printservice.recommendation.RecommendationService#attachBaseContext(android.content.Context) parameter #0: + +MissingNullability: android.provider.ContactsContract.MetadataSync#CONTENT_URI: + +MissingNullability: android.provider.ContactsContract.MetadataSync#METADATA_AUTHORITY_URI: + +MissingNullability: android.provider.ContactsContract.MetadataSyncState#CONTENT_URI: + +MissingNullability: android.provider.SearchIndexablesProvider#attachInfo(android.content.Context, android.content.pm.ProviderInfo) parameter #0: + +MissingNullability: android.provider.SearchIndexablesProvider#attachInfo(android.content.Context, android.content.pm.ProviderInfo) parameter #1: + +MissingNullability: android.service.autofill.augmented.AugmentedAutofillService#onUnbind(android.content.Intent) parameter #0: + +MissingNullability: android.service.contentcapture.ContentCaptureService#dump(java.io.FileDescriptor, java.io.PrintWriter, String[]) parameter #0: + +MissingNullability: android.service.contentcapture.ContentCaptureService#dump(java.io.FileDescriptor, java.io.PrintWriter, String[]) parameter #1: + +MissingNullability: android.service.contentcapture.ContentCaptureService#dump(java.io.FileDescriptor, java.io.PrintWriter, String[]) parameter #2: + +MissingNullability: android.service.notification.NotificationAssistantService#attachBaseContext(android.content.Context) parameter #0: + +MissingNullability: android.telecom.CallScreeningService.CallResponse.Builder#setShouldScreenCallFurther(boolean): + +MissingNullability: android.telephony.CallerInfo#toString(): + +MissingNullability: android.telephony.CellBroadcastService#onBind(android.content.Intent): + +MissingNullability: android.telephony.CellBroadcastService#onBind(android.content.Intent) parameter #0: + +MissingNullability: android.telephony.CellBroadcastService#onCdmaCellBroadcastSms(int, byte[]) parameter #1: + +MissingNullability: android.telephony.CellBroadcastService#onCdmaCellBroadcastSms(int, byte[], int) parameter #1: + +MissingNullability: android.telephony.CellBroadcastService#onGsmCellBroadcastSms(int, byte[]) parameter #1: + +MissingNullability: android.telephony.ModemActivityInfo#toString(): + +MissingNullability: android.telephony.ModemActivityInfo#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.telephony.ModemActivityInfo.TransmitPower#toString(): + +MissingNullability: android.telephony.NetworkService#onUnbind(android.content.Intent) parameter #0: + +MissingNullability: android.telephony.SmsCbCmasInfo#toString(): + +MissingNullability: android.telephony.SmsCbCmasInfo#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.telephony.SmsCbEtwsInfo#toString(): + +MissingNullability: android.telephony.SmsCbEtwsInfo#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.telephony.SmsCbLocation#equals(Object) parameter #0: + +MissingNullability: android.telephony.SmsCbLocation#toString(): + +MissingNullability: android.telephony.SmsCbLocation#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.telephony.SmsCbMessage#toString(): + +MissingNullability: android.telephony.SmsCbMessage#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.telephony.SubscriptionPlan.Builder#createRecurringDaily(java.time.ZonedDateTime) parameter #0: + +MissingNullability: android.telephony.SubscriptionPlan.Builder#createRecurringMonthly(java.time.ZonedDateTime) parameter #0: + +MissingNullability: android.telephony.SubscriptionPlan.Builder#createRecurringWeekly(java.time.ZonedDateTime) parameter #0: + +MissingNullability: android.telephony.cdma.CdmaSmsCbProgramData#toString(): + +MissingNullability: android.telephony.cdma.CdmaSmsCbProgramData#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.telephony.data.DataService#onUnbind(android.content.Intent) parameter #0: + +MissingNullability: android.telephony.ims.stub.ImsSmsImplBase#onSmsStatusReportReceived(int, String, byte[]) parameter #1: + +MissingNullability: android.telephony.ims.stub.ImsSmsImplBase#onSmsStatusReportReceived(int, String, byte[]) parameter #2: + +MissingNullability: android.telephony.mbms.DownloadRequest.Builder#setServiceId(String): + +MissingNullability: android.telephony.mbms.DownloadRequest.Builder#setServiceId(String) parameter #0: + + + +MutableBareField: android.net.IpConfiguration#httpProxy: + +MutableBareField: android.net.IpConfiguration#ipAssignment: + +MutableBareField: android.net.IpConfiguration#proxySettings: + +MutableBareField: android.net.IpConfiguration#staticIpConfiguration: + +MutableBareField: android.net.wifi.WifiConfiguration#allowAutojoin: + +MutableBareField: android.net.wifi.WifiConfiguration#carrierId: + +MutableBareField: android.net.wifi.WifiConfiguration#fromWifiNetworkSpecifier: + +MutableBareField: android.net.wifi.WifiConfiguration#fromWifiNetworkSuggestion: + +MutableBareField: android.net.wifi.WifiConfiguration#macRandomizationSetting: + +MutableBareField: android.net.wifi.WifiConfiguration#meteredOverride: + +MutableBareField: android.net.wifi.WifiConfiguration#requirePmf: + +MutableBareField: android.net.wifi.WifiConfiguration#saePasswordId: + +MutableBareField: android.net.wifi.WifiConfiguration#shared: + +MutableBareField: android.net.wifi.WifiScanner.ScanSettings#type: + + + +NoClone: android.service.contentcapture.ContentCaptureService#dump(java.io.FileDescriptor, java.io.PrintWriter, String[]) parameter #0: + + + +NotCloseable: android.bluetooth.BluetoothA2dpSink: + Classes that release resources (finalize()) should implement AutoClosable and CloseGuard: class android.bluetooth.BluetoothA2dpSink +NotCloseable: android.bluetooth.BluetoothMap: + Classes that release resources (finalize()) should implement AutoClosable and CloseGuard: class android.bluetooth.BluetoothMap +NotCloseable: android.bluetooth.BluetoothPan: + Classes that release resources (finalize()) should implement AutoClosable and CloseGuard: class android.bluetooth.BluetoothPan +NotCloseable: android.bluetooth.BluetoothPbap: + Classes that release resources (finalize()) should implement AutoClosable and CloseGuard: class android.bluetooth.BluetoothPbap + + +OnNameExpected: android.content.ContentProvider#checkUriPermission(android.net.Uri, int, int): + If implemented by developer, should follow the on<Something> style; otherwise consider marking final + + +PairedRegistration: android.net.wifi.nl80211.WifiNl80211Manager#registerApCallback(String, java.util.concurrent.Executor, android.net.wifi.nl80211.WifiNl80211Manager.SoftApCallback): + + + +ProtectedMember: android.printservice.recommendation.RecommendationService#attachBaseContext(android.content.Context): + +ProtectedMember: android.service.contentcapture.ContentCaptureService#dump(java.io.FileDescriptor, java.io.PrintWriter, String[]): + +ProtectedMember: android.service.notification.NotificationAssistantService#attachBaseContext(android.content.Context): + + + +SamShouldBeLast: android.accounts.AccountManager#addAccount(String, String, String[], android.os.Bundle, android.app.Activity, android.accounts.AccountManagerCallback<android.os.Bundle>, android.os.Handler): + +SamShouldBeLast: android.accounts.AccountManager#addOnAccountsUpdatedListener(android.accounts.OnAccountsUpdateListener, android.os.Handler, boolean): + +SamShouldBeLast: android.accounts.AccountManager#addOnAccountsUpdatedListener(android.accounts.OnAccountsUpdateListener, android.os.Handler, boolean, String[]): + +SamShouldBeLast: android.accounts.AccountManager#confirmCredentials(android.accounts.Account, android.os.Bundle, android.app.Activity, android.accounts.AccountManagerCallback<android.os.Bundle>, android.os.Handler): + +SamShouldBeLast: android.accounts.AccountManager#editProperties(String, android.app.Activity, android.accounts.AccountManagerCallback<android.os.Bundle>, android.os.Handler): + +SamShouldBeLast: android.accounts.AccountManager#finishSession(android.os.Bundle, android.app.Activity, android.accounts.AccountManagerCallback<android.os.Bundle>, android.os.Handler): + +SamShouldBeLast: android.accounts.AccountManager#getAccountsByTypeAndFeatures(String, String[], android.accounts.AccountManagerCallback<android.accounts.Account[]>, android.os.Handler): + +SamShouldBeLast: android.accounts.AccountManager#getAuthToken(android.accounts.Account, String, android.os.Bundle, android.app.Activity, android.accounts.AccountManagerCallback<android.os.Bundle>, android.os.Handler): + +SamShouldBeLast: android.accounts.AccountManager#getAuthToken(android.accounts.Account, String, android.os.Bundle, boolean, android.accounts.AccountManagerCallback<android.os.Bundle>, android.os.Handler): + +SamShouldBeLast: android.accounts.AccountManager#getAuthToken(android.accounts.Account, String, boolean, android.accounts.AccountManagerCallback<android.os.Bundle>, android.os.Handler): + +SamShouldBeLast: android.accounts.AccountManager#getAuthTokenByFeatures(String, String, String[], android.app.Activity, android.os.Bundle, android.os.Bundle, android.accounts.AccountManagerCallback<android.os.Bundle>, android.os.Handler): + +SamShouldBeLast: android.accounts.AccountManager#hasFeatures(android.accounts.Account, String[], android.accounts.AccountManagerCallback<java.lang.Boolean>, android.os.Handler): + +SamShouldBeLast: android.accounts.AccountManager#isCredentialsUpdateSuggested(android.accounts.Account, String, android.accounts.AccountManagerCallback<java.lang.Boolean>, android.os.Handler): + +SamShouldBeLast: android.accounts.AccountManager#removeAccount(android.accounts.Account, android.accounts.AccountManagerCallback<java.lang.Boolean>, android.os.Handler): + +SamShouldBeLast: android.accounts.AccountManager#removeAccount(android.accounts.Account, android.app.Activity, android.accounts.AccountManagerCallback<android.os.Bundle>, android.os.Handler): + +SamShouldBeLast: android.accounts.AccountManager#renameAccount(android.accounts.Account, String, android.accounts.AccountManagerCallback<android.accounts.Account>, android.os.Handler): + +SamShouldBeLast: android.accounts.AccountManager#startAddAccountSession(String, String, String[], android.os.Bundle, android.app.Activity, android.accounts.AccountManagerCallback<android.os.Bundle>, android.os.Handler): + +SamShouldBeLast: android.accounts.AccountManager#startUpdateCredentialsSession(android.accounts.Account, String, android.os.Bundle, android.app.Activity, android.accounts.AccountManagerCallback<android.os.Bundle>, android.os.Handler): + +SamShouldBeLast: android.accounts.AccountManager#updateCredentials(android.accounts.Account, String, android.os.Bundle, android.app.Activity, android.accounts.AccountManagerCallback<android.os.Bundle>, android.os.Handler): + +SamShouldBeLast: android.app.AlarmManager#set(int, long, String, android.app.AlarmManager.OnAlarmListener, android.os.Handler): + +SamShouldBeLast: android.app.AlarmManager#setExact(int, long, String, android.app.AlarmManager.OnAlarmListener, android.os.Handler): + +SamShouldBeLast: android.app.AlarmManager#setWindow(int, long, long, String, android.app.AlarmManager.OnAlarmListener, android.os.Handler): + +SamShouldBeLast: android.app.WallpaperInfo#dump(android.util.Printer, String): + +SamShouldBeLast: android.app.WallpaperManager#addOnColorsChangedListener(android.app.WallpaperManager.OnColorsChangedListener, android.os.Handler): + SAM-compatible parameters (such as parameter 1, "listener", in android.app.WallpaperManager.addOnColorsChangedListener) should be last to improve Kotlin interoperability; see https://kotlinlang.org/docs/reference/java-interop.html#sam-conversions +SamShouldBeLast: android.app.admin.DevicePolicyManager#installSystemUpdate(android.content.ComponentName, android.net.Uri, java.util.concurrent.Executor, android.app.admin.DevicePolicyManager.InstallSystemUpdateCallback): + +SamShouldBeLast: android.content.Context#bindIsolatedService(android.content.Intent, int, String, java.util.concurrent.Executor, android.content.ServiceConnection): + +SamShouldBeLast: android.content.Context#bindService(android.content.Intent, int, java.util.concurrent.Executor, android.content.ServiceConnection): + +SamShouldBeLast: android.content.ContextWrapper#bindIsolatedService(android.content.Intent, int, String, java.util.concurrent.Executor, android.content.ServiceConnection): + +SamShouldBeLast: android.content.ContextWrapper#bindService(android.content.Intent, int, java.util.concurrent.Executor, android.content.ServiceConnection): + +SamShouldBeLast: android.content.IntentFilter#dump(android.util.Printer, String): + +SamShouldBeLast: android.content.pm.ApplicationInfo#dump(android.util.Printer, String): + +SamShouldBeLast: android.content.pm.LauncherApps#registerPackageInstallerSessionCallback(java.util.concurrent.Executor, android.content.pm.PackageInstaller.SessionCallback): + +SamShouldBeLast: android.content.pm.PackageItemInfo#dumpBack(android.util.Printer, String): + +SamShouldBeLast: android.content.pm.PackageItemInfo#dumpFront(android.util.Printer, String): + +SamShouldBeLast: android.content.pm.ResolveInfo#dump(android.util.Printer, String): + +SamShouldBeLast: android.location.Location#dump(android.util.Printer, String): + +SamShouldBeLast: android.location.LocationManager#addNmeaListener(android.location.OnNmeaMessageListener, android.os.Handler): + +SamShouldBeLast: android.location.LocationManager#registerGnssMeasurementsCallback(java.util.concurrent.Executor, android.location.GnssMeasurementsEvent.Callback): + +SamShouldBeLast: android.location.LocationManager#registerGnssNavigationMessageCallback(java.util.concurrent.Executor, android.location.GnssNavigationMessage.Callback): + +SamShouldBeLast: android.location.LocationManager#registerGnssStatusCallback(java.util.concurrent.Executor, android.location.GnssStatus.Callback): + +SamShouldBeLast: android.location.LocationManager#requestLocationUpdates(String, long, float, android.location.LocationListener, android.os.Looper): + SAM-compatible parameters (such as parameter 4, "listener", in android.location.LocationManager.requestLocationUpdates) should be last to improve Kotlin interoperability; see https://kotlinlang.org/docs/reference/java-interop.html#sam-conversions +SamShouldBeLast: android.location.LocationManager#requestLocationUpdates(String, long, float, java.util.concurrent.Executor, android.location.LocationListener): + +SamShouldBeLast: android.location.LocationManager#requestLocationUpdates(android.location.LocationRequest, java.util.concurrent.Executor, android.location.LocationListener): + +SamShouldBeLast: android.location.LocationManager#requestLocationUpdates(long, float, android.location.Criteria, android.location.LocationListener, android.os.Looper): + SAM-compatible parameters (such as parameter 4, "listener", in android.location.LocationManager.requestLocationUpdates) should be last to improve Kotlin interoperability; see https://kotlinlang.org/docs/reference/java-interop.html#sam-conversions +SamShouldBeLast: android.location.LocationManager#requestLocationUpdates(long, float, android.location.Criteria, java.util.concurrent.Executor, android.location.LocationListener): + +SamShouldBeLast: android.location.LocationManager#requestSingleUpdate(String, android.location.LocationListener, android.os.Looper): + SAM-compatible parameters (such as parameter 2, "listener", in android.location.LocationManager.requestSingleUpdate) should be last to improve Kotlin interoperability; see https://kotlinlang.org/docs/reference/java-interop.html#sam-conversions +SamShouldBeLast: android.location.LocationManager#requestSingleUpdate(android.location.Criteria, android.location.LocationListener, android.os.Looper): + SAM-compatible parameters (such as parameter 2, "listener", in android.location.LocationManager.requestSingleUpdate) should be last to improve Kotlin interoperability; see https://kotlinlang.org/docs/reference/java-interop.html#sam-conversions +SamShouldBeLast: android.media.AudioFocusRequest.Builder#setOnAudioFocusChangeListener(android.media.AudioManager.OnAudioFocusChangeListener, android.os.Handler): + +SamShouldBeLast: android.media.AudioManager#requestAudioFocus(android.media.AudioManager.OnAudioFocusChangeListener, int, int): + +SamShouldBeLast: android.media.AudioRecord#addOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener, android.os.Handler): + +SamShouldBeLast: android.media.AudioRecord#registerAudioRecordingCallback(java.util.concurrent.Executor, android.media.AudioManager.AudioRecordingCallback): + +SamShouldBeLast: android.media.AudioRecordingMonitor#registerAudioRecordingCallback(java.util.concurrent.Executor, android.media.AudioManager.AudioRecordingCallback): + +SamShouldBeLast: android.media.AudioRouting#addOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener, android.os.Handler): + +SamShouldBeLast: android.media.MediaRecorder#addOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener, android.os.Handler): + +SamShouldBeLast: android.media.MediaRecorder#registerAudioRecordingCallback(java.util.concurrent.Executor, android.media.AudioManager.AudioRecordingCallback): + +SamShouldBeLast: android.media.session.MediaSessionManager#addOnActiveSessionsChangedListener(android.media.session.MediaSessionManager.OnActiveSessionsChangedListener, android.content.ComponentName): + +SamShouldBeLast: android.media.session.MediaSessionManager#addOnActiveSessionsChangedListener(android.media.session.MediaSessionManager.OnActiveSessionsChangedListener, android.content.ComponentName, android.os.Handler): + +SamShouldBeLast: android.media.session.MediaSessionManager#addOnSession2TokensChangedListener(android.media.session.MediaSessionManager.OnSession2TokensChangedListener, android.os.Handler): + +SamShouldBeLast: android.media.session.MediaSessionManager#registerCallback(java.util.concurrent.Executor, android.media.session.MediaSessionManager.Callback): + +SamShouldBeLast: android.net.ConnectivityManager#createSocketKeepalive(android.net.Network, android.net.IpSecManager.UdpEncapsulationSocket, java.net.InetAddress, java.net.InetAddress, java.util.concurrent.Executor, android.net.SocketKeepalive.Callback): + +SamShouldBeLast: android.net.wifi.WifiManager#startLocalOnlyHotspot(android.net.wifi.SoftApConfiguration, java.util.concurrent.Executor, android.net.wifi.WifiManager.LocalOnlyHotspotCallback): + +SamShouldBeLast: android.net.wifi.rtt.WifiRttManager#startRanging(android.net.wifi.rtt.RangingRequest, java.util.concurrent.Executor, android.net.wifi.rtt.RangingResultCallback): + +SamShouldBeLast: android.nfc.NfcAdapter#enableReaderMode(android.app.Activity, android.nfc.NfcAdapter.ReaderCallback, int, android.os.Bundle): + +SamShouldBeLast: android.nfc.NfcAdapter#ignore(android.nfc.Tag, int, android.nfc.NfcAdapter.OnTagRemovedListener, android.os.Handler): + +SamShouldBeLast: android.nfc.NfcAdapter#setBeamPushUrisCallback(android.nfc.NfcAdapter.CreateBeamUrisCallback, android.app.Activity): + +SamShouldBeLast: android.nfc.NfcAdapter#setNdefPushMessageCallback(android.nfc.NfcAdapter.CreateNdefMessageCallback, android.app.Activity, android.app.Activity...): + +SamShouldBeLast: android.nfc.NfcAdapter#setOnNdefPushCompleteCallback(android.nfc.NfcAdapter.OnNdefPushCompleteCallback, android.app.Activity, android.app.Activity...): + +SamShouldBeLast: android.os.Binder#attachInterface(android.os.IInterface, String): + +SamShouldBeLast: android.os.Binder#linkToDeath(android.os.IBinder.DeathRecipient, int): + +SamShouldBeLast: android.os.Binder#unlinkToDeath(android.os.IBinder.DeathRecipient, int): + +SamShouldBeLast: android.os.Handler#dump(android.util.Printer, String): + +SamShouldBeLast: android.os.Handler#postAtTime(Runnable, Object, long): + +SamShouldBeLast: android.os.Handler#postAtTime(Runnable, long): + +SamShouldBeLast: android.os.Handler#postDelayed(Runnable, Object, long): + +SamShouldBeLast: android.os.Handler#postDelayed(Runnable, long): + +SamShouldBeLast: android.os.Handler#removeCallbacks(Runnable, Object): + +SamShouldBeLast: android.os.IBinder#linkToDeath(android.os.IBinder.DeathRecipient, int): + +SamShouldBeLast: android.os.IBinder#unlinkToDeath(android.os.IBinder.DeathRecipient, int): + +SamShouldBeLast: android.os.RecoverySystem#verifyPackage(java.io.File, android.os.RecoverySystem.ProgressListener, java.io.File): + +SamShouldBeLast: android.telephony.MbmsDownloadSession#addProgressListener(android.telephony.mbms.DownloadRequest, java.util.concurrent.Executor, android.telephony.mbms.DownloadProgressListener): + +SamShouldBeLast: android.telephony.MbmsDownloadSession#addStatusListener(android.telephony.mbms.DownloadRequest, java.util.concurrent.Executor, android.telephony.mbms.DownloadStatusListener): + +SamShouldBeLast: android.telephony.MbmsDownloadSession#create(android.content.Context, java.util.concurrent.Executor, android.telephony.mbms.MbmsDownloadSessionCallback): + +SamShouldBeLast: android.telephony.MbmsDownloadSession#create(android.content.Context, java.util.concurrent.Executor, int, android.telephony.mbms.MbmsDownloadSessionCallback): + +SamShouldBeLast: android.telephony.MbmsGroupCallSession#create(android.content.Context, int, java.util.concurrent.Executor, android.telephony.mbms.MbmsGroupCallSessionCallback): + +SamShouldBeLast: android.telephony.MbmsGroupCallSession#create(android.content.Context, java.util.concurrent.Executor, android.telephony.mbms.MbmsGroupCallSessionCallback): + +SamShouldBeLast: android.telephony.MbmsGroupCallSession#startGroupCall(long, java.util.List<java.lang.Integer>, java.util.List<java.lang.Integer>, java.util.concurrent.Executor, android.telephony.mbms.GroupCallCallback): + +SamShouldBeLast: android.telephony.MbmsStreamingSession#create(android.content.Context, java.util.concurrent.Executor, android.telephony.mbms.MbmsStreamingSessionCallback): + +SamShouldBeLast: android.telephony.MbmsStreamingSession#create(android.content.Context, java.util.concurrent.Executor, int, android.telephony.mbms.MbmsStreamingSessionCallback): + +SamShouldBeLast: android.telephony.MbmsStreamingSession#startStreaming(android.telephony.mbms.StreamingServiceInfo, java.util.concurrent.Executor, android.telephony.mbms.StreamingServiceCallback): + +SamShouldBeLast: android.telephony.SmsManager#getSmsMessagesForFinancialApp(android.os.Bundle, java.util.concurrent.Executor, android.telephony.SmsManager.FinancialSmsCallback): + +SamShouldBeLast: android.telephony.SubscriptionManager#addOnOpportunisticSubscriptionsChangedListener(java.util.concurrent.Executor, android.telephony.SubscriptionManager.OnOpportunisticSubscriptionsChangedListener): + +SamShouldBeLast: android.telephony.TelephonyManager#requestCellInfoUpdate(java.util.concurrent.Executor, android.telephony.TelephonyManager.CellInfoCallback): + +SamShouldBeLast: android.telephony.TelephonyManager#requestNetworkScan(android.telephony.NetworkScanRequest, java.util.concurrent.Executor, android.telephony.TelephonyScanManager.NetworkScanCallback): + +SamShouldBeLast: android.telephony.TelephonyManager#setPreferredOpportunisticDataSubscription(int, boolean, java.util.concurrent.Executor, java.util.function.Consumer<java.lang.Integer>): + +SamShouldBeLast: android.telephony.TelephonyManager#updateAvailableNetworks(java.util.List<android.telephony.AvailableNetworkInfo>, java.util.concurrent.Executor, java.util.function.Consumer<java.lang.Integer>): + +SamShouldBeLast: android.view.View#postDelayed(Runnable, long): + +SamShouldBeLast: android.view.View#postOnAnimationDelayed(Runnable, long): + +SamShouldBeLast: android.view.View#scheduleDrawable(android.graphics.drawable.Drawable, Runnable, long): + +SamShouldBeLast: android.view.Window#addOnFrameMetricsAvailableListener(android.view.Window.OnFrameMetricsAvailableListener, android.os.Handler): + +SamShouldBeLast: android.view.accessibility.AccessibilityManager#addAccessibilityStateChangeListener(android.view.accessibility.AccessibilityManager.AccessibilityStateChangeListener, android.os.Handler): + +SamShouldBeLast: android.view.accessibility.AccessibilityManager#addTouchExplorationStateChangeListener(android.view.accessibility.AccessibilityManager.TouchExplorationStateChangeListener, android.os.Handler): + +SamShouldBeLast: android.webkit.WebChromeClient#onShowFileChooser(android.webkit.WebView, android.webkit.ValueCallback<android.net.Uri[]>, android.webkit.WebChromeClient.FileChooserParams): + +SamShouldBeLast: android.webkit.WebView#setWebViewRenderProcessClient(java.util.concurrent.Executor, android.webkit.WebViewRenderProcessClient): + + + +ServiceName: android.Manifest.permission#BIND_ATTENTION_SERVICE: + +ServiceName: android.Manifest.permission#BIND_AUGMENTED_AUTOFILL_SERVICE: + +ServiceName: android.Manifest.permission#BIND_CELL_BROADCAST_SERVICE: + +ServiceName: android.Manifest.permission#BIND_CONTENT_CAPTURE_SERVICE: + +ServiceName: android.Manifest.permission#BIND_CONTENT_SUGGESTIONS_SERVICE: + +ServiceName: android.Manifest.permission#BIND_EUICC_SERVICE: + +ServiceName: android.Manifest.permission#BIND_EXTERNAL_STORAGE_SERVICE: + +ServiceName: android.Manifest.permission#BIND_IMS_SERVICE: + +ServiceName: android.Manifest.permission#BIND_NETWORK_RECOMMENDATION_SERVICE: + +ServiceName: android.Manifest.permission#BIND_NOTIFICATION_ASSISTANT_SERVICE: + +ServiceName: android.Manifest.permission#BIND_PHONE_ACCOUNT_SUGGESTION_SERVICE: + +ServiceName: android.Manifest.permission#BIND_PRINT_RECOMMENDATION_SERVICE: + +ServiceName: android.Manifest.permission#BIND_RESOLVER_RANKER_SERVICE: + +ServiceName: android.Manifest.permission#BIND_RUNTIME_PERMISSION_PRESENTER_SERVICE: + +ServiceName: android.Manifest.permission#BIND_SETTINGS_SUGGESTIONS_SERVICE: + +ServiceName: android.Manifest.permission#BIND_SOUND_TRIGGER_DETECTION_SERVICE: + +ServiceName: android.Manifest.permission#BIND_TELEPHONY_DATA_SERVICE: + +ServiceName: android.Manifest.permission#BIND_TELEPHONY_NETWORK_SERVICE: + +ServiceName: android.Manifest.permission#BIND_TEXTCLASSIFIER_SERVICE: + +ServiceName: android.Manifest.permission#BIND_TV_REMOTE_SERVICE: + +ServiceName: android.Manifest.permission#PROVIDE_RESOLVER_RANKER_SERVICE: + +ServiceName: android.Manifest.permission#REQUEST_NOTIFICATION_ASSISTANT_SERVICE: + +ServiceName: android.provider.DeviceConfig#NAMESPACE_PACKAGE_MANAGER_SERVICE: + + + +UserHandle: android.companion.CompanionDeviceManager#isDeviceAssociated(String, android.net.MacAddress, android.os.UserHandle): + When a method overload is needed to target a specific UserHandle, callers should be directed to use Context.createPackageContextAsUser() and re-obtain the relevant Manager, and no new API should be added + + +UserHandleName: android.telephony.CellBroadcastIntents#sendOrderedBroadcastForBackgroundReceivers(android.content.Context, android.os.UserHandle, android.content.Intent, String, String, android.content.BroadcastReceiver, android.os.Handler, int, String, android.os.Bundle): + Method taking UserHandle should be named `doFooAsUser` or `queryFooForUser`, was `sendOrderedBroadcastForBackgroundReceivers` diff --git a/api/system-removed.txt b/api/system-removed.txt index 5802f6cc09b6..09544c11f8b7 100644 --- a/api/system-removed.txt +++ b/api/system-removed.txt @@ -11,6 +11,12 @@ package android.app { public class AppOpsManager { method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.GET_APP_OPS_STATS) public java.util.List<android.app.AppOpsManager.PackageOps> getOpsForPackage(int, @NonNull String, @Nullable int[]); + method @Deprecated public void setNotedAppOpsCollector(@Nullable android.app.AppOpsManager.AppOpsCollector); + } + + @Deprecated public abstract static class AppOpsManager.AppOpsCollector extends android.app.AppOpsManager.OnOpNotedCallback { + ctor public AppOpsManager.AppOpsCollector(); + method @NonNull public java.util.concurrent.Executor getAsyncNotedExecutor(); } public class Notification implements android.os.Parcelable { @@ -23,15 +29,6 @@ package android.app { } -package android.app.admin { - - public class DevicePolicyManager { - method @Deprecated @Nullable public String getDeviceInitializerApp(); - method @Deprecated @Nullable public android.content.ComponentName getDeviceInitializerComponent(); - } - -} - package android.app.backup { public class RestoreSession { @@ -139,7 +136,7 @@ package android.net.wifi { field public boolean truncated; } - public class ScanResult implements android.os.Parcelable { + public final class ScanResult implements android.os.Parcelable { field public boolean untrusted; } @@ -151,24 +148,6 @@ package android.os { field public static final boolean PERMISSIONS_REVIEW_REQUIRED = true; } - public final class PowerManager { - method @Deprecated public boolean isScreenBrightnessBoosted(); - field @Deprecated public static final String ACTION_SCREEN_BRIGHTNESS_BOOST_CHANGED = "android.os.action.SCREEN_BRIGHTNESS_BOOST_CHANGED"; - } - -} - -package android.provider { - - public final class DeviceConfig { - method @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public static void addOnPropertyChangedListener(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.provider.DeviceConfig.OnPropertyChangedListener); - method public static void removeOnPropertyChangedListener(@NonNull android.provider.DeviceConfig.OnPropertyChangedListener); - } - - public static interface DeviceConfig.OnPropertyChangedListener { - method public void onPropertyChanged(@NonNull String, @NonNull String, @Nullable String); - } - } package android.service.notification { @@ -201,6 +180,11 @@ package android.telecom { package android.telephony { + public final class PreciseDataConnectionState implements android.os.Parcelable { + method @Deprecated @Nullable public android.net.LinkProperties getDataConnectionLinkProperties(); + method @Deprecated public int getDataConnectionNetworkType(); + } + public class TelephonyManager { method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void answerRingingCall(); method @Deprecated @RequiresPermission(android.Manifest.permission.CALL_PHONE) public boolean endCall(); diff --git a/api/test-current.txt b/api/test-current.txt index d3bea18fb944..3838bad57aa7 100644 --- a/api/test-current.txt +++ b/api/test-current.txt @@ -5,29 +5,53 @@ package android { field public static final String ACCESS_NOTIFICATIONS = "android.permission.ACCESS_NOTIFICATIONS"; field public static final String ACTIVITY_EMBEDDING = "android.permission.ACTIVITY_EMBEDDING"; field public static final String APPROVE_INCIDENT_REPORTS = "android.permission.APPROVE_INCIDENT_REPORTS"; + field public static final String BIND_CELL_BROADCAST_SERVICE = "android.permission.BIND_CELL_BROADCAST_SERVICE"; field public static final String BRIGHTNESS_SLIDER_USAGE = "android.permission.BRIGHTNESS_SLIDER_USAGE"; field public static final String CHANGE_APP_IDLE_STATE = "android.permission.CHANGE_APP_IDLE_STATE"; field public static final String CLEAR_APP_USER_DATA = "android.permission.CLEAR_APP_USER_DATA"; field public static final String CONFIGURE_DISPLAY_BRIGHTNESS = "android.permission.CONFIGURE_DISPLAY_BRIGHTNESS"; + field public static final String CONTROL_DEVICE_LIGHTS = "android.permission.CONTROL_DEVICE_LIGHTS"; field public static final String FORCE_STOP_PACKAGES = "android.permission.FORCE_STOP_PACKAGES"; field public static final String MANAGE_ACTIVITY_STACKS = "android.permission.MANAGE_ACTIVITY_STACKS"; + field public static final String MANAGE_CRATES = "android.permission.MANAGE_CRATES"; field public static final String MANAGE_ROLLBACKS = "android.permission.MANAGE_ROLLBACKS"; + field public static final String NETWORK_SETTINGS = "android.permission.NETWORK_SETTINGS"; + field public static final String NETWORK_STACK = "android.permission.NETWORK_STACK"; field public static final String READ_CELL_BROADCASTS = "android.permission.READ_CELL_BROADCASTS"; field public static final String REMOVE_TASKS = "android.permission.REMOVE_TASKS"; field public static final String SUSPEND_APPS = "android.permission.SUSPEND_APPS"; field public static final String TEST_MANAGE_ROLLBACKS = "android.permission.TEST_MANAGE_ROLLBACKS"; + field public static final String UPGRADE_RUNTIME_PERMISSIONS = "android.permission.UPGRADE_RUNTIME_PERMISSIONS"; field public static final String WRITE_DEVICE_CONFIG = "android.permission.WRITE_DEVICE_CONFIG"; - field public static final String WRITE_MEDIA_STORAGE = "android.permission.WRITE_MEDIA_STORAGE"; + field @Deprecated public static final String WRITE_MEDIA_STORAGE = "android.permission.WRITE_MEDIA_STORAGE"; field public static final String WRITE_OBB = "android.permission.WRITE_OBB"; } + public static final class Manifest.permission_group { + field public static final String UNDEFINED = "android.permission-group.UNDEFINED"; + } + public static final class R.bool { + field public static final int config_assistantOnTopOfDream = 17891333; // 0x1110005 field public static final int config_perDisplayFocusEnabled = 17891332; // 0x1110004 } public static final class R.string { field public static final int config_defaultAssistant = 17039393; // 0x1040021 field public static final int config_defaultDialer = 17039395; // 0x1040023 + field public static final int config_systemGallery = 17039399; // 0x1040027 + } + +} + +package android.accessibilityservice { + + public final class AccessibilityGestureEvent implements android.os.Parcelable { + ctor public AccessibilityGestureEvent(int, int); + } + + public abstract class AccessibilityService extends android.app.Service { + field public static final int ACCESSIBILITY_TAKE_SCREENSHOT_REQUEST_INTERVAL_TIMES_MS = 1000; // 0x3e8 } } @@ -55,9 +79,18 @@ package android.app { method public long getTotalRam(); method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public int getUidImportance(int); method public static boolean isHighEndGfx(); + method @RequiresPermission(android.Manifest.permission.FORCE_STOP_PACKAGES) public void killProcessesWhenImperceptible(@NonNull int[], @NonNull String); method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public void removeOnUidImportanceListener(android.app.ActivityManager.OnUidImportanceListener); method public static void resumeAppSwitches() throws android.os.RemoteException; method @RequiresPermission(android.Manifest.permission.CHANGE_CONFIGURATION) public void scheduleApplicationInfoChanged(java.util.List<java.lang.String>, int); + method @RequiresPermission("android.permission.MANAGE_USERS") public boolean switchUser(@NonNull android.os.UserHandle); + field public static final int PROCESS_CAPABILITY_ALL = 7; // 0x7 + field public static final int PROCESS_CAPABILITY_ALL_EXPLICIT = 1; // 0x1 + field public static final int PROCESS_CAPABILITY_ALL_IMPLICIT = 6; // 0x6 + field public static final int PROCESS_CAPABILITY_FOREGROUND_CAMERA = 2; // 0x2 + field public static final int PROCESS_CAPABILITY_FOREGROUND_LOCATION = 1; // 0x1 + field public static final int PROCESS_CAPABILITY_FOREGROUND_MICROPHONE = 4; // 0x4 + field public static final int PROCESS_CAPABILITY_NONE = 0; // 0x0 } public static interface ActivityManager.OnUidImportanceListener { @@ -71,29 +104,41 @@ package android.app { public static class ActivityManager.TaskDescription implements android.os.Parcelable { method public String getIconFilename(); method public int getIconResource(); + method @Nullable public String getIconResourcePackage(); } public class ActivityOptions { + method @NonNull public static android.app.ActivityOptions makeCustomAnimation(@NonNull android.content.Context, int, int, @Nullable android.os.Handler, @Nullable android.app.ActivityOptions.OnAnimationStartedListener, @Nullable android.app.ActivityOptions.OnAnimationFinishedListener); + method public static void setExitTransitionTimeout(long); method public void setLaunchActivityType(int); method public void setLaunchTaskId(int); method public void setLaunchWindowingMode(int); + method public void setTaskAlwaysOnTop(boolean); method public void setTaskOverlay(boolean, boolean); } + public static interface ActivityOptions.OnAnimationFinishedListener { + method public void onAnimationFinished(); + } + + public static interface ActivityOptions.OnAnimationStartedListener { + method public void onAnimationStarted(); + } + public class ActivityTaskManager { method @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public void clearLaunchParamsForPackages(java.util.List<java.lang.String>); + method public static boolean currentUiModeSupportsErrorDialogs(@NonNull android.content.Context); method @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public String listAllStacks(); method @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public void moveTaskToStack(int, int, boolean); method @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public boolean moveTopActivityToPinnedStack(int, android.graphics.Rect); method @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public void removeStacksInWindowingModes(int[]) throws java.lang.SecurityException; method @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public void removeStacksWithActivityTypes(int[]) throws java.lang.SecurityException; + method @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public void requestPictureInPictureMode(@NonNull android.os.IBinder); method @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public void resizeDockedStack(android.graphics.Rect, android.graphics.Rect); - method @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public void resizeStack(int, android.graphics.Rect) throws java.lang.SecurityException; - method @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public void resizeStack(int, android.graphics.Rect, boolean); method @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public void resizeTask(int, android.graphics.Rect); method @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public void setDisplayToSingleTaskInstance(int); - method @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public void setTaskWindowingMode(int, int, boolean) throws java.lang.SecurityException; - method @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public void setTaskWindowingModeSplitScreenPrimary(int, int, boolean, boolean, android.graphics.Rect, boolean) throws java.lang.SecurityException; + method @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public boolean setTaskWindowingMode(int, int, boolean) throws java.lang.SecurityException; + method @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public boolean setTaskWindowingModeSplitScreenPrimary(int, int, boolean, boolean, android.graphics.Rect, boolean) throws java.lang.SecurityException; method @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public void startSystemLockTaskMode(int); method @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public void stopSystemLockTaskMode(); method public static boolean supportsMultiWindow(android.content.Context); @@ -108,6 +153,7 @@ package android.app { ctor public ActivityView(android.content.Context, android.util.AttributeSet); ctor public ActivityView(android.content.Context, android.util.AttributeSet, int); ctor public ActivityView(android.content.Context, android.util.AttributeSet, int, boolean); + ctor public ActivityView(@NonNull android.content.Context, @NonNull android.util.AttributeSet, int, boolean, boolean); method public int getVirtualDisplayId(); method public void onLayout(boolean, int, int, int, int); method public void onLocationChanged(); @@ -118,7 +164,7 @@ package android.app { method public void startActivity(@NonNull android.content.Intent); method public void startActivity(@NonNull android.content.Intent, android.os.UserHandle); method public void startActivity(@NonNull android.app.PendingIntent); - method public void startActivity(@NonNull android.app.PendingIntent, @NonNull android.app.ActivityOptions); + method public void startActivity(@NonNull android.app.PendingIntent, @Nullable android.content.Intent, @NonNull android.app.ActivityOptions); } public abstract static class ActivityView.StateCallback { @@ -137,27 +183,31 @@ package android.app { public class AppOpsManager { method @RequiresPermission("android.permission.MANAGE_APPOPS") public void addHistoricalOps(@NonNull android.app.AppOpsManager.HistoricalOps); method @RequiresPermission("android.permission.MANAGE_APPOPS") public void clearHistory(); + method @Nullable @RequiresPermission("android.permission.GET_APP_OPS_STATS") public android.app.RuntimeAppOpAccessMessage collectRuntimeAppOpAccessMessage(); method @RequiresPermission("android.permission.GET_APP_OPS_STATS") public void getHistoricalOps(@NonNull android.app.AppOpsManager.HistoricalOpsRequest, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.AppOpsManager.HistoricalOps>); method @RequiresPermission("android.permission.MANAGE_APPOPS") public void getHistoricalOpsFromDiskRaw(@NonNull android.app.AppOpsManager.HistoricalOpsRequest, @Nullable java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.AppOpsManager.HistoricalOps>); method public static int getNumOps(); method public static String[] getOpStrs(); + method @NonNull @RequiresPermission("android.permission.GET_APP_OPS_STATS") public java.util.List<android.app.AppOpsManager.PackageOps> getOpsForPackage(int, @NonNull String, @Nullable java.lang.String...); method public boolean isOperationActive(int, int, String); method @RequiresPermission("android.permission.MANAGE_APPOPS") public void offsetHistory(long); method public static int opToDefaultMode(@NonNull String); method public static String opToPermission(int); method public static int permissionToOpCode(String); + method @RequiresPermission("android.permission.MANAGE_APPOPS") public void rebootHistory(long); method @RequiresPermission("android.permission.MANAGE_APPOPS") public void reloadNonHistoricalState(); method @RequiresPermission("android.permission.MANAGE_APPOPS") public void resetHistoryParameters(); method @RequiresPermission("android.permission.MANAGE_APPOPS") public void setHistoryParameters(int, long, int); method @RequiresPermission("android.permission.MANAGE_APP_OPS_MODES") public void setMode(int, int, String, int); - method @RequiresPermission("android.permission.MANAGE_APP_OPS_MODES") public void setMode(String, int, String, int); - method @RequiresPermission("android.permission.MANAGE_APP_OPS_MODES") public void setUidMode(String, int, int); - method public void startWatchingActive(@NonNull int[], @NonNull android.app.AppOpsManager.OnOpActiveChangedListener); - method public void stopWatchingActive(@NonNull android.app.AppOpsManager.OnOpActiveChangedListener); + method @RequiresPermission("android.permission.MANAGE_APP_OPS_MODES") public void setMode(@NonNull String, int, @Nullable String, int); + method @RequiresPermission("android.permission.MANAGE_APP_OPS_MODES") public void setUidMode(@NonNull String, int, int); method public static int strOpToOp(@NonNull String); field public static final int HISTORICAL_MODE_DISABLED = 0; // 0x0 field public static final int HISTORICAL_MODE_ENABLED_ACTIVE = 1; // 0x1 field public static final int HISTORICAL_MODE_ENABLED_PASSIVE = 2; // 0x2 + field public static final String KEY_BG_STATE_SETTLE_TIME = "bg_state_settle_time"; + field public static final String KEY_FG_SERVICE_STATE_SETTLE_TIME = "fg_service_state_settle_time"; + field public static final String KEY_TOP_STATE_SETTLE_TIME = "top_state_settle_time"; field public static final String OPSTR_ACCEPT_HANDOVER = "android:accept_handover"; field public static final String OPSTR_ACCESS_NOTIFICATIONS = "android:access_notifications"; field public static final String OPSTR_ACTIVATE_VPN = "android:activate_vpn"; @@ -177,6 +227,7 @@ package android.app { field public static final String OPSTR_GPS = "android:gps"; field public static final String OPSTR_INSTANT_APP_START_FOREGROUND = "android:instant_app_start_foreground"; field public static final String OPSTR_LEGACY_STORAGE = "android:legacy_storage"; + field public static final String OPSTR_MANAGE_EXTERNAL_STORAGE = "android:manage_external_storage"; field public static final String OPSTR_MANAGE_IPSEC_TUNNELS = "android:manage_ipsec_tunnels"; field public static final String OPSTR_MUTE_MICROPHONE = "android:mute_microphone"; field public static final String OPSTR_NEIGHBORING_CELLS = "android:neighboring_cells"; @@ -185,6 +236,9 @@ package android.app { field public static final String OPSTR_PROJECT_MEDIA = "android:project_media"; field public static final String OPSTR_READ_CLIPBOARD = "android:read_clipboard"; field public static final String OPSTR_READ_ICC_SMS = "android:read_icc_sms"; + field public static final String OPSTR_READ_MEDIA_AUDIO = "android:read_media_audio"; + field public static final String OPSTR_READ_MEDIA_IMAGES = "android:read_media_images"; + field public static final String OPSTR_READ_MEDIA_VIDEO = "android:read_media_video"; field public static final String OPSTR_RECEIVE_EMERGENCY_BROADCAST = "android:receive_emergency_broadcast"; field public static final String OPSTR_REQUEST_DELETE_PACKAGES = "android:request_delete_packages"; field public static final String OPSTR_REQUEST_INSTALL_PACKAGES = "android:request_install_packages"; @@ -200,6 +254,9 @@ package android.app { field public static final String OPSTR_WIFI_SCAN = "android:wifi_scan"; field public static final String OPSTR_WRITE_CLIPBOARD = "android:write_clipboard"; field public static final String OPSTR_WRITE_ICC_SMS = "android:write_icc_sms"; + field public static final String OPSTR_WRITE_MEDIA_AUDIO = "android:write_media_audio"; + field public static final String OPSTR_WRITE_MEDIA_IMAGES = "android:write_media_images"; + field public static final String OPSTR_WRITE_MEDIA_VIDEO = "android:write_media_video"; field public static final String OPSTR_WRITE_SMS = "android:write_sms"; field public static final String OPSTR_WRITE_WALLPAPER = "android:write_wallpaper"; field public static final int OP_COARSE_LOCATION = 0; // 0x0 @@ -216,11 +273,44 @@ package android.app { field public static final int UID_STATE_CACHED = 700; // 0x2bc field public static final int UID_STATE_FOREGROUND = 500; // 0x1f4 field public static final int UID_STATE_FOREGROUND_SERVICE = 400; // 0x190 - field public static final int UID_STATE_FOREGROUND_SERVICE_LOCATION = 300; // 0x12c + field @Deprecated public static final int UID_STATE_FOREGROUND_SERVICE_LOCATION = 300; // 0x12c field public static final int UID_STATE_PERSISTENT = 100; // 0x64 field public static final int UID_STATE_TOP = 200; // 0xc8 } + public static final class AppOpsManager.AttributedHistoricalOps implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public android.app.AppOpsManager.HistoricalOp getOp(@NonNull String); + method @NonNull public android.app.AppOpsManager.HistoricalOp getOpAt(@IntRange(from=0) int); + method @IntRange(from=0) public int getOpCount(); + method @Nullable public String getTag(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.AttributedHistoricalOps> CREATOR; + } + + public static final class AppOpsManager.AttributedOpEntry implements android.os.Parcelable { + method public int describeContents(); + method public long getLastAccessBackgroundTime(int); + method public long getLastAccessForegroundTime(int); + method public long getLastAccessTime(int); + method public long getLastAccessTime(int, int, int); + method public long getLastBackgroundDuration(int); + method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastBackgroundProxyInfo(int); + method public long getLastDuration(int); + method public long getLastDuration(int, int, int); + method public long getLastForegroundDuration(int); + method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastForegroundProxyInfo(int); + method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastProxyInfo(int); + method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastProxyInfo(int, int, int); + method public long getLastRejectBackgroundTime(int); + method public long getLastRejectForegroundTime(int); + method public long getLastRejectTime(int); + method public long getLastRejectTime(int, int, int); + method public boolean isRunning(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.AttributedOpEntry> CREATOR; + } + public static final class AppOpsManager.HistoricalOp implements android.os.Parcelable { method public int describeContents(); method public long getAccessCount(int, int, int); @@ -245,9 +335,9 @@ package android.app { method @IntRange(from=0) public int getUidCount(); method @Nullable public android.app.AppOpsManager.HistoricalUidOps getUidOps(int); method @NonNull public android.app.AppOpsManager.HistoricalUidOps getUidOpsAt(@IntRange(from=0) int); - method public void increaseAccessCount(int, int, @NonNull String, int, int, long); - method public void increaseAccessDuration(int, int, @NonNull String, int, int, long); - method public void increaseRejectCount(int, int, @NonNull String, int, int, long); + method public void increaseAccessCount(int, int, @NonNull String, @Nullable String, int, int, long); + method public void increaseAccessDuration(int, int, @NonNull String, @Nullable String, int, int, long); + method public void increaseRejectCount(int, int, @NonNull String, @Nullable String, int, int, long); method public void offsetBeginAndEndTime(long); method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.HistoricalOps> CREATOR; @@ -259,6 +349,7 @@ package android.app { public static final class AppOpsManager.HistoricalOpsRequest.Builder { ctor public AppOpsManager.HistoricalOpsRequest.Builder(long, long); method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest build(); + method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setAttributionTag(@Nullable String); method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setFlags(int); method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setOpNames(@Nullable java.util.List<java.lang.String>); method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setPackageName(@Nullable String); @@ -267,6 +358,9 @@ package android.app { public static final class AppOpsManager.HistoricalPackageOps implements android.os.Parcelable { method public int describeContents(); + method @Nullable public android.app.AppOpsManager.AttributedHistoricalOps getAttributedOps(@NonNull String); + method @NonNull public android.app.AppOpsManager.AttributedHistoricalOps getAttributedOpsAt(@IntRange(from=0) int); + method @IntRange(from=0) public int getAttributedOpsCount(); method @Nullable public android.app.AppOpsManager.HistoricalOp getOp(@NonNull String); method @NonNull public android.app.AppOpsManager.HistoricalOp getOpAt(@IntRange(from=0) int); method @IntRange(from=0) public int getOpCount(); @@ -285,44 +379,80 @@ package android.app { field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.HistoricalUidOps> CREATOR; } - public static interface AppOpsManager.OnOpActiveChangedListener { - method public void onOpActiveChanged(int, int, String, boolean); - } - public static final class AppOpsManager.OpEntry implements android.os.Parcelable { method public int describeContents(); - method public long getDuration(); + method @NonNull public java.util.Map<java.lang.String,android.app.AppOpsManager.AttributedOpEntry> getAttributedOpEntries(); + method @Deprecated public long getDuration(); method public long getLastAccessBackgroundTime(int); method public long getLastAccessForegroundTime(int); method public long getLastAccessTime(int); method public long getLastAccessTime(int, int, int); method public long getLastBackgroundDuration(int); + method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastBackgroundProxyInfo(int); + method public long getLastDuration(int); method public long getLastDuration(int, int, int); method public long getLastForegroundDuration(int); + method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastForegroundProxyInfo(int); + method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastProxyInfo(int); + method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastProxyInfo(int, int, int); method public long getLastRejectBackgroundTime(int); method public long getLastRejectForegroundTime(int); method public long getLastRejectTime(int); method public long getLastRejectTime(int, int, int); method public int getMode(); method @NonNull public String getOpStr(); - method @Nullable public String getProxyPackageName(); - method @Nullable public String getProxyPackageName(int, int); - method public int getProxyUid(); - method public int getProxyUid(int, int); + method @Deprecated @Nullable public String getProxyPackageName(); + method @Deprecated @Nullable public String getProxyPackageName(int, int); + method @Deprecated public int getProxyUid(); + method @Deprecated public int getProxyUid(int, int); method public boolean isRunning(); method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.OpEntry> CREATOR; } + public static final class AppOpsManager.OpEventProxyInfo implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public String getAttributionTag(); + method @Nullable public String getPackageName(); + method @IntRange(from=0) public int getUid(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.OpEventProxyInfo> CREATOR; + } + + public static final class AppOpsManager.PackageOps implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public java.util.List<android.app.AppOpsManager.OpEntry> getOps(); + method @NonNull public String getPackageName(); + method public int getUid(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.PackageOps> CREATOR; + } + public class DownloadManager { field public static final String COLUMN_MEDIASTORE_URI = "mediastore_uri"; } + public class DreamManager { + method @RequiresPermission("android.permission.READ_DREAM_STATE") public boolean isDreaming(); + method @RequiresPermission("android.permission.WRITE_DREAM_STATE") public void setActiveDream(@NonNull android.content.ComponentName); + method @RequiresPermission("android.permission.WRITE_DREAM_STATE") public void startDream(@NonNull android.content.ComponentName); + method @RequiresPermission("android.permission.WRITE_DREAM_STATE") public void stopDream(); + } + public final class NotificationChannel implements android.os.Parcelable { + method public int getOriginalImportance(); + method public boolean isBlockable(); method public boolean isImportanceLockedByCriticalDeviceFunction(); method public boolean isImportanceLockedByOEM(); + method public void lockFields(int); + method public void setBlockable(boolean); + method public void setDeleted(boolean); + method public void setFgServiceShown(boolean); method public void setImportanceLockedByCriticalDeviceFunction(boolean); method public void setImportanceLockedByOEM(boolean); + method public void setImportantConversation(boolean); + method public void setOriginalImportance(int); + field public static final int USER_LOCKED_SOUND = 32; // 0x20 } public final class NotificationChannelGroup implements android.os.Parcelable { @@ -348,9 +478,25 @@ package android.app { method public android.graphics.Rect getSourceRectHint(); } + public final class RuntimeAppOpAccessMessage implements android.os.Parcelable { + ctor public RuntimeAppOpAccessMessage(@IntRange(from=0L) int, @IntRange(from=0L) int, @NonNull String, @Nullable String, @NonNull String, int); + method public int describeContents(); + method @Nullable public String getAttributionTag(); + method @NonNull public String getMessage(); + method @NonNull public String getOp(); + method @NonNull public String getPackageName(); + method public int getSamplingStrategy(); + method @IntRange(from=0L) public int getUid(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.app.RuntimeAppOpAccessMessage> CREATOR; + } + public class StatusBarManager { + method public void collapsePanels(); + method public void expandNotificationsPanel(); method @NonNull @RequiresPermission(android.Manifest.permission.STATUS_BAR) public android.app.StatusBarManager.DisableInfo getDisableInfo(); method @RequiresPermission(android.Manifest.permission.STATUS_BAR) public void setDisabledForSetup(boolean); + method @RequiresPermission(android.Manifest.permission.STATUS_BAR) public void setDisabledForSimNetworkLock(boolean); } public static final class StatusBarManager.DisableInfo { @@ -362,6 +508,11 @@ package android.app { method public boolean isStatusBarExpansionDisabled(); } + public class TaskInfo { + method @NonNull public android.content.res.Configuration getConfiguration(); + method @NonNull public android.window.WindowContainerToken getToken(); + } + public class TimePickerDialog extends android.app.AlertDialog implements android.content.DialogInterface.OnClickListener android.widget.TimePicker.OnTimeChangedListener { method public android.widget.TimePicker getTimePicker(); } @@ -375,12 +526,16 @@ package android.app { } public class UiModeManager { + method @RequiresPermission("android.permission.ENTER_CAR_MODE_PRIORITIZED") public void enableCarMode(@IntRange(from=0) int, int); method public boolean isNightModeLocked(); method public boolean isUiModeLocked(); } public class WallpaperManager { + method @Nullable public android.graphics.Bitmap getBitmap(); method @RequiresPermission("android.permission.SET_WALLPAPER_COMPONENT") public boolean setWallpaperComponent(android.content.ComponentName); + method public boolean shouldEnableWideColorGamut(); + method @RequiresPermission(android.Manifest.permission.READ_EXTERNAL_STORAGE) public boolean wallpaperSupportsWcg(int); } public class WindowConfiguration implements java.lang.Comparable<android.app.WindowConfiguration> android.os.Parcelable { @@ -400,6 +555,7 @@ package android.app { method public void setWindowingMode(int); method public void writeToParcel(android.os.Parcel, int); field public static final int ACTIVITY_TYPE_ASSISTANT = 4; // 0x4 + field public static final int ACTIVITY_TYPE_DREAM = 5; // 0x5 field public static final int ACTIVITY_TYPE_HOME = 2; // 0x2 field public static final int ACTIVITY_TYPE_RECENTS = 3; // 0x3 field public static final int ACTIVITY_TYPE_STANDARD = 1; // 0x1 @@ -408,6 +564,7 @@ package android.app { field public static final int WINDOWING_MODE_FREEFORM = 5; // 0x5 field public static final int WINDOWING_MODE_FULLSCREEN = 1; // 0x1 field public static final int WINDOWING_MODE_FULLSCREEN_OR_SPLIT_SCREEN_SECONDARY = 4; // 0x4 + field public static final int WINDOWING_MODE_MULTI_WINDOW = 6; // 0x6 field public static final int WINDOWING_MODE_PINNED = 2; // 0x2 field public static final int WINDOWING_MODE_SPLIT_SCREEN_PRIMARY = 3; // 0x3 field public static final int WINDOWING_MODE_SPLIT_SCREEN_SECONDARY = 4; // 0x4 @@ -426,6 +583,7 @@ package android.app.admin { method public java.util.List<java.lang.String> getOwnerInstalledCaCerts(@NonNull android.os.UserHandle); method public boolean isCurrentInputMethodSetByOwner(); method public boolean isDeviceManaged(); + method public boolean isFactoryResetProtectionPolicySupported(); field public static final String ACCOUNT_FEATURE_DEVICE_OR_PROFILE_OWNER_ALLOWED = "android.account.DEVICE_OR_PROFILE_OWNER_ALLOWED"; field public static final String ACCOUNT_FEATURE_DEVICE_OR_PROFILE_OWNER_DISALLOWED = "android.account.DEVICE_OR_PROFILE_OWNER_DISALLOWED"; field public static final String ACTION_DATA_SHARING_RESTRICTION_APPLIED = "android.app.action.DATA_SHARING_RESTRICTION_APPLIED"; @@ -458,6 +616,26 @@ package android.app.backup { } +package android.app.blob { + + public class BlobStoreManager { + method @Nullable public android.app.blob.LeaseInfo getLeaseInfo(@NonNull android.app.blob.BlobHandle) throws java.io.IOException; + method public void waitForIdle(long) throws java.lang.InterruptedException, java.util.concurrent.TimeoutException; + } + + public final class LeaseInfo implements android.os.Parcelable { + ctor public LeaseInfo(@NonNull String, long, @IdRes int, @Nullable CharSequence); + method public int describeContents(); + method @Nullable public CharSequence getDescription(); + method @IdRes public int getDescriptionResId(); + method public long getExpiryTimeMillis(); + method @NonNull public String getPackageName(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.app.blob.LeaseInfo> CREATOR; + } + +} + package android.app.prediction { public final class AppPredictionContext implements android.os.Parcelable { @@ -532,6 +710,7 @@ package android.app.prediction { field public static final int ACTION_DISMISS = 2; // 0x2 field public static final int ACTION_LAUNCH = 1; // 0x1 field public static final int ACTION_PIN = 3; // 0x3 + field public static final int ACTION_UNPIN = 4; // 0x4 field @NonNull public static final android.os.Parcelable.Creator<android.app.prediction.AppTargetEvent> CREATOR; } @@ -556,6 +735,11 @@ package android.app.role { method public void onRoleHoldersChanged(@NonNull String, @NonNull android.os.UserHandle); } + public class RoleControllerManager { + method @RequiresPermission("android.permission.MANAGE_ROLE_HOLDERS") public void isApplicationVisibleForRole(@NonNull String, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>); + method @RequiresPermission("android.permission.MANAGE_ROLE_HOLDERS") public void isRoleVisible(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>); + } + public final class RoleManager { method @RequiresPermission("android.permission.OBSERVE_ROLE_HOLDERS") public void addOnRoleHoldersChangedListenerAsUser(@NonNull java.util.concurrent.Executor, @NonNull android.app.role.OnRoleHoldersChangedListener, @NonNull android.os.UserHandle); method @RequiresPermission("android.permission.MANAGE_ROLE_HOLDERS") public void addRoleHolderAsUser(@NonNull String, @NonNull String, int, @NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>); @@ -582,6 +766,9 @@ package android.app.usage { public class StorageStatsManager { method public boolean isQuotaSupported(@NonNull java.util.UUID); method public boolean isReservedSupported(@NonNull java.util.UUID); + method @NonNull @WorkerThread public java.util.Collection<android.os.storage.CrateInfo> queryCratesForPackage(@NonNull java.util.UUID, @NonNull String, @NonNull android.os.UserHandle) throws java.io.IOException, android.content.pm.PackageManager.NameNotFoundException; + method @NonNull @WorkerThread public java.util.Collection<android.os.storage.CrateInfo> queryCratesForUid(@NonNull java.util.UUID, int) throws java.io.IOException, android.content.pm.PackageManager.NameNotFoundException; + method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_CRATES) @WorkerThread public java.util.Collection<android.os.storage.CrateInfo> queryCratesForUser(@NonNull java.util.UUID, @NonNull android.os.UserHandle) throws java.io.IOException, android.content.pm.PackageManager.NameNotFoundException; } public final class UsageStatsManager { @@ -598,8 +785,23 @@ package android.bluetooth { } +package android.companion { + + public final class CompanionDeviceManager { + method @RequiresPermission("android.permission.MANAGE_COMPANION_DEVICES") public boolean isDeviceAssociatedForWifiConnection(@NonNull String, @NonNull android.net.MacAddress, @NonNull android.os.UserHandle); + } + +} + package android.content { + public class ApexEnvironment { + method @NonNull public static android.content.ApexEnvironment getApexEnvironment(@NonNull String); + method @NonNull public java.io.File getCredentialProtectedDataDirForUser(@NonNull android.os.UserHandle); + method @NonNull public java.io.File getDeviceProtectedDataDir(); + method @NonNull public java.io.File getDeviceProtectedDataDirForUser(@NonNull android.os.UserHandle); + } + public final class AutofillOptions implements android.os.Parcelable { ctor public AutofillOptions(int, boolean); method public int describeContents(); @@ -607,8 +809,10 @@ package android.content { method public boolean isAugmentedAutofillEnabled(@NonNull android.content.Context); method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.content.AutofillOptions> CREATOR; + field public long appDisabledExpiration; field public boolean augmentedAutofillEnabled; field public final boolean compatModeEnabled; + field @Nullable public android.util.ArrayMap<java.lang.String,java.lang.Long> disabledActivities; field public final int loggingLevel; field @Nullable public android.util.ArraySet<android.content.ComponentName> whitelistedActivitiesForAugmentedAutofill; } @@ -629,42 +833,120 @@ package android.content { field @Nullable public final android.util.ArraySet<android.content.ComponentName> whitelistedComponents; } + public abstract class ContentProvider implements android.content.ComponentCallbacks2 { + method @NonNull public static android.os.UserHandle getUserHandleFromUri(@NonNull android.net.Uri); + } + public class ContentProviderClient implements java.lang.AutoCloseable { method @RequiresPermission(android.Manifest.permission.REMOVE_TASKS) public void setDetectNotResponding(long); } public abstract class ContentResolver { + method @NonNull public static android.net.Uri decodeFromFile(@NonNull java.io.File); + method @NonNull public static java.io.File encodeToFile(@NonNull android.net.Uri); method public static String[] getSyncAdapterPackagesForAuthorityAsUser(String, int); } public abstract class Context { - method public android.content.Context createPackageContextAsUser(String, int, android.os.UserHandle) throws android.content.pm.PackageManager.NameNotFoundException; - method public abstract android.view.Display getDisplay(); + method @NonNull public android.content.Context createContextAsUser(@NonNull android.os.UserHandle, int); + method @NonNull public android.content.Context createPackageContextAsUser(@NonNull String, int, @NonNull android.os.UserHandle) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public java.io.File getCrateDir(@NonNull String); method public abstract int getDisplayId(); method public android.os.UserHandle getUser(); method public int getUserId(); method public void setAutofillOptions(@Nullable android.content.AutofillOptions); method public void setContentCaptureOptions(@Nullable android.content.ContentCaptureOptions); + method @RequiresPermission("android.permission.INTERACT_ACROSS_USERS") public void startActivityAsUser(@NonNull @RequiresPermission android.content.Intent, @NonNull android.os.UserHandle); + field public static final String APP_INTEGRITY_SERVICE = "app_integrity"; field public static final String BUGREPORT_SERVICE = "bugreport"; field public static final String CONTENT_CAPTURE_MANAGER_SERVICE = "content_capture"; + field public static final String DEVICE_IDLE_CONTROLLER = "deviceidle"; + field public static final String DREAM_SERVICE = "dream"; + field public static final String ETHERNET_SERVICE = "ethernet"; field public static final String PERMISSION_SERVICE = "permission"; + field public static final String POWER_WHITELIST_MANAGER = "power_whitelist"; field public static final String ROLLBACK_SERVICE = "rollback"; field public static final String STATUS_BAR_SERVICE = "statusbar"; field public static final String TEST_NETWORK_SERVICE = "test_network"; } public class ContextWrapper extends android.content.Context { - method public android.view.Display getDisplay(); method public int getDisplayId(); } public class Intent implements java.lang.Cloneable android.os.Parcelable { + field @RequiresPermission("android.permission.MANAGE_ROLE_HOLDERS") public static final String ACTION_MANAGE_DEFAULT_APP = "android.intent.action.MANAGE_DEFAULT_APP"; field public static final String ACTION_ROLLBACK_COMMITTED = "android.intent.action.ROLLBACK_COMMITTED"; + field public static final String EXTRA_ORIGINATING_UID = "android.intent.extra.ORIGINATING_UID"; field public static final String EXTRA_ROLE_NAME = "android.intent.extra.ROLE_NAME"; } } +package android.content.integrity { + + public class AppIntegrityManager { + method @NonNull public android.content.integrity.RuleSet getCurrentRuleSet(); + method @NonNull public String getCurrentRuleSetProvider(); + method @NonNull public String getCurrentRuleSetVersion(); + method @NonNull public java.util.List<java.lang.String> getWhitelistedRuleProviders(); + method public void updateRuleSet(@NonNull android.content.integrity.RuleSet, @NonNull android.content.IntentSender); + field public static final String EXTRA_STATUS = "android.content.integrity.extra.STATUS"; + field public static final int STATUS_FAILURE = 1; // 0x1 + field public static final int STATUS_SUCCESS = 0; // 0x0 + } + + public abstract class IntegrityFormula { + method @NonNull public static android.content.integrity.IntegrityFormula all(@NonNull android.content.integrity.IntegrityFormula...); + method @NonNull public static android.content.integrity.IntegrityFormula any(@NonNull android.content.integrity.IntegrityFormula...); + method @NonNull public static android.content.integrity.IntegrityFormula not(@NonNull android.content.integrity.IntegrityFormula); + } + + public static final class IntegrityFormula.Application { + method @NonNull public static android.content.integrity.IntegrityFormula certificatesContain(@NonNull String); + method @NonNull public static android.content.integrity.IntegrityFormula isPreInstalled(); + method @NonNull public static android.content.integrity.IntegrityFormula packageNameEquals(@NonNull String); + method @NonNull public static android.content.integrity.IntegrityFormula versionCodeEquals(@NonNull long); + method @NonNull public static android.content.integrity.IntegrityFormula versionCodeGreaterThan(@NonNull long); + method @NonNull public static android.content.integrity.IntegrityFormula versionCodeGreaterThanOrEqualTo(@NonNull long); + } + + public static final class IntegrityFormula.Installer { + method @NonNull public static android.content.integrity.IntegrityFormula certificatesContain(@NonNull String); + method @NonNull public static android.content.integrity.IntegrityFormula notAllowedByManifest(); + method @NonNull public static android.content.integrity.IntegrityFormula packageNameEquals(@NonNull String); + } + + public static final class IntegrityFormula.SourceStamp { + method @NonNull public static android.content.integrity.IntegrityFormula notTrusted(); + method @NonNull public static android.content.integrity.IntegrityFormula stampCertificateHashEquals(@NonNull String); + } + + public final class Rule implements android.os.Parcelable { + ctor public Rule(@NonNull android.content.integrity.IntegrityFormula, int); + method public int describeContents(); + method public int getEffect(); + method @NonNull public android.content.integrity.IntegrityFormula getFormula(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.content.integrity.Rule> CREATOR; + field public static final int DENY = 0; // 0x0 + field public static final int FORCE_ALLOW = 1; // 0x1 + } + + public class RuleSet { + method @NonNull public java.util.List<android.content.integrity.Rule> getRules(); + method @NonNull public String getVersion(); + } + + public static class RuleSet.Builder { + ctor public RuleSet.Builder(); + method @NonNull public android.content.integrity.RuleSet.Builder addRules(@NonNull java.util.List<android.content.integrity.Rule>); + method @NonNull public android.content.integrity.RuleSet build(); + method @NonNull public android.content.integrity.RuleSet.Builder setVersion(@NonNull String); + } + +} + package android.content.pm { public class ActivityInfo extends android.content.pm.ComponentInfo implements android.os.Parcelable { @@ -684,19 +966,27 @@ package android.content.pm { } public static class PackageInstaller.SessionInfo implements android.os.Parcelable { + method public int getAutoRevokePermissionsMode(); + method public int getRollbackDataPolicy(); method @NonNull public java.util.Set<java.lang.String> getWhitelistedRestrictedPermissions(); } public static class PackageInstaller.SessionParams implements android.os.Parcelable { method public void setEnableRollback(boolean); + method public void setEnableRollback(boolean, int); method @RequiresPermission("android.permission.INSTALL_GRANT_RUNTIME_PERMISSIONS") public void setGrantedRuntimePermissions(String[]); method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void setInstallAsApex(); + method public void setInstallerPackageName(@Nullable String); + method public void setRequestDowngrade(boolean); method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void setStaged(); } public abstract class PackageManager { + method @RequiresPermission("android.permission.OBSERVE_GRANT_REVOKE_PERMISSIONS") public abstract void addOnPermissionsChangeListener(@NonNull android.content.pm.PackageManager.OnPermissionsChangedListener); method public abstract boolean arePermissionsIndividuallyControlled(); + method @Nullable public String getContentCaptureServicePackageName(); method @Nullable @RequiresPermission("android.permission.INTERACT_ACROSS_USERS_FULL") public abstract String getDefaultBrowserPackageNameAsUser(int); + method @Nullable public String getDefaultTextClassifierPackageName(); method @Nullable public String getIncidentReportApproverPackageName(); method public abstract int getInstallReason(@NonNull String, @NonNull android.os.UserHandle); method @NonNull public abstract java.util.List<android.content.pm.ApplicationInfo> getInstalledApplicationsAsUser(int, int); @@ -706,43 +996,63 @@ package android.content.pm { method @RequiresPermission(anyOf={"android.permission.GRANT_RUNTIME_PERMISSIONS", "android.permission.REVOKE_RUNTIME_PERMISSIONS", "android.permission.GET_RUNTIME_PERMISSIONS"}) public abstract int getPermissionFlags(@NonNull String, @NonNull String, @NonNull android.os.UserHandle); method @NonNull public abstract String getServicesSystemSharedLibraryPackageName(); method @NonNull public abstract String getSharedSystemSharedLibraryPackageName(); + method @Nullable public String getSystemTextClassifierPackageName(); method @Nullable public String getWellbeingPackageName(); method @RequiresPermission("android.permission.GRANT_RUNTIME_PERMISSIONS") public abstract void grantRuntimePermission(@NonNull String, @NonNull String, @NonNull android.os.UserHandle); + method @RequiresPermission("android.permission.OBSERVE_GRANT_REVOKE_PERMISSIONS") public abstract void removeOnPermissionsChangeListener(@NonNull android.content.pm.PackageManager.OnPermissionsChangedListener); method @RequiresPermission("android.permission.REVOKE_RUNTIME_PERMISSIONS") public abstract void revokeRuntimePermission(@NonNull String, @NonNull String, @NonNull android.os.UserHandle); + method @RequiresPermission("android.permission.REVOKE_RUNTIME_PERMISSIONS") public void revokeRuntimePermission(@NonNull String, @NonNull String, @NonNull android.os.UserHandle, @NonNull String); method @RequiresPermission(anyOf={"android.permission.GRANT_RUNTIME_PERMISSIONS", "android.permission.REVOKE_RUNTIME_PERMISSIONS"}) public abstract void updatePermissionFlags(@NonNull String, @NonNull String, int, int, @NonNull android.os.UserHandle); field public static final String FEATURE_ADOPTABLE_STORAGE = "android.software.adoptable_storage"; field public static final String FEATURE_FILE_BASED_ENCRYPTION = "android.software.file_based_encryption"; field public static final int FLAG_PERMISSION_APPLY_RESTRICTION = 16384; // 0x4000 field public static final int FLAG_PERMISSION_GRANTED_BY_ROLE = 32768; // 0x8000 + field public static final int FLAG_PERMISSION_ONE_TIME = 65536; // 0x10000 field public static final int FLAG_PERMISSION_POLICY_FIXED = 4; // 0x4 field public static final int FLAG_PERMISSION_RESTRICTION_INSTALLER_EXEMPT = 2048; // 0x800 field public static final int FLAG_PERMISSION_RESTRICTION_SYSTEM_EXEMPT = 4096; // 0x1000 field public static final int FLAG_PERMISSION_RESTRICTION_UPGRADE_EXEMPT = 8192; // 0x2000 field public static final int FLAG_PERMISSION_REVIEW_REQUIRED = 64; // 0x40 - field public static final int FLAG_PERMISSION_REVOKE_ON_UPGRADE = 8; // 0x8 + field public static final int FLAG_PERMISSION_REVOKED_COMPAT = 8; // 0x8 + field @Deprecated public static final int FLAG_PERMISSION_REVOKE_ON_UPGRADE = 8; // 0x8 field public static final int FLAG_PERMISSION_REVOKE_WHEN_REQUESTED = 128; // 0x80 field public static final int FLAG_PERMISSION_SYSTEM_FIXED = 16; // 0x10 field public static final int FLAG_PERMISSION_USER_FIXED = 2; // 0x2 field public static final int FLAG_PERMISSION_USER_SET = 1; // 0x1 field public static final int MATCH_FACTORY_ONLY = 2097152; // 0x200000 field public static final int MATCH_KNOWN_PACKAGES = 4202496; // 0x402000 + field public static final int MODULE_APEX_NAME = 1; // 0x1 field public static final String SYSTEM_SHARED_LIBRARY_SERVICES = "android.ext.services"; field public static final String SYSTEM_SHARED_LIBRARY_SHARED = "android.ext.shared"; } + public static interface PackageManager.OnPermissionsChangedListener { + method public void onPermissionsChanged(int); + } + public class PermissionInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable { field public static final int FLAG_REMOVED = 2; // 0x2 field public static final int PROTECTION_FLAG_APP_PREDICTOR = 2097152; // 0x200000 + field public static final int PROTECTION_FLAG_COMPANION = 8388608; // 0x800000 field public static final int PROTECTION_FLAG_CONFIGURATOR = 524288; // 0x80000 field public static final int PROTECTION_FLAG_DOCUMENTER = 262144; // 0x40000 field public static final int PROTECTION_FLAG_INCIDENT_REPORT_APPROVER = 1048576; // 0x100000 field public static final int PROTECTION_FLAG_OEM = 16384; // 0x4000 + field public static final int PROTECTION_FLAG_RETAIL_DEMO = 16777216; // 0x1000000 field public static final int PROTECTION_FLAG_SYSTEM_TEXT_CLASSIFIER = 65536; // 0x10000 field public static final int PROTECTION_FLAG_VENDOR_PRIVILEGED = 32768; // 0x8000 field public static final int PROTECTION_FLAG_WELLBEING = 131072; // 0x20000 field @Nullable public final String backgroundPermission; } + public final class ProviderInfoList implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public static android.content.pm.ProviderInfoList fromList(@NonNull java.util.List<android.content.pm.ProviderInfo>); + method @NonNull public java.util.List<android.content.pm.ProviderInfo> getList(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.ProviderInfoList> CREATOR; + } + public final class ShortcutInfo implements android.os.Parcelable { method public boolean isVisibleToPublisher(); } @@ -757,7 +1067,9 @@ package android.content.res { public final class AssetManager implements java.lang.AutoCloseable { method @NonNull public String[] getApkPaths(); - method @Nullable public java.util.Map<java.lang.String,java.lang.String> getOverlayableMap(String); + method @Nullable public String getLastResourceResolution(); + method @Nullable public String getOverlayablesToString(String); + method public void setResourceResolutionLoggingEnabled(boolean); } public final class Configuration implements java.lang.Comparable<android.content.res.Configuration> android.os.Parcelable { @@ -790,10 +1102,11 @@ package android.content.rollback { } public final class RollbackManager { + method @RequiresPermission(android.Manifest.permission.TEST_MANAGE_ROLLBACKS) public void blockRollbackManager(long); method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_ROLLBACKS, android.Manifest.permission.TEST_MANAGE_ROLLBACKS}) public void commitRollback(int, @NonNull java.util.List<android.content.pm.VersionedPackage>, @NonNull android.content.IntentSender); method @RequiresPermission(android.Manifest.permission.TEST_MANAGE_ROLLBACKS) public void expireRollbackForPackage(@NonNull String); - method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_ROLLBACKS, android.Manifest.permission.TEST_MANAGE_ROLLBACKS}) @NonNull public java.util.List<android.content.rollback.RollbackInfo> getAvailableRollbacks(); - method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_ROLLBACKS, android.Manifest.permission.TEST_MANAGE_ROLLBACKS}) @NonNull public java.util.List<android.content.rollback.RollbackInfo> getRecentlyCommittedRollbacks(); + method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_ROLLBACKS, android.Manifest.permission.TEST_MANAGE_ROLLBACKS}) public java.util.List<android.content.rollback.RollbackInfo> getAvailableRollbacks(); + method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_ROLLBACKS, android.Manifest.permission.TEST_MANAGE_ROLLBACKS}) public java.util.List<android.content.rollback.RollbackInfo> getRecentlyCommittedRollbacks(); method @RequiresPermission(android.Manifest.permission.TEST_MANAGE_ROLLBACKS) public void reloadPersistedData(); field public static final String EXTRA_STATUS = "android.content.rollback.extra.STATUS"; field public static final String EXTRA_STATUS_MESSAGE = "android.content.rollback.extra.STATUS_MESSAGE"; @@ -889,12 +1202,16 @@ package android.graphics.drawable { package android.hardware.camera2 { public abstract class CameraDevice implements java.lang.AutoCloseable { - method public abstract void createCustomCaptureSession(android.hardware.camera2.params.InputConfiguration, @NonNull java.util.List<android.hardware.camera2.params.OutputConfiguration>, int, @NonNull android.hardware.camera2.CameraCaptureSession.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; + method @Deprecated public abstract void createCustomCaptureSession(android.hardware.camera2.params.InputConfiguration, @NonNull java.util.List<android.hardware.camera2.params.OutputConfiguration>, int, @NonNull android.hardware.camera2.CameraCaptureSession.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; field public static final int SESSION_OPERATION_MODE_CONSTRAINED_HIGH_SPEED = 1; // 0x1 field public static final int SESSION_OPERATION_MODE_NORMAL = 0; // 0x0 field public static final int SESSION_OPERATION_MODE_VENDOR_START = 32768; // 0x8000 } + public final class CameraManager { + method public String[] getCameraIdListNoLazy() throws android.hardware.camera2.CameraAccessException; + } + } package android.hardware.display { @@ -940,8 +1257,13 @@ package android.hardware.display { method @Nullable public android.hardware.display.BrightnessCorrection getCorrectionByCategory(int); method @Nullable public android.hardware.display.BrightnessCorrection getCorrectionByPackageName(@NonNull String); method public android.util.Pair<float[],float[]> getCurve(); + method public float getShortTermModelLowerLuxMultiplier(); + method public long getShortTermModelTimeoutMillis(); + method public float getShortTermModelUpperLuxMultiplier(); + method public boolean shouldCollectColorSamples(); method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.hardware.display.BrightnessConfiguration> CREATOR; + field public static final long SHORT_TERM_TIMEOUT_UNSET = -1L; // 0xffffffffffffffffL } public static class BrightnessConfiguration.Builder { @@ -952,6 +1274,10 @@ package android.hardware.display { method public int getMaxCorrectionsByCategory(); method public int getMaxCorrectionsByPackageName(); method @NonNull public android.hardware.display.BrightnessConfiguration.Builder setDescription(@Nullable String); + method @NonNull public android.hardware.display.BrightnessConfiguration.Builder setShortTermModelLowerLuxMultiplier(@FloatRange(from=0.0f) float); + method @NonNull public android.hardware.display.BrightnessConfiguration.Builder setShortTermModelTimeoutMillis(long); + method @NonNull public android.hardware.display.BrightnessConfiguration.Builder setShortTermModelUpperLuxMultiplier(@FloatRange(from=0.0f) float); + method @NonNull public android.hardware.display.BrightnessConfiguration.Builder setShouldCollectColorSamples(boolean); } public final class BrightnessCorrection implements android.os.Parcelable { @@ -968,11 +1294,287 @@ package android.hardware.display { method @RequiresPermission(android.Manifest.permission.BRIGHTNESS_SLIDER_USAGE) public java.util.List<android.hardware.display.BrightnessChangeEvent> getBrightnessEvents(); method @Nullable @RequiresPermission(android.Manifest.permission.CONFIGURE_DISPLAY_BRIGHTNESS) public android.hardware.display.BrightnessConfiguration getDefaultBrightnessConfiguration(); method public android.graphics.Point getStableDisplaySize(); + method public boolean isMinimalPostProcessingRequested(int); method @RequiresPermission(android.Manifest.permission.CONFIGURE_DISPLAY_BRIGHTNESS) public void setBrightnessConfiguration(android.hardware.display.BrightnessConfiguration); } } +package android.hardware.hdmi { + + public final class HdmiControlManager { + method @Nullable public android.hardware.hdmi.HdmiSwitchClient getSwitchClient(); + method @RequiresPermission("android.permission.HDMI_CEC") public void setStandbyMode(boolean); + field public static final String ACTION_OSD_MESSAGE = "android.hardware.hdmi.action.OSD_MESSAGE"; + field public static final int AVR_VOLUME_MUTED = 101; // 0x65 + field public static final int CLEAR_TIMER_STATUS_CEC_DISABLE = 162; // 0xa2 + field public static final int CLEAR_TIMER_STATUS_CHECK_RECORDER_CONNECTION = 160; // 0xa0 + field public static final int CLEAR_TIMER_STATUS_FAIL_TO_CLEAR_SELECTED_SOURCE = 161; // 0xa1 + field public static final int CLEAR_TIMER_STATUS_TIMER_CLEARED = 128; // 0x80 + field public static final int CLEAR_TIMER_STATUS_TIMER_NOT_CLEARED_NO_INFO_AVAILABLE = 2; // 0x2 + field public static final int CLEAR_TIMER_STATUS_TIMER_NOT_CLEARED_NO_MATCHING = 1; // 0x1 + field public static final int CLEAR_TIMER_STATUS_TIMER_NOT_CLEARED_RECORDING = 0; // 0x0 + field public static final int CONTROL_STATE_CHANGED_REASON_SETTING = 1; // 0x1 + field public static final int CONTROL_STATE_CHANGED_REASON_STANDBY = 3; // 0x3 + field public static final int CONTROL_STATE_CHANGED_REASON_START = 0; // 0x0 + field public static final int CONTROL_STATE_CHANGED_REASON_WAKEUP = 2; // 0x2 + field public static final int DEVICE_EVENT_ADD_DEVICE = 1; // 0x1 + field public static final int DEVICE_EVENT_REMOVE_DEVICE = 2; // 0x2 + field public static final int DEVICE_EVENT_UPDATE_DEVICE = 3; // 0x3 + field public static final String EXTRA_MESSAGE_EXTRA_PARAM1 = "android.hardware.hdmi.extra.MESSAGE_EXTRA_PARAM1"; + field public static final String EXTRA_MESSAGE_ID = "android.hardware.hdmi.extra.MESSAGE_ID"; + field public static final int ONE_TOUCH_RECORD_ALREADY_RECORDING = 18; // 0x12 + field public static final int ONE_TOUCH_RECORD_CEC_DISABLED = 51; // 0x33 + field public static final int ONE_TOUCH_RECORD_CHECK_RECORDER_CONNECTION = 49; // 0x31 + field public static final int ONE_TOUCH_RECORD_DISALLOW_TO_COPY = 13; // 0xd + field public static final int ONE_TOUCH_RECORD_DISALLOW_TO_FUTHER_COPIES = 14; // 0xe + field public static final int ONE_TOUCH_RECORD_FAIL_TO_RECORD_DISPLAYED_SCREEN = 50; // 0x32 + field public static final int ONE_TOUCH_RECORD_INVALID_EXTERNAL_PHYSICAL_ADDRESS = 10; // 0xa + field public static final int ONE_TOUCH_RECORD_INVALID_EXTERNAL_PLUG_NUMBER = 9; // 0x9 + field public static final int ONE_TOUCH_RECORD_MEDIA_PROBLEM = 21; // 0x15 + field public static final int ONE_TOUCH_RECORD_MEDIA_PROTECTED = 19; // 0x13 + field public static final int ONE_TOUCH_RECORD_NOT_ENOUGH_SPACE = 22; // 0x16 + field public static final int ONE_TOUCH_RECORD_NO_MEDIA = 16; // 0x10 + field public static final int ONE_TOUCH_RECORD_NO_OR_INSUFFICIENT_CA_ENTITLEMENTS = 12; // 0xc + field public static final int ONE_TOUCH_RECORD_NO_SOURCE_SIGNAL = 20; // 0x14 + field public static final int ONE_TOUCH_RECORD_OTHER_REASON = 31; // 0x1f + field public static final int ONE_TOUCH_RECORD_PARENT_LOCK_ON = 23; // 0x17 + field public static final int ONE_TOUCH_RECORD_PLAYING = 17; // 0x11 + field public static final int ONE_TOUCH_RECORD_PREVIOUS_RECORDING_IN_PROGRESS = 48; // 0x30 + field public static final int ONE_TOUCH_RECORD_RECORDING_ALREADY_TERMINATED = 27; // 0x1b + field public static final int ONE_TOUCH_RECORD_RECORDING_ANALOGUE_SERVICE = 3; // 0x3 + field public static final int ONE_TOUCH_RECORD_RECORDING_CURRENTLY_SELECTED_SOURCE = 1; // 0x1 + field public static final int ONE_TOUCH_RECORD_RECORDING_DIGITAL_SERVICE = 2; // 0x2 + field public static final int ONE_TOUCH_RECORD_RECORDING_EXTERNAL_INPUT = 4; // 0x4 + field public static final int ONE_TOUCH_RECORD_RECORDING_TERMINATED_NORMALLY = 26; // 0x1a + field public static final int ONE_TOUCH_RECORD_UNABLE_ANALOGUE_SERVICE = 6; // 0x6 + field public static final int ONE_TOUCH_RECORD_UNABLE_DIGITAL_SERVICE = 5; // 0x5 + field public static final int ONE_TOUCH_RECORD_UNABLE_SELECTED_SERVICE = 7; // 0x7 + field public static final int ONE_TOUCH_RECORD_UNSUPPORTED_CA = 11; // 0xb + field public static final int OSD_MESSAGE_ARC_CONNECTED_INVALID_PORT = 1; // 0x1 + field public static final int OSD_MESSAGE_AVR_VOLUME_CHANGED = 2; // 0x2 + field public static final int POWER_STATUS_ON = 0; // 0x0 + field public static final int POWER_STATUS_STANDBY = 1; // 0x1 + field public static final int POWER_STATUS_TRANSIENT_TO_ON = 2; // 0x2 + field public static final int POWER_STATUS_TRANSIENT_TO_STANDBY = 3; // 0x3 + field public static final int POWER_STATUS_UNKNOWN = -1; // 0xffffffff + field @Deprecated public static final int RESULT_ALREADY_IN_PROGRESS = 4; // 0x4 + field public static final int RESULT_COMMUNICATION_FAILED = 7; // 0x7 + field public static final int RESULT_EXCEPTION = 5; // 0x5 + field public static final int RESULT_INCORRECT_MODE = 6; // 0x6 + field public static final int RESULT_SOURCE_NOT_AVAILABLE = 2; // 0x2 + field public static final int RESULT_SUCCESS = 0; // 0x0 + field public static final int RESULT_TARGET_NOT_AVAILABLE = 3; // 0x3 + field public static final int RESULT_TIMEOUT = 1; // 0x1 + field public static final int TIMER_RECORDING_RESULT_EXTRA_CEC_DISABLED = 3; // 0x3 + field public static final int TIMER_RECORDING_RESULT_EXTRA_CHECK_RECORDER_CONNECTION = 1; // 0x1 + field public static final int TIMER_RECORDING_RESULT_EXTRA_FAIL_TO_RECORD_SELECTED_SOURCE = 2; // 0x2 + field public static final int TIMER_RECORDING_RESULT_EXTRA_NO_ERROR = 0; // 0x0 + field public static final int TIMER_RECORDING_TYPE_ANALOGUE = 2; // 0x2 + field public static final int TIMER_RECORDING_TYPE_DIGITAL = 1; // 0x1 + field public static final int TIMER_RECORDING_TYPE_EXTERNAL = 3; // 0x3 + field public static final int TIMER_STATUS_MEDIA_INFO_NOT_PRESENT = 2; // 0x2 + field public static final int TIMER_STATUS_MEDIA_INFO_PRESENT_NOT_PROTECTED = 0; // 0x0 + field public static final int TIMER_STATUS_MEDIA_INFO_PRESENT_PROTECTED = 1; // 0x1 + field public static final int TIMER_STATUS_NOT_PROGRAMMED_CA_NOT_SUPPORTED = 6; // 0x6 + field public static final int TIMER_STATUS_NOT_PROGRAMMED_CLOCK_FAILURE = 10; // 0xa + field public static final int TIMER_STATUS_NOT_PROGRAMMED_DATE_OUT_OF_RANGE = 2; // 0x2 + field public static final int TIMER_STATUS_NOT_PROGRAMMED_DUPLICATED = 14; // 0xe + field public static final int TIMER_STATUS_NOT_PROGRAMMED_INVALID_EXTERNAL_PHYSICAL_NUMBER = 5; // 0x5 + field public static final int TIMER_STATUS_NOT_PROGRAMMED_INVALID_EXTERNAL_PLUG_NUMBER = 4; // 0x4 + field public static final int TIMER_STATUS_NOT_PROGRAMMED_INVALID_SEQUENCE = 3; // 0x3 + field public static final int TIMER_STATUS_NOT_PROGRAMMED_NO_CA_ENTITLEMENTS = 7; // 0x7 + field public static final int TIMER_STATUS_NOT_PROGRAMMED_NO_FREE_TIME = 1; // 0x1 + field public static final int TIMER_STATUS_NOT_PROGRAMMED_PARENTAL_LOCK_ON = 9; // 0x9 + field public static final int TIMER_STATUS_NOT_PROGRAMMED_UNSUPPORTED_RESOLUTION = 8; // 0x8 + field public static final int TIMER_STATUS_PROGRAMMED_INFO_ENOUGH_SPACE = 8; // 0x8 + field public static final int TIMER_STATUS_PROGRAMMED_INFO_MIGHT_NOT_ENOUGH_SPACE = 11; // 0xb + field public static final int TIMER_STATUS_PROGRAMMED_INFO_NOT_ENOUGH_SPACE = 9; // 0x9 + field public static final int TIMER_STATUS_PROGRAMMED_INFO_NO_MEDIA_INFO = 10; // 0xa + } + + public final class HdmiControlServiceWrapper { + ctor public HdmiControlServiceWrapper(); + method @NonNull public android.hardware.hdmi.HdmiControlManager createHdmiControlManager(); + method @BinderThread public void setDeviceTypes(@NonNull int[]); + method @BinderThread public void setPortInfo(@NonNull java.util.List<android.hardware.hdmi.HdmiPortInfo>); + field public static final int DEVICE_PURE_CEC_SWITCH = 6; // 0x6 + } + + public final class HdmiPortInfo implements android.os.Parcelable { + ctor public HdmiPortInfo(int, int, int, boolean, boolean, boolean); + method public int describeContents(); + method public int getAddress(); + method public int getId(); + method public int getType(); + method public boolean isArcSupported(); + method public boolean isCecSupported(); + method public boolean isMhlSupported(); + field @NonNull public static final android.os.Parcelable.Creator<android.hardware.hdmi.HdmiPortInfo> CREATOR; + field public static final int PORT_INPUT = 0; // 0x0 + field public static final int PORT_OUTPUT = 1; // 0x1 + } + + public class HdmiSwitchClient { + method public int getDeviceType(); + method @NonNull public java.util.List<android.hardware.hdmi.HdmiPortInfo> getPortInfo(); + method public void sendKeyEvent(int, boolean); + method public void sendVendorCommand(int, byte[], boolean); + } + +} + +package android.hardware.lights { + + public final class Light implements android.os.Parcelable { + method public int describeContents(); + method public int getId(); + method public int getOrdinal(); + method public int getType(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.hardware.lights.Light> CREATOR; + } + + public final class LightState implements android.os.Parcelable { + ctor public LightState(@ColorInt int); + method public int describeContents(); + method @ColorInt public int getColor(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.hardware.lights.LightState> CREATOR; + } + + public final class LightsManager { + method @NonNull @RequiresPermission(android.Manifest.permission.CONTROL_DEVICE_LIGHTS) public android.hardware.lights.LightState getLightState(@NonNull android.hardware.lights.Light); + method @NonNull @RequiresPermission(android.Manifest.permission.CONTROL_DEVICE_LIGHTS) public java.util.List<android.hardware.lights.Light> getLights(); + method @NonNull @RequiresPermission(android.Manifest.permission.CONTROL_DEVICE_LIGHTS) public android.hardware.lights.LightsManager.LightsSession openSession(); + field public static final int LIGHT_TYPE_MICROPHONE = 8; // 0x8 + } + + public final class LightsManager.LightsSession implements java.lang.AutoCloseable { + method @RequiresPermission(android.Manifest.permission.CONTROL_DEVICE_LIGHTS) public void close(); + method @RequiresPermission(android.Manifest.permission.CONTROL_DEVICE_LIGHTS) public void requestLights(@NonNull android.hardware.lights.LightsRequest); + } + + public final class LightsRequest { + } + + public static final class LightsRequest.Builder { + ctor public LightsRequest.Builder(); + method @NonNull public android.hardware.lights.LightsRequest build(); + method @NonNull public android.hardware.lights.LightsRequest.Builder clearLight(@NonNull android.hardware.lights.Light); + method @NonNull public android.hardware.lights.LightsRequest.Builder setLight(@NonNull android.hardware.lights.Light, @NonNull android.hardware.lights.LightState); + } + +} + +package android.hardware.soundtrigger { + + public class KeyphraseEnrollmentInfo { + ctor public KeyphraseEnrollmentInfo(@NonNull android.content.pm.PackageManager); + method @Nullable public android.hardware.soundtrigger.KeyphraseMetadata getKeyphraseMetadata(@NonNull String, @NonNull java.util.Locale); + method @Nullable public android.content.Intent getManageKeyphraseIntent(int, @NonNull String, @NonNull java.util.Locale); + method @NonNull public String getParseError(); + method @NonNull public java.util.Collection<android.hardware.soundtrigger.KeyphraseMetadata> listKeyphraseMetadata(); + field public static final int MANAGE_ACTION_ENROLL = 0; // 0x0 + field public static final int MANAGE_ACTION_RE_ENROLL = 1; // 0x1 + field public static final int MANAGE_ACTION_UN_ENROLL = 2; // 0x2 + } + + public final class KeyphraseMetadata implements android.os.Parcelable { + ctor public KeyphraseMetadata(int, @NonNull String, @NonNull java.util.Set<java.util.Locale>, int); + method public int describeContents(); + method public int getId(); + method @NonNull public String getKeyphrase(); + method public int getRecognitionModeFlags(); + method @NonNull public java.util.Set<java.util.Locale> getSupportedLocales(); + method public boolean supportsLocale(@Nullable java.util.Locale); + method public boolean supportsPhrase(@Nullable String); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.hardware.soundtrigger.KeyphraseMetadata> CREATOR; + } + + public class SoundTrigger { + field public static final int RECOGNITION_MODE_GENERIC = 8; // 0x8 + field public static final int RECOGNITION_MODE_USER_AUTHENTICATION = 4; // 0x4 + field public static final int RECOGNITION_MODE_USER_IDENTIFICATION = 2; // 0x2 + field public static final int RECOGNITION_MODE_VOICE_TRIGGER = 1; // 0x1 + field public static final int STATUS_OK = 0; // 0x0 + } + + public static final class SoundTrigger.Keyphrase implements android.os.Parcelable { + ctor public SoundTrigger.Keyphrase(int, int, @NonNull java.util.Locale, @NonNull String, @Nullable int[]); + method public int getId(); + method @NonNull public java.util.Locale getLocale(); + method public int getRecognitionModes(); + method @NonNull public String getText(); + method @NonNull public int[] getUsers(); + method @NonNull public static android.hardware.soundtrigger.SoundTrigger.Keyphrase readFromParcel(@NonNull android.os.Parcel); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.hardware.soundtrigger.SoundTrigger.Keyphrase> CREATOR; + } + + public static final class SoundTrigger.KeyphraseSoundModel extends android.hardware.soundtrigger.SoundTrigger.SoundModel implements android.os.Parcelable { + ctor public SoundTrigger.KeyphraseSoundModel(@NonNull java.util.UUID, @NonNull java.util.UUID, @Nullable byte[], @Nullable android.hardware.soundtrigger.SoundTrigger.Keyphrase[], int); + ctor public SoundTrigger.KeyphraseSoundModel(@NonNull java.util.UUID, @NonNull java.util.UUID, @Nullable byte[], @Nullable android.hardware.soundtrigger.SoundTrigger.Keyphrase[]); + method @NonNull public android.hardware.soundtrigger.SoundTrigger.Keyphrase[] getKeyphrases(); + method @NonNull public static android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel readFromParcel(@NonNull android.os.Parcel); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel> CREATOR; + } + + public static final class SoundTrigger.ModelParamRange implements android.os.Parcelable { + ctor public SoundTrigger.ModelParamRange(int, int); + method public int getEnd(); + method public int getStart(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.hardware.soundtrigger.SoundTrigger.ModelParamRange> CREATOR; + } + + public static final class SoundTrigger.ModuleProperties implements android.os.Parcelable { + ctor public SoundTrigger.ModuleProperties(int, @NonNull String, @NonNull String, @NonNull String, int, @NonNull String, int, int, int, int, boolean, int, boolean, int, boolean, int); + method public int describeContents(); + method public int getAudioCapabilities(); + method @NonNull public String getDescription(); + method public int getId(); + method @NonNull public String getImplementor(); + method public int getMaxBufferMillis(); + method public int getMaxKeyphrases(); + method public int getMaxSoundModels(); + method public int getMaxUsers(); + method public int getPowerConsumptionMw(); + method public int getRecognitionModes(); + method @NonNull public String getSupportedModelArch(); + method @NonNull public java.util.UUID getUuid(); + method public int getVersion(); + method public boolean isCaptureTransitionSupported(); + method public boolean isConcurrentCaptureSupported(); + method public boolean isTriggerReturnedInEvent(); + method public void writeToParcel(android.os.Parcel, int); + field public static final int AUDIO_CAPABILITY_ECHO_CANCELLATION = 1; // 0x1 + field public static final int AUDIO_CAPABILITY_NOISE_SUPPRESSION = 2; // 0x2 + field @NonNull public static final android.os.Parcelable.Creator<android.hardware.soundtrigger.SoundTrigger.ModuleProperties> CREATOR; + } + + public static class SoundTrigger.RecognitionEvent { + ctor public SoundTrigger.RecognitionEvent(int, int, boolean, int, int, int, boolean, @NonNull android.media.AudioFormat, @Nullable byte[]); + method @Nullable public android.media.AudioFormat getCaptureFormat(); + method public int getCaptureSession(); + method public byte[] getData(); + method public boolean isCaptureAvailable(); + } + + public static class SoundTrigger.SoundModel { + method @NonNull public byte[] getData(); + method public int getType(); + method @NonNull public java.util.UUID getUuid(); + method @NonNull public java.util.UUID getVendorUuid(); + method public int getVersion(); + field public static final int TYPE_GENERIC_SOUND = 1; // 0x1 + field public static final int TYPE_KEYPHRASE = 0; // 0x0 + } + +} + package android.location { public final class GnssClock implements android.os.Parcelable { @@ -986,6 +1588,9 @@ package android.location { method public void resetElapsedRealtimeUncertaintyNanos(); method public void resetFullBiasNanos(); method public void resetLeapSecond(); + method public void resetReferenceCarrierFrequencyHzForIsb(); + method public void resetReferenceCodeTypeForIsb(); + method public void resetReferenceConstellationTypeForIsb(); method public void resetTimeUncertaintyNanos(); method public void set(android.location.GnssClock); method public void setBiasNanos(double); @@ -997,6 +1602,9 @@ package android.location { method public void setFullBiasNanos(long); method public void setHardwareClockDiscontinuityCount(int); method public void setLeapSecond(int); + method public void setReferenceCarrierFrequencyHzForIsb(@FloatRange(from=0.0) double); + method public void setReferenceCodeTypeForIsb(@NonNull String); + method public void setReferenceConstellationTypeForIsb(int); method public void setTimeNanos(long); method public void setTimeUncertaintyNanos(@FloatRange(from=0.0f) double); } @@ -1005,17 +1613,23 @@ package android.location { ctor public GnssMeasurement(); method public void reset(); method public void resetAutomaticGainControlLevel(); + method public void resetBasebandCn0DbHz(); method @Deprecated public void resetCarrierCycles(); method public void resetCarrierFrequencyHz(); method @Deprecated public void resetCarrierPhase(); method @Deprecated public void resetCarrierPhaseUncertainty(); method public void resetCodeType(); + method public void resetFullInterSignalBiasNanos(); + method public void resetFullInterSignalBiasUncertaintyNanos(); + method public void resetSatelliteInterSignalBiasNanos(); + method public void resetSatelliteInterSignalBiasUncertaintyNanos(); method public void resetSnrInDb(); method public void set(android.location.GnssMeasurement); method public void setAccumulatedDeltaRangeMeters(double); method public void setAccumulatedDeltaRangeState(int); method public void setAccumulatedDeltaRangeUncertaintyMeters(double); method public void setAutomaticGainControlLevelInDb(double); + method public void setBasebandCn0DbHz(double); method @Deprecated public void setCarrierCycles(long); method public void setCarrierFrequencyHz(float); method @Deprecated public void setCarrierPhase(double); @@ -1023,11 +1637,15 @@ package android.location { method public void setCn0DbHz(double); method public void setCodeType(@NonNull String); method public void setConstellationType(int); + method public void setFullInterSignalBiasNanos(double); + method public void setFullInterSignalBiasUncertaintyNanos(@FloatRange(from=0.0) double); method public void setMultipathIndicator(int); method public void setPseudorangeRateMetersPerSecond(double); method public void setPseudorangeRateUncertaintyMetersPerSecond(double); method public void setReceivedSvTimeNanos(long); method public void setReceivedSvTimeUncertaintyNanos(long); + method public void setSatelliteInterSignalBiasNanos(double); + method public void setSatelliteInterSignalBiasUncertaintyNanos(@FloatRange(from=0.0) double); method public void setSnrInDb(double); method public void setState(int); method public void setSvid(int); @@ -1053,31 +1671,39 @@ package android.location { public class Location implements android.os.Parcelable { method public void makeComplete(); + field @Deprecated public static final String EXTRA_NO_GPS_LOCATION = "noGPSLocation"; } public class LocationManager { method @NonNull public String[] getBackgroundThrottlingWhitelist(); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void getCurrentLocation(@NonNull android.location.LocationRequest, @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.location.Location>); method @NonNull public String[] getIgnoreSettingsWhitelist(); + method @Nullable @RequiresPermission("android.permission.READ_DEVICE_CONFIG") public java.util.List<java.lang.String> getProviderPackages(@NonNull String); method @NonNull public java.util.List<android.location.LocationRequest> getTestProviderCurrentRequests(String); - method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@NonNull android.location.LocationRequest, @NonNull android.location.LocationListener, @Nullable android.os.Looper); - method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@NonNull android.location.LocationRequest, @NonNull android.app.PendingIntent); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@Nullable android.location.LocationRequest, @NonNull android.location.LocationListener, @Nullable android.os.Looper); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@Nullable android.location.LocationRequest, @NonNull java.util.concurrent.Executor, @NonNull android.location.LocationListener); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@Nullable android.location.LocationRequest, @NonNull android.app.PendingIntent); method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public void setLocationEnabledForUser(boolean, @NonNull android.os.UserHandle); + field public static final String FUSED_PROVIDER = "fused"; } public final class LocationRequest implements android.os.Parcelable { method @NonNull public static android.location.LocationRequest create(); method public int describeContents(); - method public long getExpireAt(); + method @Deprecated public long getExpireAt(); + method public long getExpireIn(); method public long getFastestInterval(); method public long getInterval(); method public int getNumUpdates(); method public int getQuality(); method public boolean isLocationSettingsIgnored(); - method @NonNull public android.location.LocationRequest setExpireAt(long); + method public boolean isLowPowerMode(); + method @Deprecated @NonNull public android.location.LocationRequest setExpireAt(long); method @NonNull public android.location.LocationRequest setExpireIn(long); method @NonNull public android.location.LocationRequest setFastestInterval(long); method @NonNull public android.location.LocationRequest setInterval(long); - method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) @NonNull public android.location.LocationRequest setLocationSettingsIgnored(boolean); + method @NonNull @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public android.location.LocationRequest setLocationSettingsIgnored(boolean); + method @NonNull public android.location.LocationRequest setLowPowerMode(boolean); method @NonNull public android.location.LocationRequest setNumUpdates(int); method @NonNull public android.location.LocationRequest setProvider(@NonNull String); method @NonNull public android.location.LocationRequest setQuality(int); @@ -1143,6 +1769,13 @@ package android.media { ctor public AudioRecordingConfiguration(int, int, int, android.media.AudioFormat, android.media.AudioFormat, int, String); } + public class AudioSystem { + method public static float getMasterBalance(); + method public static final int getNumStreamTypes(); + method public static int setMasterBalance(float); + field public static final int STREAM_DEFAULT = -1; // 0xffffffff + } + public static final class AudioTrack.MetricsConstants { field public static final String ATTRIBUTES = "android.media.audiotrack.attributes"; field public static final String CHANNEL_MASK = "android.media.audiotrack.channelMask"; @@ -1152,6 +1785,10 @@ package android.media { field public static final String SAMPLE_RATE = "android.media.audiotrack.sampleRate"; } + public final class MediaCas implements java.lang.AutoCloseable { + method public void forceResourceLost(); + } + public static final class MediaCodecInfo.VideoCapabilities.PerformancePoint { ctor public MediaCodecInfo.VideoCapabilities.PerformancePoint(int, int, int, int, @NonNull android.util.Size); ctor public MediaCodecInfo.VideoCapabilities.PerformancePoint(@NonNull android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint, @NonNull android.util.Size); @@ -1160,6 +1797,14 @@ package android.media { method public int getMaxMacroBlocks(); } + public final class MediaRoute2Info implements android.os.Parcelable { + method @NonNull public String getOriginalId(); + } + + public class MediaRouter2.RoutingController { + method @NonNull public String getOriginalId(); + } + public final class PlaybackParams implements android.os.Parcelable { method public int getAudioStretchMode(); method public android.media.PlaybackParams setAudioStretchMode(int); @@ -1229,6 +1874,7 @@ package android.media.audiopolicy { field public static final int RULE_MATCH_ATTRIBUTE_CAPTURE_PRESET = 2; // 0x2 field public static final int RULE_MATCH_ATTRIBUTE_USAGE = 1; // 0x1 field public static final int RULE_MATCH_UID = 4; // 0x4 + field public static final int RULE_MATCH_USERID = 8; // 0x8 } public static class AudioMixingRule.Builder { @@ -1249,9 +1895,11 @@ package android.media.audiopolicy { method public int getFocusDuckingBehavior(); method public int getStatus(); method public boolean removeUidDeviceAffinity(int); + method public boolean removeUserIdDeviceAffinity(int); method public int setFocusDuckingBehavior(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException; method public void setRegistration(String); method public boolean setUidDeviceAffinity(int, @NonNull java.util.List<android.media.AudioDeviceInfo>); + method public boolean setUserIdDeviceAffinity(int, @NonNull java.util.List<android.media.AudioDeviceInfo>); method public String toLogFriendlyString(); field public static final int FOCUS_POLICY_DUCKING_DEFAULT = 0; // 0x0 field public static final int FOCUS_POLICY_DUCKING_IN_APP = 0; // 0x0 @@ -1293,6 +1941,15 @@ package android.media.audiopolicy { } +package android.media.tv { + + public final class TvInputManager { + method public void addHardwareDevice(int); + method public void removeHardwareDevice(int); + } + +} + package android.metrics { public class LogMaker { @@ -1341,18 +1998,61 @@ package android.net { public class CaptivePortal implements android.os.Parcelable { method public void logEvent(int, @NonNull String); + method @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public void reevaluateNetwork(); method public void useNetwork(); + field public static final int APP_REQUEST_REEVALUATION_REQUIRED = 100; // 0x64 field public static final int APP_RETURN_DISMISSED = 0; // 0x0 field public static final int APP_RETURN_UNWANTED = 1; // 0x1 field public static final int APP_RETURN_WANTED_AS_IS = 2; // 0x2 } + public final class CaptivePortalData implements android.os.Parcelable { + method public int describeContents(); + method public long getByteLimit(); + method public long getExpiryTimeMillis(); + method public long getRefreshTimeMillis(); + method @Nullable public android.net.Uri getUserPortalUrl(); + method @Nullable public android.net.Uri getVenueInfoUrl(); + method public boolean isCaptive(); + method public boolean isSessionExtendable(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.net.CaptivePortalData> CREATOR; + } + + public static class CaptivePortalData.Builder { + ctor public CaptivePortalData.Builder(); + ctor public CaptivePortalData.Builder(@Nullable android.net.CaptivePortalData); + method @NonNull public android.net.CaptivePortalData build(); + method @NonNull public android.net.CaptivePortalData.Builder setBytesRemaining(long); + method @NonNull public android.net.CaptivePortalData.Builder setCaptive(boolean); + method @NonNull public android.net.CaptivePortalData.Builder setExpiryTime(long); + method @NonNull public android.net.CaptivePortalData.Builder setRefreshTime(long); + method @NonNull public android.net.CaptivePortalData.Builder setSessionExtendable(boolean); + method @NonNull public android.net.CaptivePortalData.Builder setUserPortalUrl(@Nullable android.net.Uri); + method @NonNull public android.net.CaptivePortalData.Builder setVenueInfoUrl(@Nullable android.net.Uri); + } + public class ConnectivityManager { + method @RequiresPermission(anyOf={"android.permission.MANAGE_TEST_NETWORKS", android.Manifest.permission.NETWORK_STACK}) public void simulateDataStall(int, long, @NonNull android.net.Network, @NonNull android.os.PersistableBundle); method @RequiresPermission(android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK) public void startCaptivePortalApp(@NonNull android.net.Network, @NonNull android.os.Bundle); field public static final String EXTRA_CAPTIVE_PORTAL_PROBE_SPEC = "android.net.extra.CAPTIVE_PORTAL_PROBE_SPEC"; field public static final String EXTRA_CAPTIVE_PORTAL_USER_AGENT = "android.net.extra.CAPTIVE_PORTAL_USER_AGENT"; } + public class EthernetManager { + method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public android.net.EthernetManager.TetheredInterfaceRequest requestTetheredInterface(@NonNull java.util.concurrent.Executor, @NonNull android.net.EthernetManager.TetheredInterfaceCallback); + method public void setIncludeTestInterfaces(boolean); + } + + public static interface EthernetManager.TetheredInterfaceCallback { + method public void onAvailable(@NonNull String); + method public void onUnavailable(); + } + + public static class EthernetManager.TetheredInterfaceRequest { + method public void release(); + } + public final class IpPrefix implements android.os.Parcelable { ctor public IpPrefix(@NonNull java.net.InetAddress, @IntRange(from=0, to=128) int); ctor public IpPrefix(@NonNull String); @@ -1364,9 +2064,12 @@ package android.net { public class LinkAddress implements android.os.Parcelable { ctor public LinkAddress(@NonNull java.net.InetAddress, @IntRange(from=0, to=128) int, int, int); + ctor public LinkAddress(@NonNull java.net.InetAddress, @IntRange(from=0, to=128) int, int, int, long, long); ctor public LinkAddress(@NonNull java.net.InetAddress, @IntRange(from=0, to=128) int); ctor public LinkAddress(@NonNull String); ctor public LinkAddress(@NonNull String, int, int); + method public long getDeprecationTime(); + method public long getExpirationTime(); method public boolean isGlobalPreferred(); method public boolean isIpv4(); method public boolean isIpv6(); @@ -1375,9 +2078,11 @@ package android.net { public final class LinkProperties implements android.os.Parcelable { ctor public LinkProperties(@Nullable android.net.LinkProperties); + ctor public LinkProperties(@Nullable android.net.LinkProperties, boolean); method public boolean addDnsServer(@NonNull java.net.InetAddress); method public boolean addLinkAddress(@NonNull android.net.LinkAddress); - method @Nullable public android.net.IpPrefix getNat64Prefix(); + method @Nullable public android.net.Uri getCaptivePortalApiUrl(); + method @Nullable public android.net.CaptivePortalData getCaptivePortalData(); method @NonNull public java.util.List<java.net.InetAddress> getPcscfServers(); method @Nullable public String getTcpBufferSizes(); method @NonNull public java.util.List<java.net.InetAddress> getValidatedPrivateDnsServers(); @@ -1391,7 +2096,8 @@ package android.net { method public boolean removeDnsServer(@NonNull java.net.InetAddress); method public boolean removeLinkAddress(@NonNull android.net.LinkAddress); method public boolean removeRoute(@NonNull android.net.RouteInfo); - method public void setNat64Prefix(@Nullable android.net.IpPrefix); + method public void setCaptivePortalApiUrl(@Nullable android.net.Uri); + method public void setCaptivePortalData(@Nullable android.net.CaptivePortalData); method public void setPcscfServers(@NonNull java.util.Collection<java.net.InetAddress>); method public void setPrivateDnsServerName(@Nullable String); method public void setTcpBufferSizes(@Nullable String); @@ -1401,17 +2107,42 @@ package android.net { public class Network implements android.os.Parcelable { ctor public Network(@NonNull android.net.Network); + method public int getNetId(); method @NonNull public android.net.Network getPrivateDnsBypassingCopy(); } public final class NetworkCapabilities implements android.os.Parcelable { + method @NonNull public int[] getAdministratorUids(); method public int[] getCapabilities(); + method @Nullable public String getSsid(); method @NonNull public int[] getTransportTypes(); method public boolean satisfiedByNetworkCapabilities(@Nullable android.net.NetworkCapabilities); field public static final int TRANSPORT_TEST = 7; // 0x7 } + public static final class NetworkCapabilities.Builder { + ctor public NetworkCapabilities.Builder(); + ctor public NetworkCapabilities.Builder(@NonNull android.net.NetworkCapabilities); + method @NonNull public android.net.NetworkCapabilities.Builder addCapability(int); + method @NonNull public android.net.NetworkCapabilities.Builder addTransportType(int); + method @NonNull public android.net.NetworkCapabilities build(); + method @NonNull public android.net.NetworkCapabilities.Builder removeCapability(int); + method @NonNull public android.net.NetworkCapabilities.Builder removeTransportType(int); + method @NonNull @RequiresPermission("android.permission.NETWORK_FACTORY") public android.net.NetworkCapabilities.Builder setAdministratorUids(@NonNull int[]); + method @NonNull public android.net.NetworkCapabilities.Builder setLinkDownstreamBandwidthKbps(int); + method @NonNull public android.net.NetworkCapabilities.Builder setLinkUpstreamBandwidthKbps(int); + method @NonNull public android.net.NetworkCapabilities.Builder setNetworkSpecifier(@Nullable android.net.NetworkSpecifier); + method @NonNull @RequiresPermission("android.permission.NETWORK_FACTORY") public android.net.NetworkCapabilities.Builder setOwnerUid(int); + method @NonNull @RequiresPermission("android.permission.NETWORK_FACTORY") public android.net.NetworkCapabilities.Builder setRequestorPackageName(@Nullable String); + method @NonNull @RequiresPermission("android.permission.NETWORK_FACTORY") public android.net.NetworkCapabilities.Builder setRequestorUid(int); + method @NonNull @RequiresPermission("android.permission.NETWORK_SIGNAL_STRENGTH_WAKEUP") public android.net.NetworkCapabilities.Builder setSignalStrength(int); + method @NonNull @RequiresPermission("android.permission.NETWORK_FACTORY") public android.net.NetworkCapabilities.Builder setSsid(@Nullable String); + method @NonNull public android.net.NetworkCapabilities.Builder setTransportInfo(@Nullable android.net.TransportInfo); + } + public class NetworkStack { + method @Nullable public static android.os.IBinder getService(); + method public static void setServiceForTest(@Nullable android.os.IBinder); field public static final String PERMISSION_MAINLINE_NETWORK_STACK = "android.permission.MAINLINE_NETWORK_STACK"; } @@ -1463,6 +2194,100 @@ package android.net { method public void teardownTestNetwork(@NonNull android.net.Network); } + public final class TetheredClient implements android.os.Parcelable { + ctor public TetheredClient(@NonNull android.net.MacAddress, @NonNull java.util.Collection<android.net.TetheredClient.AddressInfo>, int); + method public int describeContents(); + method @NonNull public java.util.List<android.net.TetheredClient.AddressInfo> getAddresses(); + method @NonNull public android.net.MacAddress getMacAddress(); + method public int getTetheringType(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.net.TetheredClient> CREATOR; + } + + public static final class TetheredClient.AddressInfo implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.net.LinkAddress getAddress(); + method @Nullable public String getHostname(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.net.TetheredClient.AddressInfo> CREATOR; + } + + public class TetheringManager { + method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public void registerTetheringEventCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.TetheringManager.TetheringEventCallback); + method @RequiresPermission(anyOf={"android.permission.TETHER_PRIVILEGED", android.Manifest.permission.WRITE_SETTINGS}) public void requestLatestTetheringEntitlementResult(int, boolean, @NonNull java.util.concurrent.Executor, @NonNull android.net.TetheringManager.OnTetheringEntitlementResultListener); + method @RequiresPermission(anyOf={"android.permission.TETHER_PRIVILEGED", android.Manifest.permission.WRITE_SETTINGS}) public void startTethering(@NonNull android.net.TetheringManager.TetheringRequest, @NonNull java.util.concurrent.Executor, @NonNull android.net.TetheringManager.StartTetheringCallback); + method @RequiresPermission(anyOf={"android.permission.TETHER_PRIVILEGED", android.Manifest.permission.WRITE_SETTINGS}) public void stopAllTethering(); + method @RequiresPermission(anyOf={"android.permission.TETHER_PRIVILEGED", android.Manifest.permission.WRITE_SETTINGS}) public void stopTethering(int); + method @RequiresPermission(anyOf={"android.permission.TETHER_PRIVILEGED", android.Manifest.permission.ACCESS_NETWORK_STATE}) public void unregisterTetheringEventCallback(@NonNull android.net.TetheringManager.TetheringEventCallback); + field public static final String ACTION_TETHER_STATE_CHANGED = "android.net.conn.TETHER_STATE_CHANGED"; + field public static final String EXTRA_ACTIVE_LOCAL_ONLY = "android.net.extra.ACTIVE_LOCAL_ONLY"; + field public static final String EXTRA_ACTIVE_TETHER = "tetherArray"; + field public static final String EXTRA_AVAILABLE_TETHER = "availableArray"; + field public static final String EXTRA_ERRORED_TETHER = "erroredArray"; + field public static final int TETHERING_BLUETOOTH = 2; // 0x2 + field public static final int TETHERING_ETHERNET = 5; // 0x5 + field public static final int TETHERING_INVALID = -1; // 0xffffffff + field public static final int TETHERING_NCM = 4; // 0x4 + field public static final int TETHERING_USB = 1; // 0x1 + field public static final int TETHERING_WIFI = 0; // 0x0 + field public static final int TETHERING_WIFI_P2P = 3; // 0x3 + field public static final int TETHER_ERROR_DHCPSERVER_ERROR = 12; // 0xc + field public static final int TETHER_ERROR_DISABLE_FORWARDING_ERROR = 9; // 0x9 + field public static final int TETHER_ERROR_ENABLE_FORWARDING_ERROR = 8; // 0x8 + field public static final int TETHER_ERROR_ENTITLEMENT_UNKNOWN = 13; // 0xd + field public static final int TETHER_ERROR_IFACE_CFG_ERROR = 10; // 0xa + field public static final int TETHER_ERROR_INTERNAL_ERROR = 5; // 0x5 + field public static final int TETHER_ERROR_NO_ACCESS_TETHERING_PERMISSION = 15; // 0xf + field public static final int TETHER_ERROR_NO_CHANGE_TETHERING_PERMISSION = 14; // 0xe + field public static final int TETHER_ERROR_NO_ERROR = 0; // 0x0 + field public static final int TETHER_ERROR_PROVISIONING_FAILED = 11; // 0xb + field public static final int TETHER_ERROR_SERVICE_UNAVAIL = 2; // 0x2 + field public static final int TETHER_ERROR_TETHER_IFACE_ERROR = 6; // 0x6 + field public static final int TETHER_ERROR_UNAVAIL_IFACE = 4; // 0x4 + field public static final int TETHER_ERROR_UNKNOWN_IFACE = 1; // 0x1 + field public static final int TETHER_ERROR_UNKNOWN_TYPE = 16; // 0x10 + field public static final int TETHER_ERROR_UNSUPPORTED = 3; // 0x3 + field public static final int TETHER_ERROR_UNTETHER_IFACE_ERROR = 7; // 0x7 + field public static final int TETHER_HARDWARE_OFFLOAD_FAILED = 2; // 0x2 + field public static final int TETHER_HARDWARE_OFFLOAD_STARTED = 1; // 0x1 + field public static final int TETHER_HARDWARE_OFFLOAD_STOPPED = 0; // 0x0 + } + + public static interface TetheringManager.OnTetheringEntitlementResultListener { + method public void onTetheringEntitlementResult(int); + } + + public static interface TetheringManager.StartTetheringCallback { + method public default void onTetheringFailed(int); + method public default void onTetheringStarted(); + } + + public static interface TetheringManager.TetheringEventCallback { + method public default void onClientsChanged(@NonNull java.util.Collection<android.net.TetheredClient>); + method public default void onError(@NonNull String, int); + method public default void onOffloadStatusChanged(int); + method public default void onTetherableInterfacesChanged(@NonNull java.util.List<java.lang.String>); + method public default void onTetheredInterfacesChanged(@NonNull java.util.List<java.lang.String>); + method public default void onTetheringSupported(boolean); + method public default void onUpstreamChanged(@Nullable android.net.Network); + } + + public static class TetheringManager.TetheringRequest { + method @Nullable public android.net.LinkAddress getClientStaticIpv4Address(); + method @Nullable public android.net.LinkAddress getLocalIpv4Address(); + method public boolean getShouldShowEntitlementUi(); + method public int getTetheringType(); + method public boolean isExemptFromEntitlementCheck(); + } + + public static class TetheringManager.TetheringRequest.Builder { + ctor public TetheringManager.TetheringRequest.Builder(int); + method @NonNull public android.net.TetheringManager.TetheringRequest build(); + method @NonNull @RequiresPermission("android.permission.TETHER_PRIVILEGED") public android.net.TetheringManager.TetheringRequest.Builder setExemptFromEntitlementCheck(boolean); + method @NonNull @RequiresPermission("android.permission.TETHER_PRIVILEGED") public android.net.TetheringManager.TetheringRequest.Builder setShouldShowEntitlementUi(boolean); + method @NonNull @RequiresPermission("android.permission.TETHER_PRIVILEGED") public android.net.TetheringManager.TetheringRequest.Builder setStaticIpv4Addresses(@NonNull android.net.LinkAddress, @NonNull android.net.LinkAddress); + } + public class TrafficStats { method public static long getLoopbackRxBytes(); method public static long getLoopbackRxPackets(); @@ -1653,7 +2478,8 @@ package android.net.util { method public static void closeSocket(@Nullable java.io.FileDescriptor) throws java.io.IOException; method @NonNull public static java.net.SocketAddress makeNetlinkSocketAddress(int, int); method @NonNull public static java.net.SocketAddress makePacketSocketAddress(int, int); - method @NonNull public static java.net.SocketAddress makePacketSocketAddress(int, @NonNull byte[]); + method @Deprecated @NonNull public static java.net.SocketAddress makePacketSocketAddress(int, @NonNull byte[]); + method @NonNull public static java.net.SocketAddress makePacketSocketAddress(int, int, @NonNull byte[]); } } @@ -1666,6 +2492,7 @@ package android.os { public final class BugreportManager { method @RequiresPermission(android.Manifest.permission.DUMP) public void cancelBugreport(); + method @RequiresPermission(android.Manifest.permission.DUMP) public void requestBugreport(@NonNull android.os.BugreportParams, @Nullable CharSequence, @Nullable CharSequence); method @RequiresPermission(android.Manifest.permission.DUMP) public void startBugreport(@NonNull android.os.ParcelFileDescriptor, @Nullable android.os.ParcelFileDescriptor, @NonNull android.os.BugreportParams, @NonNull java.util.concurrent.Executor, @NonNull android.os.BugreportManager.BugreportCallback); } @@ -1698,6 +2525,7 @@ package android.os { } public static class Build.VERSION { + field public static final String[] ACTIVE_CODENAMES; field public static final int FIRST_SDK_INT; field public static final int RESOURCES_SDK_INT; } @@ -1709,12 +2537,28 @@ package android.os { public class Environment { method public static java.io.File buildPath(java.io.File, java.lang.String...); + method @NonNull public static java.io.File getOdmDirectory(); + method @NonNull public static java.io.File getOemDirectory(); method @NonNull public static java.io.File getProductDirectory(); - method @NonNull public static java.io.File getStorageDirectory(); + method @NonNull public static java.io.File getSystemExtDirectory(); + method @NonNull public static java.io.File getVendorDirectory(); } public final class FileUtils { method public static boolean contains(java.io.File, java.io.File); + method @NonNull public static byte[] digest(@NonNull java.io.File, @NonNull String) throws java.io.IOException, java.security.NoSuchAlgorithmException; + method @NonNull public static byte[] digest(@NonNull java.io.InputStream, @NonNull String) throws java.io.IOException, java.security.NoSuchAlgorithmException; + } + + public class HidlMemory implements java.io.Closeable { + ctor public HidlMemory(@NonNull String, @IntRange(from=0) long, @Nullable android.os.NativeHandle); + method public void close() throws java.io.IOException; + method @NonNull public android.os.HidlMemory dup() throws java.io.IOException; + method protected void finalize(); + method @Nullable public android.os.NativeHandle getHandle(); + method @NonNull public String getName(); + method public long getSize(); + method @Nullable public android.os.NativeHandle releaseHandle(); } public abstract class HwBinder implements android.os.IHwBinder { @@ -1740,6 +2584,7 @@ package android.os { method public final void copyToInt8Array(long, byte[], int); method public final boolean getBool(long); method public final double getDouble(long); + method public final long getFieldHandle(long); method public final float getFloat(long); method public final short getInt16(long); method public final int getInt32(long); @@ -1754,6 +2599,7 @@ package android.os { method public final void putDoubleArray(long, double[]); method public final void putFloat(long, float); method public final void putFloatArray(long, float[]); + method public final void putHidlMemory(long, @NonNull android.os.HidlMemory); method public final void putInt16(long, short); method public final void putInt16Array(long, short[]); method public final void putInt32(long, int); @@ -1782,9 +2628,11 @@ package android.os { method public final double readDouble(); method public final java.util.ArrayList<java.lang.Double> readDoubleVector(); method public final android.os.HwBlob readEmbeddedBuffer(long, long, long, boolean); + method @NonNull @Nullable public final android.os.HidlMemory readEmbeddedHidlMemory(long, long, long); method @Nullable public final android.os.NativeHandle readEmbeddedNativeHandle(long, long); method public final float readFloat(); method public final java.util.ArrayList<java.lang.Float> readFloatVector(); + method @NonNull public final android.os.HidlMemory readHidlMemory(); method public final short readInt16(); method public final java.util.ArrayList<java.lang.Short> readInt16Vector(); method public final int readInt32(); @@ -1809,6 +2657,7 @@ package android.os { method public final void writeDoubleVector(java.util.ArrayList<java.lang.Double>); method public final void writeFloat(float); method public final void writeFloatVector(java.util.ArrayList<java.lang.Float>); + method public final void writeHidlMemory(@NonNull android.os.HidlMemory); method public final void writeInt16(short); method public final void writeInt16Vector(java.util.ArrayList<java.lang.Short>); method public final void writeInt32(int); @@ -1827,9 +2676,6 @@ package android.os { field public static final int STATUS_SUCCESS = 0; // 0x0 } - @IntDef(prefix={"STATUS_"}, value={android.os.HwParcel.STATUS_SUCCESS}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface HwParcel.Status { - } - public interface IHwBinder { method public boolean linkToDeath(android.os.IHwBinder.DeathRecipient, long); method public android.os.IHwInterface queryLocalInterface(String); @@ -1850,11 +2696,13 @@ package android.os { method @RequiresPermission("android.permission.REQUEST_INCIDENT_REPORT_APPROVAL") public void cancelAuthorization(android.os.IncidentManager.AuthListener); method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void deleteIncidentReports(android.net.Uri); method @RequiresPermission(android.Manifest.permission.APPROVE_INCIDENT_REPORTS) public void denyReport(android.net.Uri); - method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) @Nullable public android.os.IncidentManager.IncidentReport getIncidentReport(android.net.Uri); - method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) @NonNull public java.util.List<android.net.Uri> getIncidentReportList(String); + method @Nullable @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public android.os.IncidentManager.IncidentReport getIncidentReport(android.net.Uri); + method @NonNull @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public java.util.List<android.net.Uri> getIncidentReportList(String); method @RequiresPermission(android.Manifest.permission.APPROVE_INCIDENT_REPORTS) public java.util.List<android.os.IncidentManager.PendingReport> getPendingReports(); + method public void registerSection(int, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.os.IncidentManager.DumpCallback); method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void reportIncident(android.os.IncidentReportArgs); method @RequiresPermission("android.permission.REQUEST_INCIDENT_REPORT_APPROVAL") public void requestAuthorization(int, String, int, android.os.IncidentManager.AuthListener); + method public void unregisterSection(int); field public static final int FLAG_CONFIRMATION_DIALOG = 1; // 0x1 field public static final int PRIVACY_POLICY_AUTO = 200; // 0xc8 field public static final int PRIVACY_POLICY_EXPLICIT = 100; // 0x64 @@ -1867,6 +2715,11 @@ package android.os { method public void onReportDenied(); } + public static class IncidentManager.DumpCallback { + ctor public IncidentManager.DumpCallback(); + method public void onDumpSection(int, @NonNull java.io.OutputStream); + } + public static class IncidentManager.IncidentReport implements java.io.Closeable android.os.Parcelable { ctor public IncidentManager.IncidentReport(android.os.Parcel); method public void close(); @@ -1920,7 +2773,9 @@ package android.os { } public final class Parcel { + method public boolean allowSquashing(); method public int readExceptionCode(); + method public void restoreAllowSquashing(boolean); } public class ParcelFileDescriptor implements java.io.Closeable android.os.Parcelable { @@ -1935,6 +2790,16 @@ package android.os { field public static final int POWER_SAVE_MODE_TRIGGER_PERCENTAGE = 0; // 0x0 } + public class PowerWhitelistManager { + method @RequiresPermission("android.permission.DEVICE_POWER") public void addToWhitelist(@NonNull String); + method @RequiresPermission("android.permission.DEVICE_POWER") public void addToWhitelist(@NonNull java.util.List<java.lang.String>); + method @RequiresPermission("android.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST") public void whitelistAppTemporarily(@NonNull String, long); + method @RequiresPermission("android.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST") public long whitelistAppTemporarilyForEvent(@NonNull String, int, @NonNull String); + field public static final int EVENT_MMS = 2; // 0x2 + field public static final int EVENT_SMS = 1; // 0x1 + field public static final int EVENT_UNSPECIFIED = 0; // 0x0 + } + public class Process { method public static final int getThreadScheduler(int) throws java.lang.IllegalArgumentException; field public static final int FIRST_APP_ZYGOTE_ISOLATED_UID = 90000; // 0x15f90 @@ -1989,26 +2854,55 @@ package android.os { method public void log(android.os.StrictMode.ViolationInfo); } + public static final class StrictMode.VmPolicy.Builder { + method @NonNull public android.os.StrictMode.VmPolicy.Builder detectIncorrectContextUse(); + method @NonNull public android.os.StrictMode.VmPolicy.Builder permitIncorrectContextUse(); + } + + public class SystemConfigManager { + method @NonNull @RequiresPermission("android.permission.READ_CARRIER_APP_INFO") public java.util.Set<java.lang.String> getDisabledUntilUsedPreinstalledCarrierApps(); + method @NonNull @RequiresPermission("android.permission.READ_CARRIER_APP_INFO") public java.util.Map<java.lang.String,java.util.List<java.lang.String>> getDisabledUntilUsedPreinstalledCarrierAssociatedApps(); + } + public class SystemProperties { method @NonNull public static String get(@NonNull String); method @NonNull public static String get(@NonNull String, @Nullable String); method public static boolean getBoolean(@NonNull String, boolean); + method public static int getInt(@NonNull String, int); + method public static long getLong(@NonNull String, long); } public final class UserHandle implements android.os.Parcelable { method public static int getAppId(int); method public int getIdentifier(); + method public static int getUid(int, int); + method public static int getUserId(int); method public static boolean isApp(int); + method public static int myUserId(); + method public static android.os.UserHandle of(int); field @NonNull public static final android.os.UserHandle ALL; field @NonNull public static final android.os.UserHandle CURRENT; + field public static final int MIN_SECONDARY_USER_ID = 10; // 0xa field @NonNull public static final android.os.UserHandle SYSTEM; + field public static final int USER_ALL = -1; // 0xffffffff + field public static final int USER_NULL = -10000; // 0xffffd8f0 + field public static final int USER_SYSTEM = 0; // 0x0 } public class UserManager { + method @RequiresPermission(anyOf={"android.permission.MANAGE_USERS", "android.permission.CREATE_USERS"}) public boolean hasBaseUserRestriction(@NonNull String, @NonNull android.os.UserHandle); method public static boolean isSplitSystemUser(); field public static final String ACTION_USER_RESTRICTIONS_CHANGED = "android.os.action.USER_RESTRICTIONS_CHANGED"; } + public final class VibrationAttributes implements android.os.Parcelable { + method @Deprecated @NonNull public android.media.AudioAttributes getAudioAttributes(); + } + + public static final class VibrationAttributes.Builder { + ctor public VibrationAttributes.Builder(@NonNull android.media.AudioAttributes, @Nullable android.os.VibrationEffect); + } + public abstract class VibrationEffect implements android.os.Parcelable { method public static android.os.VibrationEffect get(int); method public static android.os.VibrationEffect get(int, boolean); @@ -2061,6 +2955,17 @@ package android.os { field @NonNull public static final android.os.Parcelable.Creator<android.os.VibrationEffect.Waveform> CREATOR; } + public abstract class Vibrator { + method @RequiresPermission("android.permission.ACCESS_VIBRATOR_STATE") public void addVibratorStateListener(@NonNull android.os.Vibrator.OnVibratorStateChangedListener); + method @RequiresPermission("android.permission.ACCESS_VIBRATOR_STATE") public void addVibratorStateListener(@NonNull java.util.concurrent.Executor, @NonNull android.os.Vibrator.OnVibratorStateChangedListener); + method @RequiresPermission("android.permission.ACCESS_VIBRATOR_STATE") public boolean isVibrating(); + method @RequiresPermission("android.permission.ACCESS_VIBRATOR_STATE") public void removeVibratorStateListener(@NonNull android.os.Vibrator.OnVibratorStateChangedListener); + } + + public static interface Vibrator.OnVibratorStateChangedListener { + method public void onVibratorStateChanged(boolean); + } + public class VintfObject { method public static String[] getHalNamesAndVersions(); method public static String getSepolicyVersion(); @@ -2084,10 +2989,12 @@ package android.os { method public boolean add(int); method public boolean add(int, String); method @Deprecated public android.os.WorkSource addReturningNewbs(android.os.WorkSource); - method public int get(int); - method public String getName(int); + method @Nullable public String getPackageName(int); + method public int getUid(int); + method public boolean isEmpty(); method @Deprecated public android.os.WorkSource[] setReturningDiffs(android.os.WorkSource); method public int size(); + method @NonNull public android.os.WorkSource withoutNames(); } } @@ -2179,6 +3086,17 @@ package android.os.image { package android.os.storage { + public final class CrateInfo implements android.os.Parcelable { + ctor public CrateInfo(@NonNull CharSequence, long); + ctor public CrateInfo(@NonNull CharSequence); + method @Nullable public static android.os.storage.CrateInfo copyFrom(int, @Nullable String, @Nullable String); + method public int describeContents(); + method public long getExpirationMillis(); + method @NonNull public CharSequence getLabel(); + method public void writeToParcel(@Nullable android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.os.storage.CrateInfo> CREATOR; + } + public class StorageManager { method public static boolean hasIsolatedStorage(); } @@ -2199,14 +3117,23 @@ package android.os.strictmode { package android.permission { public final class PermissionControllerManager { + method @RequiresPermission(anyOf={"android.permission.GRANT_RUNTIME_PERMISSIONS", "android.permission.RESTORE_RUNTIME_PERMISSIONS"}) public void applyStagedRuntimePermissionBackup(@NonNull String, @NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>); + method @RequiresPermission("android.permission.GET_RUNTIME_PERMISSIONS") public void countPermissionApps(@NonNull java.util.List<java.lang.String>, int, @NonNull android.permission.PermissionControllerManager.OnCountPermissionAppsResultCallback, @Nullable android.os.Handler); method @RequiresPermission("android.permission.GET_RUNTIME_PERMISSIONS") public void getAppPermissions(@NonNull String, @NonNull android.permission.PermissionControllerManager.OnGetAppPermissionResultCallback, @Nullable android.os.Handler); + method @RequiresPermission("android.permission.GET_RUNTIME_PERMISSIONS") public void getRuntimePermissionBackup(@NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<byte[]>); + method @RequiresPermission("android.permission.REVOKE_RUNTIME_PERMISSIONS") public void revokeRuntimePermission(@NonNull String, @NonNull String); method @RequiresPermission("android.permission.REVOKE_RUNTIME_PERMISSIONS") public void revokeRuntimePermissions(@NonNull java.util.Map<java.lang.String,java.util.List<java.lang.String>>, boolean, int, @NonNull java.util.concurrent.Executor, @NonNull android.permission.PermissionControllerManager.OnRevokeRuntimePermissionsCallback); + method @RequiresPermission(anyOf={"android.permission.GRANT_RUNTIME_PERMISSIONS", "android.permission.RESTORE_RUNTIME_PERMISSIONS"}) public void stageAndApplyRuntimePermissionsBackup(@NonNull byte[], @NonNull android.os.UserHandle); field public static final int COUNT_ONLY_WHEN_GRANTED = 1; // 0x1 field public static final int COUNT_WHEN_SYSTEM = 2; // 0x2 field public static final int REASON_INSTALLER_POLICY_VIOLATION = 2; // 0x2 field public static final int REASON_MALWARE = 1; // 0x1 } + public static interface PermissionControllerManager.OnCountPermissionAppsResultCallback { + method public void onCountPermissionApps(int); + } + public static interface PermissionControllerManager.OnGetAppPermissionResultCallback { method public void onGetAppPermissions(@NonNull java.util.List<android.permission.RuntimePermissionPresentationInfo>); } @@ -2217,9 +3144,9 @@ package android.permission { } public final class PermissionManager { - method @IntRange(from=0) @RequiresPermission("android.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY") public int getRuntimePermissionsVersion(); + method @IntRange(from=0) @RequiresPermission(anyOf={"android.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY", android.Manifest.permission.UPGRADE_RUNTIME_PERMISSIONS}) public int getRuntimePermissionsVersion(); method @NonNull public java.util.List<android.permission.PermissionManager.SplitPermissionInfo> getSplitPermissions(); - method @RequiresPermission("android.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY") public void setRuntimePermissionsVersion(@IntRange(from=0) int); + method @RequiresPermission(anyOf={"android.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY", android.Manifest.permission.UPGRADE_RUNTIME_PERMISSIONS}) public void setRuntimePermissionsVersion(@IntRange(from=0) int); } public static final class PermissionManager.SplitPermissionInfo { @@ -2255,6 +3182,11 @@ package android.print { package android.provider { + public interface AndroidDeviceConfig { + field public static final String KEY_SYSTEM_GESTURES_EXCLUDED_BY_PRE_Q_STICKY_IMMERSIVE = "system_gestures_excluded_by_pre_q_sticky_immersive"; + field public static final String KEY_SYSTEM_GESTURE_EXCLUSION_LIMIT_DP = "system_gesture_exclusion_limit_dp"; + } + public static final class CalendarContract.Calendars implements android.provider.BaseColumns android.provider.CalendarContract.CalendarColumns android.provider.CalendarContract.SyncColumns { field public static final String[] SYNC_WRITABLE_COLUMNS; } @@ -2285,17 +3217,25 @@ package android.provider { method @RequiresPermission("android.permission.READ_DEVICE_CONFIG") public static float getFloat(@NonNull String, @NonNull String, float); method @RequiresPermission("android.permission.READ_DEVICE_CONFIG") public static int getInt(@NonNull String, @NonNull String, int); method @RequiresPermission("android.permission.READ_DEVICE_CONFIG") public static long getLong(@NonNull String, @NonNull String, long); + method @NonNull @RequiresPermission("android.permission.READ_DEVICE_CONFIG") public static android.provider.DeviceConfig.Properties getProperties(@NonNull String, @NonNull java.lang.String...); method @RequiresPermission("android.permission.READ_DEVICE_CONFIG") public static String getProperty(@NonNull String, @NonNull String); method @RequiresPermission("android.permission.READ_DEVICE_CONFIG") public static String getString(@NonNull String, @NonNull String, @Nullable String); method public static void removeOnPropertiesChangedListener(@NonNull android.provider.DeviceConfig.OnPropertiesChangedListener); method @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static void resetToDefaults(int, @Nullable String); + method @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static boolean setProperties(@NonNull android.provider.DeviceConfig.Properties) throws android.provider.DeviceConfig.BadConfigException; method @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static boolean setProperty(@NonNull String, @NonNull String, @Nullable String, boolean); + field public static final String NAMESPACE_ANDROID = "android"; field public static final String NAMESPACE_AUTOFILL = "autofill"; + field public static final String NAMESPACE_BIOMETRICS = "biometrics"; field public static final String NAMESPACE_CONTENT_CAPTURE = "content_capture"; + field public static final String NAMESPACE_PERMISSIONS = "permissions"; field public static final String NAMESPACE_PRIVACY = "privacy"; field public static final String NAMESPACE_ROLLBACK = "rollback"; field public static final String NAMESPACE_ROLLBACK_BOOT = "rollback_boot"; - field public static final String NAMESPACE_WINDOW_MANAGER = "android:window_manager"; + } + + public static class DeviceConfig.BadConfigException extends java.lang.Exception { + ctor public DeviceConfig.BadConfigException(); } public static interface DeviceConfig.OnPropertiesChangedListener { @@ -2312,40 +3252,51 @@ package android.provider { method @Nullable public String getString(@NonNull String, @Nullable String); } - public static interface DeviceConfig.WindowManager { - field public static final String KEY_SYSTEM_GESTURES_EXCLUDED_BY_PRE_Q_STICKY_IMMERSIVE = "system_gestures_excluded_by_pre_q_sticky_immersive"; - field public static final String KEY_SYSTEM_GESTURE_EXCLUSION_LIMIT_DP = "system_gesture_exclusion_limit_dp"; + public static final class DeviceConfig.Properties.Builder { + ctor public DeviceConfig.Properties.Builder(@NonNull String); + method @NonNull public android.provider.DeviceConfig.Properties build(); + method @NonNull public android.provider.DeviceConfig.Properties.Builder setBoolean(@NonNull String, boolean); + method @NonNull public android.provider.DeviceConfig.Properties.Builder setFloat(@NonNull String, float); + method @NonNull public android.provider.DeviceConfig.Properties.Builder setInt(@NonNull String, int); + method @NonNull public android.provider.DeviceConfig.Properties.Builder setLong(@NonNull String, long); + method @NonNull public android.provider.DeviceConfig.Properties.Builder setString(@NonNull String, @Nullable String); + } + + public final class DocumentsContract { + method public static boolean isManageMode(@NonNull android.net.Uri); + method @NonNull public static android.net.Uri setManageMode(@NonNull android.net.Uri); } public final class MediaStore { - method @RequiresPermission(android.Manifest.permission.CLEAR_APP_USER_DATA) public static void deleteContributedMedia(android.content.Context, String, android.os.UserHandle) throws java.io.IOException; - method @RequiresPermission(android.Manifest.permission.CLEAR_APP_USER_DATA) public static long getContributedMediaSize(android.content.Context, String, android.os.UserHandle) throws java.io.IOException; - method @NonNull public static java.io.File getVolumePath(@NonNull String) throws java.io.FileNotFoundException; - method @NonNull public static java.util.Collection<java.io.File> getVolumeScanPaths(@NonNull String) throws java.io.FileNotFoundException; - method public static android.net.Uri scanFile(android.content.Context, java.io.File); - method public static android.net.Uri scanFileFromShell(android.content.Context, java.io.File); - method public static void scanVolume(android.content.Context, java.io.File); + method @NonNull @WorkerThread public static android.net.Uri scanFile(@NonNull android.content.ContentResolver, @NonNull java.io.File); + method @WorkerThread public static void scanVolume(@NonNull android.content.ContentResolver, @NonNull String); + method @WorkerThread public static void waitForIdle(@NonNull android.content.ContentResolver); } public final class Settings { field public static final String ACTION_ENTERPRISE_PRIVACY_SETTINGS = "android.settings.ENTERPRISE_PRIVACY_SETTINGS"; + field public static final String ACTION_MANAGE_APP_OVERLAY_PERMISSION = "android.settings.MANAGE_APP_OVERLAY_PERMISSION"; field public static final String ACTION_REQUEST_ENABLE_CONTENT_CAPTURE = "android.settings.REQUEST_ENABLE_CONTENT_CAPTURE"; + field public static final String ACTION_TETHER_PROVISIONING_UI = "android.settings.TETHER_PROVISIONING_UI"; field public static final int RESET_MODE_PACKAGE_DEFAULTS = 1; // 0x1 } public static final class Settings.Global extends android.provider.Settings.NameValueTable { + field public static final String APP_OPS_CONSTANTS = "app_ops_constants"; field public static final String AUTOFILL_COMPAT_MODE_ALLOWED_PACKAGES = "autofill_compat_mode_allowed_packages"; field public static final String AUTOMATIC_POWER_SAVE_MODE = "automatic_power_save_mode"; field public static final String BATTERY_SAVER_CONSTANTS = "battery_saver_constants"; field public static final String DYNAMIC_POWER_SAVINGS_DISABLE_THRESHOLD = "dynamic_power_savings_disable_threshold"; field public static final String DYNAMIC_POWER_SAVINGS_ENABLED = "dynamic_power_savings_enabled"; field public static final String HIDDEN_API_BLACKLIST_EXEMPTIONS = "hidden_api_blacklist_exemptions"; + field public static final String HIDE_ERROR_DIALOGS = "hide_error_dialogs"; field public static final String LOCATION_GLOBAL_KILL_SWITCH = "location_global_kill_switch"; field public static final String LOCATION_IGNORE_SETTINGS_PACKAGE_WHITELIST = "location_ignore_settings_package_whitelist"; field public static final String LOW_POWER_MODE = "low_power"; field public static final String LOW_POWER_MODE_STICKY = "low_power_sticky"; field public static final String NOTIFICATION_BUBBLES = "notification_bubbles"; field public static final String OVERLAY_DISPLAY_DEVICES = "overlay_display_devices"; + field public static final String TETHER_OFFLOAD_DISABLED = "tether_offload_disabled"; field public static final String USE_OPEN_WIFI_PACKAGE = "use_open_wifi_package"; } @@ -2365,15 +3316,54 @@ package android.provider { field public static final String DOZE_ALWAYS_ON = "doze_always_on"; field @Deprecated public static final String ENABLED_NOTIFICATION_POLICY_ACCESS_PACKAGES = "enabled_notification_policy_access_packages"; field public static final String ENABLED_VR_LISTENERS = "enabled_vr_listeners"; + field public static final String IMMERSIVE_MODE_CONFIRMATIONS = "immersive_mode_confirmations"; field public static final String LOCATION_ACCESS_CHECK_DELAY_MILLIS = "location_access_check_delay_millis"; field public static final String LOCATION_ACCESS_CHECK_INTERVAL_MILLIS = "location_access_check_interval_millis"; + field public static final String LOCK_SCREEN_ALLOW_PRIVATE_NOTIFICATIONS = "lock_screen_allow_private_notifications"; + field public static final String LOCK_SCREEN_SHOW_NOTIFICATIONS = "lock_screen_show_notifications"; + field public static final String NFC_PAYMENT_DEFAULT_COMPONENT = "nfc_payment_default_component"; field public static final String NOTIFICATION_BADGING = "notification_badging"; - field @Deprecated public static final String NOTIFICATION_BUBBLES = "notification_bubbles"; + field public static final String POWER_MENU_LOCKED_SHOW_CONTENT = "power_menu_locked_show_content"; + field public static final String SHOW_IME_WITH_HARD_KEYBOARD = "show_ime_with_hard_keyboard"; field @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public static final String SYNC_PARENT_SOUNDS = "sync_parent_sounds"; field public static final String USER_SETUP_COMPLETE = "user_setup_complete"; field public static final String VOICE_INTERACTION_SERVICE = "voice_interaction_service"; } + public static final class Telephony.CellBroadcasts implements android.provider.BaseColumns { + field public static final String CID = "cid"; + field public static final String CMAS_CATEGORY = "cmas_category"; + field public static final String CMAS_CERTAINTY = "cmas_certainty"; + field public static final String CMAS_MESSAGE_CLASS = "cmas_message_class"; + field public static final String CMAS_RESPONSE_TYPE = "cmas_response_type"; + field public static final String CMAS_SEVERITY = "cmas_severity"; + field public static final String CMAS_URGENCY = "cmas_urgency"; + field @NonNull public static final android.net.Uri CONTENT_URI; + field public static final String DATA_CODING_SCHEME = "dcs"; + field public static final String DEFAULT_SORT_ORDER = "date DESC"; + field public static final String DELIVERY_TIME = "date"; + field public static final String ETWS_WARNING_TYPE = "etws_warning_type"; + field public static final String GEOGRAPHICAL_SCOPE = "geo_scope"; + field public static final String GEOMETRIES = "geometries"; + field public static final String LAC = "lac"; + field public static final String LANGUAGE_CODE = "language"; + field public static final String LOCATION_CHECK_TIME = "location_check_time"; + field public static final String MAXIMUM_WAIT_TIME = "maximum_wait_time"; + field public static final String MESSAGE_BODY = "body"; + field public static final String MESSAGE_BROADCASTED = "message_broadcasted"; + field public static final String MESSAGE_DISPLAYED = "message_displayed"; + field public static final String MESSAGE_FORMAT = "format"; + field @NonNull @RequiresPermission(android.Manifest.permission.READ_CELL_BROADCASTS) public static final android.net.Uri MESSAGE_HISTORY_URI; + field public static final String MESSAGE_PRIORITY = "priority"; + field public static final String MESSAGE_READ = "read"; + field public static final String PLMN = "plmn"; + field public static final String RECEIVED_TIME = "received_time"; + field public static final String SERIAL_NUMBER = "serial_number"; + field public static final String SERVICE_CATEGORY = "service_category"; + field public static final String SLOT_INDEX = "slot_index"; + field public static final String SUBSCRIPTION_ID = "sub_id"; + } + public static final class Telephony.Sms.Intents { field public static final String SMS_CARRIER_PROVISION_ACTION = "android.provider.Telephony.SMS_CARRIER_PROVISION"; } @@ -2396,10 +3386,11 @@ package android.security { package android.security.keystore { public abstract class AttestationUtils { - method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") @NonNull public static java.security.cert.X509Certificate[] attestDeviceIds(android.content.Context, @NonNull int[], @NonNull byte[]) throws android.security.keystore.DeviceIdAttestationException; + method @NonNull @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public static java.security.cert.X509Certificate[] attestDeviceIds(android.content.Context, @NonNull int[], @NonNull byte[]) throws android.security.keystore.DeviceIdAttestationException; field public static final int ID_TYPE_IMEI = 2; // 0x2 field public static final int ID_TYPE_MEID = 3; // 0x3 field public static final int ID_TYPE_SERIAL = 1; // 0x1 + field public static final int USE_INDIVIDUAL_ATTESTATION = 4; // 0x4 } public class DeviceIdAttestationException extends java.lang.Exception { @@ -2442,7 +3433,9 @@ package android.service.appprediction { package android.service.autofill { public abstract class AutofillFieldClassificationService extends android.app.Service { + ctor public AutofillFieldClassificationService(); method public android.os.IBinder onBind(android.content.Intent); + field public static final String REQUIRED_ALGORITHM_CREDIT_CARD = "CREDIT_CARD"; field public static final String REQUIRED_ALGORITHM_EDIT_DISTANCE = "EDIT_DISTANCE"; field public static final String REQUIRED_ALGORITHM_EXACT_MATCH = "EXACT_MATCH"; field public static final String SERVICE_INTERFACE = "android.service.autofill.AutofillFieldClassificationService"; @@ -2472,6 +3465,11 @@ package android.service.autofill { method @Nullable public android.util.SparseArray<android.service.autofill.InternalOnClickAction> getActions(); } + public static final class Dataset.Builder { + ctor public Dataset.Builder(@NonNull android.service.autofill.InlinePresentation); + method @NonNull public android.service.autofill.Dataset.Builder setFieldInlinePresentation(@NonNull android.view.autofill.AutofillId, @Nullable android.view.autofill.AutofillValue, @Nullable java.util.regex.Pattern, @NonNull android.service.autofill.InlinePresentation); + } + public final class DateTransformation extends android.service.autofill.InternalTransformation implements android.os.Parcelable android.service.autofill.Transformation { method public void apply(@NonNull android.service.autofill.ValueFinder, @NonNull android.widget.RemoteViews, int) throws java.lang.Exception; } @@ -2488,6 +3486,15 @@ package android.service.autofill { method public void apply(@NonNull android.service.autofill.ValueFinder, @NonNull android.widget.RemoteViews, int) throws java.lang.Exception; } + public abstract class InlineSuggestionRenderService extends android.app.Service { + ctor public InlineSuggestionRenderService(); + method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent); + method @NonNull public android.os.Bundle onGetInlineSuggestionsRendererInfo(); + method @Nullable public android.view.View onRenderSuggestion(@NonNull android.service.autofill.InlinePresentation, int, int); + method public final void startIntentSender(@NonNull android.content.IntentSender); + field public static final String SERVICE_INTERFACE = "android.service.autofill.InlineSuggestionRenderService"; + } + public abstract class InternalOnClickAction implements android.service.autofill.OnClickAction android.os.Parcelable { ctor public InternalOnClickAction(); method public abstract void onClick(@NonNull android.view.ViewGroup); @@ -2541,9 +3548,11 @@ package android.service.autofill.augmented { ctor public AugmentedAutofillService(); method protected final void dump(java.io.FileDescriptor, java.io.PrintWriter, String[]); method protected void dump(@NonNull java.io.PrintWriter, @NonNull String[]); + method @Nullable public final android.service.autofill.FillEventHistory getFillEventHistory(); method public void onConnected(); method public void onDisconnected(); method public void onFillRequest(@NonNull android.service.autofill.augmented.FillRequest, @NonNull android.os.CancellationSignal, @NonNull android.service.autofill.augmented.FillController, @NonNull android.service.autofill.augmented.FillCallback); + method public final boolean requestAutofill(@NonNull android.content.ComponentName, @NonNull android.view.autofill.AutofillId); field public static final String SERVICE_INTERFACE = "android.service.autofill.augmented.AugmentedAutofillService"; } @@ -2559,6 +3568,7 @@ package android.service.autofill.augmented { method @NonNull public android.content.ComponentName getActivityComponent(); method @NonNull public android.view.autofill.AutofillId getFocusedId(); method @NonNull public android.view.autofill.AutofillValue getFocusedValue(); + method @Nullable public android.view.inputmethod.InlineSuggestionsRequest getInlineSuggestionsRequest(); method @Nullable public android.service.autofill.augmented.PresentationParams getPresentationParams(); method public int getTaskId(); } @@ -2569,7 +3579,9 @@ package android.service.autofill.augmented { public static final class FillResponse.Builder { ctor public FillResponse.Builder(); method @NonNull public android.service.autofill.augmented.FillResponse build(); + method @NonNull public android.service.autofill.augmented.FillResponse.Builder setClientState(@NonNull android.os.Bundle); method @NonNull public android.service.autofill.augmented.FillResponse.Builder setFillWindow(@NonNull android.service.autofill.augmented.FillWindow); + method @NonNull public android.service.autofill.augmented.FillResponse.Builder setInlineSuggestions(@NonNull java.util.List<android.service.autofill.Dataset>); } public final class FillWindow implements java.lang.AutoCloseable { @@ -2611,6 +3623,7 @@ package android.service.contentcapture { method public void onContentCaptureEvent(@NonNull android.view.contentcapture.ContentCaptureSessionId, @NonNull android.view.contentcapture.ContentCaptureEvent); method public void onCreateContentCaptureSession(@NonNull android.view.contentcapture.ContentCaptureContext, @NonNull android.view.contentcapture.ContentCaptureSessionId); method public void onDataRemovalRequest(@NonNull android.view.contentcapture.DataRemovalRequest); + method public void onDataShareRequest(@NonNull android.view.contentcapture.DataShareRequest, @NonNull android.service.contentcapture.DataShareCallback); method public void onDestroyContentCaptureSession(@NonNull android.view.contentcapture.ContentCaptureSessionId); method public void onDisconnected(); method public final void setContentCaptureConditions(@NonNull String, @Nullable java.util.Set<android.view.contentcapture.ContentCaptureCondition>); @@ -2619,6 +3632,16 @@ package android.service.contentcapture { field public static final String SERVICE_META_DATA = "android.content_capture"; } + public interface DataShareCallback { + method public void onAccept(@NonNull java.util.concurrent.Executor, @NonNull android.service.contentcapture.DataShareReadAdapter); + method public void onReject(); + } + + public interface DataShareReadAdapter { + method public void onError(int); + method public void onStart(@NonNull android.os.ParcelFileDescriptor); + } + public final class SnapshotData implements android.os.Parcelable { method public int describeContents(); method @Nullable public android.app.assist.AssistContent getAssistContent(); @@ -2646,6 +3669,7 @@ package android.service.notification { field @NonNull public static final android.os.Parcelable.Creator<android.service.notification.Adjustment> CREATOR; field public static final String KEY_CONTEXTUAL_ACTIONS = "key_contextual_actions"; field public static final String KEY_IMPORTANCE = "key_importance"; + field public static final String KEY_RANKING_SCORE = "key_ranking_score"; field public static final String KEY_SNOOZE_CRITERIA = "key_snooze_criteria"; field public static final String KEY_TEXT_REPLIES = "key_text_replies"; field public static final String KEY_USER_SENTIMENT = "key_user_sentiment"; @@ -2667,7 +3691,10 @@ package android.service.notification { method @Nullable public android.service.notification.Adjustment onNotificationEnqueued(@NonNull android.service.notification.StatusBarNotification, @NonNull android.app.NotificationChannel); method public void onNotificationExpansionChanged(@NonNull String, boolean, boolean); method public abstract void onNotificationSnoozedUntilContext(@NonNull android.service.notification.StatusBarNotification, @NonNull String); + method public void onNotificationVisibilityChanged(@NonNull String, boolean); method public void onNotificationsSeen(@NonNull java.util.List<java.lang.String>); + method public void onPanelHidden(); + method public void onPanelRevealed(int); method public void onSuggestedReplySent(@NonNull String, @NonNull CharSequence, int); method public final void unsnoozeNotification(@NonNull String); field public static final String SERVICE_INTERFACE = "android.service.notification.NotificationAssistantService"; @@ -2723,6 +3750,36 @@ package android.service.notification { } +package android.service.quickaccesswallet { + + public interface QuickAccessWalletClient extends java.io.Closeable { + method public void addWalletServiceEventListener(@NonNull android.service.quickaccesswallet.QuickAccessWalletClient.WalletServiceEventListener); + method public void addWalletServiceEventListener(@NonNull java.util.concurrent.Executor, @NonNull android.service.quickaccesswallet.QuickAccessWalletClient.WalletServiceEventListener); + method @NonNull public static android.service.quickaccesswallet.QuickAccessWalletClient create(@NonNull android.content.Context); + method @Nullable public android.content.Intent createWalletIntent(); + method @Nullable public android.content.Intent createWalletSettingsIntent(); + method public void disconnect(); + method public void getWalletCards(@NonNull android.service.quickaccesswallet.GetWalletCardsRequest, @NonNull android.service.quickaccesswallet.QuickAccessWalletClient.OnWalletCardsRetrievedCallback); + method public void getWalletCards(@NonNull java.util.concurrent.Executor, @NonNull android.service.quickaccesswallet.GetWalletCardsRequest, @NonNull android.service.quickaccesswallet.QuickAccessWalletClient.OnWalletCardsRetrievedCallback); + method public boolean isWalletFeatureAvailable(); + method public boolean isWalletFeatureAvailableWhenDeviceLocked(); + method public boolean isWalletServiceAvailable(); + method public void notifyWalletDismissed(); + method public void removeWalletServiceEventListener(@NonNull android.service.quickaccesswallet.QuickAccessWalletClient.WalletServiceEventListener); + method public void selectWalletCard(@NonNull android.service.quickaccesswallet.SelectWalletCardRequest); + } + + public static interface QuickAccessWalletClient.OnWalletCardsRetrievedCallback { + method public void onWalletCardRetrievalError(@NonNull android.service.quickaccesswallet.GetWalletCardsError); + method public void onWalletCardsRetrieved(@NonNull android.service.quickaccesswallet.GetWalletCardsResponse); + } + + public static interface QuickAccessWalletClient.WalletServiceEventListener { + method public void onWalletServiceEvent(@NonNull android.service.quickaccesswallet.WalletServiceEvent); + } + +} + package android.service.quicksettings { public class TileService extends android.app.Service { @@ -2731,14 +3788,128 @@ package android.service.quicksettings { } +package android.service.textclassifier { + + public abstract class TextClassifierService extends android.app.Service { + ctor public TextClassifierService(); + method @NonNull public static android.view.textclassifier.TextClassifier getDefaultTextClassifierImplementation(@NonNull android.content.Context); + method @Deprecated public final android.view.textclassifier.TextClassifier getLocalTextClassifier(); + method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent); + method @MainThread public abstract void onClassifyText(@Nullable android.view.textclassifier.TextClassificationSessionId, @NonNull android.view.textclassifier.TextClassification.Request, @NonNull android.os.CancellationSignal, @NonNull android.service.textclassifier.TextClassifierService.Callback<android.view.textclassifier.TextClassification>); + method public void onConnected(); + method @MainThread public void onCreateTextClassificationSession(@NonNull android.view.textclassifier.TextClassificationContext, @NonNull android.view.textclassifier.TextClassificationSessionId); + method @MainThread public void onDestroyTextClassificationSession(@NonNull android.view.textclassifier.TextClassificationSessionId); + method @MainThread public void onDetectLanguage(@Nullable android.view.textclassifier.TextClassificationSessionId, @NonNull android.view.textclassifier.TextLanguage.Request, @NonNull android.os.CancellationSignal, @NonNull android.service.textclassifier.TextClassifierService.Callback<android.view.textclassifier.TextLanguage>); + method public void onDisconnected(); + method @MainThread public abstract void onGenerateLinks(@Nullable android.view.textclassifier.TextClassificationSessionId, @NonNull android.view.textclassifier.TextLinks.Request, @NonNull android.os.CancellationSignal, @NonNull android.service.textclassifier.TextClassifierService.Callback<android.view.textclassifier.TextLinks>); + method @Deprecated @MainThread public void onSelectionEvent(@Nullable android.view.textclassifier.TextClassificationSessionId, @NonNull android.view.textclassifier.SelectionEvent); + method @MainThread public void onSuggestConversationActions(@Nullable android.view.textclassifier.TextClassificationSessionId, @NonNull android.view.textclassifier.ConversationActions.Request, @NonNull android.os.CancellationSignal, @NonNull android.service.textclassifier.TextClassifierService.Callback<android.view.textclassifier.ConversationActions>); + method @MainThread public abstract void onSuggestSelection(@Nullable android.view.textclassifier.TextClassificationSessionId, @NonNull android.view.textclassifier.TextSelection.Request, @NonNull android.os.CancellationSignal, @NonNull android.service.textclassifier.TextClassifierService.Callback<android.view.textclassifier.TextSelection>); + method @MainThread public void onTextClassifierEvent(@Nullable android.view.textclassifier.TextClassificationSessionId, @NonNull android.view.textclassifier.TextClassifierEvent); + field public static final String SERVICE_INTERFACE = "android.service.textclassifier.TextClassifierService"; + } + + public static interface TextClassifierService.Callback<T> { + method public void onFailure(@NonNull CharSequence); + method public void onSuccess(T); + } + +} + +package android.service.watchdog { + + public abstract class ExplicitHealthCheckService extends android.app.Service { + ctor public ExplicitHealthCheckService(); + method public final void notifyHealthCheckPassed(@NonNull String); + method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent); + method public abstract void onCancelHealthCheck(@NonNull String); + method @NonNull public abstract java.util.List<java.lang.String> onGetRequestedPackages(); + method @NonNull public abstract java.util.List<android.service.watchdog.ExplicitHealthCheckService.PackageConfig> onGetSupportedPackages(); + method public abstract void onRequestHealthCheck(@NonNull String); + method public void setCallback(@Nullable android.os.RemoteCallback); + field public static final String BIND_PERMISSION = "android.permission.BIND_EXPLICIT_HEALTH_CHECK_SERVICE"; + field public static final String SERVICE_INTERFACE = "android.service.watchdog.ExplicitHealthCheckService"; + } + + public static final class ExplicitHealthCheckService.PackageConfig implements android.os.Parcelable { + ctor public ExplicitHealthCheckService.PackageConfig(@NonNull String, long); + method public int describeContents(); + method public long getHealthCheckTimeoutMillis(); + method @NonNull public String getPackageName(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.service.watchdog.ExplicitHealthCheckService.PackageConfig> CREATOR; + } + +} + package android.telecom { + public final class Call { + method public void enterBackgroundAudioProcessing(); + method public void exitBackgroundAudioProcessing(boolean); + } + + public static class Call.Details { + method public String getTelecomCallId(); + } + public final class CallAudioState implements android.os.Parcelable { ctor public CallAudioState(boolean, int, int, @Nullable android.bluetooth.BluetoothDevice, @NonNull java.util.Collection<android.bluetooth.BluetoothDevice>); } + public static class CallScreeningService.CallResponse.Builder { + method @NonNull public android.telecom.CallScreeningService.CallResponse.Builder setShouldScreenCallViaAudioProcessing(boolean); + } + public abstract class Conference extends android.telecom.Conferenceable { method public android.telecom.Connection getPrimaryConnection(); + method @NonNull public final String getTelecomCallId(); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public final void setAddress(@NonNull android.net.Uri, int); + method public final void setCallerDisplayName(@NonNull String, int); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setConferenceState(boolean); + } + + public abstract class Connection extends android.telecom.Conferenceable { + method @IntRange(from=0) public final long getConnectTimeMillis(); + method public final long getConnectionStartElapsedRealtimeMillis(); + method @Nullable public android.telecom.PhoneAccountHandle getPhoneAccountHandle(); + method @Nullable public final String getTelecomCallId(); + method public final void resetConnectionTime(); + method public void setCallDirection(int); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public final void setConnectTimeMillis(@IntRange(from=0) long); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public final void setConnectionStartElapsedRealtimeMillis(long); + method public void setPhoneAccountHandle(@NonNull android.telecom.PhoneAccountHandle); + method public void setTelecomCallId(@NonNull String); + field public static final int CAPABILITY_CONFERENCE_HAS_NO_CHILDREN = 2097152; // 0x200000 + field public static final int CAPABILITY_SPEED_UP_MT_AUDIO = 262144; // 0x40000 + field public static final String EXTRA_DISABLE_ADD_CALL = "android.telecom.extra.DISABLE_ADD_CALL"; + field public static final int PROPERTY_EMERGENCY_CALLBACK_MODE = 1; // 0x1 + field public static final int PROPERTY_GENERIC_CONFERENCE = 2; // 0x2 + field public static final int PROPERTY_IS_DOWNGRADED_CONFERENCE = 64; // 0x40 + field public static final int PROPERTY_REMOTELY_HOSTED = 2048; // 0x800 + } + + public final class ConnectionRequest implements android.os.Parcelable { + method @Nullable public String getTelecomCallId(); + } + + public static final class ConnectionRequest.Builder { + ctor public ConnectionRequest.Builder(); + method @NonNull public android.telecom.ConnectionRequest build(); + method @NonNull public android.telecom.ConnectionRequest.Builder setAccountHandle(@NonNull android.telecom.PhoneAccountHandle); + method @NonNull public android.telecom.ConnectionRequest.Builder setAddress(@NonNull android.net.Uri); + method @NonNull public android.telecom.ConnectionRequest.Builder setExtras(@NonNull android.os.Bundle); + method @NonNull public android.telecom.ConnectionRequest.Builder setIsAdhocConferenceCall(boolean); + method @NonNull public android.telecom.ConnectionRequest.Builder setParticipants(@Nullable java.util.List<android.net.Uri>); + method @NonNull public android.telecom.ConnectionRequest.Builder setRttPipeFromInCall(@NonNull android.os.ParcelFileDescriptor); + method @NonNull public android.telecom.ConnectionRequest.Builder setRttPipeToInCall(@NonNull android.os.ParcelFileDescriptor); + method @NonNull public android.telecom.ConnectionRequest.Builder setShouldShowIncomingCallUi(boolean); + method @NonNull public android.telecom.ConnectionRequest.Builder setTelecomCallId(@NonNull String); + method @NonNull public android.telecom.ConnectionRequest.Builder setVideoState(int); + } + + public static class PhoneAccount.Builder { + method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.telecom.PhoneAccount.Builder setGroupId(@NonNull String); } public class PhoneAccountSuggestionService extends android.app.Service { @@ -2750,7 +3921,10 @@ package android.telecom { } public class TelecomManager { + method @NonNull public android.content.Intent createLaunchEmergencyDialerIntent(@Nullable String); + method @NonNull @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public java.util.List<android.telecom.PhoneAccountHandle> getCallCapablePhoneAccounts(boolean); method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public int getCurrentTtyMode(); + method @Nullable @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getDefaultDialerPackage(@NonNull android.os.UserHandle); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean isInEmergencyCall(); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setUserSelectedOutgoingPhoneAccount(@Nullable android.telecom.PhoneAccountHandle); field public static final int TTY_MODE_FULL = 1; // 0x1 @@ -2764,8 +3938,51 @@ package android.telecom { package android.telephony { public final class AccessNetworkConstants { - field public static final int TRANSPORT_TYPE_WLAN = 2; // 0x2 - field public static final int TRANSPORT_TYPE_WWAN = 1; // 0x1 + field public static final int TRANSPORT_TYPE_INVALID = -1; // 0xffffffff + } + + public static final class AccessNetworkConstants.NgranBands { + method public static int getFrequencyRangeGroup(int); + field public static final int FREQUENCY_RANGE_GROUP_1 = 1; // 0x1 + field public static final int FREQUENCY_RANGE_GROUP_2 = 2; // 0x2 + field public static final int FREQUENCY_RANGE_GROUP_UNKNOWN = 0; // 0x0 + } + + public final class BarringInfo implements android.os.Parcelable { + ctor public BarringInfo(); + ctor public BarringInfo(@Nullable android.telephony.CellIdentity, @NonNull android.util.SparseArray<android.telephony.BarringInfo.BarringServiceInfo>); + } + + public static final class BarringInfo.BarringServiceInfo implements android.os.Parcelable { + ctor public BarringInfo.BarringServiceInfo(int, boolean, int, int); + } + + public final class CallQuality implements android.os.Parcelable { + ctor public CallQuality(int, int, int, int, int, int, int, int, int, int, int); + ctor public CallQuality(int, int, int, int, int, int, int, int, int, int, int, boolean, boolean, boolean); + method public int describeContents(); + method public int getAverageRelativeJitter(); + method public int getAverageRoundTripTime(); + method public int getCallDuration(); + method public int getCodecType(); + method public int getDownlinkCallQualityLevel(); + method public int getMaxRelativeJitter(); + method public int getNumRtpPacketsNotReceived(); + method public int getNumRtpPacketsReceived(); + method public int getNumRtpPacketsTransmitted(); + method public int getNumRtpPacketsTransmittedLost(); + method public int getUplinkCallQualityLevel(); + method public boolean isIncomingSilenceDetectedAtCallSetup(); + method public boolean isOutgoingSilenceDetectedAtCallSetup(); + method public boolean isRtpInactivityDetected(); + method public void writeToParcel(android.os.Parcel, int); + field public static final int CALL_QUALITY_BAD = 4; // 0x4 + field public static final int CALL_QUALITY_EXCELLENT = 0; // 0x0 + field public static final int CALL_QUALITY_FAIR = 2; // 0x2 + field public static final int CALL_QUALITY_GOOD = 1; // 0x1 + field public static final int CALL_QUALITY_NOT_AVAILABLE = 5; // 0x5 + field public static final int CALL_QUALITY_POOR = 3; // 0x3 + field @NonNull public static final android.os.Parcelable.Creator<android.telephony.CallQuality> CREATOR; } public class CarrierConfigManager { @@ -2804,34 +4021,18 @@ package android.telephony { } public final class NetworkRegistrationInfo implements android.os.Parcelable { - method public int describeContents(); - method public int getAccessNetworkTechnology(); - method @NonNull public java.util.List<java.lang.Integer> getAvailableServices(); - method @Nullable public android.telephony.CellIdentity getCellIdentity(); method @Nullable public android.telephony.DataSpecificRegistrationInfo getDataSpecificInfo(); - method public int getDomain(); method public int getRegistrationState(); method public int getRejectCause(); method public int getRoamingType(); - method public int getTransportType(); method public boolean isEmergencyEnabled(); - method public boolean isRoaming(); method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator<android.telephony.NetworkRegistrationInfo> CREATOR; - field public static final int DOMAIN_CS = 1; // 0x1 - field public static final int DOMAIN_PS = 2; // 0x2 field public static final int REGISTRATION_STATE_DENIED = 3; // 0x3 field public static final int REGISTRATION_STATE_HOME = 1; // 0x1 field public static final int REGISTRATION_STATE_NOT_REGISTERED_OR_SEARCHING = 0; // 0x0 field public static final int REGISTRATION_STATE_NOT_REGISTERED_SEARCHING = 2; // 0x2 field public static final int REGISTRATION_STATE_ROAMING = 5; // 0x5 field public static final int REGISTRATION_STATE_UNKNOWN = 4; // 0x4 - field public static final int SERVICE_TYPE_DATA = 2; // 0x2 - field public static final int SERVICE_TYPE_EMERGENCY = 5; // 0x5 - field public static final int SERVICE_TYPE_SMS = 3; // 0x3 - field public static final int SERVICE_TYPE_UNKNOWN = 0; // 0x0 - field public static final int SERVICE_TYPE_VIDEO = 4; // 0x4 - field public static final int SERVICE_TYPE_VOICE = 1; // 0x1 } public static final class NetworkRegistrationInfo.Builder { @@ -2842,13 +4043,34 @@ package android.telephony { method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setCellIdentity(@Nullable android.telephony.CellIdentity); method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setDomain(int); method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setEmergencyOnly(boolean); + method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setRegisteredPlmn(@Nullable String); method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setRegistrationState(int); method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setRejectCause(int); method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setTransportType(int); } + public class PhoneNumberUtils { + method public static int getMinMatchForTest(); + method @NonNull public static String getUsernameFromUriNumber(@NonNull String); + method public static boolean isUriNumber(@Nullable String); + method public static boolean isVoiceMailNumber(@NonNull android.content.Context, int, @Nullable String); + method public static void setMinMatchForTest(int); + } + + public class PhoneStateListener { + method public void onOutgoingEmergencyCall(@NonNull android.telephony.emergency.EmergencyNumber); + method public void onOutgoingEmergencySms(@NonNull android.telephony.emergency.EmergencyNumber); + field @RequiresPermission("android.permission.READ_ACTIVE_EMERGENCY_SESSION") public static final int LISTEN_OUTGOING_EMERGENCY_CALL = 268435456; // 0x10000000 + field @RequiresPermission("android.permission.READ_ACTIVE_EMERGENCY_SESSION") public static final int LISTEN_OUTGOING_EMERGENCY_SMS = 536870912; // 0x20000000 + } + + public final class PreciseDataConnectionState implements android.os.Parcelable { + ctor @Deprecated public PreciseDataConnectionState(int, int, int, @NonNull String, @Nullable android.net.LinkProperties, int); + } + public class ServiceState implements android.os.Parcelable { method public void addNetworkRegistrationInfo(android.telephony.NetworkRegistrationInfo); + method public int getDataNetworkType(); method public void setCdmaSystemAndNetworkId(int, int); method public void setCellBandwidths(int[]); method public void setChannelNumber(int); @@ -2867,23 +4089,792 @@ package android.telephony { field public static final int SMS_CATEGORY_STANDARD_SHORT_CODE = 2; // 0x2 } + public class SubscriptionManager { + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDefaultVoiceSubscriptionId(int); + field @NonNull public static final android.net.Uri ADVANCED_CALLING_ENABLED_CONTENT_URI; + field @NonNull public static final android.net.Uri VT_ENABLED_CONTENT_URI; + field @NonNull public static final android.net.Uri WFC_ENABLED_CONTENT_URI; + field @NonNull public static final android.net.Uri WFC_MODE_CONTENT_URI; + field @NonNull public static final android.net.Uri WFC_ROAMING_ENABLED_CONTENT_URI; + field @NonNull public static final android.net.Uri WFC_ROAMING_MODE_CONTENT_URI; + } + public class TelephonyManager { + method public int addDevicePolicyOverrideApn(@NonNull android.content.Context, @NonNull android.telephony.data.ApnSetting); method public int checkCarrierPrivilegesForPackage(String); + method @Nullable @RequiresPermission("android.permission.INTERACT_ACROSS_USERS") public android.content.ComponentName getAndUpdateDefaultRespondViaMessageApplication(); method public int getCarrierIdListVersion(); + method public java.util.List<java.lang.String> getCarrierPackageNamesForIntent(android.content.Intent); + method @Nullable @RequiresPermission("android.permission.INTERACT_ACROSS_USERS") public android.content.ComponentName getDefaultRespondViaMessageApplication(); + method @NonNull public java.util.List<android.telephony.data.ApnSetting> getDevicePolicyOverrideApns(@NonNull android.content.Context); + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public int getEmergencyNumberDbVersion(); method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public String getLine1AlphaTag(); method public android.util.Pair<java.lang.Integer,java.lang.Integer> getRadioHalVersion(); + method public boolean modifyDevicePolicyOverrideApn(@NonNull android.content.Context, int, @NonNull android.telephony.data.ApnSetting); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void refreshUiccProfile(); + method @RequiresPermission("android.permission.READ_ACTIVE_EMERGENCY_SESSION") public void resetOtaEmergencyNumberDbFilePath(); method @Deprecated public void setCarrierTestOverride(String, String, String, String, String, String, String); method public void setCarrierTestOverride(String, String, String, String, String, String, String, String, String); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setSystemSelectionChannels(@NonNull java.util.List<android.telephony.RadioAccessSpecifier>, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setSystemSelectionChannels(@NonNull java.util.List<android.telephony.RadioAccessSpecifier>); + method @RequiresPermission("android.permission.READ_ACTIVE_EMERGENCY_SESSION") public void updateOtaEmergencyNumberDbFilePath(@NonNull android.os.ParcelFileDescriptor); field public static final int CARRIER_PRIVILEGE_STATUS_ERROR_LOADING_RULES = -2; // 0xfffffffe field public static final int CARRIER_PRIVILEGE_STATUS_HAS_ACCESS = 1; // 0x1 field public static final int CARRIER_PRIVILEGE_STATUS_NO_ACCESS = 0; // 0x0 field public static final int CARRIER_PRIVILEGE_STATUS_RULES_NOT_LOADED = -1; // 0xffffffff + field public static final int INVALID_EMERGENCY_NUMBER_DB_VERSION = -1; // 0xffffffff field public static final int UNKNOWN_CARRIER_ID_LIST_VERSION = -1; // 0xffffffff } } +package android.telephony.emergency { + + public final class EmergencyNumber implements java.lang.Comparable<android.telephony.emergency.EmergencyNumber> android.os.Parcelable { + field public static final int EMERGENCY_NUMBER_SOURCE_TEST = 32; // 0x20 + } + +} + +package android.telephony.ims { + + public final class ImsCallForwardInfo implements android.os.Parcelable { + ctor public ImsCallForwardInfo(int, int, int, int, @NonNull String, int); + method public int describeContents(); + method public int getCondition(); + method public String getNumber(); + method public int getServiceClass(); + method public int getStatus(); + method public int getTimeSeconds(); + method public int getToA(); + method public void writeToParcel(android.os.Parcel, int); + field public static final int CDIV_CF_REASON_ALL = 4; // 0x4 + field public static final int CDIV_CF_REASON_ALL_CONDITIONAL = 5; // 0x5 + field public static final int CDIV_CF_REASON_BUSY = 1; // 0x1 + field public static final int CDIV_CF_REASON_NOT_LOGGED_IN = 6; // 0x6 + field public static final int CDIV_CF_REASON_NOT_REACHABLE = 3; // 0x3 + field public static final int CDIV_CF_REASON_NO_REPLY = 2; // 0x2 + field public static final int CDIV_CF_REASON_UNCONDITIONAL = 0; // 0x0 + field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsCallForwardInfo> CREATOR; + field public static final int STATUS_ACTIVE = 1; // 0x1 + field public static final int STATUS_NOT_ACTIVE = 0; // 0x0 + field public static final int TYPE_OF_ADDRESS_INTERNATIONAL = 145; // 0x91 + field public static final int TYPE_OF_ADDRESS_UNKNOWN = 129; // 0x81 + } + + public final class ImsCallProfile implements android.os.Parcelable { + ctor public ImsCallProfile(); + ctor public ImsCallProfile(int, int); + ctor public ImsCallProfile(int, int, android.os.Bundle, android.telephony.ims.ImsStreamMediaProfile); + method public int describeContents(); + method public String getCallExtra(String); + method public String getCallExtra(String, String); + method public boolean getCallExtraBoolean(String); + method public boolean getCallExtraBoolean(String, boolean); + method public int getCallExtraInt(String); + method public int getCallExtraInt(String, int); + method public android.os.Bundle getCallExtras(); + method public int getCallType(); + method public static int getCallTypeFromVideoState(int); + method public int getCallerNumberVerificationStatus(); + method public int getEmergencyCallRouting(); + method public int getEmergencyServiceCategories(); + method @NonNull public java.util.List<java.lang.String> getEmergencyUrns(); + method public android.telephony.ims.ImsStreamMediaProfile getMediaProfile(); + method @NonNull public android.os.Bundle getProprietaryCallExtras(); + method public int getRestrictCause(); + method public int getServiceType(); + method public static int getVideoStateFromCallType(int); + method public static int getVideoStateFromImsCallProfile(android.telephony.ims.ImsCallProfile); + method public boolean hasKnownUserIntentEmergency(); + method public boolean isEmergencyCallTesting(); + method public boolean isVideoCall(); + method public boolean isVideoPaused(); + method public static int presentationToOir(int); + method public void setCallExtra(String, String); + method public void setCallExtraBoolean(String, boolean); + method public void setCallExtraInt(String, int); + method public void setCallRestrictCause(int); + method public void setCallerNumberVerificationStatus(int); + method public void setEmergencyCallRouting(int); + method public void setEmergencyCallTesting(boolean); + method public void setEmergencyServiceCategories(int); + method public void setEmergencyUrns(@NonNull java.util.List<java.lang.String>); + method public void setHasKnownUserIntentEmergency(boolean); + method public void updateCallExtras(android.telephony.ims.ImsCallProfile); + method public void updateCallType(android.telephony.ims.ImsCallProfile); + method public void updateMediaProfile(android.telephony.ims.ImsCallProfile); + method public void writeToParcel(android.os.Parcel, int); + field public static final int CALL_RESTRICT_CAUSE_DISABLED = 2; // 0x2 + field public static final int CALL_RESTRICT_CAUSE_HD = 3; // 0x3 + field public static final int CALL_RESTRICT_CAUSE_NONE = 0; // 0x0 + field public static final int CALL_RESTRICT_CAUSE_RAT = 1; // 0x1 + field public static final int CALL_TYPE_VIDEO_N_VOICE = 3; // 0x3 + field public static final int CALL_TYPE_VOICE = 2; // 0x2 + field public static final int CALL_TYPE_VOICE_N_VIDEO = 1; // 0x1 + field public static final int CALL_TYPE_VS = 8; // 0x8 + field public static final int CALL_TYPE_VS_RX = 10; // 0xa + field public static final int CALL_TYPE_VS_TX = 9; // 0x9 + field public static final int CALL_TYPE_VT = 4; // 0x4 + field public static final int CALL_TYPE_VT_NODIR = 7; // 0x7 + field public static final int CALL_TYPE_VT_RX = 6; // 0x6 + field public static final int CALL_TYPE_VT_TX = 5; // 0x5 + field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsCallProfile> CREATOR; + field public static final int DIALSTRING_NORMAL = 0; // 0x0 + field public static final int DIALSTRING_SS_CONF = 1; // 0x1 + field public static final int DIALSTRING_USSD = 2; // 0x2 + field public static final String EXTRA_ADDITIONAL_CALL_INFO = "AdditionalCallInfo"; + field public static final String EXTRA_ADDITIONAL_SIP_INVITE_FIELDS = "android.telephony.ims.extra.ADDITIONAL_SIP_INVITE_FIELDS"; + field public static final String EXTRA_CALL_DISCONNECT_CAUSE = "android.telephony.ims.extra.CALL_DISCONNECT_CAUSE"; + field public static final String EXTRA_CALL_NETWORK_TYPE = "android.telephony.ims.extra.CALL_NETWORK_TYPE"; + field @Deprecated public static final String EXTRA_CALL_RAT_TYPE = "CallRadioTech"; + field public static final String EXTRA_CHILD_NUMBER = "ChildNum"; + field public static final String EXTRA_CNA = "cna"; + field public static final String EXTRA_CNAP = "cnap"; + field public static final String EXTRA_CODEC = "Codec"; + field public static final String EXTRA_DIALSTRING = "dialstring"; + field public static final String EXTRA_DISPLAY_TEXT = "DisplayText"; + field public static final String EXTRA_EMERGENCY_CALL = "e_call"; + field public static final String EXTRA_FORWARDED_NUMBER = "android.telephony.ims.extra.FORWARDED_NUMBER"; + field public static final String EXTRA_IS_CALL_PULL = "CallPull"; + field public static final String EXTRA_OEM_EXTRAS = "android.telephony.ims.extra.OEM_EXTRAS"; + field public static final String EXTRA_OI = "oi"; + field public static final String EXTRA_OIR = "oir"; + field public static final String EXTRA_REMOTE_URI = "remote_uri"; + field public static final String EXTRA_USSD = "ussd"; + field public static final int OIR_DEFAULT = 0; // 0x0 + field public static final int OIR_PRESENTATION_NOT_RESTRICTED = 2; // 0x2 + field public static final int OIR_PRESENTATION_PAYPHONE = 4; // 0x4 + field public static final int OIR_PRESENTATION_RESTRICTED = 1; // 0x1 + field public static final int OIR_PRESENTATION_UNKNOWN = 3; // 0x3 + field public static final int SERVICE_TYPE_EMERGENCY = 2; // 0x2 + field public static final int SERVICE_TYPE_NONE = 0; // 0x0 + field public static final int SERVICE_TYPE_NORMAL = 1; // 0x1 + field public static final int VERIFICATION_STATUS_FAILED = 2; // 0x2 + field public static final int VERIFICATION_STATUS_NOT_VERIFIED = 0; // 0x0 + field public static final int VERIFICATION_STATUS_PASSED = 1; // 0x1 + } + + public class ImsCallSessionListener { + method public void callQualityChanged(@NonNull android.telephony.CallQuality); + method public void callSessionConferenceExtendFailed(android.telephony.ims.ImsReasonInfo); + method public void callSessionConferenceExtendReceived(android.telephony.ims.stub.ImsCallSessionImplBase, android.telephony.ims.ImsCallProfile); + method public void callSessionConferenceExtended(android.telephony.ims.stub.ImsCallSessionImplBase, android.telephony.ims.ImsCallProfile); + method public void callSessionConferenceStateUpdated(android.telephony.ims.ImsConferenceState); + method @Deprecated public void callSessionHandover(int, int, android.telephony.ims.ImsReasonInfo); + method @Deprecated public void callSessionHandoverFailed(int, int, android.telephony.ims.ImsReasonInfo); + method public void callSessionHeld(android.telephony.ims.ImsCallProfile); + method public void callSessionHoldFailed(android.telephony.ims.ImsReasonInfo); + method public void callSessionHoldReceived(android.telephony.ims.ImsCallProfile); + method public void callSessionInitiated(android.telephony.ims.ImsCallProfile); + method public void callSessionInitiatedFailed(android.telephony.ims.ImsReasonInfo); + method public void callSessionInviteParticipantsRequestDelivered(); + method public void callSessionInviteParticipantsRequestFailed(android.telephony.ims.ImsReasonInfo); + method @Deprecated public void callSessionMayHandover(int, int); + method public void callSessionMergeComplete(android.telephony.ims.stub.ImsCallSessionImplBase); + method public void callSessionMergeFailed(android.telephony.ims.ImsReasonInfo); + method public void callSessionMergeStarted(android.telephony.ims.stub.ImsCallSessionImplBase, android.telephony.ims.ImsCallProfile); + method public void callSessionMultipartyStateChanged(boolean); + method public void callSessionProgressing(android.telephony.ims.ImsStreamMediaProfile); + method public void callSessionRemoveParticipantsRequestDelivered(); + method public void callSessionRemoveParticipantsRequestFailed(android.telephony.ims.ImsReasonInfo); + method public void callSessionResumeFailed(android.telephony.ims.ImsReasonInfo); + method public void callSessionResumeReceived(android.telephony.ims.ImsCallProfile); + method public void callSessionResumed(android.telephony.ims.ImsCallProfile); + method public void callSessionRttAudioIndicatorChanged(@NonNull android.telephony.ims.ImsStreamMediaProfile); + method public void callSessionRttMessageReceived(String); + method public void callSessionRttModifyRequestReceived(android.telephony.ims.ImsCallProfile); + method public void callSessionRttModifyResponseReceived(int); + method public void callSessionSuppServiceReceived(android.telephony.ims.ImsSuppServiceNotification); + method public void callSessionTerminated(android.telephony.ims.ImsReasonInfo); + method public void callSessionTtyModeReceived(int); + method public void callSessionUpdateFailed(android.telephony.ims.ImsReasonInfo); + method public void callSessionUpdateReceived(android.telephony.ims.ImsCallProfile); + method public void callSessionUpdated(android.telephony.ims.ImsCallProfile); + method public void callSessionUssdMessageReceived(int, String); + method public void onHandover(int, int, @Nullable android.telephony.ims.ImsReasonInfo); + method public void onHandoverFailed(int, int, @NonNull android.telephony.ims.ImsReasonInfo); + method public void onMayHandover(int, int); + } + + public final class ImsConferenceState implements android.os.Parcelable { + method public int describeContents(); + method public static int getConnectionStateForStatus(String); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsConferenceState> CREATOR; + field public static final String DISPLAY_TEXT = "display-text"; + field public static final String ENDPOINT = "endpoint"; + field public static final String SIP_STATUS_CODE = "sipstatuscode"; + field public static final String STATUS = "status"; + field public static final String STATUS_ALERTING = "alerting"; + field public static final String STATUS_CONNECTED = "connected"; + field public static final String STATUS_CONNECT_FAIL = "connect-fail"; + field public static final String STATUS_DIALING_IN = "dialing-in"; + field public static final String STATUS_DIALING_OUT = "dialing-out"; + field public static final String STATUS_DISCONNECTED = "disconnected"; + field public static final String STATUS_DISCONNECTING = "disconnecting"; + field public static final String STATUS_MUTED_VIA_FOCUS = "muted-via-focus"; + field public static final String STATUS_ON_HOLD = "on-hold"; + field public static final String STATUS_PENDING = "pending"; + field public static final String STATUS_SEND_ONLY = "sendonly"; + field public static final String STATUS_SEND_RECV = "sendrecv"; + field public static final String USER = "user"; + field public final java.util.HashMap<java.lang.String,android.os.Bundle> mParticipants; + } + + public final class ImsException extends java.lang.Exception { + ctor public ImsException(@Nullable String); + ctor public ImsException(@Nullable String, int); + ctor public ImsException(@Nullable String, int, @Nullable Throwable); + } + + public final class ImsExternalCallState implements android.os.Parcelable { + ctor public ImsExternalCallState(@NonNull String, @NonNull android.net.Uri, @Nullable android.net.Uri, boolean, int, int, boolean); + method public int describeContents(); + method @NonNull public android.net.Uri getAddress(); + method public int getCallId(); + method public int getCallState(); + method public int getCallType(); + method @Nullable public android.net.Uri getLocalAddress(); + method public boolean isCallHeld(); + method public boolean isCallPullable(); + method public void writeToParcel(android.os.Parcel, int); + field public static final int CALL_STATE_CONFIRMED = 1; // 0x1 + field public static final int CALL_STATE_TERMINATED = 2; // 0x2 + field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsExternalCallState> CREATOR; + } + + public class ImsMmTelManager implements android.telephony.ims.RegistrationManager { + method @Deprecated @NonNull @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public static android.telephony.ims.ImsMmTelManager createForSubscriptionId(int); + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public void getFeatureState(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>) throws android.telephony.ims.ImsException; + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public void getRegistrationState(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>); + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public int getVoWiFiRoamingModeSetting(); + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public boolean isAvailable(int, int); + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public boolean isCapable(int, int); + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public void isSupported(int, int, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>) throws android.telephony.ims.ImsException; + method @Deprecated @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public void registerImsRegistrationCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.ImsMmTelManager.RegistrationCallback) throws android.telephony.ims.ImsException; + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setAdvancedCallingSettingEnabled(boolean); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setRttCapabilitySetting(boolean); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiModeSetting(int); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiNonPersistent(boolean, int); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiRoamingModeSetting(int); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiRoamingSettingEnabled(boolean); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiSettingEnabled(boolean); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVtSettingEnabled(boolean); + method @Deprecated @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public void unregisterImsRegistrationCallback(@NonNull android.telephony.ims.ImsMmTelManager.RegistrationCallback); + } + + @Deprecated public static class ImsMmTelManager.RegistrationCallback extends android.telephony.ims.RegistrationManager.RegistrationCallback { + ctor @Deprecated public ImsMmTelManager.RegistrationCallback(); + } + + public class ImsService extends android.app.Service { + ctor public ImsService(); + method public android.telephony.ims.feature.MmTelFeature createMmTelFeature(int); + method public android.telephony.ims.feature.RcsFeature createRcsFeature(int); + method public void disableIms(int); + method public void enableIms(int); + method public android.telephony.ims.stub.ImsConfigImplBase getConfig(int); + method public android.telephony.ims.stub.ImsRegistrationImplBase getRegistration(int); + method public final void onUpdateSupportedImsFeatures(android.telephony.ims.stub.ImsFeatureConfiguration) throws android.os.RemoteException; + method public android.telephony.ims.stub.ImsFeatureConfiguration querySupportedImsFeatures(); + method public void readyForFeatureCreation(); + } + + public final class ImsSsData implements android.os.Parcelable { + ctor public ImsSsData(int, int, int, int, int); + method public int describeContents(); + method @Nullable public java.util.List<android.telephony.ims.ImsCallForwardInfo> getCallForwardInfo(); + method public int getRequestType(); + method public int getResult(); + method public int getServiceClass(); + method public int getServiceType(); + method @NonNull public java.util.List<android.telephony.ims.ImsSsInfo> getSuppServiceInfo(); + method public int getTeleserviceType(); + method public boolean isTypeBarring(); + method public boolean isTypeCf(); + method public boolean isTypeClip(); + method public boolean isTypeClir(); + method public boolean isTypeColp(); + method public boolean isTypeColr(); + method public boolean isTypeCw(); + method public boolean isTypeIcb(); + method public boolean isTypeInterrogation(); + method public boolean isTypeUnConditional(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsSsData> CREATOR; + field public static final int RESULT_SUCCESS = 0; // 0x0 + field public static final int SERVICE_CLASS_DATA = 2; // 0x2 + field public static final int SERVICE_CLASS_DATA_CIRCUIT_ASYNC = 32; // 0x20 + field public static final int SERVICE_CLASS_DATA_CIRCUIT_SYNC = 16; // 0x10 + field public static final int SERVICE_CLASS_DATA_PACKET_ACCESS = 64; // 0x40 + field public static final int SERVICE_CLASS_DATA_PAD = 128; // 0x80 + field public static final int SERVICE_CLASS_FAX = 4; // 0x4 + field public static final int SERVICE_CLASS_NONE = 0; // 0x0 + field public static final int SERVICE_CLASS_SMS = 8; // 0x8 + field public static final int SERVICE_CLASS_VOICE = 1; // 0x1 + field public static final int SS_ACTIVATION = 0; // 0x0 + field public static final int SS_ALL_BARRING = 18; // 0x12 + field public static final int SS_ALL_DATA_TELESERVICES = 3; // 0x3 + field public static final int SS_ALL_TELESERVICES_EXCEPT_SMS = 5; // 0x5 + field public static final int SS_ALL_TELESEVICES = 1; // 0x1 + field public static final int SS_ALL_TELE_AND_BEARER_SERVICES = 0; // 0x0 + field public static final int SS_BAIC = 16; // 0x10 + field public static final int SS_BAIC_ROAMING = 17; // 0x11 + field public static final int SS_BAOC = 13; // 0xd + field public static final int SS_BAOIC = 14; // 0xe + field public static final int SS_BAOIC_EXC_HOME = 15; // 0xf + field public static final int SS_CFU = 0; // 0x0 + field public static final int SS_CFUT = 6; // 0x6 + field public static final int SS_CF_ALL = 4; // 0x4 + field public static final int SS_CF_ALL_CONDITIONAL = 5; // 0x5 + field public static final int SS_CF_BUSY = 1; // 0x1 + field public static final int SS_CF_NOT_REACHABLE = 3; // 0x3 + field public static final int SS_CF_NO_REPLY = 2; // 0x2 + field public static final int SS_CLIP = 7; // 0x7 + field public static final int SS_CLIR = 8; // 0x8 + field public static final int SS_CNAP = 11; // 0xb + field public static final int SS_COLP = 9; // 0x9 + field public static final int SS_COLR = 10; // 0xa + field public static final int SS_DEACTIVATION = 1; // 0x1 + field public static final int SS_ERASURE = 4; // 0x4 + field public static final int SS_INCOMING_BARRING = 20; // 0x14 + field public static final int SS_INCOMING_BARRING_ANONYMOUS = 22; // 0x16 + field public static final int SS_INCOMING_BARRING_DN = 21; // 0x15 + field public static final int SS_INTERROGATION = 2; // 0x2 + field public static final int SS_OUTGOING_BARRING = 19; // 0x13 + field public static final int SS_REGISTRATION = 3; // 0x3 + field public static final int SS_SMS_SERVICES = 4; // 0x4 + field public static final int SS_TELEPHONY = 2; // 0x2 + field public static final int SS_WAIT = 12; // 0xc + } + + public static final class ImsSsData.Builder { + ctor public ImsSsData.Builder(int, int, int, int, int); + method @NonNull public android.telephony.ims.ImsSsData build(); + method @NonNull public android.telephony.ims.ImsSsData.Builder setCallForwardingInfo(@NonNull java.util.List<android.telephony.ims.ImsCallForwardInfo>); + method @NonNull public android.telephony.ims.ImsSsData.Builder setSuppServiceInfo(@NonNull java.util.List<android.telephony.ims.ImsSsInfo>); + } + + public final class ImsSsInfo implements android.os.Parcelable { + ctor @Deprecated public ImsSsInfo(int, @Nullable String); + method public int describeContents(); + method public int getClirInterrogationStatus(); + method public int getClirOutgoingState(); + method @Deprecated public String getIcbNum(); + method @Nullable public String getIncomingCommunicationBarringNumber(); + method public int getProvisionStatus(); + method public int getStatus(); + method public void writeToParcel(android.os.Parcel, int); + field public static final int CLIR_OUTGOING_DEFAULT = 0; // 0x0 + field public static final int CLIR_OUTGOING_INVOCATION = 1; // 0x1 + field public static final int CLIR_OUTGOING_SUPPRESSION = 2; // 0x2 + field public static final int CLIR_STATUS_NOT_PROVISIONED = 0; // 0x0 + field public static final int CLIR_STATUS_PROVISIONED_PERMANENT = 1; // 0x1 + field public static final int CLIR_STATUS_TEMPORARILY_ALLOWED = 4; // 0x4 + field public static final int CLIR_STATUS_TEMPORARILY_RESTRICTED = 3; // 0x3 + field public static final int CLIR_STATUS_UNKNOWN = 2; // 0x2 + field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsSsInfo> CREATOR; + field public static final int DISABLED = 0; // 0x0 + field public static final int ENABLED = 1; // 0x1 + field public static final int NOT_REGISTERED = -1; // 0xffffffff + field public static final int SERVICE_NOT_PROVISIONED = 0; // 0x0 + field public static final int SERVICE_PROVISIONED = 1; // 0x1 + field public static final int SERVICE_PROVISIONING_UNKNOWN = -1; // 0xffffffff + } + + public static final class ImsSsInfo.Builder { + ctor public ImsSsInfo.Builder(int); + method @NonNull public android.telephony.ims.ImsSsInfo build(); + method @NonNull public android.telephony.ims.ImsSsInfo.Builder setClirInterrogationStatus(int); + method @NonNull public android.telephony.ims.ImsSsInfo.Builder setClirOutgoingState(int); + method @NonNull public android.telephony.ims.ImsSsInfo.Builder setIncomingCommunicationBarringNumber(@NonNull String); + method @NonNull public android.telephony.ims.ImsSsInfo.Builder setProvisionStatus(int); + } + + public final class ImsStreamMediaProfile implements android.os.Parcelable { + ctor public ImsStreamMediaProfile(int, int, int, int, int); + method public void copyFrom(android.telephony.ims.ImsStreamMediaProfile); + method public int describeContents(); + method public int getAudioDirection(); + method public int getAudioQuality(); + method public int getRttMode(); + method public int getVideoDirection(); + method public int getVideoQuality(); + method public boolean isReceivingRttAudio(); + method public boolean isRttCall(); + method public void setReceivingRttAudio(boolean); + method public void setRttMode(int); + method public void writeToParcel(android.os.Parcel, int); + field public static final int AUDIO_QUALITY_AMR = 1; // 0x1 + field public static final int AUDIO_QUALITY_AMR_WB = 2; // 0x2 + field public static final int AUDIO_QUALITY_EVRC = 4; // 0x4 + field public static final int AUDIO_QUALITY_EVRC_B = 5; // 0x5 + field public static final int AUDIO_QUALITY_EVRC_NW = 7; // 0x7 + field public static final int AUDIO_QUALITY_EVRC_WB = 6; // 0x6 + field public static final int AUDIO_QUALITY_EVS_FB = 20; // 0x14 + field public static final int AUDIO_QUALITY_EVS_NB = 17; // 0x11 + field public static final int AUDIO_QUALITY_EVS_SWB = 19; // 0x13 + field public static final int AUDIO_QUALITY_EVS_WB = 18; // 0x12 + field public static final int AUDIO_QUALITY_G711A = 13; // 0xd + field public static final int AUDIO_QUALITY_G711AB = 15; // 0xf + field public static final int AUDIO_QUALITY_G711U = 11; // 0xb + field public static final int AUDIO_QUALITY_G722 = 14; // 0xe + field public static final int AUDIO_QUALITY_G723 = 12; // 0xc + field public static final int AUDIO_QUALITY_G729 = 16; // 0x10 + field public static final int AUDIO_QUALITY_GSM_EFR = 8; // 0x8 + field public static final int AUDIO_QUALITY_GSM_FR = 9; // 0x9 + field public static final int AUDIO_QUALITY_GSM_HR = 10; // 0xa + field public static final int AUDIO_QUALITY_NONE = 0; // 0x0 + field public static final int AUDIO_QUALITY_QCELP13K = 3; // 0x3 + field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsStreamMediaProfile> CREATOR; + field public static final int DIRECTION_INACTIVE = 0; // 0x0 + field public static final int DIRECTION_INVALID = -1; // 0xffffffff + field public static final int DIRECTION_RECEIVE = 1; // 0x1 + field public static final int DIRECTION_SEND = 2; // 0x2 + field public static final int DIRECTION_SEND_RECEIVE = 3; // 0x3 + field public static final int RTT_MODE_DISABLED = 0; // 0x0 + field public static final int RTT_MODE_FULL = 1; // 0x1 + field public static final int VIDEO_QUALITY_NONE = 0; // 0x0 + field public static final int VIDEO_QUALITY_QCIF = 1; // 0x1 + field public static final int VIDEO_QUALITY_QVGA_LANDSCAPE = 2; // 0x2 + field public static final int VIDEO_QUALITY_QVGA_PORTRAIT = 4; // 0x4 + field public static final int VIDEO_QUALITY_VGA_LANDSCAPE = 8; // 0x8 + field public static final int VIDEO_QUALITY_VGA_PORTRAIT = 16; // 0x10 + } + + public final class ImsSuppServiceNotification implements android.os.Parcelable { + ctor public ImsSuppServiceNotification(int, int, int, int, String, String[]); + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsSuppServiceNotification> CREATOR; + field public final int code; + field public final String[] history; + field public final int index; + field public final int notificationType; + field public final String number; + field public final int type; + } + + public class ImsUtListener { + method public void onLineIdentificationSupplementaryServiceResponse(int, @NonNull android.telephony.ims.ImsSsInfo); + method public void onSupplementaryServiceIndication(android.telephony.ims.ImsSsData); + method public void onUtConfigurationCallBarringQueried(int, android.telephony.ims.ImsSsInfo[]); + method public void onUtConfigurationCallForwardQueried(int, android.telephony.ims.ImsCallForwardInfo[]); + method public void onUtConfigurationCallWaitingQueried(int, android.telephony.ims.ImsSsInfo[]); + method @Deprecated public void onUtConfigurationQueried(int, android.os.Bundle); + method public void onUtConfigurationQueryFailed(int, android.telephony.ims.ImsReasonInfo); + method public void onUtConfigurationUpdateFailed(int, android.telephony.ims.ImsReasonInfo); + method public void onUtConfigurationUpdated(int); + field @Deprecated public static final String BUNDLE_KEY_CLIR = "queryClir"; + field @Deprecated public static final String BUNDLE_KEY_SSINFO = "imsSsInfo"; + } + + public abstract class ImsVideoCallProvider { + ctor public ImsVideoCallProvider(); + method public void changeCallDataUsage(long); + method public void changeCameraCapabilities(android.telecom.VideoProfile.CameraCapabilities); + method public void changePeerDimensions(int, int); + method public void changeVideoQuality(int); + method public void handleCallSessionEvent(int); + method public abstract void onRequestCallDataUsage(); + method public abstract void onRequestCameraCapabilities(); + method public abstract void onSendSessionModifyRequest(android.telecom.VideoProfile, android.telecom.VideoProfile); + method public abstract void onSendSessionModifyResponse(android.telecom.VideoProfile); + method public abstract void onSetCamera(String); + method public void onSetCamera(String, int); + method public abstract void onSetDeviceOrientation(int); + method public abstract void onSetDisplaySurface(android.view.Surface); + method public abstract void onSetPauseImage(android.net.Uri); + method public abstract void onSetPreviewSurface(android.view.Surface); + method public abstract void onSetZoom(float); + method public void receiveSessionModifyRequest(android.telecom.VideoProfile); + method public void receiveSessionModifyResponse(int, android.telecom.VideoProfile, android.telecom.VideoProfile); + } + + public class ProvisioningManager { + method @NonNull public static android.telephony.ims.ProvisioningManager createForSubscriptionId(int); + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") @WorkerThread public int getProvisioningIntValue(int); + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") @WorkerThread public boolean getProvisioningStatusForCapability(int, int); + method @Nullable @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") @WorkerThread public String getProvisioningStringValue(int); + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") @WorkerThread public boolean getRcsProvisioningStatusForCapability(int); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void notifyRcsAutoConfigurationReceived(@NonNull byte[], boolean); + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public void registerProvisioningChangedCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.ProvisioningManager.Callback) throws android.telephony.ims.ImsException; + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public int setProvisioningIntValue(int, int); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public void setProvisioningStatusForCapability(int, int, boolean); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public int setProvisioningStringValue(int, @NonNull String); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public void setRcsProvisioningStatusForCapability(int, boolean); + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public void unregisterProvisioningChangedCallback(@NonNull android.telephony.ims.ProvisioningManager.Callback); + field public static final int KEY_VOICE_OVER_WIFI_MODE_OVERRIDE = 27; // 0x1b + field public static final int KEY_VOICE_OVER_WIFI_ROAMING_ENABLED_OVERRIDE = 26; // 0x1a + field public static final int PROVISIONING_VALUE_DISABLED = 0; // 0x0 + field public static final int PROVISIONING_VALUE_ENABLED = 1; // 0x1 + field public static final String STRING_QUERY_RESULT_ERROR_GENERIC = "STRING_QUERY_RESULT_ERROR_GENERIC"; + field public static final String STRING_QUERY_RESULT_ERROR_NOT_READY = "STRING_QUERY_RESULT_ERROR_NOT_READY"; + } + + public static class ProvisioningManager.Callback { + ctor public ProvisioningManager.Callback(); + method public void onProvisioningIntChanged(int, int); + method public void onProvisioningStringChanged(int, @NonNull String); + } + + public class RcsUceAdapter { + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setUceSettingEnabled(boolean) throws android.telephony.ims.ImsException; + } + +} + +package android.telephony.ims.feature { + + public final class CapabilityChangeRequest implements android.os.Parcelable { + method public void addCapabilitiesToDisableForTech(int, int); + method public void addCapabilitiesToEnableForTech(int, int); + method public int describeContents(); + method public java.util.List<android.telephony.ims.feature.CapabilityChangeRequest.CapabilityPair> getCapabilitiesToDisable(); + method public java.util.List<android.telephony.ims.feature.CapabilityChangeRequest.CapabilityPair> getCapabilitiesToEnable(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.feature.CapabilityChangeRequest> CREATOR; + } + + public static class CapabilityChangeRequest.CapabilityPair { + ctor public CapabilityChangeRequest.CapabilityPair(int, int); + method public int getCapability(); + method public int getRadioTech(); + } + + public abstract class ImsFeature { + ctor public ImsFeature(); + method public abstract void changeEnabledCapabilities(android.telephony.ims.feature.CapabilityChangeRequest, android.telephony.ims.feature.ImsFeature.CapabilityCallbackProxy); + method public int getFeatureState(); + method public final int getSlotIndex(); + method public abstract void onFeatureReady(); + method public abstract void onFeatureRemoved(); + method public final void setFeatureState(int); + field public static final int CAPABILITY_ERROR_GENERIC = -1; // 0xffffffff + field public static final int CAPABILITY_SUCCESS = 0; // 0x0 + field public static final int FEATURE_EMERGENCY_MMTEL = 0; // 0x0 + field public static final int FEATURE_MMTEL = 1; // 0x1 + field public static final int FEATURE_RCS = 2; // 0x2 + field public static final int STATE_INITIALIZING = 1; // 0x1 + field public static final int STATE_READY = 2; // 0x2 + field public static final int STATE_UNAVAILABLE = 0; // 0x0 + } + + @Deprecated public static class ImsFeature.Capabilities { + field @Deprecated protected int mCapabilities; + } + + protected static class ImsFeature.CapabilityCallbackProxy { + method public void onChangeCapabilityConfigurationError(int, int, int); + } + + public class MmTelFeature extends android.telephony.ims.feature.ImsFeature { + ctor public MmTelFeature(); + method public void changeEnabledCapabilities(@NonNull android.telephony.ims.feature.CapabilityChangeRequest, @NonNull android.telephony.ims.feature.ImsFeature.CapabilityCallbackProxy); + method @Nullable public android.telephony.ims.ImsCallProfile createCallProfile(int, int); + method @Nullable public android.telephony.ims.stub.ImsCallSessionImplBase createCallSession(@NonNull android.telephony.ims.ImsCallProfile); + method @NonNull public android.telephony.ims.stub.ImsEcbmImplBase getEcbm(); + method @NonNull public android.telephony.ims.stub.ImsMultiEndpointImplBase getMultiEndpoint(); + method @NonNull public android.telephony.ims.stub.ImsSmsImplBase getSmsImplementation(); + method @NonNull public android.telephony.ims.stub.ImsUtImplBase getUt(); + method public final void notifyCapabilitiesStatusChanged(@NonNull android.telephony.ims.feature.MmTelFeature.MmTelCapabilities); + method public final void notifyIncomingCall(@NonNull android.telephony.ims.stub.ImsCallSessionImplBase, @NonNull android.os.Bundle); + method public final void notifyRejectedCall(@NonNull android.telephony.ims.ImsCallProfile, @NonNull android.telephony.ims.ImsReasonInfo); + method public final void notifyVoiceMessageCountUpdate(int); + method public void onFeatureReady(); + method public void onFeatureRemoved(); + method public boolean queryCapabilityConfiguration(int, int); + method @NonNull public final android.telephony.ims.feature.MmTelFeature.MmTelCapabilities queryCapabilityStatus(); + method public void setUiTtyMode(int, @Nullable android.os.Message); + method public int shouldProcessCall(@NonNull String[]); + field public static final String EXTRA_IS_UNKNOWN_CALL = "android.telephony.ims.feature.extra.IS_UNKNOWN_CALL"; + field public static final String EXTRA_IS_USSD = "android.telephony.ims.feature.extra.IS_USSD"; + field public static final int PROCESS_CALL_CSFB = 1; // 0x1 + field public static final int PROCESS_CALL_IMS = 0; // 0x0 + } + + public static class MmTelFeature.MmTelCapabilities extends android.telephony.ims.feature.ImsFeature.Capabilities { + ctor public MmTelFeature.MmTelCapabilities(); + ctor @Deprecated public MmTelFeature.MmTelCapabilities(android.telephony.ims.feature.ImsFeature.Capabilities); + ctor public MmTelFeature.MmTelCapabilities(int); + method public final void addCapabilities(int); + method public final boolean isCapable(int); + method public final void removeCapabilities(int); + } + + public class RcsFeature extends android.telephony.ims.feature.ImsFeature { + ctor public RcsFeature(); + method public void changeEnabledCapabilities(@NonNull android.telephony.ims.feature.CapabilityChangeRequest, @NonNull android.telephony.ims.feature.ImsFeature.CapabilityCallbackProxy); + method public void onFeatureReady(); + method public void onFeatureRemoved(); + } + +} + +package android.telephony.ims.stub { + + public class ImsCallSessionImplBase implements java.lang.AutoCloseable { + ctor public ImsCallSessionImplBase(); + method public void accept(int, android.telephony.ims.ImsStreamMediaProfile); + method public void close(); + method public void deflect(String); + method public void extendToConference(String[]); + method public String getCallId(); + method public android.telephony.ims.ImsCallProfile getCallProfile(); + method public android.telephony.ims.ImsVideoCallProvider getImsVideoCallProvider(); + method public android.telephony.ims.ImsCallProfile getLocalCallProfile(); + method public String getProperty(String); + method public android.telephony.ims.ImsCallProfile getRemoteCallProfile(); + method public int getState(); + method public void hold(android.telephony.ims.ImsStreamMediaProfile); + method public void inviteParticipants(String[]); + method public boolean isInCall(); + method public boolean isMultiparty(); + method public void merge(); + method public void reject(int); + method public void removeParticipants(String[]); + method public void resume(android.telephony.ims.ImsStreamMediaProfile); + method public void sendDtmf(char, android.os.Message); + method public void sendRttMessage(String); + method public void sendRttModifyRequest(android.telephony.ims.ImsCallProfile); + method public void sendRttModifyResponse(boolean); + method public void sendUssd(String); + method public void setListener(android.telephony.ims.ImsCallSessionListener); + method public void setMute(boolean); + method public void start(String, android.telephony.ims.ImsCallProfile); + method public void startConference(String[], android.telephony.ims.ImsCallProfile); + method public void startDtmf(char); + method public void stopDtmf(); + method public void terminate(int); + method public void update(int, android.telephony.ims.ImsStreamMediaProfile); + field public static final int USSD_MODE_NOTIFY = 0; // 0x0 + field public static final int USSD_MODE_REQUEST = 1; // 0x1 + } + + public static class ImsCallSessionImplBase.State { + method public static String toString(int); + field public static final int ESTABLISHED = 4; // 0x4 + field public static final int ESTABLISHING = 3; // 0x3 + field public static final int IDLE = 0; // 0x0 + field public static final int INITIATED = 1; // 0x1 + field public static final int INVALID = -1; // 0xffffffff + field public static final int NEGOTIATING = 2; // 0x2 + field public static final int REESTABLISHING = 6; // 0x6 + field public static final int RENEGOTIATING = 5; // 0x5 + field public static final int TERMINATED = 8; // 0x8 + field public static final int TERMINATING = 7; // 0x7 + } + + public class ImsConfigImplBase { + ctor public ImsConfigImplBase(); + method public int getConfigInt(int); + method public String getConfigString(int); + method public final void notifyProvisionedValueChanged(int, int); + method public final void notifyProvisionedValueChanged(int, String); + method public void notifyRcsAutoConfigurationReceived(@NonNull byte[], boolean); + method public int setConfig(int, int); + method public int setConfig(int, String); + field public static final int CONFIG_RESULT_FAILED = 1; // 0x1 + field public static final int CONFIG_RESULT_SUCCESS = 0; // 0x0 + field public static final int CONFIG_RESULT_UNKNOWN = -1; // 0xffffffff + } + + public class ImsEcbmImplBase { + ctor public ImsEcbmImplBase(); + method public final void enteredEcbm(); + method public void exitEmergencyCallbackMode(); + method public final void exitedEcbm(); + } + + public final class ImsFeatureConfiguration implements android.os.Parcelable { + method public int describeContents(); + method public java.util.Set<android.telephony.ims.stub.ImsFeatureConfiguration.FeatureSlotPair> getServiceFeatures(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.stub.ImsFeatureConfiguration> CREATOR; + } + + public static class ImsFeatureConfiguration.Builder { + ctor public ImsFeatureConfiguration.Builder(); + method public android.telephony.ims.stub.ImsFeatureConfiguration.Builder addFeature(int, int); + method public android.telephony.ims.stub.ImsFeatureConfiguration build(); + } + + public static final class ImsFeatureConfiguration.FeatureSlotPair { + ctor public ImsFeatureConfiguration.FeatureSlotPair(int, int); + field public final int featureType; + field public final int slotId; + } + + public class ImsMultiEndpointImplBase { + ctor public ImsMultiEndpointImplBase(); + method public final void onImsExternalCallStateUpdate(java.util.List<android.telephony.ims.ImsExternalCallState>); + method public void requestImsExternalCallStateInfo(); + } + + public class ImsRegistrationImplBase { + ctor public ImsRegistrationImplBase(); + method public final void onDeregistered(android.telephony.ims.ImsReasonInfo); + method public final void onRegistered(int); + method public final void onRegistering(int); + method public final void onSubscriberAssociatedUriChanged(android.net.Uri[]); + method public final void onTechnologyChangeFailed(int, android.telephony.ims.ImsReasonInfo); + field public static final int REGISTRATION_TECH_IWLAN = 1; // 0x1 + field public static final int REGISTRATION_TECH_LTE = 0; // 0x0 + field public static final int REGISTRATION_TECH_NONE = -1; // 0xffffffff + } + + public class ImsSmsImplBase { + ctor public ImsSmsImplBase(); + method public void acknowledgeSms(int, @IntRange(from=0, to=65535) int, int); + method public void acknowledgeSmsReport(int, @IntRange(from=0, to=65535) int, int); + method public String getSmsFormat(); + method public void onReady(); + method @Deprecated public final void onSendSmsResult(int, @IntRange(from=0, to=65535) int, int, int) throws java.lang.RuntimeException; + method public final void onSendSmsResultError(int, @IntRange(from=0, to=65535) int, int, int, int) throws java.lang.RuntimeException; + method public final void onSendSmsResultSuccess(int, @IntRange(from=0, to=65535) int) throws java.lang.RuntimeException; + method public final void onSmsReceived(int, String, byte[]) throws java.lang.RuntimeException; + method @Deprecated public final void onSmsStatusReportReceived(int, @IntRange(from=0, to=65535) int, String, byte[]) throws java.lang.RuntimeException; + method public final void onSmsStatusReportReceived(int, String, byte[]) throws java.lang.RuntimeException; + method public void sendSms(int, @IntRange(from=0, to=65535) int, String, String, boolean, byte[]); + field public static final int DELIVER_STATUS_ERROR_GENERIC = 2; // 0x2 + field public static final int DELIVER_STATUS_ERROR_NO_MEMORY = 3; // 0x3 + field public static final int DELIVER_STATUS_ERROR_REQUEST_NOT_SUPPORTED = 4; // 0x4 + field public static final int DELIVER_STATUS_OK = 1; // 0x1 + field public static final int RESULT_NO_NETWORK_ERROR = -1; // 0xffffffff + field public static final int SEND_STATUS_ERROR = 2; // 0x2 + field public static final int SEND_STATUS_ERROR_FALLBACK = 4; // 0x4 + field public static final int SEND_STATUS_ERROR_RETRY = 3; // 0x3 + field public static final int SEND_STATUS_OK = 1; // 0x1 + field public static final int STATUS_REPORT_STATUS_ERROR = 2; // 0x2 + field public static final int STATUS_REPORT_STATUS_OK = 1; // 0x1 + } + + public class ImsUtImplBase { + ctor public ImsUtImplBase(); + method public void close(); + method public int queryCallBarring(int); + method public int queryCallBarringForServiceClass(int, int); + method public int queryCallForward(int, String); + method public int queryCallWaiting(); + method public int queryClip(); + method public int queryClir(); + method public int queryColp(); + method public int queryColr(); + method public void setListener(android.telephony.ims.ImsUtListener); + method public int transact(android.os.Bundle); + method public int updateCallBarring(int, int, String[]); + method public int updateCallBarringForServiceClass(int, int, String[], int); + method public int updateCallForward(int, int, String, int, int); + method public int updateCallWaiting(boolean, int); + method public int updateClip(boolean); + method public int updateClir(int); + method public int updateColp(boolean); + method public int updateColr(int); + } + +} + package android.telephony.mbms { public static class DownloadRequest.Builder { @@ -2914,7 +4905,7 @@ package android.telephony.mbms { package android.telephony.mbms.vendor { - public class MbmsDownloadServiceBase extends android.os.Binder { + public class MbmsDownloadServiceBase extends android.os.Binder implements android.os.IInterface { ctor public MbmsDownloadServiceBase(); method public int addProgressListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadProgressListener) throws android.os.RemoteException; method public int addStatusListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStatusListener) throws android.os.RemoteException; @@ -2945,7 +4936,7 @@ package android.telephony.mbms.vendor { method public void updateGroupCall(int, long, @NonNull java.util.List<java.lang.Integer>, @NonNull java.util.List<java.lang.Integer>); } - public class MbmsStreamingServiceBase extends android.os.Binder { + public class MbmsStreamingServiceBase extends android.os.Binder implements android.os.IInterface { ctor public MbmsStreamingServiceBase(); method public android.os.IBinder asBinder(); method public void dispose(int) throws android.os.RemoteException; @@ -3012,9 +5003,29 @@ package android.util { field public static final String FFLAG_PREFIX = "sys.fflag."; field public static final String HEARING_AID_SETTINGS = "settings_bluetooth_hearing_aid"; field public static final String PERSIST_PREFIX = "persist.sys.fflag.override."; - field public static final String PIXEL_WALLPAPER_CATEGORY_SWITCH = "settings_pixel_wallpaper_category_switch"; field public static final String SCREENRECORD_LONG_PRESS = "settings_screenrecord_long_press"; field public static final String SEAMLESS_TRANSFER = "settings_seamless_transfer"; + field public static final String SETTINGS_FUSE_FLAG = "settings_fuse"; + field public static final String SETTINGS_WIFITRACKER2 = "settings_wifitracker2"; + } + + public class SparseArrayMap<T> { + ctor public SparseArrayMap(); + method public void add(int, @NonNull String, @Nullable T); + method public void clear(); + method public boolean contains(int, @NonNull String); + method public void delete(int); + method @Nullable public T delete(int, @NonNull String); + method public void forEach(@NonNull java.util.function.Consumer<T>); + method @Nullable public T get(int, @NonNull String); + method @Nullable public T getOrDefault(int, @NonNull String, T); + method public int indexOfKey(int); + method public int indexOfKey(int, @NonNull String); + method public int keyAt(int); + method @NonNull public String keyAt(int, int); + method public int numElementsForKey(int); + method public int numMaps(); + method @Nullable public T valueAt(int, int); } public class TimeUtils { @@ -3064,138 +5075,10 @@ package android.util.proto { method public void writeRawZigZag64(long); } - public final class ProtoOutputStream extends android.util.proto.ProtoStream { - ctor public ProtoOutputStream(); - ctor public ProtoOutputStream(int); - ctor public ProtoOutputStream(java.io.OutputStream); - ctor public ProtoOutputStream(java.io.FileDescriptor); - method public static int checkFieldId(long, long); - method public void dump(String); - method public void end(long); - method @Deprecated public void endObject(long); - method @Deprecated public void endRepeatedObject(long); - method public void flush(); - method public byte[] getBytes(); - method public int getRawSize(); - method public static long makeFieldId(int, long); - method public long start(long); - method @Deprecated public long startObject(long); - method @Deprecated public long startRepeatedObject(long); - method public void write(long, double); - method public void write(long, float); - method public void write(long, int); - method public void write(long, long); - method public void write(long, boolean); - method public void write(long, String); - method public void write(long, byte[]); - method @Deprecated public void writeBool(long, boolean); - method @Deprecated public void writeBytes(long, byte[]); - method @Deprecated public void writeDouble(long, double); - method @Deprecated public void writeEnum(long, int); - method @Deprecated public void writeFixed32(long, int); - method @Deprecated public void writeFixed64(long, long); - method @Deprecated public void writeFloat(long, float); - method @Deprecated public void writeInt32(long, int); - method @Deprecated public void writeInt64(long, long); - method @Deprecated public void writeObject(long, byte[]); - method @Deprecated public void writePackedBool(long, boolean[]); - method @Deprecated public void writePackedDouble(long, double[]); - method @Deprecated public void writePackedEnum(long, int[]); - method @Deprecated public void writePackedFixed32(long, int[]); - method @Deprecated public void writePackedFixed64(long, long[]); - method @Deprecated public void writePackedFloat(long, float[]); - method @Deprecated public void writePackedInt32(long, int[]); - method @Deprecated public void writePackedInt64(long, long[]); - method @Deprecated public void writePackedSFixed32(long, int[]); - method @Deprecated public void writePackedSFixed64(long, long[]); - method @Deprecated public void writePackedSInt32(long, int[]); - method @Deprecated public void writePackedSInt64(long, long[]); - method @Deprecated public void writePackedUInt32(long, int[]); - method @Deprecated public void writePackedUInt64(long, long[]); - method @Deprecated public void writeRepeatedBool(long, boolean); - method @Deprecated public void writeRepeatedBytes(long, byte[]); - method @Deprecated public void writeRepeatedDouble(long, double); - method @Deprecated public void writeRepeatedEnum(long, int); - method @Deprecated public void writeRepeatedFixed32(long, int); - method @Deprecated public void writeRepeatedFixed64(long, long); - method @Deprecated public void writeRepeatedFloat(long, float); - method @Deprecated public void writeRepeatedInt32(long, int); - method @Deprecated public void writeRepeatedInt64(long, long); - method @Deprecated public void writeRepeatedObject(long, byte[]); - method @Deprecated public void writeRepeatedSFixed32(long, int); - method @Deprecated public void writeRepeatedSFixed64(long, long); - method @Deprecated public void writeRepeatedSInt32(long, int); - method @Deprecated public void writeRepeatedSInt64(long, long); - method @Deprecated public void writeRepeatedString(long, String); - method @Deprecated public void writeRepeatedUInt32(long, int); - method @Deprecated public void writeRepeatedUInt64(long, long); - method @Deprecated public void writeSFixed32(long, int); - method @Deprecated public void writeSFixed64(long, long); - method @Deprecated public void writeSInt32(long, int); - method @Deprecated public void writeSInt64(long, long); - method @Deprecated public void writeString(long, String); - method public void writeTag(int, int); - method @Deprecated public void writeUInt32(long, int); - method @Deprecated public void writeUInt64(long, long); - } - public class ProtoParseException extends java.lang.RuntimeException { ctor public ProtoParseException(String); } - public abstract class ProtoStream { - ctor public ProtoStream(); - method public static int convertObjectIdToOrdinal(int); - method public static int getDepthFromToken(long); - method public static String getFieldCountString(long); - method public static String getFieldIdString(long); - method public static String getFieldTypeString(long); - method public static int getObjectIdFromToken(long); - method public static int getOffsetFromToken(long); - method public static boolean getRepeatedFromToken(long); - method public static int getTagSizeFromToken(long); - method public static String getWireTypeString(int); - method public static long makeFieldId(int, long); - method public static long makeToken(int, boolean, int, int, int); - method public static String token2String(long); - field public static final long FIELD_COUNT_MASK = 16492674416640L; // 0xf0000000000L - field public static final long FIELD_COUNT_PACKED = 5497558138880L; // 0x50000000000L - field public static final long FIELD_COUNT_REPEATED = 2199023255552L; // 0x20000000000L - field public static final int FIELD_COUNT_SHIFT = 40; // 0x28 - field public static final long FIELD_COUNT_SINGLE = 1099511627776L; // 0x10000000000L - field public static final long FIELD_COUNT_UNKNOWN = 0L; // 0x0L - field public static final int FIELD_ID_MASK = -8; // 0xfffffff8 - field public static final int FIELD_ID_SHIFT = 3; // 0x3 - field public static final long FIELD_TYPE_BOOL = 34359738368L; // 0x800000000L - field public static final long FIELD_TYPE_BYTES = 51539607552L; // 0xc00000000L - field public static final long FIELD_TYPE_DOUBLE = 4294967296L; // 0x100000000L - field public static final long FIELD_TYPE_ENUM = 60129542144L; // 0xe00000000L - field public static final long FIELD_TYPE_FIXED32 = 30064771072L; // 0x700000000L - field public static final long FIELD_TYPE_FIXED64 = 25769803776L; // 0x600000000L - field public static final long FIELD_TYPE_FLOAT = 8589934592L; // 0x200000000L - field public static final long FIELD_TYPE_INT32 = 21474836480L; // 0x500000000L - field public static final long FIELD_TYPE_INT64 = 12884901888L; // 0x300000000L - field public static final long FIELD_TYPE_MASK = 1095216660480L; // 0xff00000000L - field public static final long FIELD_TYPE_MESSAGE = 47244640256L; // 0xb00000000L - field protected static final String[] FIELD_TYPE_NAMES; - field public static final long FIELD_TYPE_SFIXED32 = 64424509440L; // 0xf00000000L - field public static final long FIELD_TYPE_SFIXED64 = 68719476736L; // 0x1000000000L - field public static final int FIELD_TYPE_SHIFT = 32; // 0x20 - field public static final long FIELD_TYPE_SINT32 = 73014444032L; // 0x1100000000L - field public static final long FIELD_TYPE_SINT64 = 77309411328L; // 0x1200000000L - field public static final long FIELD_TYPE_STRING = 38654705664L; // 0x900000000L - field public static final long FIELD_TYPE_UINT32 = 55834574848L; // 0xd00000000L - field public static final long FIELD_TYPE_UINT64 = 17179869184L; // 0x400000000L - field public static final long FIELD_TYPE_UNKNOWN = 0L; // 0x0L - field public static final int WIRE_TYPE_END_GROUP = 4; // 0x4 - field public static final int WIRE_TYPE_FIXED32 = 5; // 0x5 - field public static final int WIRE_TYPE_FIXED64 = 1; // 0x1 - field public static final int WIRE_TYPE_LENGTH_DELIMITED = 2; // 0x2 - field public static final int WIRE_TYPE_MASK = 7; // 0x7 - field public static final int WIRE_TYPE_START_GROUP = 3; // 0x3 - field public static final int WIRE_TYPE_VARINT = 0; // 0x0 - } - public class WireTypeMismatchException extends android.util.proto.ProtoParseException { ctor public WireTypeMismatchException(String); } @@ -3218,7 +5101,16 @@ package android.view { } public final class Display { + method @NonNull public android.graphics.ColorSpace[] getSupportedWideColorGamut(); + method public int getType(); method public boolean hasAccess(int); + field public static final int FLAG_TRUSTED = 128; // 0x80 + field public static final int TYPE_EXTERNAL = 2; // 0x2 + field public static final int TYPE_INTERNAL = 1; // 0x1 + field public static final int TYPE_OVERLAY = 4; // 0x4 + field public static final int TYPE_UNKNOWN = 0; // 0x0 + field public static final int TYPE_VIRTUAL = 5; // 0x5 + field public static final int TYPE_WIFI = 3; // 0x3 } public class FocusFinder { @@ -3256,14 +5148,23 @@ package android.view { method public abstract String asyncImpl() default ""; } + public final class SurfaceControl implements android.os.Parcelable { + ctor public SurfaceControl(@NonNull android.view.SurfaceControl, @NonNull String); + method public static long acquireFrameRateFlexibilityToken(); + method public boolean isSameSurface(@NonNull android.view.SurfaceControl); + method public static void releaseFrameRateFlexibilityToken(long); + } + + public class SurfaceControlViewHost { + method public void relayout(android.view.WindowManager.LayoutParams); + method public void setView(@NonNull android.view.View, @NonNull android.view.WindowManager.LayoutParams); + } + @UiThread public class View implements android.view.accessibility.AccessibilityEventSource android.graphics.drawable.Drawable.Callback android.view.KeyEvent.Callback { - method @android.view.ViewDebug.ExportedProperty(mapping={@android.view.ViewDebug.IntToString(from=android.view.View.IMPORTANT_FOR_CONTENT_CAPTURE_AUTO, to="auto"), @android.view.ViewDebug.IntToString(from=android.view.View.IMPORTANT_FOR_CONTENT_CAPTURE_YES, to="yes"), @android.view.ViewDebug.IntToString(from=android.view.View.IMPORTANT_FOR_CONTENT_CAPTURE_NO, to="no"), @android.view.ViewDebug.IntToString(from=android.view.View.IMPORTANT_FOR_CONTENT_CAPTURE_YES_EXCLUDE_DESCENDANTS, to="yesExcludeDescendants"), @android.view.ViewDebug.IntToString(from=android.view.View.IMPORTANT_FOR_CONTENT_CAPTURE_NO_EXCLUDE_DESCENDANTS, to="noExcludeDescendants")}) public int getImportantForContentCapture(); method public android.view.View getTooltipView(); method public boolean isAutofilled(); method public static boolean isDefaultFocusHighlightEnabled(); method public boolean isDefaultFocusHighlightNeeded(android.graphics.drawable.Drawable, android.graphics.drawable.Drawable); - method public final boolean isImportantForContentCapture(); - method public void onProvideContentCaptureStructure(@NonNull android.view.ViewStructure, int); method protected void resetResolvedDrawables(); method public void resetResolvedLayoutDirection(); method public void resetResolvedPadding(); @@ -3272,15 +5173,10 @@ package android.view { method public void resetRtlProperties(); method public boolean restoreFocusInCluster(int); method public boolean restoreFocusNotInCluster(); - method public void setAutofilled(boolean); + method public void setAutofilled(boolean, boolean); method public final void setFocusedInCluster(); - method public void setImportantForContentCapture(int); method public void setIsRootNamespace(boolean); - field public static final int IMPORTANT_FOR_CONTENT_CAPTURE_AUTO = 0; // 0x0 - field public static final int IMPORTANT_FOR_CONTENT_CAPTURE_NO = 2; // 0x2 - field public static final int IMPORTANT_FOR_CONTENT_CAPTURE_NO_EXCLUDE_DESCENDANTS = 8; // 0x8 - field public static final int IMPORTANT_FOR_CONTENT_CAPTURE_YES = 1; // 0x1 - field public static final int IMPORTANT_FOR_CONTENT_CAPTURE_YES_EXCLUDE_DESCENDANTS = 4; // 0x4 + method public final void setShowingLayoutBounds(boolean); } public class ViewConfiguration { @@ -3296,6 +5192,11 @@ package android.view { method @Nullable public static AutoCloseable startRenderingCommandsCapture(android.view.View, java.util.concurrent.Executor, java.util.concurrent.Callable<java.io.OutputStream>); } + public abstract class Window { + method @Nullable public android.view.View getNavigationBarBackgroundView(); + method @Nullable public android.view.View getStatusBarBackgroundView(); + } + public interface WindowManager extends android.view.ViewManager { method public default void setShouldShowIme(int, boolean); method public default void setShouldShowSystemDecors(int, boolean); @@ -3308,7 +5209,7 @@ package android.view { field public static final int ACCESSIBILITY_TITLE_CHANGED = 33554432; // 0x2000000 field public static final int PRIVATE_FLAG_NO_MOVE_ANIMATION = 64; // 0x40 field public CharSequence accessibilityTitle; - field @android.view.ViewDebug.ExportedProperty(flagMapping={@android.view.ViewDebug.FlagToString(mask=0x1, equals=0x1, name="FAKE_HARDWARE_ACCELERATED"), @android.view.ViewDebug.FlagToString(mask=0x2, equals=0x2, name="FORCE_HARDWARE_ACCELERATED"), @android.view.ViewDebug.FlagToString(mask=0x4, equals=0x4, name="WANTS_OFFSET_NOTIFICATIONS"), @android.view.ViewDebug.FlagToString(mask=0x10, equals=0x10, name="SHOW_FOR_ALL_USERS"), @android.view.ViewDebug.FlagToString(mask=android.view.WindowManager.LayoutParams.PRIVATE_FLAG_NO_MOVE_ANIMATION, equals=android.view.WindowManager.LayoutParams.PRIVATE_FLAG_NO_MOVE_ANIMATION, name="NO_MOVE_ANIMATION"), @android.view.ViewDebug.FlagToString(mask=0x80, equals=0x80, name="COMPATIBLE_WINDOW"), @android.view.ViewDebug.FlagToString(mask=0x100, equals=0x100, name="SYSTEM_ERROR"), @android.view.ViewDebug.FlagToString(mask=0x200, equals=0x200, name="INHERIT_TRANSLUCENT_DECOR"), @android.view.ViewDebug.FlagToString(mask=0x400, equals=0x400, name="KEYGUARD"), @android.view.ViewDebug.FlagToString(mask=0x800, equals=0x800, name="DISABLE_WALLPAPER_TOUCH_EVENTS"), @android.view.ViewDebug.FlagToString(mask=0x1000, equals=0x1000, name="FORCE_STATUS_BAR_VISIBLE_TRANSPARENT"), @android.view.ViewDebug.FlagToString(mask=0x2000, equals=0x2000, name="PRESERVE_GEOMETRY"), @android.view.ViewDebug.FlagToString(mask=0x4000, equals=0x4000, name="FORCE_DECOR_VIEW_VISIBILITY"), @android.view.ViewDebug.FlagToString(mask=0x8000, equals=0x8000, name="WILL_NOT_REPLACE_ON_RELAUNCH"), @android.view.ViewDebug.FlagToString(mask=0x10000, equals=0x10000, name="LAYOUT_CHILD_WINDOW_IN_PARENT_FRAME"), @android.view.ViewDebug.FlagToString(mask=0x20000, equals=0x20000, name="FORCE_DRAW_STATUS_BAR_BACKGROUND"), @android.view.ViewDebug.FlagToString(mask=0x40000, equals=0x40000, name="SUSTAINED_PERFORMANCE_MODE"), @android.view.ViewDebug.FlagToString(mask=0x80000, equals=0x80000, name="HIDE_NON_SYSTEM_OVERLAY_WINDOWS"), @android.view.ViewDebug.FlagToString(mask=0x100000, equals=0x100000, name="IS_ROUNDED_CORNERS_OVERLAY"), @android.view.ViewDebug.FlagToString(mask=0x400000, equals=0x400000, name="IS_SCREEN_DECOR"), @android.view.ViewDebug.FlagToString(mask=0x800000, equals=0x800000, name="STATUS_FORCE_SHOW_NAVIGATION"), @android.view.ViewDebug.FlagToString(mask=0x1000000, equals=0x1000000, name="COLOR_SPACE_AGNOSTIC")}) public int privateFlags; + field @android.view.ViewDebug.ExportedProperty(flagMapping={@android.view.ViewDebug.FlagToString(mask=0x1, equals=0x1, name="FAKE_HARDWARE_ACCELERATED"), @android.view.ViewDebug.FlagToString(mask=0x2, equals=0x2, name="FORCE_HARDWARE_ACCELERATED"), @android.view.ViewDebug.FlagToString(mask=0x4, equals=0x4, name="WANTS_OFFSET_NOTIFICATIONS"), @android.view.ViewDebug.FlagToString(mask=0x10, equals=0x10, name="SHOW_FOR_ALL_USERS"), @android.view.ViewDebug.FlagToString(mask=android.view.WindowManager.LayoutParams.PRIVATE_FLAG_NO_MOVE_ANIMATION, equals=android.view.WindowManager.LayoutParams.PRIVATE_FLAG_NO_MOVE_ANIMATION, name="NO_MOVE_ANIMATION"), @android.view.ViewDebug.FlagToString(mask=0x80, equals=0x80, name="COMPATIBLE_WINDOW"), @android.view.ViewDebug.FlagToString(mask=0x100, equals=0x100, name="SYSTEM_ERROR"), @android.view.ViewDebug.FlagToString(mask=0x800, equals=0x800, name="DISABLE_WALLPAPER_TOUCH_EVENTS"), @android.view.ViewDebug.FlagToString(mask=0x1000, equals=0x1000, name="FORCE_STATUS_BAR_VISIBLE"), @android.view.ViewDebug.FlagToString(mask=0x2000, equals=0x2000, name="PRESERVE_GEOMETRY"), @android.view.ViewDebug.FlagToString(mask=0x4000, equals=0x4000, name="FORCE_DECOR_VIEW_VISIBILITY"), @android.view.ViewDebug.FlagToString(mask=0x8000, equals=0x8000, name="WILL_NOT_REPLACE_ON_RELAUNCH"), @android.view.ViewDebug.FlagToString(mask=0x10000, equals=0x10000, name="LAYOUT_CHILD_WINDOW_IN_PARENT_FRAME"), @android.view.ViewDebug.FlagToString(mask=0x20000, equals=0x20000, name="FORCE_DRAW_STATUS_BAR_BACKGROUND"), @android.view.ViewDebug.FlagToString(mask=0x40000, equals=0x40000, name="SUSTAINED_PERFORMANCE_MODE"), @android.view.ViewDebug.FlagToString(mask=0x80000, equals=0x80000, name="HIDE_NON_SYSTEM_OVERLAY_WINDOWS"), @android.view.ViewDebug.FlagToString(mask=0x100000, equals=0x100000, name="IS_ROUNDED_CORNERS_OVERLAY"), @android.view.ViewDebug.FlagToString(mask=0x400000, equals=0x400000, name="IS_SCREEN_DECOR"), @android.view.ViewDebug.FlagToString(mask=0x800000, equals=0x800000, name="STATUS_FORCE_SHOW_NAVIGATION"), @android.view.ViewDebug.FlagToString(mask=0x1000000, equals=0x1000000, name="COLOR_SPACE_AGNOSTIC"), @android.view.ViewDebug.FlagToString(mask=0x4000000, equals=0x4000000, name="APPEARANCE_CONTROLLED"), @android.view.ViewDebug.FlagToString(mask=0x8000000, equals=0x8000000, name="BEHAVIOR_CONTROLLED"), @android.view.ViewDebug.FlagToString(mask=0x10000000, equals=0x10000000, name="FIT_INSETS_CONTROLLED")}) public int privateFlags; } } @@ -3317,9 +5218,11 @@ package android.view.accessibility { public final class AccessibilityManager { method public void addAccessibilityServicesStateChangeListener(@NonNull android.view.accessibility.AccessibilityManager.AccessibilityServicesStateChangeListener, @Nullable android.os.Handler); - method @Nullable @RequiresPermission("android.permission.MANAGE_ACCESSIBILITY") public String getAccessibilityShortcutService(); + method @NonNull @RequiresPermission("android.permission.MANAGE_ACCESSIBILITY") public java.util.List<java.lang.String> getAccessibilityShortcutTargets(int); method @RequiresPermission("android.permission.MANAGE_ACCESSIBILITY") public void performAccessibilityShortcut(); + method @RequiresPermission("android.permission.MANAGE_ACCESSIBILITY") public void registerSystemAction(@NonNull android.app.RemoteAction, int); method public void removeAccessibilityServicesStateChangeListener(@NonNull android.view.accessibility.AccessibilityManager.AccessibilityServicesStateChangeListener); + method @RequiresPermission("android.permission.MANAGE_ACCESSIBILITY") public void unregisterSystemAction(int); } public static interface AccessibilityManager.AccessibilityServicesStateChangeListener { @@ -3327,6 +5230,9 @@ package android.view.accessibility { } public class AccessibilityNodeInfo implements android.os.Parcelable { + method public void addChild(@NonNull android.os.IBinder); + method public long getSourceNodeId(); + method public void setLeashedParent(@Nullable android.os.IBinder, int); method public static void setNumInstancesInUseCounter(java.util.concurrent.atomic.AtomicInteger); method public void writeToParcelNoRecycle(android.os.Parcel, int); } @@ -3358,6 +5264,7 @@ package android.view.autofill { ctor public AutofillId(int, int); ctor public AutofillId(@NonNull android.view.autofill.AutofillId, long, int); method public boolean equalsIgnoreSession(@Nullable android.view.autofill.AutofillId); + method @NonNull public static android.view.autofill.AutofillId withoutSession(@NonNull android.view.autofill.AutofillId); } public final class AutofillManager { @@ -3389,6 +5296,7 @@ package android.view.contentcapture { method public long getEventTime(); method @Nullable public android.view.autofill.AutofillId getId(); method @Nullable public java.util.List<android.view.autofill.AutofillId> getIds(); + method @Nullable public android.graphics.Insets getInsets(); method @Nullable public CharSequence getText(); method public int getType(); method @Nullable public android.view.contentcapture.ViewNode getViewNode(); @@ -3399,6 +5307,7 @@ package android.view.contentcapture { field public static final int TYPE_SESSION_RESUMED = 7; // 0x7 field public static final int TYPE_VIEW_APPEARED = 1; // 0x1 field public static final int TYPE_VIEW_DISAPPEARED = 2; // 0x2 + field public static final int TYPE_VIEW_INSETS_CHANGED = 9; // 0x9 field public static final int TYPE_VIEW_TEXT_CHANGED = 3; // 0x3 field public static final int TYPE_VIEW_TREE_APPEARED = 5; // 0x5 field public static final int TYPE_VIEW_TREE_APPEARING = 4; // 0x4 @@ -3485,16 +5394,23 @@ package android.view.contentcapture { package android.view.inputmethod { + public final class InlineSuggestion implements android.os.Parcelable { + method @NonNull public static android.view.inputmethod.InlineSuggestion newInlineSuggestion(@NonNull android.view.inputmethod.InlineSuggestionInfo); + } + + public final class InlineSuggestionInfo implements android.os.Parcelable { + method @NonNull public static android.view.inputmethod.InlineSuggestionInfo newInlineSuggestionInfo(@NonNull android.widget.inline.InlinePresentationSpec, @NonNull String, @Nullable String[], @NonNull String, boolean); + } + + public final class InlineSuggestionsResponse implements android.os.Parcelable { + method @NonNull public static android.view.inputmethod.InlineSuggestionsResponse newInlineSuggestionsResponse(@NonNull java.util.List<android.view.inputmethod.InlineSuggestion>); + } + public final class InputMethodManager { method public int getDisplayId(); method public boolean isInputMethodPickerShown(); } - public class InputMethodSystemProperty { - ctor public InputMethodSystemProperty(); - field public static final boolean MULTI_CLIENT_IME_ENABLED; - } - } package android.view.inspector { @@ -3590,3 +5506,98 @@ package android.widget { } +package android.widget.inline { + + public class InlineContentView extends android.view.ViewGroup { + method public void setChildSurfacePackageUpdater(@Nullable android.widget.inline.InlineContentView.SurfacePackageUpdater); + } + + public static interface InlineContentView.SurfacePackageUpdater { + method public void getSurfacePackage(@NonNull java.util.function.Consumer<android.view.SurfaceControlViewHost.SurfacePackage>); + method public void onSurfacePackageReleased(); + } + +} + +package android.window { + + public final class DisplayAreaInfo implements android.os.Parcelable { + ctor public DisplayAreaInfo(@NonNull android.window.WindowContainerToken, int, int); + method public int describeContents(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.window.DisplayAreaInfo> CREATOR; + field @NonNull public final android.content.res.Configuration configuration; + field public final int displayId; + field public final int featureId; + field @NonNull public final android.window.WindowContainerToken token; + } + + public class DisplayAreaOrganizer extends android.window.WindowOrganizer { + ctor public DisplayAreaOrganizer(); + method public void onDisplayAreaAppeared(@NonNull android.window.DisplayAreaInfo, @NonNull android.view.SurfaceControl); + method public void onDisplayAreaVanished(@NonNull android.window.DisplayAreaInfo); + method @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public void registerOrganizer(int); + field public static final int FEATURE_DEFAULT_TASK_CONTAINER = 1; // 0x1 + field public static final int FEATURE_ROOT = 0; // 0x0 + field public static final int FEATURE_SYSTEM_FIRST = 0; // 0x0 + field public static final int FEATURE_SYSTEM_LAST = 10000; // 0x2710 + field public static final int FEATURE_UNDEFINED = -1; // 0xffffffff + field public static final int FEATURE_VENDOR_FIRST = 10001; // 0x2711 + field public static final int FEATURE_WINDOW_TOKENS = 2; // 0x2 + } + + public class TaskOrganizer extends android.window.WindowOrganizer { + ctor public TaskOrganizer(); + method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public static android.app.ActivityManager.RunningTaskInfo createRootTask(int, int); + method @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public static boolean deleteRootTask(@NonNull android.window.WindowContainerToken); + method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public static java.util.List<android.app.ActivityManager.RunningTaskInfo> getChildTasks(@NonNull android.window.WindowContainerToken, @NonNull int[]); + method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public static android.window.WindowContainerToken getImeTarget(int); + method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public static java.util.List<android.app.ActivityManager.RunningTaskInfo> getRootTasks(int, @NonNull int[]); + method @BinderThread public void onBackPressedOnTaskRoot(@NonNull android.app.ActivityManager.RunningTaskInfo); + method @BinderThread public void onTaskAppeared(@NonNull android.app.ActivityManager.RunningTaskInfo, @NonNull android.view.SurfaceControl); + method @BinderThread public void onTaskInfoChanged(@NonNull android.app.ActivityManager.RunningTaskInfo); + method @BinderThread public void onTaskVanished(@NonNull android.app.ActivityManager.RunningTaskInfo); + method @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public final void registerOrganizer(int); + method @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public void setInterceptBackPressedOnTaskRoot(boolean); + method @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public static void setLaunchRoot(int, @NonNull android.window.WindowContainerToken); + method @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public final void unregisterOrganizer(); + } + + public final class WindowContainerToken implements android.os.Parcelable { + method public int describeContents(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.window.WindowContainerToken> CREATOR; + } + + public final class WindowContainerTransaction implements android.os.Parcelable { + ctor public WindowContainerTransaction(); + method public int describeContents(); + method @NonNull public android.window.WindowContainerTransaction reorder(@NonNull android.window.WindowContainerToken, boolean); + method @NonNull public android.window.WindowContainerTransaction reparent(@NonNull android.window.WindowContainerToken, @Nullable android.window.WindowContainerToken, boolean); + method @NonNull public android.window.WindowContainerTransaction scheduleFinishEnterPip(@NonNull android.window.WindowContainerToken, @NonNull android.graphics.Rect); + method @NonNull public android.window.WindowContainerTransaction setActivityWindowingMode(@NonNull android.window.WindowContainerToken, int); + method @NonNull public android.window.WindowContainerTransaction setAppBounds(@NonNull android.window.WindowContainerToken, @NonNull android.graphics.Rect); + method @NonNull public android.window.WindowContainerTransaction setBounds(@NonNull android.window.WindowContainerToken, @NonNull android.graphics.Rect); + method @NonNull public android.window.WindowContainerTransaction setBoundsChangeTransaction(@NonNull android.window.WindowContainerToken, @NonNull android.view.SurfaceControl.Transaction); + method @NonNull public android.window.WindowContainerTransaction setFocusable(@NonNull android.window.WindowContainerToken, boolean); + method @NonNull public android.window.WindowContainerTransaction setHidden(@NonNull android.window.WindowContainerToken, boolean); + method @NonNull public android.window.WindowContainerTransaction setScreenSizeDp(@NonNull android.window.WindowContainerToken, int, int); + method @NonNull public android.window.WindowContainerTransaction setSmallestScreenWidthDp(@NonNull android.window.WindowContainerToken, int); + method @NonNull public android.window.WindowContainerTransaction setWindowingMode(@NonNull android.window.WindowContainerToken, int); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator<android.window.WindowContainerTransaction> CREATOR; + } + + public abstract class WindowContainerTransactionCallback { + ctor public WindowContainerTransactionCallback(); + method public abstract void onTransactionReady(int, @NonNull android.view.SurfaceControl.Transaction); + } + + public class WindowOrganizer { + ctor public WindowOrganizer(); + method @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public int applySyncTransaction(@NonNull android.window.WindowContainerTransaction, @NonNull android.window.WindowContainerTransactionCallback); + method @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_STACKS) public static void applyTransaction(@NonNull android.window.WindowContainerTransaction); + } + +} + diff --git a/api/test-lint-baseline.txt b/api/test-lint-baseline.txt new file mode 100644 index 000000000000..caf8fdbeca0d --- /dev/null +++ b/api/test-lint-baseline.txt @@ -0,0 +1,2691 @@ +// Baseline format: 1.0 +AcronymName: android.app.NotificationChannel#isImportanceLockedByOEM(): + +AcronymName: android.app.NotificationChannel#setImportanceLockedByOEM(boolean): + + + +ActionValue: android.location.Location#EXTRA_NO_GPS_LOCATION: + +// Tethering broadcast action / extras cannot change name for backwards compatibility +ActionValue: android.net.TetheringManager#ACTION_TETHER_STATE_CHANGED: + Inconsistent action value; expected `android.net.action.TETHER_STATE_CHANGED`, was `android.net.conn.TETHER_STATE_CHANGED` +ActionValue: android.net.TetheringManager#EXTRA_ACTIVE_TETHER: + Inconsistent extra value; expected `android.net.extra.ACTIVE_TETHER`, was `tetherArray` +ActionValue: android.net.TetheringManager#EXTRA_AVAILABLE_TETHER: + Inconsistent extra value; expected `android.net.extra.AVAILABLE_TETHER`, was `availableArray` +ActionValue: android.net.TetheringManager#EXTRA_ERRORED_TETHER: + Inconsistent extra value; expected `android.net.extra.ERRORED_TETHER`, was `erroredArray` + +ActionValue: android.telephony.ims.ImsCallProfile#EXTRA_ADDITIONAL_CALL_INFO: + +ActionValue: android.telephony.ims.ImsCallProfile#EXTRA_CALL_RAT_TYPE: + +ActionValue: android.telephony.ims.ImsCallProfile#EXTRA_CHILD_NUMBER: + +ActionValue: android.telephony.ims.ImsCallProfile#EXTRA_CNA: + +ActionValue: android.telephony.ims.ImsCallProfile#EXTRA_CNAP: + +ActionValue: android.telephony.ims.ImsCallProfile#EXTRA_CODEC: + +ActionValue: android.telephony.ims.ImsCallProfile#EXTRA_DIALSTRING: + +ActionValue: android.telephony.ims.ImsCallProfile#EXTRA_DISPLAY_TEXT: + +ActionValue: android.telephony.ims.ImsCallProfile#EXTRA_EMERGENCY_CALL: + +ActionValue: android.telephony.ims.ImsCallProfile#EXTRA_IS_CALL_PULL: + +ActionValue: android.telephony.ims.ImsCallProfile#EXTRA_OI: + +ActionValue: android.telephony.ims.ImsCallProfile#EXTRA_OIR: + +ActionValue: android.telephony.ims.ImsCallProfile#EXTRA_REMOTE_URI: + +ActionValue: android.telephony.ims.ImsCallProfile#EXTRA_USSD: + +ActionValue: android.telephony.ims.ImsReasonInfo#EXTRA_MSG_SERVICE_NOT_AUTHORIZED: + +ActionValue: android.telephony.mbms.vendor.VendorUtils#ACTION_CLEANUP: + +ActionValue: android.telephony.mbms.vendor.VendorUtils#ACTION_DOWNLOAD_RESULT_INTERNAL: + +ActionValue: android.telephony.mbms.vendor.VendorUtils#ACTION_FILE_DESCRIPTOR_REQUEST: + +ActionValue: android.telephony.mbms.vendor.VendorUtils#EXTRA_FD_COUNT: + +ActionValue: android.telephony.mbms.vendor.VendorUtils#EXTRA_FINAL_URI: + +ActionValue: android.telephony.mbms.vendor.VendorUtils#EXTRA_FREE_URI_LIST: + +ActionValue: android.telephony.mbms.vendor.VendorUtils#EXTRA_PAUSED_LIST: + +ActionValue: android.telephony.mbms.vendor.VendorUtils#EXTRA_PAUSED_URI_LIST: + +ActionValue: android.telephony.mbms.vendor.VendorUtils#EXTRA_SERVICE_ID: + +ActionValue: android.telephony.mbms.vendor.VendorUtils#EXTRA_TEMP_FILES_IN_USE: + +ActionValue: android.telephony.mbms.vendor.VendorUtils#EXTRA_TEMP_FILE_ROOT: + +ActionValue: android.telephony.mbms.vendor.VendorUtils#EXTRA_TEMP_LIST: + + + +ArrayReturn: android.app.UiAutomation#executeShellCommandRw(String): + +ArrayReturn: android.location.GnssMeasurementsEvent#GnssMeasurementsEvent(android.location.GnssClock, android.location.GnssMeasurement[]) parameter #1: + +ArrayReturn: android.media.AudioRecordingConfiguration#AudioRecordingConfiguration(int, int, int, android.media.AudioFormat, android.media.AudioFormat, int, String, int, boolean, int, android.media.audiofx.AudioEffect.Descriptor[], android.media.audiofx.AudioEffect.Descriptor[]) parameter #10: + +ArrayReturn: android.media.AudioRecordingConfiguration#AudioRecordingConfiguration(int, int, int, android.media.AudioFormat, android.media.AudioFormat, int, String, int, boolean, int, android.media.audiofx.AudioEffect.Descriptor[], android.media.audiofx.AudioEffect.Descriptor[]) parameter #11: + +ArrayReturn: android.metrics.LogMaker#LogMaker(Object[]) parameter #0: + +ArrayReturn: android.metrics.LogMaker#deserialize(Object[]) parameter #0: + +ArrayReturn: android.metrics.LogMaker#serialize(): + +ArrayReturn: android.net.TestNetworkManager#createTunInterface(android.net.LinkAddress[]) parameter #0: + +ArrayReturn: android.os.HwBlob#wrapArray(boolean[]): + +ArrayReturn: android.os.HwBlob#wrapArray(byte[]): + +ArrayReturn: android.os.HwBlob#wrapArray(double[]): + +ArrayReturn: android.os.HwBlob#wrapArray(float[]): + +ArrayReturn: android.os.HwBlob#wrapArray(int[]): + +ArrayReturn: android.os.HwBlob#wrapArray(long[]): + +ArrayReturn: android.os.HwBlob#wrapArray(short[]): + +ArrayReturn: android.os.NativeHandle#NativeHandle(java.io.FileDescriptor[], int[], boolean) parameter #0: + +ArrayReturn: android.os.NativeHandle#getFileDescriptors(): + +ArrayReturn: android.security.keystore.AttestationUtils#attestDeviceIds(android.content.Context, int[], byte[]): + +ArrayReturn: android.telephony.ims.ImsUtListener#onUtConfigurationCallBarringQueried(int, android.telephony.ims.ImsSsInfo[]) parameter #1: + +ArrayReturn: android.telephony.ims.ImsUtListener#onUtConfigurationCallForwardQueried(int, android.telephony.ims.ImsCallForwardInfo[]) parameter #1: + +ArrayReturn: android.telephony.ims.ImsUtListener#onUtConfigurationCallWaitingQueried(int, android.telephony.ims.ImsSsInfo[]) parameter #1: + +ArrayReturn: android.telephony.ims.stub.ImsRegistrationImplBase#onSubscriberAssociatedUriChanged(android.net.Uri[]) parameter #0: + +ArrayReturn: android.view.FocusFinder#sort(android.view.View[], int, int, android.view.ViewGroup, boolean) parameter #0: + +ArrayReturn: android.view.contentcapture.ViewNode#getAutofillOptions(): + +ArrayReturn: android.view.contentcapture.ViewNode.ViewStructureImpl#setAutofillOptions(CharSequence[]) parameter #0: + +ArrayReturn: android.view.inspector.InspectableProperty#enumMapping(): + +ArrayReturn: android.view.inspector.InspectableProperty#flagMapping(): + + + +AutoBoxing: android.os.HwBlob#wrapArray(byte[]): + +AutoBoxing: android.os.HwBlob#wrapArray(double[]): + +AutoBoxing: android.os.HwBlob#wrapArray(float[]): + +AutoBoxing: android.os.HwBlob#wrapArray(int[]): + +AutoBoxing: android.os.HwBlob#wrapArray(long[]): + +AutoBoxing: android.os.HwBlob#wrapArray(short[]): + +AutoBoxing: android.os.VintfObject#getTargetFrameworkCompatibilityMatrixVersion(): + + + +BannedThrow: android.app.ActivityTaskManager#removeStacksInWindowingModes(int[]): + +BannedThrow: android.app.ActivityTaskManager#removeStacksWithActivityTypes(int[]): + +BannedThrow: android.app.ActivityTaskManager#setTaskWindowingMode(int, int, boolean): + +BannedThrow: android.app.ActivityTaskManager#setTaskWindowingModeSplitScreenPrimary(int, int, boolean, boolean, android.graphics.Rect, boolean): + +BannedThrow: android.media.audiofx.AudioEffect#getParameter(byte[], byte[]): + +BannedThrow: android.media.audiofx.AudioEffect#getParameter(int, byte[]): + +BannedThrow: android.media.audiofx.AudioEffect#getParameter(int, int[]): + +BannedThrow: android.media.audiofx.AudioEffect#getParameter(int, short[]): + +BannedThrow: android.media.audiofx.AudioEffect#getParameter(int[], short[]): + +BannedThrow: android.media.audiofx.AudioEffect#setParameter(byte[], byte[]): + +BannedThrow: android.media.audiofx.AudioEffect#setParameter(int, byte[]): + +BannedThrow: android.media.audiofx.AudioEffect#setParameter(int, int): + +BannedThrow: android.media.audiofx.AudioEffect#setParameter(int, short): + +BannedThrow: android.media.audiofx.AudioEffect#setParameter(int[], byte[]): + +BannedThrow: android.media.audiofx.AudioEffect#setParameter(int[], int[]): + +BannedThrow: android.media.audiopolicy.AudioMix.Builder#Builder(android.media.audiopolicy.AudioMixingRule): + +BannedThrow: android.media.audiopolicy.AudioMix.Builder#build(): + +BannedThrow: android.media.audiopolicy.AudioMix.Builder#setDevice(android.media.AudioDeviceInfo): + +BannedThrow: android.media.audiopolicy.AudioMix.Builder#setFormat(android.media.AudioFormat): + +BannedThrow: android.media.audiopolicy.AudioMix.Builder#setRouteFlags(int): + +BannedThrow: android.media.audiopolicy.AudioMixingRule.Builder#addMixRule(int, Object): + +BannedThrow: android.media.audiopolicy.AudioMixingRule.Builder#addRule(android.media.AudioAttributes, int): + +BannedThrow: android.media.audiopolicy.AudioMixingRule.Builder#excludeMixRule(int, Object): + +BannedThrow: android.media.audiopolicy.AudioMixingRule.Builder#excludeRule(android.media.AudioAttributes, int): + +BannedThrow: android.media.audiopolicy.AudioPolicy#createAudioRecordSink(android.media.audiopolicy.AudioMix): + +BannedThrow: android.media.audiopolicy.AudioPolicy#createAudioTrackSource(android.media.audiopolicy.AudioMix): + +BannedThrow: android.media.audiopolicy.AudioPolicy#setFocusDuckingBehavior(int): + +BannedThrow: android.media.audiopolicy.AudioPolicy.Builder#addMix(android.media.audiopolicy.AudioMix): + +BannedThrow: android.media.audiopolicy.AudioPolicy.Builder#setLooper(android.os.Looper): + +BannedThrow: android.os.HwBinder#getService(String, String): + +BannedThrow: android.os.HwBinder#getService(String, String, boolean): + +BannedThrow: android.os.Process#getThreadScheduler(int): + + + +CallbackInterface: android.app.prediction.AppPredictor.Callback: + +CallbackInterface: android.permission.PermissionControllerManager.OnGetAppPermissionResultCallback: + +CallbackInterface: android.widget.Magnifier.Callback: + + + +CallbackMethodName: android.os.RemoteCallback: + + + +ConcreteCollection: android.content.AutofillOptions#disabledActivities: + +ConcreteCollection: android.content.AutofillOptions#whitelistedActivitiesForAugmentedAutofill: + +ConcreteCollection: android.content.ContentCaptureOptions#ContentCaptureOptions(int, int, int, int, int, android.util.ArraySet<android.content.ComponentName>) parameter #5: + +ConcreteCollection: android.content.ContentCaptureOptions#whitelistedComponents: + +ConcreteCollection: android.database.sqlite.SQLiteDebug.PagerStats#dbStats: + +ConcreteCollection: android.os.HwParcel#readBoolVector(): + +ConcreteCollection: android.os.HwParcel#readDoubleVector(): + +ConcreteCollection: android.os.HwParcel#readFloatVector(): + +ConcreteCollection: android.os.HwParcel#readInt16Vector(): + +ConcreteCollection: android.os.HwParcel#readInt32Vector(): + +ConcreteCollection: android.os.HwParcel#readInt64Vector(): + +ConcreteCollection: android.os.HwParcel#readInt8Vector(): + +ConcreteCollection: android.os.HwParcel#readNativeHandleVector(): + +ConcreteCollection: android.os.HwParcel#readStringVector(): + +ConcreteCollection: android.os.HwParcel#writeBoolVector(java.util.ArrayList<java.lang.Boolean>) parameter #0: + +ConcreteCollection: android.os.HwParcel#writeDoubleVector(java.util.ArrayList<java.lang.Double>) parameter #0: + +ConcreteCollection: android.os.HwParcel#writeFloatVector(java.util.ArrayList<java.lang.Float>) parameter #0: + +ConcreteCollection: android.os.HwParcel#writeInt16Vector(java.util.ArrayList<java.lang.Short>) parameter #0: + +ConcreteCollection: android.os.HwParcel#writeInt32Vector(java.util.ArrayList<java.lang.Integer>) parameter #0: + +ConcreteCollection: android.os.HwParcel#writeInt64Vector(java.util.ArrayList<java.lang.Long>) parameter #0: + +ConcreteCollection: android.os.HwParcel#writeInt8Vector(java.util.ArrayList<java.lang.Byte>) parameter #0: + +ConcreteCollection: android.os.HwParcel#writeNativeHandleVector(java.util.ArrayList<android.os.NativeHandle>) parameter #0: + +ConcreteCollection: android.os.HwParcel#writeStringVector(java.util.ArrayList<java.lang.String>) parameter #0: + +ConcreteCollection: android.service.autofill.CompositeUserData#getFieldClassificationAlgorithms(): + +ConcreteCollection: android.service.autofill.CompositeUserData#getFieldClassificationArgs(): + +ConcreteCollection: android.service.autofill.InternalTransformation#batchApply(android.service.autofill.ValueFinder, android.widget.RemoteViews, java.util.ArrayList<android.util.Pair<java.lang.Integer,android.service.autofill.InternalTransformation>>) parameter #2: + +ConcreteCollection: android.service.autofill.UserData#getFieldClassificationAlgorithms(): + +ConcreteCollection: android.telephony.ims.ImsConferenceState#mParticipants: + + + +ContextFirst: android.os.VibrationEffect#get(android.net.Uri, android.content.Context) parameter #1: + + + +ContextNameSuffix: android.telephony.mbms.vendor.MbmsGroupCallServiceBase: + + + +EndsWithImpl: android.view.contentcapture.ViewNode.ViewStructureImpl: + + + +Enum: android.view.inspector.InspectableProperty.ValueType: + + + +EqualsAndHashCode: android.app.prediction.AppPredictionContext#equals(Object): + +EqualsAndHashCode: android.app.prediction.AppTarget#equals(Object): + +EqualsAndHashCode: android.app.prediction.AppTargetEvent#equals(Object): + +EqualsAndHashCode: android.net.apf.ApfCapabilities#equals(Object): + +EqualsAndHashCode: android.net.metrics.ApfProgramEvent#equals(Object): + +EqualsAndHashCode: android.net.metrics.ApfStats#equals(Object): + +EqualsAndHashCode: android.net.metrics.DhcpClientEvent#equals(Object): + +EqualsAndHashCode: android.net.metrics.IpManagerEvent#equals(Object): + +EqualsAndHashCode: android.net.metrics.IpReachabilityEvent#equals(Object): + +EqualsAndHashCode: android.net.metrics.NetworkEvent#equals(Object): + +EqualsAndHashCode: android.net.metrics.RaEvent#equals(Object): + +EqualsAndHashCode: android.net.metrics.ValidationProbeEvent#equals(Object): + +EqualsAndHashCode: android.os.IncidentManager.PendingReport#equals(Object): + +EqualsAndHashCode: android.os.StrictMode.ViolationInfo#hashCode(): + + + +ExecutorRegistration: android.content.pm.PackageManager#addOnPermissionsChangeListener(android.content.pm.PackageManager.OnPermissionsChangedListener): + +ExecutorRegistration: android.hardware.camera2.CameraDevice#createCustomCaptureSession(android.hardware.camera2.params.InputConfiguration, java.util.List<android.hardware.camera2.params.OutputConfiguration>, int, android.hardware.camera2.CameraCaptureSession.StateCallback, android.os.Handler): + +ExecutorRegistration: android.media.audiofx.AudioEffect#setParameterListener(android.media.audiofx.AudioEffect.OnParameterChangeListener): + +ExecutorRegistration: android.media.audiopolicy.AudioPolicy.Builder#setAudioPolicyFocusListener(android.media.audiopolicy.AudioPolicy.AudioPolicyFocusListener): + +ExecutorRegistration: android.media.audiopolicy.AudioPolicy.Builder#setAudioPolicyStatusListener(android.media.audiopolicy.AudioPolicy.AudioPolicyStatusListener): + +ExecutorRegistration: android.media.audiopolicy.AudioPolicy.Builder#setAudioPolicyVolumeCallback(android.media.audiopolicy.AudioPolicy.AudioPolicyVolumeCallback): + +ExecutorRegistration: android.os.IncidentManager#cancelAuthorization(android.os.IncidentManager.AuthListener): + +ExecutorRegistration: android.os.IncidentManager#requestAuthorization(int, String, int, android.os.IncidentManager.AuthListener): + +ExecutorRegistration: android.os.RemoteCallback#RemoteCallback(android.os.RemoteCallback.OnResultListener, android.os.Handler): + +ExecutorRegistration: android.permission.PermissionControllerManager#getAppPermissions(String, android.permission.PermissionControllerManager.OnGetAppPermissionResultCallback, android.os.Handler): + +ExecutorRegistration: android.telephony.ims.stub.ImsCallSessionImplBase#setListener(android.telephony.ims.ImsCallSessionListener): + +ExecutorRegistration: android.telephony.ims.stub.ImsUtImplBase#setListener(android.telephony.ims.ImsUtListener): + +ExecutorRegistration: android.telephony.mbms.vendor.MbmsDownloadServiceBase#addProgressListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadProgressListener): + +ExecutorRegistration: android.telephony.mbms.vendor.MbmsDownloadServiceBase#addStatusListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStatusListener): + +ExecutorRegistration: android.telephony.mbms.vendor.MbmsDownloadServiceBase#initialize(int, android.telephony.mbms.MbmsDownloadSessionCallback): + +ExecutorRegistration: android.telephony.mbms.vendor.MbmsGroupCallServiceBase#initialize(android.telephony.mbms.MbmsGroupCallSessionCallback, int): + +ExecutorRegistration: android.telephony.mbms.vendor.MbmsGroupCallServiceBase#startGroupCall(int, long, java.util.List<java.lang.Integer>, java.util.List<java.lang.Integer>, android.telephony.mbms.GroupCallCallback): + +ExecutorRegistration: android.telephony.mbms.vendor.MbmsStreamingServiceBase#initialize(android.telephony.mbms.MbmsStreamingSessionCallback, int): + +ExecutorRegistration: android.telephony.mbms.vendor.MbmsStreamingServiceBase#startStreaming(int, String, android.telephony.mbms.StreamingServiceCallback): + + + +ForbiddenSuperClass: android.app.AppDetailsActivity: + + + +GenericException: android.app.ActivityView#finalize(): + +GenericException: android.app.prediction.AppPredictor#finalize(): + +GenericException: android.service.autofill.CharSequenceTransformation#apply(android.service.autofill.ValueFinder, android.widget.RemoteViews, int): + +GenericException: android.service.autofill.DateTransformation#apply(android.service.autofill.ValueFinder, android.widget.RemoteViews, int): + +GenericException: android.service.autofill.ImageTransformation#apply(android.service.autofill.ValueFinder, android.widget.RemoteViews, int): + +GenericException: android.service.autofill.augmented.FillWindow#finalize(): + + + +GetterSetterNames: android.app.NotificationChannel#isBlockableSystem(): + +GetterSetterNames: android.app.NotificationChannel#isImportanceLockedByCriticalDeviceFunction(): + +GetterSetterNames: android.app.NotificationChannel#isImportanceLockedByOEM(): + +GetterSetterNames: android.location.GnssClock#setBiasNanos(double): + +GetterSetterNames: android.location.GnssClock#setBiasUncertaintyNanos(double): + +GetterSetterNames: android.location.GnssClock#setDriftNanosPerSecond(double): + +GetterSetterNames: android.location.GnssClock#setDriftUncertaintyNanosPerSecond(double): + +GetterSetterNames: android.location.GnssClock#setElapsedRealtimeNanos(long): + +GetterSetterNames: android.location.GnssClock#setElapsedRealtimeUncertaintyNanos(double): + +GetterSetterNames: android.location.GnssClock#setFullBiasNanos(long): + +GetterSetterNames: android.location.GnssClock#setLeapSecond(int): + +GetterSetterNames: android.location.GnssClock#setReferenceConstellationTypeForIsb(int): + +GetterSetterNames: android.location.GnssClock#setReferenceCarrierFrequencyHzForIsb(double): + +GetterSetterNames: android.location.GnssClock#setReferenceCodeTypeForIsb(String): + +GetterSetterNames: android.location.GnssClock#setTimeUncertaintyNanos(double): + +GetterSetterNames: android.location.GnssMeasurement#setBasebandCn0DbHz(double): + +GetterSetterNames: android.location.GnssMeasurement#setCarrierFrequencyHz(float): + +GetterSetterNames: android.location.GnssMeasurement#setCodeType(String): + +GetterSetterNames: android.location.GnssMeasurement#setFullInterSignalBiasNanos(double): + +GetterSetterNames: android.location.GnssMeasurement#setFullInterSignalBiasUncertaintyNanos(double): + +GetterSetterNames: android.location.GnssMeasurement#setSatelliteInterSignalBiasNanos(double): + +GetterSetterNames: android.location.GnssMeasurement#setSatelliteInterSignalBiasUncertaintyNanos(double): + +GetterSetterNames: android.location.GnssMeasurement#setSnrInDb(double): + +GetterSetterNames: android.location.LocationRequest#isLocationSettingsIgnored(): + +GetterSetterNames: android.location.LocationRequest#isLowPowerMode(): + +GetterSetterNames: android.os.IncidentReportArgs#isAll(): + +GetterSetterNames: android.service.notification.NotificationStats#setDirectReplied(): + +GetterSetterNames: android.service.notification.NotificationStats#setExpanded(): + +GetterSetterNames: android.service.notification.NotificationStats#setSeen(): + +GetterSetterNames: android.service.notification.NotificationStats#setSnoozed(): + +GetterSetterNames: android.service.notification.NotificationStats#setViewedSettings(): + +GetterSetterNames: android.view.View#isAutofilled(): + +GetterSetterNames: android.view.View#isDefaultFocusHighlightEnabled(): + + + +IllegalStateException: android.media.audiopolicy.AudioMix.Builder#build(): + + + +IntentBuilderName: android.app.backup.BackupManager#getConfigurationIntent(String): + +IntentBuilderName: android.app.backup.BackupManager#getDataManagementIntent(String): + + + +IntentName: android.provider.Settings.Secure#VOICE_INTERACTION_SERVICE: + +IntentName: android.provider.Telephony.Sms.Intents#SMS_CARRIER_PROVISION_ACTION: + +IntentName: android.service.notification.Adjustment#KEY_CONTEXTUAL_ACTIONS: + + + +InterfaceConstant: android.service.autofill.AutofillFieldClassificationService#SERVICE_INTERFACE: + +InterfaceConstant: android.service.autofill.augmented.AugmentedAutofillService#SERVICE_INTERFACE: + +InterfaceConstant: android.service.contentcapture.ContentCaptureService#SERVICE_INTERFACE: + +InterfaceConstant: android.service.notification.NotificationAssistantService#SERVICE_INTERFACE: + +InterfaceConstant: android.telecom.PhoneAccountSuggestionService#SERVICE_INTERFACE: + + + +InternalField: android.telephony.ims.ImsConferenceState#mParticipants: + + + +KotlinOperator: android.os.WorkSource#get(int): + +KotlinOperator: android.util.SparseArrayMap#get(int, String): + + + +ListenerInterface: android.media.audiopolicy.AudioPolicy.AudioPolicyFocusListener: + +ListenerInterface: android.media.audiopolicy.AudioPolicy.AudioPolicyStatusListener: + +ListenerInterface: android.os.IncidentManager.AuthListener: + +ListenerInterface: android.telephony.ims.ImsCallSessionListener: + +ListenerInterface: android.telephony.ims.ImsUtListener: + + + +ListenerLast: android.hardware.camera2.CameraDevice#createCustomCaptureSession(android.hardware.camera2.params.InputConfiguration, java.util.List<android.hardware.camera2.params.OutputConfiguration>, int, android.hardware.camera2.CameraCaptureSession.StateCallback, android.os.Handler) parameter #4: + +ListenerLast: android.location.LocationManager#requestLocationUpdates(android.location.LocationRequest, android.location.LocationListener, android.os.Looper) parameter #2: + +ListenerLast: android.permission.PermissionControllerManager#getAppPermissions(String, android.permission.PermissionControllerManager.OnGetAppPermissionResultCallback, android.os.Handler) parameter #2: + +ListenerLast: android.telephony.mbms.vendor.MbmsGroupCallServiceBase#initialize(android.telephony.mbms.MbmsGroupCallSessionCallback, int) parameter #1: + +ListenerLast: android.telephony.mbms.vendor.MbmsStreamingServiceBase#initialize(android.telephony.mbms.MbmsStreamingSessionCallback, int) parameter #1: + + + +ManagerConstructor: android.content.pm.ShortcutManager#ShortcutManager(android.content.Context): + + + +ManagerLookup: android.telephony.ims.ImsMmTelManager#createForSubscriptionId(int): + +ManagerLookup: android.telephony.ims.ProvisioningManager#createForSubscriptionId(int): + + + +MethodNameTense: android.telephony.ims.feature.CapabilityChangeRequest#getCapabilitiesToEnable(): + + + +MethodNameUnits: android.telephony.ims.ImsCallForwardInfo#getTimeSeconds(): + + + +MinMaxConstant: android.os.UserHandle#MIN_SECONDARY_USER_ID: + +MinMaxConstant: android.view.autofill.AutofillManager#MAX_TEMP_AUGMENTED_SERVICE_DURATION_MS: + + + +MissingNullability: android.app.Activity#onMovedToDisplay(int, android.content.res.Configuration) parameter #1: + +MissingNullability: android.app.ActivityManager#addOnUidImportanceListener(android.app.ActivityManager.OnUidImportanceListener, int) parameter #0: + +MissingNullability: android.app.ActivityManager#alwaysShowUnsupportedCompileSdkWarning(android.content.ComponentName) parameter #0: + +MissingNullability: android.app.ActivityManager#forceStopPackage(String) parameter #0: + +MissingNullability: android.app.ActivityManager#getPackageImportance(String) parameter #0: + +MissingNullability: android.app.ActivityManager#removeOnUidImportanceListener(android.app.ActivityManager.OnUidImportanceListener) parameter #0: + +MissingNullability: android.app.ActivityManager#scheduleApplicationInfoChanged(java.util.List<java.lang.String>, int) parameter #0: + +MissingNullability: android.app.ActivityManager.TaskDescription#getIconFilename(): + +MissingNullability: android.app.ActivityTaskManager#clearLaunchParamsForPackages(java.util.List<java.lang.String>) parameter #0: + +MissingNullability: android.app.ActivityTaskManager#listAllStacks(): + +MissingNullability: android.app.ActivityTaskManager#moveTopActivityToPinnedStack(int, android.graphics.Rect) parameter #1: + +MissingNullability: android.app.ActivityTaskManager#removeStacksInWindowingModes(int[]) parameter #0: + +MissingNullability: android.app.ActivityTaskManager#removeStacksWithActivityTypes(int[]) parameter #0: + +MissingNullability: android.app.ActivityTaskManager#resizeDockedStack(android.graphics.Rect, android.graphics.Rect) parameter #0: + +MissingNullability: android.app.ActivityTaskManager#resizeDockedStack(android.graphics.Rect, android.graphics.Rect) parameter #1: + +MissingNullability: android.app.ActivityTaskManager#resizePinnedStack(int, android.graphics.Rect, boolean) parameter #1: + +MissingNullability: android.app.ActivityTaskManager#resizeTask(int, android.graphics.Rect) parameter #1: + +MissingNullability: android.app.ActivityTaskManager#setTaskWindowingModeSplitScreenPrimary(int, int, boolean, boolean, android.graphics.Rect, boolean) parameter #4: + +MissingNullability: android.app.ActivityTaskManager#supportsMultiWindow(android.content.Context) parameter #0: + +MissingNullability: android.app.ActivityTaskManager#supportsSplitScreenMultiWindow(android.content.Context) parameter #0: + +MissingNullability: android.app.ActivityView#ActivityView(android.content.Context) parameter #0: + +MissingNullability: android.app.ActivityView#ActivityView(android.content.Context, android.util.AttributeSet) parameter #0: + +MissingNullability: android.app.ActivityView#ActivityView(android.content.Context, android.util.AttributeSet) parameter #1: + +MissingNullability: android.app.ActivityView#ActivityView(android.content.Context, android.util.AttributeSet, int) parameter #0: + +MissingNullability: android.app.ActivityView#ActivityView(android.content.Context, android.util.AttributeSet, int) parameter #1: + +MissingNullability: android.app.ActivityView#ActivityView(android.content.Context, android.util.AttributeSet, int, boolean) parameter #0: + +MissingNullability: android.app.ActivityView#ActivityView(android.content.Context, android.util.AttributeSet, int, boolean) parameter #1: + +MissingNullability: android.app.ActivityView#gatherTransparentRegion(android.graphics.Region) parameter #0: + +MissingNullability: android.app.ActivityView#onVisibilityChanged(android.view.View, int) parameter #0: + +MissingNullability: android.app.ActivityView#setCallback(android.app.ActivityView.StateCallback) parameter #0: + +MissingNullability: android.app.ActivityView#setForwardedInsets(android.graphics.Insets) parameter #0: + +MissingNullability: android.app.ActivityView#startActivity(android.content.Intent, android.os.UserHandle) parameter #1: + +MissingNullability: android.app.ActivityView.StateCallback#onActivityViewDestroyed(android.app.ActivityView) parameter #0: + +MissingNullability: android.app.ActivityView.StateCallback#onActivityViewReady(android.app.ActivityView) parameter #0: + +MissingNullability: android.app.ActivityView.StateCallback#onTaskCreated(int, android.content.ComponentName) parameter #1: + +MissingNullability: android.app.AppDetailsActivity#onCreate(android.os.Bundle) parameter #0: + +MissingNullability: android.app.AppOpsManager#getOpStrs(): + +MissingNullability: android.app.AppOpsManager#isOperationActive(int, int, String) parameter #2: + +MissingNullability: android.app.AppOpsManager#opToPermission(int): + +MissingNullability: android.app.AppOpsManager#permissionToOpCode(String) parameter #0: + +MissingNullability: android.app.AppOpsManager#setMode(String, int, String, int) parameter #0: + +MissingNullability: android.app.AppOpsManager#setMode(String, int, String, int) parameter #2: + +MissingNullability: android.app.AppOpsManager#setMode(int, int, String, int) parameter #2: + +MissingNullability: android.app.AppOpsManager#setUidMode(String, int, int) parameter #0: + +MissingNullability: android.app.AppOpsManager.HistoricalOp#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.app.AppOpsManager.HistoricalOps#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.app.AppOpsManager.HistoricalUidOps#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.app.AppOpsManager.OpEntry#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.app.NotificationManager#allowAssistantAdjustment(String) parameter #0: + +MissingNullability: android.app.NotificationManager#disallowAssistantAdjustment(String) parameter #0: + +MissingNullability: android.app.NotificationManager#getEffectsSuppressor(): + +MissingNullability: android.app.NotificationManager#matchesCallFilter(android.os.Bundle) parameter #0: + +MissingNullability: android.app.PictureInPictureParams#getActions(): + +MissingNullability: android.app.PictureInPictureParams#getSourceRectHint(): + +MissingNullability: android.app.TimePickerDialog#getTimePicker(): + +MissingNullability: android.app.UiAutomation#executeShellCommandRw(String): + +MissingNullability: android.app.UiAutomation#executeShellCommandRw(String) parameter #0: + +MissingNullability: android.app.UiAutomation#grantRuntimePermission(String, String, android.os.UserHandle) parameter #0: + +MissingNullability: android.app.UiAutomation#grantRuntimePermission(String, String, android.os.UserHandle) parameter #1: + +MissingNullability: android.app.UiAutomation#grantRuntimePermission(String, String, android.os.UserHandle) parameter #2: + +MissingNullability: android.app.UiAutomation#revokeRuntimePermission(String, String, android.os.UserHandle) parameter #0: + +MissingNullability: android.app.UiAutomation#revokeRuntimePermission(String, String, android.os.UserHandle) parameter #1: + +MissingNullability: android.app.UiAutomation#revokeRuntimePermission(String, String, android.os.UserHandle) parameter #2: + +MissingNullability: android.app.WallpaperManager#setWallpaperComponent(android.content.ComponentName) parameter #0: + +MissingNullability: android.app.WindowConfiguration#compareTo(android.app.WindowConfiguration) parameter #0: + +MissingNullability: android.app.WindowConfiguration#getAppBounds(): + +MissingNullability: android.app.WindowConfiguration#getBounds(): + +MissingNullability: android.app.WindowConfiguration#setAppBounds(android.graphics.Rect) parameter #0: + +MissingNullability: android.app.WindowConfiguration#setBounds(android.graphics.Rect) parameter #0: + +MissingNullability: android.app.WindowConfiguration#setTo(android.app.WindowConfiguration) parameter #0: + +MissingNullability: android.app.WindowConfiguration#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.app.admin.DevicePolicyManager#getOwnerInstalledCaCerts(android.os.UserHandle): + +MissingNullability: android.app.admin.SecurityLog.SecurityEvent#SecurityEvent(long, byte[]) parameter #1: + +MissingNullability: android.app.backup.BackupManager#getConfigurationIntent(String): + +MissingNullability: android.app.backup.BackupManager#getConfigurationIntent(String) parameter #0: + +MissingNullability: android.app.backup.BackupManager#getDataManagementIntent(String): + +MissingNullability: android.app.backup.BackupManager#getDataManagementIntent(String) parameter #0: + +MissingNullability: android.app.backup.BackupManager#getDestinationString(String): + +MissingNullability: android.app.backup.BackupManager#getDestinationString(String) parameter #0: + +MissingNullability: android.app.prediction.AppPredictionSessionId#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.app.prediction.AppPredictor#getSessionId(): + +MissingNullability: android.app.prediction.AppTarget#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.app.prediction.AppTargetEvent#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.app.prediction.AppTargetId#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.content.AutofillOptions#forWhitelistingItself(): + +MissingNullability: android.content.AutofillOptions#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.content.ContentCaptureOptions#forWhitelistingItself(): + +MissingNullability: android.content.ContentCaptureOptions#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.content.ContentResolver#getSyncAdapterPackagesForAuthorityAsUser(String, int): + +MissingNullability: android.content.ContentResolver#getSyncAdapterPackagesForAuthorityAsUser(String, int) parameter #0: + +MissingNullability: android.content.Context#getDisplay(): + +MissingNullability: android.content.Context#getUser(): + +MissingNullability: android.content.ContextWrapper#getDisplay(): + +MissingNullability: android.content.ContextWrapper#setContentCaptureOptions(android.content.ContentCaptureOptions) parameter #0: + +MissingNullability: android.content.pm.ActivityInfo#isTranslucentOrFloating(android.content.res.TypedArray) parameter #0: + +MissingNullability: android.content.pm.LauncherApps#LauncherApps(android.content.Context) parameter #0: + +MissingNullability: android.content.pm.PackageInstaller.SessionParams#setGrantedRuntimePermissions(String[]) parameter #0: + +MissingNullability: android.content.pm.PackageManager#getNamesForUids(int[]) parameter #0: + +MissingNullability: android.content.pm.ShortcutManager#ShortcutManager(android.content.Context) parameter #0: + +MissingNullability: android.content.res.AssetManager#getOverlayablesToString(String) parameter #0: + +MissingNullability: android.content.res.Configuration#windowConfiguration: + +MissingNullability: android.content.rollback.PackageRollbackInfo#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.content.rollback.RollbackInfo#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.database.sqlite.SQLiteDebug#dump(android.util.Printer, String[]) parameter #0: + +MissingNullability: android.database.sqlite.SQLiteDebug#dump(android.util.Printer, String[]) parameter #1: + +MissingNullability: android.database.sqlite.SQLiteDebug#getDatabaseInfo(): + +MissingNullability: android.database.sqlite.SQLiteDebug.DbStats#DbStats(String, long, long, int, int, int, int) parameter #0: + +MissingNullability: android.database.sqlite.SQLiteDebug.DbStats#cache: + +MissingNullability: android.database.sqlite.SQLiteDebug.DbStats#dbName: + +MissingNullability: android.database.sqlite.SQLiteDebug.PagerStats#dbStats: + +MissingNullability: android.database.sqlite.SQLiteDirectCursorDriver#SQLiteDirectCursorDriver(android.database.sqlite.SQLiteDatabase, String, String, android.os.CancellationSignal) parameter #0: + +MissingNullability: android.database.sqlite.SQLiteDirectCursorDriver#SQLiteDirectCursorDriver(android.database.sqlite.SQLiteDatabase, String, String, android.os.CancellationSignal) parameter #1: + +MissingNullability: android.database.sqlite.SQLiteDirectCursorDriver#SQLiteDirectCursorDriver(android.database.sqlite.SQLiteDatabase, String, String, android.os.CancellationSignal) parameter #2: + +MissingNullability: android.database.sqlite.SQLiteDirectCursorDriver#SQLiteDirectCursorDriver(android.database.sqlite.SQLiteDatabase, String, String, android.os.CancellationSignal) parameter #3: + +MissingNullability: android.database.sqlite.SQLiteDirectCursorDriver#cursorRequeried(android.database.Cursor) parameter #0: + +MissingNullability: android.database.sqlite.SQLiteDirectCursorDriver#query(android.database.sqlite.SQLiteDatabase.CursorFactory, String[]): + +MissingNullability: android.database.sqlite.SQLiteDirectCursorDriver#query(android.database.sqlite.SQLiteDatabase.CursorFactory, String[]) parameter #0: + +MissingNullability: android.database.sqlite.SQLiteDirectCursorDriver#query(android.database.sqlite.SQLiteDatabase.CursorFactory, String[]) parameter #1: + +MissingNullability: android.database.sqlite.SQLiteDirectCursorDriver#setBindArguments(String[]) parameter #0: + +MissingNullability: android.database.sqlite.SQLiteGlobal#getDefaultJournalMode(): + +MissingNullability: android.database.sqlite.SQLiteGlobal#getDefaultSyncMode(): + +MissingNullability: android.database.sqlite.SQLiteGlobal#getWALSyncMode(): + +MissingNullability: android.graphics.ImageDecoder#createSource(android.content.res.Resources, java.io.InputStream, int) parameter #0: + +MissingNullability: android.graphics.ImageDecoder#createSource(android.content.res.Resources, java.io.InputStream, int) parameter #1: + +MissingNullability: android.graphics.drawable.AdaptiveIconDrawable#getSafeZone(): + +MissingNullability: android.graphics.drawable.ColorDrawable#getXfermode(): + +MissingNullability: android.hardware.camera2.CameraDevice#createCustomCaptureSession(android.hardware.camera2.params.InputConfiguration, java.util.List<android.hardware.camera2.params.OutputConfiguration>, int, android.hardware.camera2.CameraCaptureSession.StateCallback, android.os.Handler) parameter #0: + +MissingNullability: android.hardware.camera2.CameraManager#getCameraIdListNoLazy(): + +MissingNullability: android.hardware.display.AmbientBrightnessDayStats#getBucketBoundaries(): + +MissingNullability: android.hardware.display.AmbientBrightnessDayStats#getLocalDate(): + +MissingNullability: android.hardware.display.AmbientBrightnessDayStats#getStats(): + +MissingNullability: android.hardware.display.AmbientBrightnessDayStats#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.hardware.display.AmbientDisplayConfiguration#AmbientDisplayConfiguration(android.content.Context) parameter #0: + +MissingNullability: android.hardware.display.BrightnessChangeEvent#luxTimestamps: + +MissingNullability: android.hardware.display.BrightnessChangeEvent#luxValues: + +MissingNullability: android.hardware.display.BrightnessChangeEvent#packageName: + +MissingNullability: android.hardware.display.BrightnessChangeEvent#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.hardware.display.BrightnessConfiguration#getCurve(): + +MissingNullability: android.hardware.display.BrightnessConfiguration#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.hardware.display.BrightnessConfiguration.Builder#Builder(float[], float[]) parameter #0: + +MissingNullability: android.hardware.display.BrightnessConfiguration.Builder#Builder(float[], float[]) parameter #1: + +MissingNullability: android.hardware.display.BrightnessCorrection#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.hardware.display.DisplayManager#getAmbientBrightnessStats(): + +MissingNullability: android.hardware.display.DisplayManager#getBrightnessConfiguration(): + +MissingNullability: android.hardware.display.DisplayManager#getBrightnessEvents(): + +MissingNullability: android.hardware.display.DisplayManager#getStableDisplaySize(): + +MissingNullability: android.hardware.display.DisplayManager#setBrightnessConfiguration(android.hardware.display.BrightnessConfiguration) parameter #0: + +MissingNullability: android.location.GnssClock#set(android.location.GnssClock) parameter #0: + +MissingNullability: android.location.GnssMeasurement#set(android.location.GnssMeasurement) parameter #0: + +MissingNullability: android.location.GnssMeasurementsEvent#GnssMeasurementsEvent(android.location.GnssClock, android.location.GnssMeasurement[]) parameter #0: + +MissingNullability: android.location.GnssMeasurementsEvent#GnssMeasurementsEvent(android.location.GnssClock, android.location.GnssMeasurement[]) parameter #1: + +MissingNullability: android.location.GnssNavigationMessage#set(android.location.GnssNavigationMessage) parameter #0: + +MissingNullability: android.location.GnssNavigationMessage#setData(byte[]) parameter #0: + +MissingNullability: android.location.LocationManager#getTestProviderCurrentRequests(String) parameter #0: + +MissingNullability: android.location.LocationRequest#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.media.AudioFocusInfo#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.media.AudioRecordingConfiguration#AudioRecordingConfiguration(int, int, int, android.media.AudioFormat, android.media.AudioFormat, int, String) parameter #3: + +MissingNullability: android.media.AudioRecordingConfiguration#AudioRecordingConfiguration(int, int, int, android.media.AudioFormat, android.media.AudioFormat, int, String) parameter #4: + +MissingNullability: android.media.AudioRecordingConfiguration#AudioRecordingConfiguration(int, int, int, android.media.AudioFormat, android.media.AudioFormat, int, String) parameter #6: + +MissingNullability: android.media.AudioRecordingConfiguration#AudioRecordingConfiguration(int, int, int, android.media.AudioFormat, android.media.AudioFormat, int, String, int, boolean, int, android.media.audiofx.AudioEffect.Descriptor[], android.media.audiofx.AudioEffect.Descriptor[]) parameter #10: + +MissingNullability: android.media.AudioRecordingConfiguration#AudioRecordingConfiguration(int, int, int, android.media.AudioFormat, android.media.AudioFormat, int, String, int, boolean, int, android.media.audiofx.AudioEffect.Descriptor[], android.media.audiofx.AudioEffect.Descriptor[]) parameter #11: + +MissingNullability: android.media.AudioRecordingConfiguration#AudioRecordingConfiguration(int, int, int, android.media.AudioFormat, android.media.AudioFormat, int, String, int, boolean, int, android.media.audiofx.AudioEffect.Descriptor[], android.media.audiofx.AudioEffect.Descriptor[]) parameter #3: + +MissingNullability: android.media.AudioRecordingConfiguration#AudioRecordingConfiguration(int, int, int, android.media.AudioFormat, android.media.AudioFormat, int, String, int, boolean, int, android.media.audiofx.AudioEffect.Descriptor[], android.media.audiofx.AudioEffect.Descriptor[]) parameter #4: + +MissingNullability: android.media.AudioRecordingConfiguration#AudioRecordingConfiguration(int, int, int, android.media.AudioFormat, android.media.AudioFormat, int, String, int, boolean, int, android.media.audiofx.AudioEffect.Descriptor[], android.media.audiofx.AudioEffect.Descriptor[]) parameter #6: + +MissingNullability: android.media.PlaybackParams#setAudioStretchMode(int): + +MissingNullability: android.media.audiofx.AudioEffect#EFFECT_TYPE_NULL: + +MissingNullability: android.media.audiofx.AudioEffect#byteArrayToInt(byte[]) parameter #0: + +MissingNullability: android.media.audiofx.AudioEffect#byteArrayToShort(byte[]) parameter #0: + +MissingNullability: android.media.audiofx.AudioEffect#getParameter(byte[], byte[]) parameter #0: + +MissingNullability: android.media.audiofx.AudioEffect#getParameter(byte[], byte[]) parameter #1: + +MissingNullability: android.media.audiofx.AudioEffect#getParameter(int, byte[]) parameter #1: + +MissingNullability: android.media.audiofx.AudioEffect#getParameter(int, int[]) parameter #1: + +MissingNullability: android.media.audiofx.AudioEffect#getParameter(int, short[]) parameter #1: + +MissingNullability: android.media.audiofx.AudioEffect#getParameter(int[], short[]) parameter #0: + +MissingNullability: android.media.audiofx.AudioEffect#getParameter(int[], short[]) parameter #1: + +MissingNullability: android.media.audiofx.AudioEffect#intToByteArray(int): + +MissingNullability: android.media.audiofx.AudioEffect#isEffectTypeAvailable(java.util.UUID) parameter #0: + +MissingNullability: android.media.audiofx.AudioEffect#setParameter(byte[], byte[]) parameter #0: + +MissingNullability: android.media.audiofx.AudioEffect#setParameter(byte[], byte[]) parameter #1: + +MissingNullability: android.media.audiofx.AudioEffect#setParameter(int, byte[]) parameter #1: + +MissingNullability: android.media.audiofx.AudioEffect#setParameter(int[], byte[]) parameter #0: + +MissingNullability: android.media.audiofx.AudioEffect#setParameter(int[], byte[]) parameter #1: + +MissingNullability: android.media.audiofx.AudioEffect#setParameter(int[], int[]) parameter #0: + +MissingNullability: android.media.audiofx.AudioEffect#setParameter(int[], int[]) parameter #1: + +MissingNullability: android.media.audiofx.AudioEffect#setParameterListener(android.media.audiofx.AudioEffect.OnParameterChangeListener) parameter #0: + +MissingNullability: android.media.audiofx.AudioEffect#shortToByteArray(short): + +MissingNullability: android.media.audiofx.AudioEffect.Descriptor#Descriptor(android.os.Parcel) parameter #0: + +MissingNullability: android.media.audiofx.AudioEffect.Descriptor#writeToParcel(android.os.Parcel) parameter #0: + +MissingNullability: android.media.audiofx.AudioEffect.OnParameterChangeListener#onParameterChange(android.media.audiofx.AudioEffect, int, byte[], byte[]) parameter #0: + +MissingNullability: android.media.audiofx.AudioEffect.OnParameterChangeListener#onParameterChange(android.media.audiofx.AudioEffect, int, byte[], byte[]) parameter #2: + +MissingNullability: android.media.audiofx.AudioEffect.OnParameterChangeListener#onParameterChange(android.media.audiofx.AudioEffect, int, byte[], byte[]) parameter #3: + +MissingNullability: android.media.audiopolicy.AudioMix.Builder#Builder(android.media.audiopolicy.AudioMixingRule) parameter #0: + +MissingNullability: android.media.audiopolicy.AudioMix.Builder#build(): + +MissingNullability: android.media.audiopolicy.AudioMix.Builder#setDevice(android.media.AudioDeviceInfo): + +MissingNullability: android.media.audiopolicy.AudioMix.Builder#setFormat(android.media.AudioFormat): + +MissingNullability: android.media.audiopolicy.AudioMix.Builder#setFormat(android.media.AudioFormat) parameter #0: + +MissingNullability: android.media.audiopolicy.AudioMix.Builder#setRouteFlags(int): + +MissingNullability: android.media.audiopolicy.AudioMixingRule.Builder#addMixRule(int, Object): + +MissingNullability: android.media.audiopolicy.AudioMixingRule.Builder#addMixRule(int, Object) parameter #1: + +MissingNullability: android.media.audiopolicy.AudioMixingRule.Builder#addRule(android.media.AudioAttributes, int): + +MissingNullability: android.media.audiopolicy.AudioMixingRule.Builder#addRule(android.media.AudioAttributes, int) parameter #0: + +MissingNullability: android.media.audiopolicy.AudioMixingRule.Builder#build(): + +MissingNullability: android.media.audiopolicy.AudioMixingRule.Builder#excludeMixRule(int, Object): + +MissingNullability: android.media.audiopolicy.AudioMixingRule.Builder#excludeMixRule(int, Object) parameter #1: + +MissingNullability: android.media.audiopolicy.AudioMixingRule.Builder#excludeRule(android.media.AudioAttributes, int): + +MissingNullability: android.media.audiopolicy.AudioMixingRule.Builder#excludeRule(android.media.AudioAttributes, int) parameter #0: + +MissingNullability: android.media.audiopolicy.AudioPolicy#createAudioRecordSink(android.media.audiopolicy.AudioMix): + +MissingNullability: android.media.audiopolicy.AudioPolicy#createAudioRecordSink(android.media.audiopolicy.AudioMix) parameter #0: + +MissingNullability: android.media.audiopolicy.AudioPolicy#createAudioTrackSource(android.media.audiopolicy.AudioMix): + +MissingNullability: android.media.audiopolicy.AudioPolicy#createAudioTrackSource(android.media.audiopolicy.AudioMix) parameter #0: + +MissingNullability: android.media.audiopolicy.AudioPolicy#setRegistration(String) parameter #0: + +MissingNullability: android.media.audiopolicy.AudioPolicy#toLogFriendlyString(): + +MissingNullability: android.media.audiopolicy.AudioPolicy.AudioPolicyFocusListener#onAudioFocusAbandon(android.media.AudioFocusInfo) parameter #0: + +MissingNullability: android.media.audiopolicy.AudioPolicy.AudioPolicyFocusListener#onAudioFocusGrant(android.media.AudioFocusInfo, int) parameter #0: + +MissingNullability: android.media.audiopolicy.AudioPolicy.AudioPolicyFocusListener#onAudioFocusLoss(android.media.AudioFocusInfo, boolean) parameter #0: + +MissingNullability: android.media.audiopolicy.AudioPolicy.AudioPolicyFocusListener#onAudioFocusRequest(android.media.AudioFocusInfo, int) parameter #0: + +MissingNullability: android.media.audiopolicy.AudioPolicy.AudioPolicyStatusListener#onMixStateUpdate(android.media.audiopolicy.AudioMix) parameter #0: + +MissingNullability: android.media.audiopolicy.AudioPolicy.Builder#Builder(android.content.Context) parameter #0: + +MissingNullability: android.media.audiopolicy.AudioPolicy.Builder#setAudioPolicyFocusListener(android.media.audiopolicy.AudioPolicy.AudioPolicyFocusListener) parameter #0: + +MissingNullability: android.media.audiopolicy.AudioPolicy.Builder#setAudioPolicyStatusListener(android.media.audiopolicy.AudioPolicy.AudioPolicyStatusListener) parameter #0: + +MissingNullability: android.metrics.LogMaker#LogMaker(Object[]) parameter #0: + +MissingNullability: android.metrics.LogMaker#addTaggedData(int, Object): + +MissingNullability: android.metrics.LogMaker#addTaggedData(int, Object) parameter #1: + +MissingNullability: android.metrics.LogMaker#clearCategory(): + +MissingNullability: android.metrics.LogMaker#clearPackageName(): + +MissingNullability: android.metrics.LogMaker#clearSubtype(): + +MissingNullability: android.metrics.LogMaker#clearTaggedData(int): + +MissingNullability: android.metrics.LogMaker#clearType(): + +MissingNullability: android.metrics.LogMaker#deserialize(Object[]) parameter #0: + +MissingNullability: android.metrics.LogMaker#getCounterName(): + +MissingNullability: android.metrics.LogMaker#getPackageName(): + +MissingNullability: android.metrics.LogMaker#getTaggedData(int): + +MissingNullability: android.metrics.LogMaker#isSubsetOf(android.metrics.LogMaker) parameter #0: + +MissingNullability: android.metrics.LogMaker#isValidValue(Object) parameter #0: + +MissingNullability: android.metrics.LogMaker#serialize(): + +MissingNullability: android.metrics.LogMaker#setCategory(int): + +MissingNullability: android.metrics.LogMaker#setPackageName(String): + +MissingNullability: android.metrics.LogMaker#setPackageName(String) parameter #0: + +MissingNullability: android.metrics.LogMaker#setSubtype(int): + +MissingNullability: android.metrics.LogMaker#setType(int): + +MissingNullability: android.metrics.MetricsReader#next(): + +MissingNullability: android.net.NetworkCapabilities#getCapabilities(): + +MissingNullability: android.net.StaticIpConfiguration#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.net.TestNetworkInterface#CREATOR: + +MissingNullability: android.net.TestNetworkInterface#TestNetworkInterface(android.os.ParcelFileDescriptor, String) parameter #0: + +MissingNullability: android.net.TestNetworkInterface#TestNetworkInterface(android.os.ParcelFileDescriptor, String) parameter #1: + +MissingNullability: android.net.TestNetworkInterface#getFileDescriptor(): + +MissingNullability: android.net.TestNetworkInterface#getInterfaceName(): + +MissingNullability: android.net.TestNetworkInterface#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.net.TestNetworkManager#createTapInterface(): + +MissingNullability: android.net.TestNetworkManager#createTunInterface(android.net.LinkAddress[]): + +MissingNullability: android.net.apf.ApfCapabilities#CREATOR: + +MissingNullability: android.net.apf.ApfCapabilities#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.net.metrics.DhcpClientEvent.Builder#setMsg(String) parameter #0: + +MissingNullability: android.os.Build#is64BitAbi(String) parameter #0: + +MissingNullability: android.os.Build.VERSION#ACTIVE_CODENAMES: + +MissingNullability: android.os.Environment#buildPath(java.io.File, java.lang.String...): + +MissingNullability: android.os.Environment#buildPath(java.io.File, java.lang.String...) parameter #0: + +MissingNullability: android.os.Environment#buildPath(java.io.File, java.lang.String...) parameter #1: + +MissingNullability: android.os.FileUtils#contains(java.io.File, java.io.File) parameter #0: + +MissingNullability: android.os.FileUtils#contains(java.io.File, java.io.File) parameter #1: + +MissingNullability: android.os.HwBinder#getService(String, String): + +MissingNullability: android.os.HwBinder#getService(String, String) parameter #0: + +MissingNullability: android.os.HwBinder#getService(String, String) parameter #1: + +MissingNullability: android.os.HwBinder#getService(String, String, boolean): + +MissingNullability: android.os.HwBinder#getService(String, String, boolean) parameter #0: + +MissingNullability: android.os.HwBinder#getService(String, String, boolean) parameter #1: + +MissingNullability: android.os.HwBinder#onTransact(int, android.os.HwParcel, android.os.HwParcel, int) parameter #1: + +MissingNullability: android.os.HwBinder#onTransact(int, android.os.HwParcel, android.os.HwParcel, int) parameter #2: + +MissingNullability: android.os.HwBinder#registerService(String) parameter #0: + +MissingNullability: android.os.HwBinder#transact(int, android.os.HwParcel, android.os.HwParcel, int) parameter #1: + +MissingNullability: android.os.HwBinder#transact(int, android.os.HwParcel, android.os.HwParcel, int) parameter #2: + +MissingNullability: android.os.HwBlob#copyToBoolArray(long, boolean[], int) parameter #1: + +MissingNullability: android.os.HwBlob#copyToDoubleArray(long, double[], int) parameter #1: + +MissingNullability: android.os.HwBlob#copyToFloatArray(long, float[], int) parameter #1: + +MissingNullability: android.os.HwBlob#copyToInt16Array(long, short[], int) parameter #1: + +MissingNullability: android.os.HwBlob#copyToInt32Array(long, int[], int) parameter #1: + +MissingNullability: android.os.HwBlob#copyToInt64Array(long, long[], int) parameter #1: + +MissingNullability: android.os.HwBlob#copyToInt8Array(long, byte[], int) parameter #1: + +MissingNullability: android.os.HwBlob#getString(long): + +MissingNullability: android.os.HwBlob#putBlob(long, android.os.HwBlob) parameter #1: + +MissingNullability: android.os.HwBlob#putBoolArray(long, boolean[]) parameter #1: + +MissingNullability: android.os.HwBlob#putDoubleArray(long, double[]) parameter #1: + +MissingNullability: android.os.HwBlob#putFloatArray(long, float[]) parameter #1: + +MissingNullability: android.os.HwBlob#putInt16Array(long, short[]) parameter #1: + +MissingNullability: android.os.HwBlob#putInt32Array(long, int[]) parameter #1: + +MissingNullability: android.os.HwBlob#putInt64Array(long, long[]) parameter #1: + +MissingNullability: android.os.HwBlob#putInt8Array(long, byte[]) parameter #1: + +MissingNullability: android.os.HwBlob#putString(long, String) parameter #1: + +MissingNullability: android.os.HwBlob#wrapArray(boolean[]): + +MissingNullability: android.os.HwBlob#wrapArray(byte[]): + +MissingNullability: android.os.HwBlob#wrapArray(double[]): + +MissingNullability: android.os.HwBlob#wrapArray(float[]): + +MissingNullability: android.os.HwBlob#wrapArray(int[]): + +MissingNullability: android.os.HwBlob#wrapArray(long[]): + +MissingNullability: android.os.HwBlob#wrapArray(short[]): + +MissingNullability: android.os.HwParcel#enforceInterface(String) parameter #0: + +MissingNullability: android.os.HwParcel#readBoolVector(): + +MissingNullability: android.os.HwParcel#readBuffer(long): + +MissingNullability: android.os.HwParcel#readDoubleVector(): + +MissingNullability: android.os.HwParcel#readEmbeddedBuffer(long, long, long, boolean): + +MissingNullability: android.os.HwParcel#readFloatVector(): + +MissingNullability: android.os.HwParcel#readInt16Vector(): + +MissingNullability: android.os.HwParcel#readInt32Vector(): + +MissingNullability: android.os.HwParcel#readInt64Vector(): + +MissingNullability: android.os.HwParcel#readInt8Vector(): + +MissingNullability: android.os.HwParcel#readString(): + +MissingNullability: android.os.HwParcel#readStringVector(): + +MissingNullability: android.os.HwParcel#readStrongBinder(): + +MissingNullability: android.os.HwParcel#writeBoolVector(java.util.ArrayList<java.lang.Boolean>) parameter #0: + +MissingNullability: android.os.HwParcel#writeBuffer(android.os.HwBlob) parameter #0: + +MissingNullability: android.os.HwParcel#writeDoubleVector(java.util.ArrayList<java.lang.Double>) parameter #0: + +MissingNullability: android.os.HwParcel#writeFloatVector(java.util.ArrayList<java.lang.Float>) parameter #0: + +MissingNullability: android.os.HwParcel#writeInt16Vector(java.util.ArrayList<java.lang.Short>) parameter #0: + +MissingNullability: android.os.HwParcel#writeInt32Vector(java.util.ArrayList<java.lang.Integer>) parameter #0: + +MissingNullability: android.os.HwParcel#writeInt64Vector(java.util.ArrayList<java.lang.Long>) parameter #0: + +MissingNullability: android.os.HwParcel#writeInt8Vector(java.util.ArrayList<java.lang.Byte>) parameter #0: + +MissingNullability: android.os.HwParcel#writeInterfaceToken(String) parameter #0: + +MissingNullability: android.os.HwParcel#writeString(String) parameter #0: + +MissingNullability: android.os.HwParcel#writeStringVector(java.util.ArrayList<java.lang.String>) parameter #0: + +MissingNullability: android.os.HwParcel#writeStrongBinder(android.os.IHwBinder) parameter #0: + +MissingNullability: android.os.IHwBinder#linkToDeath(android.os.IHwBinder.DeathRecipient, long) parameter #0: + +MissingNullability: android.os.IHwBinder#queryLocalInterface(String): + +MissingNullability: android.os.IHwBinder#queryLocalInterface(String) parameter #0: + +MissingNullability: android.os.IHwBinder#transact(int, android.os.HwParcel, android.os.HwParcel, int) parameter #1: + +MissingNullability: android.os.IHwBinder#transact(int, android.os.HwParcel, android.os.HwParcel, int) parameter #2: + +MissingNullability: android.os.IHwBinder#unlinkToDeath(android.os.IHwBinder.DeathRecipient) parameter #0: + +MissingNullability: android.os.IHwInterface#asBinder(): + +MissingNullability: android.os.IncidentManager#approveReport(android.net.Uri) parameter #0: + +MissingNullability: android.os.IncidentManager#cancelAuthorization(android.os.IncidentManager.AuthListener) parameter #0: + +MissingNullability: android.os.IncidentManager#deleteIncidentReports(android.net.Uri) parameter #0: + +MissingNullability: android.os.IncidentManager#denyReport(android.net.Uri) parameter #0: + +MissingNullability: android.os.IncidentManager#getIncidentReport(android.net.Uri) parameter #0: + +MissingNullability: android.os.IncidentManager#getIncidentReportList(String) parameter #0: + +MissingNullability: android.os.IncidentManager#getPendingReports(): + +MissingNullability: android.os.IncidentManager#reportIncident(android.os.IncidentReportArgs) parameter #0: + +MissingNullability: android.os.IncidentManager#requestAuthorization(int, String, int, android.os.IncidentManager.AuthListener) parameter #1: + +MissingNullability: android.os.IncidentManager#requestAuthorization(int, String, int, android.os.IncidentManager.AuthListener) parameter #3: + +MissingNullability: android.os.IncidentManager.IncidentReport#IncidentReport(android.os.Parcel) parameter #0: + +MissingNullability: android.os.IncidentManager.IncidentReport#getInputStream(): + +MissingNullability: android.os.IncidentManager.IncidentReport#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.os.IncidentReportArgs#IncidentReportArgs(android.os.Parcel) parameter #0: + +MissingNullability: android.os.IncidentReportArgs#addHeader(byte[]) parameter #0: + +MissingNullability: android.os.IncidentReportArgs#readFromParcel(android.os.Parcel) parameter #0: + +MissingNullability: android.os.IncidentReportArgs#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.os.ParcelFileDescriptor#getFile(java.io.FileDescriptor): + +MissingNullability: android.os.ParcelFileDescriptor#getFile(java.io.FileDescriptor) parameter #0: + +MissingNullability: android.os.RemoteCallback#RemoteCallback(android.os.RemoteCallback.OnResultListener) parameter #0: + +MissingNullability: android.os.RemoteCallback#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.os.StrictMode#setViolationLogger(android.os.StrictMode.ViolationLogger) parameter #0: + +MissingNullability: android.os.StrictMode.ViolationInfo#ViolationInfo(android.os.Parcel) parameter #0: + +MissingNullability: android.os.StrictMode.ViolationInfo#ViolationInfo(android.os.Parcel, boolean) parameter #0: + +MissingNullability: android.os.StrictMode.ViolationInfo#broadcastIntentAction: + +MissingNullability: android.os.StrictMode.ViolationInfo#dump(android.util.Printer, String) parameter #0: + +MissingNullability: android.os.StrictMode.ViolationInfo#dump(android.util.Printer, String) parameter #1: + +MissingNullability: android.os.StrictMode.ViolationInfo#getStackTrace(): + +MissingNullability: android.os.StrictMode.ViolationInfo#getViolationClass(): + +MissingNullability: android.os.StrictMode.ViolationInfo#getViolationDetails(): + +MissingNullability: android.os.StrictMode.ViolationInfo#tags: + +MissingNullability: android.os.StrictMode.ViolationInfo#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.os.StrictMode.ViolationLogger#log(android.os.StrictMode.ViolationInfo) parameter #0: + +MissingNullability: android.os.UserHandle#of(int): + +MissingNullability: android.os.VibrationEffect#RINGTONES: + +MissingNullability: android.os.VibrationEffect#get(android.net.Uri, android.content.Context) parameter #0: + +MissingNullability: android.os.VibrationEffect#get(android.net.Uri, android.content.Context) parameter #1: + +MissingNullability: android.os.VibrationEffect#get(int): + +MissingNullability: android.os.VibrationEffect#get(int, boolean): + +MissingNullability: android.os.VibrationEffect.OneShot#OneShot(android.os.Parcel) parameter #0: + +MissingNullability: android.os.VibrationEffect.OneShot#scale(float, int): + +MissingNullability: android.os.VibrationEffect.OneShot#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.os.VibrationEffect.Prebaked#Prebaked(android.os.Parcel) parameter #0: + +MissingNullability: android.os.VibrationEffect.Prebaked#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.os.VibrationEffect.Waveform#Waveform(android.os.Parcel) parameter #0: + +MissingNullability: android.os.VibrationEffect.Waveform#Waveform(long[], int[], int) parameter #0: + +MissingNullability: android.os.VibrationEffect.Waveform#Waveform(long[], int[], int) parameter #1: + +MissingNullability: android.os.VibrationEffect.Waveform#getAmplitudes(): + +MissingNullability: android.os.VibrationEffect.Waveform#getTimings(): + +MissingNullability: android.os.VibrationEffect.Waveform#scale(float, int): + +MissingNullability: android.os.VibrationEffect.Waveform#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.os.VintfObject#getHalNamesAndVersions(): + +MissingNullability: android.os.VintfObject#getSepolicyVersion(): + +MissingNullability: android.os.VintfObject#getTargetFrameworkCompatibilityMatrixVersion(): + +MissingNullability: android.os.VintfObject#getVndkSnapshots(): + +MissingNullability: android.os.VintfObject#report(): + +MissingNullability: android.os.VintfRuntimeInfo#getCpuInfo(): + +MissingNullability: android.os.VintfRuntimeInfo#getHardwareId(): + +MissingNullability: android.os.VintfRuntimeInfo#getKernelVersion(): + +MissingNullability: android.os.VintfRuntimeInfo#getNodeName(): + +MissingNullability: android.os.VintfRuntimeInfo#getOsName(): + +MissingNullability: android.os.VintfRuntimeInfo#getOsRelease(): + +MissingNullability: android.os.VintfRuntimeInfo#getOsVersion(): + +MissingNullability: android.os.WorkSource#add(int, String) parameter #1: + +MissingNullability: android.os.WorkSource#addReturningNewbs(android.os.WorkSource) parameter #0: + +MissingNullability: android.os.WorkSource#getName(int): + +MissingNullability: android.os.WorkSource#setReturningDiffs(android.os.WorkSource) parameter #0: + +MissingNullability: android.os.health.HealthKeys.Constants#Constants(Class) parameter #0: + +MissingNullability: android.os.health.HealthKeys.Constants#getDataType(): + +MissingNullability: android.os.health.HealthKeys.Constants#getKeys(int): + +MissingNullability: android.os.health.HealthStats#HealthStats(android.os.Parcel) parameter #0: + +MissingNullability: android.os.health.HealthStatsParceler#HealthStatsParceler(android.os.Parcel) parameter #0: + +MissingNullability: android.os.health.HealthStatsParceler#HealthStatsParceler(android.os.health.HealthStatsWriter) parameter #0: + +MissingNullability: android.os.health.HealthStatsParceler#getHealthStats(): + +MissingNullability: android.os.health.HealthStatsParceler#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.os.health.HealthStatsWriter#HealthStatsWriter(android.os.health.HealthKeys.Constants) parameter #0: + +MissingNullability: android.os.health.HealthStatsWriter#addMeasurements(int, String, long) parameter #1: + +MissingNullability: android.os.health.HealthStatsWriter#addStats(int, String, android.os.health.HealthStatsWriter) parameter #1: + +MissingNullability: android.os.health.HealthStatsWriter#addStats(int, String, android.os.health.HealthStatsWriter) parameter #2: + +MissingNullability: android.os.health.HealthStatsWriter#addTimers(int, String, android.os.health.TimerStat) parameter #1: + +MissingNullability: android.os.health.HealthStatsWriter#addTimers(int, String, android.os.health.TimerStat) parameter #2: + +MissingNullability: android.os.health.HealthStatsWriter#flattenToParcel(android.os.Parcel) parameter #0: + +MissingNullability: android.os.storage.StorageVolume#getPath(): + +MissingNullability: android.permission.RuntimePermissionPresentationInfo#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.provider.CalendarContract.Calendars#SYNC_WRITABLE_COLUMNS: + +MissingNullability: android.provider.CalendarContract.Events#SYNC_WRITABLE_COLUMNS: + +MissingNullability: android.provider.ContactsContract.CommonDataKinds.Phone#ENTERPRISE_CONTENT_URI: + +MissingNullability: android.provider.ContactsContract.RawContactsEntity#CORP_CONTENT_URI: + +MissingNullability: android.provider.DeviceConfig#getProperty(String, String): + +MissingNullability: android.provider.DeviceConfig#getString(String, String, String): + +MissingNullability: android.provider.MediaStore#deleteContributedMedia(android.content.Context, String, android.os.UserHandle) parameter #0: + +MissingNullability: android.provider.MediaStore#deleteContributedMedia(android.content.Context, String, android.os.UserHandle) parameter #1: + +MissingNullability: android.provider.MediaStore#deleteContributedMedia(android.content.Context, String, android.os.UserHandle) parameter #2: + +MissingNullability: android.provider.MediaStore#getContributedMediaSize(android.content.Context, String, android.os.UserHandle) parameter #0: + +MissingNullability: android.provider.MediaStore#getContributedMediaSize(android.content.Context, String, android.os.UserHandle) parameter #1: + +MissingNullability: android.provider.MediaStore#getContributedMediaSize(android.content.Context, String, android.os.UserHandle) parameter #2: + +MissingNullability: android.provider.MediaStore#scanFile(android.content.Context, java.io.File): + +MissingNullability: android.provider.MediaStore#scanFile(android.content.Context, java.io.File) parameter #0: + +MissingNullability: android.provider.MediaStore#scanFile(android.content.Context, java.io.File) parameter #1: + +MissingNullability: android.provider.MediaStore#scanFileFromShell(android.content.Context, java.io.File): + +MissingNullability: android.provider.MediaStore#scanFileFromShell(android.content.Context, java.io.File) parameter #0: + +MissingNullability: android.provider.MediaStore#scanFileFromShell(android.content.Context, java.io.File) parameter #1: + +MissingNullability: android.provider.MediaStore#scanVolume(android.content.Context, java.io.File) parameter #0: + +MissingNullability: android.provider.MediaStore#scanVolume(android.content.Context, java.io.File) parameter #1: + +MissingNullability: android.provider.MediaStore#waitForIdle(android.content.Context) parameter #0: + +MissingNullability: android.security.KeyStoreException#KeyStoreException(int, String) parameter #1: + +MissingNullability: android.security.keystore.AttestationUtils#attestDeviceIds(android.content.Context, int[], byte[]) parameter #0: + +MissingNullability: android.security.keystore.KeyProtection.Builder#setBoundToSpecificSecureUserId(long): + +MissingNullability: android.service.autofill.AutofillFieldClassificationService#onBind(android.content.Intent): + +MissingNullability: android.service.autofill.AutofillFieldClassificationService#onBind(android.content.Intent) parameter #0: + +MissingNullability: android.service.autofill.CompositeUserData#getCategoryIds(): + +MissingNullability: android.service.autofill.CompositeUserData#getDefaultFieldClassificationArgs(): + +MissingNullability: android.service.autofill.CompositeUserData#getFieldClassificationAlgorithms(): + +MissingNullability: android.service.autofill.CompositeUserData#getFieldClassificationArgs(): + +MissingNullability: android.service.autofill.CompositeUserData#getValues(): + +MissingNullability: android.service.autofill.CompositeUserData#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.service.autofill.UserData#getFieldClassificationAlgorithms(): + +MissingNullability: android.service.autofill.augmented.AugmentedAutofillService#dump(java.io.FileDescriptor, java.io.PrintWriter, String[]) parameter #0: + +MissingNullability: android.service.autofill.augmented.AugmentedAutofillService#dump(java.io.FileDescriptor, java.io.PrintWriter, String[]) parameter #1: + +MissingNullability: android.service.autofill.augmented.AugmentedAutofillService#dump(java.io.FileDescriptor, java.io.PrintWriter, String[]) parameter #2: + +MissingNullability: android.service.autofill.augmented.AugmentedAutofillService#onUnbind(android.content.Intent) parameter #0: + +MissingNullability: android.service.contentcapture.ContentCaptureService#dump(java.io.FileDescriptor, java.io.PrintWriter, String[]) parameter #0: + +MissingNullability: android.service.contentcapture.ContentCaptureService#dump(java.io.FileDescriptor, java.io.PrintWriter, String[]) parameter #1: + +MissingNullability: android.service.contentcapture.ContentCaptureService#dump(java.io.FileDescriptor, java.io.PrintWriter, String[]) parameter #2: + +MissingNullability: android.service.notification.Adjustment#Adjustment(String, String, android.os.Bundle, CharSequence, int) parameter #0: + +MissingNullability: android.service.notification.Adjustment#Adjustment(String, String, android.os.Bundle, CharSequence, int) parameter #1: + +MissingNullability: android.service.notification.Adjustment#Adjustment(String, String, android.os.Bundle, CharSequence, int) parameter #2: + +MissingNullability: android.service.notification.Adjustment#Adjustment(String, String, android.os.Bundle, CharSequence, int) parameter #3: + +MissingNullability: android.service.notification.Adjustment#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.service.notification.NotificationAssistantService#attachBaseContext(android.content.Context) parameter #0: + +MissingNullability: android.service.notification.NotificationStats#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.service.notification.SnoozeCriterion#SnoozeCriterion(String, CharSequence, CharSequence) parameter #0: + +MissingNullability: android.service.notification.SnoozeCriterion#SnoozeCriterion(String, CharSequence, CharSequence) parameter #1: + +MissingNullability: android.service.notification.SnoozeCriterion#SnoozeCriterion(String, CharSequence, CharSequence) parameter #2: + +MissingNullability: android.service.notification.SnoozeCriterion#SnoozeCriterion(android.os.Parcel) parameter #0: + +MissingNullability: android.service.notification.SnoozeCriterion#getConfirmation(): + +MissingNullability: android.service.notification.SnoozeCriterion#getExplanation(): + +MissingNullability: android.service.notification.SnoozeCriterion#getId(): + +MissingNullability: android.service.notification.SnoozeCriterion#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.telecom.Call.Details#getTelecomCallId(): + +MissingNullability: android.telecom.CallScreeningService.CallResponse.Builder#setShouldScreenCallFurther(boolean): + +MissingNullability: android.telecom.Conference#getPrimaryConnection(): + +MissingNullability: android.telecom.PhoneAccountSuggestionService#onBind(android.content.Intent): + +MissingNullability: android.telecom.PhoneAccountSuggestionService#onBind(android.content.Intent) parameter #0: + +MissingNullability: android.telephony.CallQuality#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.telephony.DataSpecificRegistrationInfo#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.telephony.LteVopsSupportInfo#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.telephony.NetworkRegistrationInfo#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.telephony.ServiceState#addNetworkRegistrationInfo(android.telephony.NetworkRegistrationInfo) parameter #0: + +MissingNullability: android.telephony.ServiceState#setCellBandwidths(int[]) parameter #0: + +MissingNullability: android.telephony.SmsManager#checkSmsShortCodeDestination(String, String) parameter #0: + +MissingNullability: android.telephony.SmsManager#checkSmsShortCodeDestination(String, String) parameter #1: + +MissingNullability: android.telephony.TelephonyManager#checkCarrierPrivilegesForPackage(String) parameter #0: + +MissingNullability: android.telephony.TelephonyManager#getCarrierPackageNamesForIntent(android.content.Intent): + +MissingNullability: android.telephony.TelephonyManager#getCarrierPackageNamesForIntent(android.content.Intent) parameter #0: + +MissingNullability: android.telephony.TelephonyManager#getLine1AlphaTag(): + +MissingNullability: android.telephony.TelephonyManager#getRadioHalVersion(): + +MissingNullability: android.telephony.TelephonyManager#setCarrierTestOverride(String, String, String, String, String, String, String) parameter #0: + +MissingNullability: android.telephony.TelephonyManager#setCarrierTestOverride(String, String, String, String, String, String, String) parameter #1: + +MissingNullability: android.telephony.TelephonyManager#setCarrierTestOverride(String, String, String, String, String, String, String) parameter #2: + +MissingNullability: android.telephony.TelephonyManager#setCarrierTestOverride(String, String, String, String, String, String, String) parameter #3: + +MissingNullability: android.telephony.TelephonyManager#setCarrierTestOverride(String, String, String, String, String, String, String) parameter #4: + +MissingNullability: android.telephony.TelephonyManager#setCarrierTestOverride(String, String, String, String, String, String, String) parameter #5: + +MissingNullability: android.telephony.TelephonyManager#setCarrierTestOverride(String, String, String, String, String, String, String) parameter #6: + +MissingNullability: android.telephony.TelephonyManager#setCarrierTestOverride(String, String, String, String, String, String, String, String, String) parameter #0: + +MissingNullability: android.telephony.TelephonyManager#setCarrierTestOverride(String, String, String, String, String, String, String, String, String) parameter #1: + +MissingNullability: android.telephony.TelephonyManager#setCarrierTestOverride(String, String, String, String, String, String, String, String, String) parameter #2: + +MissingNullability: android.telephony.TelephonyManager#setCarrierTestOverride(String, String, String, String, String, String, String, String, String) parameter #3: + +MissingNullability: android.telephony.TelephonyManager#setCarrierTestOverride(String, String, String, String, String, String, String, String, String) parameter #4: + +MissingNullability: android.telephony.TelephonyManager#setCarrierTestOverride(String, String, String, String, String, String, String, String, String) parameter #5: + +MissingNullability: android.telephony.TelephonyManager#setCarrierTestOverride(String, String, String, String, String, String, String, String, String) parameter #6: + +MissingNullability: android.telephony.TelephonyManager#setCarrierTestOverride(String, String, String, String, String, String, String, String, String) parameter #7: + +MissingNullability: android.telephony.TelephonyManager#setCarrierTestOverride(String, String, String, String, String, String, String, String, String) parameter #8: + +MissingNullability: android.telephony.ims.ImsCallForwardInfo#getNumber(): + +MissingNullability: android.telephony.ims.ImsCallForwardInfo#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallProfile#ImsCallProfile(int, int, android.os.Bundle, android.telephony.ims.ImsStreamMediaProfile) parameter #2: + +MissingNullability: android.telephony.ims.ImsCallProfile#ImsCallProfile(int, int, android.os.Bundle, android.telephony.ims.ImsStreamMediaProfile) parameter #3: + +MissingNullability: android.telephony.ims.ImsCallProfile#getCallExtra(String): + +MissingNullability: android.telephony.ims.ImsCallProfile#getCallExtra(String) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallProfile#getCallExtra(String, String): + +MissingNullability: android.telephony.ims.ImsCallProfile#getCallExtra(String, String) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallProfile#getCallExtra(String, String) parameter #1: + +MissingNullability: android.telephony.ims.ImsCallProfile#getCallExtraBoolean(String) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallProfile#getCallExtraBoolean(String, boolean) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallProfile#getCallExtraInt(String) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallProfile#getCallExtraInt(String, int) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallProfile#getCallExtras(): + +MissingNullability: android.telephony.ims.ImsCallProfile#getMediaProfile(): + +MissingNullability: android.telephony.ims.ImsCallProfile#getVideoStateFromImsCallProfile(android.telephony.ims.ImsCallProfile) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallProfile#setCallExtra(String, String) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallProfile#setCallExtra(String, String) parameter #1: + +MissingNullability: android.telephony.ims.ImsCallProfile#setCallExtraBoolean(String, boolean) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallProfile#setCallExtraInt(String, int) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallProfile#updateCallExtras(android.telephony.ims.ImsCallProfile) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallProfile#updateCallType(android.telephony.ims.ImsCallProfile) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallProfile#updateMediaProfile(android.telephony.ims.ImsCallProfile) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallProfile#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionConferenceExtendFailed(android.telephony.ims.ImsReasonInfo) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionConferenceExtendReceived(android.telephony.ims.stub.ImsCallSessionImplBase, android.telephony.ims.ImsCallProfile) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionConferenceExtendReceived(android.telephony.ims.stub.ImsCallSessionImplBase, android.telephony.ims.ImsCallProfile) parameter #1: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionConferenceExtended(android.telephony.ims.stub.ImsCallSessionImplBase, android.telephony.ims.ImsCallProfile) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionConferenceExtended(android.telephony.ims.stub.ImsCallSessionImplBase, android.telephony.ims.ImsCallProfile) parameter #1: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionConferenceStateUpdated(android.telephony.ims.ImsConferenceState) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionHandover(int, int, android.telephony.ims.ImsReasonInfo) parameter #2: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionHandoverFailed(int, int, android.telephony.ims.ImsReasonInfo) parameter #2: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionHeld(android.telephony.ims.ImsCallProfile) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionHoldFailed(android.telephony.ims.ImsReasonInfo) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionHoldReceived(android.telephony.ims.ImsCallProfile) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionInitiated(android.telephony.ims.ImsCallProfile) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionInitiatedFailed(android.telephony.ims.ImsReasonInfo) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionInviteParticipantsRequestFailed(android.telephony.ims.ImsReasonInfo) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionMergeComplete(android.telephony.ims.stub.ImsCallSessionImplBase) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionMergeFailed(android.telephony.ims.ImsReasonInfo) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionMergeStarted(android.telephony.ims.stub.ImsCallSessionImplBase, android.telephony.ims.ImsCallProfile) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionMergeStarted(android.telephony.ims.stub.ImsCallSessionImplBase, android.telephony.ims.ImsCallProfile) parameter #1: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionProgressing(android.telephony.ims.ImsStreamMediaProfile) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionRemoveParticipantsRequestFailed(android.telephony.ims.ImsReasonInfo) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionResumeFailed(android.telephony.ims.ImsReasonInfo) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionResumeReceived(android.telephony.ims.ImsCallProfile) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionResumed(android.telephony.ims.ImsCallProfile) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionRttMessageReceived(String) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionRttModifyRequestReceived(android.telephony.ims.ImsCallProfile) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionSuppServiceReceived(android.telephony.ims.ImsSuppServiceNotification) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionTerminated(android.telephony.ims.ImsReasonInfo) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionUpdateFailed(android.telephony.ims.ImsReasonInfo) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionUpdateReceived(android.telephony.ims.ImsCallProfile) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionUpdated(android.telephony.ims.ImsCallProfile) parameter #0: + +MissingNullability: android.telephony.ims.ImsCallSessionListener#callSessionUssdMessageReceived(int, String) parameter #1: + +MissingNullability: android.telephony.ims.ImsConferenceState#getConnectionStateForStatus(String) parameter #0: + +MissingNullability: android.telephony.ims.ImsConferenceState#mParticipants: + +MissingNullability: android.telephony.ims.ImsConferenceState#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.telephony.ims.ImsExternalCallState#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.telephony.ims.ImsReasonInfo#ImsReasonInfo(int, int, String) parameter #2: + +MissingNullability: android.telephony.ims.ImsReasonInfo#getExtraMessage(): + +MissingNullability: android.telephony.ims.ImsReasonInfo#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.telephony.ims.ImsService#createMmTelFeature(int): + +MissingNullability: android.telephony.ims.ImsService#createRcsFeature(int): + +MissingNullability: android.telephony.ims.ImsService#getConfig(int): + +MissingNullability: android.telephony.ims.ImsService#getRegistration(int): + +MissingNullability: android.telephony.ims.ImsService#onUpdateSupportedImsFeatures(android.telephony.ims.stub.ImsFeatureConfiguration) parameter #0: + +MissingNullability: android.telephony.ims.ImsService#querySupportedImsFeatures(): + +MissingNullability: android.telephony.ims.ImsSsData#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.telephony.ims.ImsSsInfo#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.telephony.ims.ImsStreamMediaProfile#copyFrom(android.telephony.ims.ImsStreamMediaProfile) parameter #0: + +MissingNullability: android.telephony.ims.ImsStreamMediaProfile#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.telephony.ims.ImsSuppServiceNotification#ImsSuppServiceNotification(int, int, int, int, String, String[]) parameter #4: + +MissingNullability: android.telephony.ims.ImsSuppServiceNotification#ImsSuppServiceNotification(int, int, int, int, String, String[]) parameter #5: + +MissingNullability: android.telephony.ims.ImsSuppServiceNotification#history: + +MissingNullability: android.telephony.ims.ImsSuppServiceNotification#number: + +MissingNullability: android.telephony.ims.ImsSuppServiceNotification#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.telephony.ims.ImsUtListener#onSupplementaryServiceIndication(android.telephony.ims.ImsSsData) parameter #0: + +MissingNullability: android.telephony.ims.ImsUtListener#onUtConfigurationCallBarringQueried(int, android.telephony.ims.ImsSsInfo[]) parameter #1: + +MissingNullability: android.telephony.ims.ImsUtListener#onUtConfigurationCallForwardQueried(int, android.telephony.ims.ImsCallForwardInfo[]) parameter #1: + +MissingNullability: android.telephony.ims.ImsUtListener#onUtConfigurationCallWaitingQueried(int, android.telephony.ims.ImsSsInfo[]) parameter #1: + +MissingNullability: android.telephony.ims.ImsUtListener#onUtConfigurationQueried(int, android.os.Bundle) parameter #1: + +MissingNullability: android.telephony.ims.ImsUtListener#onUtConfigurationQueryFailed(int, android.telephony.ims.ImsReasonInfo) parameter #1: + +MissingNullability: android.telephony.ims.ImsUtListener#onUtConfigurationUpdateFailed(int, android.telephony.ims.ImsReasonInfo) parameter #1: + +MissingNullability: android.telephony.ims.ImsVideoCallProvider#changeCameraCapabilities(android.telecom.VideoProfile.CameraCapabilities) parameter #0: + +MissingNullability: android.telephony.ims.ImsVideoCallProvider#onSendSessionModifyRequest(android.telecom.VideoProfile, android.telecom.VideoProfile) parameter #0: + +MissingNullability: android.telephony.ims.ImsVideoCallProvider#onSendSessionModifyRequest(android.telecom.VideoProfile, android.telecom.VideoProfile) parameter #1: + +MissingNullability: android.telephony.ims.ImsVideoCallProvider#onSendSessionModifyResponse(android.telecom.VideoProfile) parameter #0: + +MissingNullability: android.telephony.ims.ImsVideoCallProvider#onSetCamera(String) parameter #0: + +MissingNullability: android.telephony.ims.ImsVideoCallProvider#onSetCamera(String, int) parameter #0: + +MissingNullability: android.telephony.ims.ImsVideoCallProvider#onSetDisplaySurface(android.view.Surface) parameter #0: + +MissingNullability: android.telephony.ims.ImsVideoCallProvider#onSetPauseImage(android.net.Uri) parameter #0: + +MissingNullability: android.telephony.ims.ImsVideoCallProvider#onSetPreviewSurface(android.view.Surface) parameter #0: + +MissingNullability: android.telephony.ims.ImsVideoCallProvider#receiveSessionModifyRequest(android.telecom.VideoProfile) parameter #0: + +MissingNullability: android.telephony.ims.ImsVideoCallProvider#receiveSessionModifyResponse(int, android.telecom.VideoProfile, android.telecom.VideoProfile) parameter #1: + +MissingNullability: android.telephony.ims.ImsVideoCallProvider#receiveSessionModifyResponse(int, android.telecom.VideoProfile, android.telecom.VideoProfile) parameter #2: + +MissingNullability: android.telephony.ims.feature.CapabilityChangeRequest#getCapabilitiesToDisable(): + +MissingNullability: android.telephony.ims.feature.CapabilityChangeRequest#getCapabilitiesToEnable(): + +MissingNullability: android.telephony.ims.feature.CapabilityChangeRequest#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.telephony.ims.feature.ImsFeature#changeEnabledCapabilities(android.telephony.ims.feature.CapabilityChangeRequest, android.telephony.ims.feature.ImsFeature.CapabilityCallbackProxy) parameter #0: + +MissingNullability: android.telephony.ims.feature.ImsFeature#changeEnabledCapabilities(android.telephony.ims.feature.CapabilityChangeRequest, android.telephony.ims.feature.ImsFeature.CapabilityCallbackProxy) parameter #1: + +MissingNullability: android.telephony.ims.feature.MmTelFeature#queryCapabilityStatus(): + +MissingNullability: android.telephony.ims.feature.MmTelFeature.MmTelCapabilities#MmTelCapabilities(android.telephony.ims.feature.ImsFeature.Capabilities) parameter #0: + +MissingNullability: android.telephony.ims.stub.ImsCallSessionImplBase#accept(int, android.telephony.ims.ImsStreamMediaProfile) parameter #1: + +MissingNullability: android.telephony.ims.stub.ImsCallSessionImplBase#deflect(String) parameter #0: + +MissingNullability: android.telephony.ims.stub.ImsCallSessionImplBase#extendToConference(String[]) parameter #0: + +MissingNullability: android.telephony.ims.stub.ImsCallSessionImplBase#getCallId(): + +MissingNullability: android.telephony.ims.stub.ImsCallSessionImplBase#getCallProfile(): + +MissingNullability: android.telephony.ims.stub.ImsCallSessionImplBase#getImsVideoCallProvider(): + +MissingNullability: android.telephony.ims.stub.ImsCallSessionImplBase#getLocalCallProfile(): + +MissingNullability: android.telephony.ims.stub.ImsCallSessionImplBase#getProperty(String): + +MissingNullability: android.telephony.ims.stub.ImsCallSessionImplBase#getProperty(String) parameter #0: + +MissingNullability: android.telephony.ims.stub.ImsCallSessionImplBase#getRemoteCallProfile(): + +MissingNullability: android.telephony.ims.stub.ImsCallSessionImplBase#hold(android.telephony.ims.ImsStreamMediaProfile) parameter #0: + +MissingNullability: android.telephony.ims.stub.ImsCallSessionImplBase#inviteParticipants(String[]) parameter #0: + +MissingNullability: android.telephony.ims.stub.ImsCallSessionImplBase#removeParticipants(String[]) parameter #0: + +MissingNullability: android.telephony.ims.stub.ImsCallSessionImplBase#resume(android.telephony.ims.ImsStreamMediaProfile) parameter #0: + +MissingNullability: android.telephony.ims.stub.ImsCallSessionImplBase#sendDtmf(char, android.os.Message) parameter #1: + +MissingNullability: android.telephony.ims.stub.ImsCallSessionImplBase#sendRttMessage(String) parameter #0: + +MissingNullability: android.telephony.ims.stub.ImsCallSessionImplBase#sendRttModifyRequest(android.telephony.ims.ImsCallProfile) parameter #0: + +MissingNullability: android.telephony.ims.stub.ImsCallSessionImplBase#sendUssd(String) parameter #0: + +MissingNullability: android.telephony.ims.stub.ImsCallSessionImplBase#setListener(android.telephony.ims.ImsCallSessionListener) parameter #0: + +MissingNullability: android.telephony.ims.stub.ImsCallSessionImplBase#start(String, android.telephony.ims.ImsCallProfile) parameter #0: + +MissingNullability: android.telephony.ims.stub.ImsCallSessionImplBase#start(String, android.telephony.ims.ImsCallProfile) parameter #1: + +MissingNullability: android.telephony.ims.stub.ImsCallSessionImplBase#startConference(String[], android.telephony.ims.ImsCallProfile) parameter #0: + +MissingNullability: android.telephony.ims.stub.ImsCallSessionImplBase#startConference(String[], android.telephony.ims.ImsCallProfile) parameter #1: + +MissingNullability: android.telephony.ims.stub.ImsCallSessionImplBase#update(int, android.telephony.ims.ImsStreamMediaProfile) parameter #1: + +MissingNullability: android.telephony.ims.stub.ImsCallSessionImplBase.State#toString(int): + +MissingNullability: android.telephony.ims.stub.ImsConfigImplBase#getConfigString(int): + +MissingNullability: android.telephony.ims.stub.ImsConfigImplBase#notifyProvisionedValueChanged(int, String) parameter #1: + +MissingNullability: android.telephony.ims.stub.ImsConfigImplBase#setConfig(int, String) parameter #1: + +MissingNullability: android.telephony.ims.stub.ImsFeatureConfiguration#getServiceFeatures(): + +MissingNullability: android.telephony.ims.stub.ImsFeatureConfiguration#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.telephony.ims.stub.ImsFeatureConfiguration.Builder#addFeature(int, int): + +MissingNullability: android.telephony.ims.stub.ImsFeatureConfiguration.Builder#build(): + +MissingNullability: android.telephony.ims.stub.ImsMultiEndpointImplBase#onImsExternalCallStateUpdate(java.util.List<android.telephony.ims.ImsExternalCallState>) parameter #0: + +MissingNullability: android.telephony.ims.stub.ImsRegistrationImplBase#onDeregistered(android.telephony.ims.ImsReasonInfo) parameter #0: + +MissingNullability: android.telephony.ims.stub.ImsRegistrationImplBase#onSubscriberAssociatedUriChanged(android.net.Uri[]) parameter #0: + +MissingNullability: android.telephony.ims.stub.ImsRegistrationImplBase#onTechnologyChangeFailed(int, android.telephony.ims.ImsReasonInfo) parameter #1: + +MissingNullability: android.telephony.ims.stub.ImsSmsImplBase#getSmsFormat(): + +MissingNullability: android.telephony.ims.stub.ImsSmsImplBase#onSmsReceived(int, String, byte[]) parameter #1: + +MissingNullability: android.telephony.ims.stub.ImsSmsImplBase#onSmsReceived(int, String, byte[]) parameter #2: + +MissingNullability: android.telephony.ims.stub.ImsSmsImplBase#onSmsStatusReportReceived(int, String, byte[]) parameter #1: + +MissingNullability: android.telephony.ims.stub.ImsSmsImplBase#onSmsStatusReportReceived(int, String, byte[]) parameter #2: + +MissingNullability: android.telephony.ims.stub.ImsSmsImplBase#onSmsStatusReportReceived(int, int, String, byte[]) parameter #2: + +MissingNullability: android.telephony.ims.stub.ImsSmsImplBase#onSmsStatusReportReceived(int, int, String, byte[]) parameter #3: + +MissingNullability: android.telephony.ims.stub.ImsSmsImplBase#sendSms(int, int, String, String, boolean, byte[]) parameter #2: + +MissingNullability: android.telephony.ims.stub.ImsSmsImplBase#sendSms(int, int, String, String, boolean, byte[]) parameter #3: + +MissingNullability: android.telephony.ims.stub.ImsSmsImplBase#sendSms(int, int, String, String, boolean, byte[]) parameter #5: + +MissingNullability: android.telephony.ims.stub.ImsUtImplBase#queryCallForward(int, String) parameter #1: + +MissingNullability: android.telephony.ims.stub.ImsUtImplBase#setListener(android.telephony.ims.ImsUtListener) parameter #0: + +MissingNullability: android.telephony.ims.stub.ImsUtImplBase#transact(android.os.Bundle) parameter #0: + +MissingNullability: android.telephony.ims.stub.ImsUtImplBase#updateCallBarring(int, int, String[]) parameter #2: + +MissingNullability: android.telephony.ims.stub.ImsUtImplBase#updateCallBarringForServiceClass(int, int, String[], int) parameter #2: + +MissingNullability: android.telephony.ims.stub.ImsUtImplBase#updateCallForward(int, int, String, int, int) parameter #2: + +MissingNullability: android.telephony.mbms.DownloadRequest.Builder#setServiceId(String): + +MissingNullability: android.telephony.mbms.DownloadRequest.Builder#setServiceId(String) parameter #0: + +MissingNullability: android.telephony.mbms.FileInfo#FileInfo(android.net.Uri, String) parameter #0: + +MissingNullability: android.telephony.mbms.FileInfo#FileInfo(android.net.Uri, String) parameter #1: + +MissingNullability: android.telephony.mbms.FileServiceInfo#FileServiceInfo(java.util.Map<java.util.Locale,java.lang.String>, String, java.util.List<java.util.Locale>, String, java.util.Date, java.util.Date, java.util.List<android.telephony.mbms.FileInfo>) parameter #0: + +MissingNullability: android.telephony.mbms.FileServiceInfo#FileServiceInfo(java.util.Map<java.util.Locale,java.lang.String>, String, java.util.List<java.util.Locale>, String, java.util.Date, java.util.Date, java.util.List<android.telephony.mbms.FileInfo>) parameter #1: + +MissingNullability: android.telephony.mbms.FileServiceInfo#FileServiceInfo(java.util.Map<java.util.Locale,java.lang.String>, String, java.util.List<java.util.Locale>, String, java.util.Date, java.util.Date, java.util.List<android.telephony.mbms.FileInfo>) parameter #2: + +MissingNullability: android.telephony.mbms.FileServiceInfo#FileServiceInfo(java.util.Map<java.util.Locale,java.lang.String>, String, java.util.List<java.util.Locale>, String, java.util.Date, java.util.Date, java.util.List<android.telephony.mbms.FileInfo>) parameter #3: + +MissingNullability: android.telephony.mbms.FileServiceInfo#FileServiceInfo(java.util.Map<java.util.Locale,java.lang.String>, String, java.util.List<java.util.Locale>, String, java.util.Date, java.util.Date, java.util.List<android.telephony.mbms.FileInfo>) parameter #4: + +MissingNullability: android.telephony.mbms.FileServiceInfo#FileServiceInfo(java.util.Map<java.util.Locale,java.lang.String>, String, java.util.List<java.util.Locale>, String, java.util.Date, java.util.Date, java.util.List<android.telephony.mbms.FileInfo>) parameter #5: + +MissingNullability: android.telephony.mbms.FileServiceInfo#FileServiceInfo(java.util.Map<java.util.Locale,java.lang.String>, String, java.util.List<java.util.Locale>, String, java.util.Date, java.util.Date, java.util.List<android.telephony.mbms.FileInfo>) parameter #6: + +MissingNullability: android.telephony.mbms.StreamingServiceInfo#StreamingServiceInfo(java.util.Map<java.util.Locale,java.lang.String>, String, java.util.List<java.util.Locale>, String, java.util.Date, java.util.Date) parameter #0: + +MissingNullability: android.telephony.mbms.StreamingServiceInfo#StreamingServiceInfo(java.util.Map<java.util.Locale,java.lang.String>, String, java.util.List<java.util.Locale>, String, java.util.Date, java.util.Date) parameter #1: + +MissingNullability: android.telephony.mbms.StreamingServiceInfo#StreamingServiceInfo(java.util.Map<java.util.Locale,java.lang.String>, String, java.util.List<java.util.Locale>, String, java.util.Date, java.util.Date) parameter #2: + +MissingNullability: android.telephony.mbms.StreamingServiceInfo#StreamingServiceInfo(java.util.Map<java.util.Locale,java.lang.String>, String, java.util.List<java.util.Locale>, String, java.util.Date, java.util.Date) parameter #3: + +MissingNullability: android.telephony.mbms.StreamingServiceInfo#StreamingServiceInfo(java.util.Map<java.util.Locale,java.lang.String>, String, java.util.List<java.util.Locale>, String, java.util.Date, java.util.Date) parameter #4: + +MissingNullability: android.telephony.mbms.StreamingServiceInfo#StreamingServiceInfo(java.util.Map<java.util.Locale,java.lang.String>, String, java.util.List<java.util.Locale>, String, java.util.Date, java.util.Date) parameter #5: + +MissingNullability: android.telephony.mbms.UriPathPair#getContentUri(): + +MissingNullability: android.telephony.mbms.UriPathPair#getFilePathUri(): + +MissingNullability: android.telephony.mbms.UriPathPair#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.telephony.mbms.vendor.MbmsDownloadServiceBase#addProgressListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadProgressListener) parameter #0: + +MissingNullability: android.telephony.mbms.vendor.MbmsDownloadServiceBase#addProgressListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadProgressListener) parameter #1: + +MissingNullability: android.telephony.mbms.vendor.MbmsDownloadServiceBase#addStatusListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStatusListener) parameter #0: + +MissingNullability: android.telephony.mbms.vendor.MbmsDownloadServiceBase#addStatusListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStatusListener) parameter #1: + +MissingNullability: android.telephony.mbms.vendor.MbmsDownloadServiceBase#asBinder(): + +MissingNullability: android.telephony.mbms.vendor.MbmsDownloadServiceBase#cancelDownload(android.telephony.mbms.DownloadRequest) parameter #0: + +MissingNullability: android.telephony.mbms.vendor.MbmsDownloadServiceBase#download(android.telephony.mbms.DownloadRequest) parameter #0: + +MissingNullability: android.telephony.mbms.vendor.MbmsDownloadServiceBase#initialize(int, android.telephony.mbms.MbmsDownloadSessionCallback) parameter #1: + +MissingNullability: android.telephony.mbms.vendor.MbmsDownloadServiceBase#onTransact(int, android.os.Parcel, android.os.Parcel, int) parameter #1: + +MissingNullability: android.telephony.mbms.vendor.MbmsDownloadServiceBase#onTransact(int, android.os.Parcel, android.os.Parcel, int) parameter #2: + +MissingNullability: android.telephony.mbms.vendor.MbmsDownloadServiceBase#removeProgressListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadProgressListener) parameter #0: + +MissingNullability: android.telephony.mbms.vendor.MbmsDownloadServiceBase#removeProgressListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadProgressListener) parameter #1: + +MissingNullability: android.telephony.mbms.vendor.MbmsDownloadServiceBase#removeStatusListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStatusListener) parameter #0: + +MissingNullability: android.telephony.mbms.vendor.MbmsDownloadServiceBase#removeStatusListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStatusListener) parameter #1: + +MissingNullability: android.telephony.mbms.vendor.MbmsDownloadServiceBase#requestDownloadState(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo) parameter #0: + +MissingNullability: android.telephony.mbms.vendor.MbmsDownloadServiceBase#requestDownloadState(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo) parameter #1: + +MissingNullability: android.telephony.mbms.vendor.MbmsDownloadServiceBase#requestUpdateFileServices(int, java.util.List<java.lang.String>) parameter #1: + +MissingNullability: android.telephony.mbms.vendor.MbmsDownloadServiceBase#resetDownloadKnowledge(android.telephony.mbms.DownloadRequest) parameter #0: + +MissingNullability: android.telephony.mbms.vendor.MbmsDownloadServiceBase#setTempFileRootDirectory(int, String) parameter #1: + +MissingNullability: android.telephony.mbms.vendor.MbmsGroupCallServiceBase#onBind(android.content.Intent): + +MissingNullability: android.telephony.mbms.vendor.MbmsGroupCallServiceBase#onBind(android.content.Intent) parameter #0: + +MissingNullability: android.telephony.mbms.vendor.MbmsStreamingServiceBase#asBinder(): + +MissingNullability: android.telephony.mbms.vendor.MbmsStreamingServiceBase#getPlaybackUri(int, String) parameter #1: + +MissingNullability: android.telephony.mbms.vendor.MbmsStreamingServiceBase#initialize(android.telephony.mbms.MbmsStreamingSessionCallback, int) parameter #0: + +MissingNullability: android.telephony.mbms.vendor.MbmsStreamingServiceBase#onTransact(int, android.os.Parcel, android.os.Parcel, int) parameter #1: + +MissingNullability: android.telephony.mbms.vendor.MbmsStreamingServiceBase#onTransact(int, android.os.Parcel, android.os.Parcel, int) parameter #2: + +MissingNullability: android.telephony.mbms.vendor.MbmsStreamingServiceBase#requestUpdateStreamingServices(int, java.util.List<java.lang.String>) parameter #1: + +MissingNullability: android.telephony.mbms.vendor.MbmsStreamingServiceBase#startStreaming(int, String, android.telephony.mbms.StreamingServiceCallback) parameter #1: + +MissingNullability: android.telephony.mbms.vendor.MbmsStreamingServiceBase#startStreaming(int, String, android.telephony.mbms.StreamingServiceCallback) parameter #2: + +MissingNullability: android.telephony.mbms.vendor.MbmsStreamingServiceBase#stopStreaming(int, String) parameter #1: + +MissingNullability: android.telephony.mbms.vendor.VendorUtils#getAppReceiverFromPackageName(android.content.Context, String): + +MissingNullability: android.telephony.mbms.vendor.VendorUtils#getAppReceiverFromPackageName(android.content.Context, String) parameter #0: + +MissingNullability: android.telephony.mbms.vendor.VendorUtils#getAppReceiverFromPackageName(android.content.Context, String) parameter #1: + +MissingNullability: android.text.Selection.MemoryTextWatcher#afterTextChanged(android.text.Editable) parameter #0: + +MissingNullability: android.text.Selection.MemoryTextWatcher#beforeTextChanged(CharSequence, int, int, int) parameter #0: + +MissingNullability: android.text.Selection.MemoryTextWatcher#onTextChanged(CharSequence, int, int, int) parameter #0: + +MissingNullability: android.transition.TransitionManager#getTransition(android.transition.Scene): + +MissingNullability: android.transition.TransitionManager#getTransition(android.transition.Scene) parameter #0: + +MissingNullability: android.util.FeatureFlagUtils#getAllFeatureFlags(): + +MissingNullability: android.util.FeatureFlagUtils#isEnabled(android.content.Context, String) parameter #0: + +MissingNullability: android.util.FeatureFlagUtils#isEnabled(android.content.Context, String) parameter #1: + +MissingNullability: android.util.FeatureFlagUtils#setEnabled(android.content.Context, String, boolean) parameter #0: + +MissingNullability: android.util.FeatureFlagUtils#setEnabled(android.content.Context, String, boolean) parameter #1: + +MissingNullability: android.util.TimeUtils#formatDuration(long): + +MissingNullability: android.util.proto.EncodedBuffer#dumpBuffers(String) parameter #0: + +MissingNullability: android.util.proto.EncodedBuffer#dumpByteString(String, String, byte[]) parameter #0: + +MissingNullability: android.util.proto.EncodedBuffer#dumpByteString(String, String, byte[]) parameter #1: + +MissingNullability: android.util.proto.EncodedBuffer#dumpByteString(String, String, byte[]) parameter #2: + +MissingNullability: android.util.proto.EncodedBuffer#getBytes(int): + +MissingNullability: android.util.proto.EncodedBuffer#getDebugString(): + +MissingNullability: android.util.proto.EncodedBuffer#writeRawBuffer(byte[]) parameter #0: + +MissingNullability: android.util.proto.EncodedBuffer#writeRawBuffer(byte[], int, int) parameter #0: + +MissingNullability: android.util.proto.ProtoOutputStream#ProtoOutputStream(java.io.FileDescriptor) parameter #0: + +MissingNullability: android.util.proto.ProtoOutputStream#ProtoOutputStream(java.io.OutputStream) parameter #0: + +MissingNullability: android.util.proto.ProtoOutputStream#dump(String) parameter #0: + +MissingNullability: android.util.proto.ProtoOutputStream#getBytes(): + +MissingNullability: android.util.proto.ProtoOutputStream#write(long, String) parameter #1: + +MissingNullability: android.util.proto.ProtoOutputStream#write(long, byte[]) parameter #1: + +MissingNullability: android.util.proto.ProtoOutputStream#writeBytes(long, byte[]) parameter #1: + +MissingNullability: android.util.proto.ProtoOutputStream#writeObject(long, byte[]) parameter #1: + +MissingNullability: android.util.proto.ProtoOutputStream#writePackedBool(long, boolean[]) parameter #1: + +MissingNullability: android.util.proto.ProtoOutputStream#writePackedDouble(long, double[]) parameter #1: + +MissingNullability: android.util.proto.ProtoOutputStream#writePackedEnum(long, int[]) parameter #1: + +MissingNullability: android.util.proto.ProtoOutputStream#writePackedFixed32(long, int[]) parameter #1: + +MissingNullability: android.util.proto.ProtoOutputStream#writePackedFixed64(long, long[]) parameter #1: + +MissingNullability: android.util.proto.ProtoOutputStream#writePackedFloat(long, float[]) parameter #1: + +MissingNullability: android.util.proto.ProtoOutputStream#writePackedInt32(long, int[]) parameter #1: + +MissingNullability: android.util.proto.ProtoOutputStream#writePackedInt64(long, long[]) parameter #1: + +MissingNullability: android.util.proto.ProtoOutputStream#writePackedSFixed32(long, int[]) parameter #1: + +MissingNullability: android.util.proto.ProtoOutputStream#writePackedSFixed64(long, long[]) parameter #1: + +MissingNullability: android.util.proto.ProtoOutputStream#writePackedSInt32(long, int[]) parameter #1: + +MissingNullability: android.util.proto.ProtoOutputStream#writePackedSInt64(long, long[]) parameter #1: + +MissingNullability: android.util.proto.ProtoOutputStream#writePackedUInt32(long, int[]) parameter #1: + +MissingNullability: android.util.proto.ProtoOutputStream#writePackedUInt64(long, long[]) parameter #1: + +MissingNullability: android.util.proto.ProtoOutputStream#writeRepeatedBytes(long, byte[]) parameter #1: + +MissingNullability: android.util.proto.ProtoOutputStream#writeRepeatedObject(long, byte[]) parameter #1: + +MissingNullability: android.util.proto.ProtoOutputStream#writeRepeatedString(long, String) parameter #1: + +MissingNullability: android.util.proto.ProtoOutputStream#writeString(long, String) parameter #1: + +MissingNullability: android.util.proto.ProtoParseException#ProtoParseException(String) parameter #0: + +MissingNullability: android.util.proto.ProtoStream#FIELD_TYPE_NAMES: + +MissingNullability: android.util.proto.ProtoStream#getFieldCountString(long): + +MissingNullability: android.util.proto.ProtoStream#getFieldIdString(long): + +MissingNullability: android.util.proto.ProtoStream#getFieldTypeString(long): + +MissingNullability: android.util.proto.ProtoStream#getWireTypeString(int): + +MissingNullability: android.util.proto.ProtoStream#token2String(long): + +MissingNullability: android.util.proto.WireTypeMismatchException#WireTypeMismatchException(String) parameter #0: + +MissingNullability: android.view.Choreographer#postCallback(int, Runnable, Object) parameter #1: + +MissingNullability: android.view.Choreographer#postCallback(int, Runnable, Object) parameter #2: + +MissingNullability: android.view.Choreographer#postCallbackDelayed(int, Runnable, Object, long) parameter #1: + +MissingNullability: android.view.Choreographer#postCallbackDelayed(int, Runnable, Object, long) parameter #2: + +MissingNullability: android.view.Choreographer#removeCallbacks(int, Runnable, Object) parameter #1: + +MissingNullability: android.view.Choreographer#removeCallbacks(int, Runnable, Object) parameter #2: + +MissingNullability: android.view.FocusFinder#sort(android.view.View[], int, int, android.view.ViewGroup, boolean) parameter #0: + +MissingNullability: android.view.FocusFinder#sort(android.view.View[], int, int, android.view.ViewGroup, boolean) parameter #3: + +MissingNullability: android.view.KeyEvent#actionToString(int): + +MissingNullability: android.view.SurfaceControlViewHost#SurfaceControlViewHost(android.content.Context, android.view.Display, android.view.SurfaceControl) parameter #0: + +MissingNullability: android.view.SurfaceControlViewHost#SurfaceControlViewHost(android.content.Context, android.view.Display, android.view.SurfaceControl) parameter #1: + +MissingNullability: android.view.SurfaceControlViewHost#SurfaceControlViewHost(android.content.Context, android.view.Display, android.view.SurfaceControl) parameter #2: + +MissingNullability: android.view.SurfaceControlViewHost#addView(android.view.View, android.view.WindowManager.LayoutParams) parameter #0: + +MissingNullability: android.view.SurfaceControlViewHost#addView(android.view.View, android.view.WindowManager.LayoutParams) parameter #1: + +MissingNullability: android.view.SurfaceControlViewHost#relayout(android.view.WindowManager.LayoutParams) parameter #0: + +MissingNullability: android.view.View#getTooltipView(): + +MissingNullability: android.view.View#isDefaultFocusHighlightNeeded(android.graphics.drawable.Drawable, android.graphics.drawable.Drawable) parameter #0: + +MissingNullability: android.view.View#isDefaultFocusHighlightNeeded(android.graphics.drawable.Drawable, android.graphics.drawable.Drawable) parameter #1: + +MissingNullability: android.view.ViewDebug#startRenderingCommandsCapture(android.view.View, java.util.concurrent.Executor, java.util.concurrent.Callable<java.io.OutputStream>) parameter #0: + +MissingNullability: android.view.ViewDebug#startRenderingCommandsCapture(android.view.View, java.util.concurrent.Executor, java.util.concurrent.Callable<java.io.OutputStream>) parameter #1: + +MissingNullability: android.view.ViewDebug#startRenderingCommandsCapture(android.view.View, java.util.concurrent.Executor, java.util.concurrent.Callable<java.io.OutputStream>) parameter #2: + +MissingNullability: android.view.ViewDebug#startRenderingCommandsCapture(android.view.View, java.util.concurrent.Executor, java.util.function.Function<android.graphics.Picture,java.lang.Boolean>) parameter #0: + +MissingNullability: android.view.ViewDebug#startRenderingCommandsCapture(android.view.View, java.util.concurrent.Executor, java.util.function.Function<android.graphics.Picture,java.lang.Boolean>) parameter #1: + +MissingNullability: android.view.ViewDebug#startRenderingCommandsCapture(android.view.View, java.util.concurrent.Executor, java.util.function.Function<android.graphics.Picture,java.lang.Boolean>) parameter #2: + +MissingNullability: android.view.WindowManager.LayoutParams#accessibilityTitle: + +MissingNullability: android.view.accessibility.AccessibilityManager.AccessibilityServicesStateChangeListener#onAccessibilityServicesStateChanged(android.view.accessibility.AccessibilityManager) parameter #0: + +MissingNullability: android.view.accessibility.AccessibilityNodeInfo#setNumInstancesInUseCounter(java.util.concurrent.atomic.AtomicInteger) parameter #0: + +MissingNullability: android.view.accessibility.AccessibilityNodeInfo#writeToParcelNoRecycle(android.os.Parcel, int) parameter #0: + +MissingNullability: android.view.accessibility.AccessibilityWindowInfo#setNumInstancesInUseCounter(java.util.concurrent.atomic.AtomicInteger) parameter #0: + +MissingNullability: android.view.contentcapture.ContentCaptureEvent#writeToParcel(android.os.Parcel, int) parameter #0: + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#asyncNewChild(int): + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#getAutofillId(): + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#getExtras(): + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#getHint(): + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#getNode(): + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#getTempRect(): + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#getText(): + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#newChild(int): + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#newHtmlInfoBuilder(String): + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#newHtmlInfoBuilder(String) parameter #0: + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#setAutofillHints(String[]) parameter #0: + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#setAutofillId(android.view.autofill.AutofillId) parameter #0: + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#setAutofillId(android.view.autofill.AutofillId, int) parameter #0: + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#setAutofillOptions(CharSequence[]) parameter #0: + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#setAutofillValue(android.view.autofill.AutofillValue) parameter #0: + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#setClassName(String) parameter #0: + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#setContentDescription(CharSequence) parameter #0: + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#setHint(CharSequence) parameter #0: + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#setHintIdEntry(String) parameter #0: + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#setHtmlInfo(android.view.ViewStructure.HtmlInfo) parameter #0: + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#setId(int, String, String, String) parameter #1: + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#setId(int, String, String, String) parameter #2: + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#setId(int, String, String, String) parameter #3: + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#setLocaleList(android.os.LocaleList) parameter #0: + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#setText(CharSequence) parameter #0: + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#setText(CharSequence, int, int) parameter #0: + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#setTextLines(int[], int[]) parameter #0: + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#setTextLines(int[], int[]) parameter #1: + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#setTransformation(android.graphics.Matrix) parameter #0: + +MissingNullability: android.view.contentcapture.ViewNode.ViewStructureImpl#setWebDomain(String) parameter #0: + +MissingNullability: android.widget.CalendarView#getBoundsForDate(long, android.graphics.Rect) parameter #1: + +MissingNullability: android.widget.ImageView#isDefaultFocusHighlightNeeded(android.graphics.drawable.Drawable, android.graphics.drawable.Drawable) parameter #0: + +MissingNullability: android.widget.ImageView#isDefaultFocusHighlightNeeded(android.graphics.drawable.Drawable, android.graphics.drawable.Drawable) parameter #1: + +MissingNullability: android.widget.Magnifier#getMagnifierDefaultSize(): + +MissingNullability: android.widget.Magnifier#setOnOperationCompleteCallback(android.widget.Magnifier.Callback) parameter #0: + +MissingNullability: android.widget.NumberPicker#getDisplayedValueForCurrentSelection(): + +MissingNullability: android.widget.PopupMenu#getMenuListView(): + +MissingNullability: android.widget.TimePicker#getAmView(): + +MissingNullability: android.widget.TimePicker#getHourView(): + +MissingNullability: android.widget.TimePicker#getMinuteView(): + +MissingNullability: android.widget.TimePicker#getPmView(): + + + +MutableBareField: android.content.AutofillOptions#appDisabledExpiration: + +MutableBareField: android.content.AutofillOptions#augmentedAutofillEnabled: + +MutableBareField: android.content.AutofillOptions#disabledActivities: + +MutableBareField: android.content.AutofillOptions#whitelistedActivitiesForAugmentedAutofill: + +MutableBareField: android.database.sqlite.SQLiteDebug.DbStats#cache: + +MutableBareField: android.database.sqlite.SQLiteDebug.DbStats#dbName: + +MutableBareField: android.database.sqlite.SQLiteDebug.DbStats#dbSize: + +MutableBareField: android.database.sqlite.SQLiteDebug.DbStats#lookaside: + +MutableBareField: android.database.sqlite.SQLiteDebug.DbStats#pageSize: + +MutableBareField: android.database.sqlite.SQLiteDebug.PagerStats#dbStats: + +MutableBareField: android.database.sqlite.SQLiteDebug.PagerStats#largestMemAlloc: + +MutableBareField: android.database.sqlite.SQLiteDebug.PagerStats#memoryUsed: + +MutableBareField: android.database.sqlite.SQLiteDebug.PagerStats#pageCacheOverflow: + +MutableBareField: android.os.StrictMode.ViolationInfo#broadcastIntentAction: + +MutableBareField: android.os.StrictMode.ViolationInfo#durationMillis: + +MutableBareField: android.os.StrictMode.ViolationInfo#numAnimationsRunning: + +MutableBareField: android.os.StrictMode.ViolationInfo#numInstances: + +MutableBareField: android.os.StrictMode.ViolationInfo#tags: + +MutableBareField: android.os.StrictMode.ViolationInfo#violationNumThisLoop: + +MutableBareField: android.os.StrictMode.ViolationInfo#violationUptimeMillis: + + + +NoByteOrShort: android.media.audiofx.AudioEffect#byteArrayToShort(byte[]): + +NoByteOrShort: android.media.audiofx.AudioEffect#setParameter(int, short) parameter #1: + +NoByteOrShort: android.media.audiofx.AudioEffect#shortToByteArray(short) parameter #0: + +NoByteOrShort: android.os.HwBlob#getInt16(long): + +NoByteOrShort: android.os.HwBlob#getInt8(long): + +NoByteOrShort: android.os.HwBlob#putInt16(long, short) parameter #1: + +NoByteOrShort: android.os.HwBlob#putInt8(long, byte) parameter #1: + +NoByteOrShort: android.os.HwParcel#readInt16(): + +NoByteOrShort: android.os.HwParcel#readInt8(): + +NoByteOrShort: android.os.HwParcel#writeInt16(short) parameter #0: + +NoByteOrShort: android.os.HwParcel#writeInt8(byte) parameter #0: + +NoByteOrShort: android.util.proto.EncodedBuffer#readRawByte(): + +NoByteOrShort: android.util.proto.EncodedBuffer#writeRawByte(byte) parameter #0: + + + +NoClone: android.net.util.SocketUtils#bindSocketToInterface(java.io.FileDescriptor, String) parameter #0: + +NoClone: android.net.util.SocketUtils#closeSocket(java.io.FileDescriptor) parameter #0: + +NoClone: android.os.NativeHandle#NativeHandle(java.io.FileDescriptor, boolean) parameter #0: + +NoClone: android.os.NativeHandle#getFileDescriptor(): + +NoClone: android.os.ParcelFileDescriptor#getFile(java.io.FileDescriptor) parameter #0: + +NoClone: android.service.autofill.augmented.AugmentedAutofillService#dump(java.io.FileDescriptor, java.io.PrintWriter, String[]) parameter #0: + +NoClone: android.service.contentcapture.ContentCaptureService#dump(java.io.FileDescriptor, java.io.PrintWriter, String[]) parameter #0: + +NoClone: android.util.proto.ProtoOutputStream#ProtoOutputStream(java.io.FileDescriptor) parameter #0: + + + +NotCloseable: android.app.ActivityView: + +NotCloseable: android.app.prediction.AppPredictor: + +NotCloseable: android.os.HwParcel: + +NotCloseable: android.telephony.ims.stub.ImsUtImplBase: + + + +OnNameExpected: android.service.autofill.augmented.AugmentedAutofillService#dump(java.io.PrintWriter, String[]): + +OnNameExpected: android.service.contentcapture.ContentCaptureService#dump(java.io.FileDescriptor, java.io.PrintWriter, String[]): + +OnNameExpected: android.service.notification.ConditionProviderService#isBound(): + +OnNameExpected: android.service.notification.NotificationAssistantService#attachBaseContext(android.content.Context): + +OnNameExpected: android.service.quicksettings.TileService#isQuickSettingsSupported(): + +OnNameExpected: android.telephony.ims.ImsService#createMmTelFeature(int): + +OnNameExpected: android.telephony.ims.ImsService#createRcsFeature(int): + +OnNameExpected: android.telephony.ims.ImsService#disableIms(int): + +OnNameExpected: android.telephony.ims.ImsService#enableIms(int): + +OnNameExpected: android.telephony.ims.ImsService#getConfig(int): + +OnNameExpected: android.telephony.ims.ImsService#getRegistration(int): + +OnNameExpected: android.telephony.ims.ImsService#querySupportedImsFeatures(): + +OnNameExpected: android.telephony.ims.ImsService#readyForFeatureCreation(): + +OnNameExpected: android.telephony.mbms.vendor.MbmsGroupCallServiceBase#dispose(int): + +OnNameExpected: android.telephony.mbms.vendor.MbmsGroupCallServiceBase#initialize(android.telephony.mbms.MbmsGroupCallSessionCallback, int): + +OnNameExpected: android.telephony.mbms.vendor.MbmsGroupCallServiceBase#startGroupCall(int, long, java.util.List<java.lang.Integer>, java.util.List<java.lang.Integer>, android.telephony.mbms.GroupCallCallback): + +OnNameExpected: android.telephony.mbms.vendor.MbmsGroupCallServiceBase#stopGroupCall(int, long): + +OnNameExpected: android.telephony.mbms.vendor.MbmsGroupCallServiceBase#updateGroupCall(int, long, java.util.List<java.lang.Integer>, java.util.List<java.lang.Integer>): + + + +PackageLayering: android.util.FeatureFlagUtils: + + + +ParcelConstructor: android.os.IncidentManager.IncidentReport#IncidentReport(android.os.Parcel): + +ParcelConstructor: android.os.IncidentReportArgs#IncidentReportArgs(android.os.Parcel): + +ParcelConstructor: android.os.StrictMode.ViolationInfo#ViolationInfo(android.os.Parcel): + +ParcelConstructor: android.os.VibrationEffect.OneShot#OneShot(android.os.Parcel): + +ParcelConstructor: android.os.VibrationEffect.Prebaked#Prebaked(android.os.Parcel): + +ParcelConstructor: android.os.VibrationEffect.Waveform#Waveform(android.os.Parcel): + +ParcelConstructor: android.os.health.HealthStatsParceler#HealthStatsParceler(android.os.Parcel): + +ParcelConstructor: android.service.notification.SnoozeCriterion#SnoozeCriterion(android.os.Parcel): + + + +ParcelCreator: android.app.WindowConfiguration: + +ParcelCreator: android.net.metrics.ApfProgramEvent: + +ParcelCreator: android.net.metrics.ApfStats: + +ParcelCreator: android.net.metrics.DhcpClientEvent: + +ParcelCreator: android.net.metrics.DhcpErrorEvent: + +ParcelCreator: android.net.metrics.IpConnectivityLog.Event: + +ParcelCreator: android.net.metrics.IpManagerEvent: + +ParcelCreator: android.net.metrics.IpReachabilityEvent: + +ParcelCreator: android.net.metrics.NetworkEvent: + +ParcelCreator: android.net.metrics.RaEvent: + +ParcelCreator: android.net.metrics.ValidationProbeEvent: + +ParcelCreator: android.os.VibrationEffect.OneShot: + +ParcelCreator: android.os.VibrationEffect.Prebaked: + +ParcelCreator: android.os.VibrationEffect.Waveform: + +ParcelCreator: android.service.autofill.InternalOnClickAction: + +ParcelCreator: android.service.autofill.InternalSanitizer: + +ParcelCreator: android.service.autofill.InternalTransformation: + +ParcelCreator: android.service.autofill.InternalValidator: + + + +ParcelNotFinal: android.app.WindowConfiguration: + +ParcelNotFinal: android.net.metrics.IpConnectivityLog.Event: + +ParcelNotFinal: android.os.IncidentManager.IncidentReport: + +ParcelNotFinal: android.os.VibrationEffect.OneShot: + +ParcelNotFinal: android.os.VibrationEffect.Prebaked: + +ParcelNotFinal: android.os.VibrationEffect.Waveform: + +ParcelNotFinal: android.os.health.HealthStatsParceler: + +ParcelNotFinal: android.service.autofill.InternalOnClickAction: + +ParcelNotFinal: android.service.autofill.InternalSanitizer: + +ParcelNotFinal: android.service.autofill.InternalTransformation: + +ParcelNotFinal: android.service.autofill.InternalValidator: + + + +ProtectedMember: android.app.ActivityView#onVisibilityChanged(android.view.View, int): + +ProtectedMember: android.app.AppDetailsActivity#onCreate(android.os.Bundle): + +ProtectedMember: android.os.VibrationEffect#scale(int, float, int): + +ProtectedMember: android.service.autofill.augmented.AugmentedAutofillService#dump(java.io.FileDescriptor, java.io.PrintWriter, String[]): + +ProtectedMember: android.service.autofill.augmented.AugmentedAutofillService#dump(java.io.PrintWriter, String[]): + +ProtectedMember: android.service.contentcapture.ContentCaptureService#dump(java.io.FileDescriptor, java.io.PrintWriter, String[]): + +ProtectedMember: android.service.notification.NotificationAssistantService#attachBaseContext(android.content.Context): + +ProtectedMember: android.util.proto.ProtoStream#FIELD_TYPE_NAMES: + +ProtectedMember: android.view.View#resetResolvedDrawables(): + +ProtectedMember: android.view.ViewGroup#resetResolvedDrawables(): + + + +RawAidl: android.telephony.mbms.vendor.MbmsDownloadServiceBase: + +RawAidl: android.telephony.mbms.vendor.MbmsStreamingServiceBase: + + + +RethrowRemoteException: android.app.ActivityManager#resumeAppSwitches(): + +RethrowRemoteException: android.os.HwBinder#getService(String, String): + +RethrowRemoteException: android.os.HwBinder#getService(String, String, boolean): + +RethrowRemoteException: android.os.HwBinder#onTransact(int, android.os.HwParcel, android.os.HwParcel, int): + +RethrowRemoteException: android.os.HwBinder#registerService(String): + +RethrowRemoteException: android.os.HwBinder#transact(int, android.os.HwParcel, android.os.HwParcel, int): + +RethrowRemoteException: android.os.IHwBinder#transact(int, android.os.HwParcel, android.os.HwParcel, int): + +RethrowRemoteException: android.telephony.ims.ImsService#onUpdateSupportedImsFeatures(android.telephony.ims.stub.ImsFeatureConfiguration): + +RethrowRemoteException: android.telephony.mbms.vendor.MbmsDownloadServiceBase#addProgressListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadProgressListener): + +RethrowRemoteException: android.telephony.mbms.vendor.MbmsDownloadServiceBase#addStatusListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStatusListener): + +RethrowRemoteException: android.telephony.mbms.vendor.MbmsDownloadServiceBase#cancelDownload(android.telephony.mbms.DownloadRequest): + +RethrowRemoteException: android.telephony.mbms.vendor.MbmsDownloadServiceBase#dispose(int): + +RethrowRemoteException: android.telephony.mbms.vendor.MbmsDownloadServiceBase#download(android.telephony.mbms.DownloadRequest): + +RethrowRemoteException: android.telephony.mbms.vendor.MbmsDownloadServiceBase#initialize(int, android.telephony.mbms.MbmsDownloadSessionCallback): + +RethrowRemoteException: android.telephony.mbms.vendor.MbmsDownloadServiceBase#listPendingDownloads(int): + +RethrowRemoteException: android.telephony.mbms.vendor.MbmsDownloadServiceBase#onTransact(int, android.os.Parcel, android.os.Parcel, int): + +RethrowRemoteException: android.telephony.mbms.vendor.MbmsDownloadServiceBase#removeProgressListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadProgressListener): + +RethrowRemoteException: android.telephony.mbms.vendor.MbmsDownloadServiceBase#removeStatusListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStatusListener): + +RethrowRemoteException: android.telephony.mbms.vendor.MbmsDownloadServiceBase#requestDownloadState(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo): + +RethrowRemoteException: android.telephony.mbms.vendor.MbmsDownloadServiceBase#requestUpdateFileServices(int, java.util.List<java.lang.String>): + +RethrowRemoteException: android.telephony.mbms.vendor.MbmsDownloadServiceBase#resetDownloadKnowledge(android.telephony.mbms.DownloadRequest): + +RethrowRemoteException: android.telephony.mbms.vendor.MbmsDownloadServiceBase#setTempFileRootDirectory(int, String): + +RethrowRemoteException: android.telephony.mbms.vendor.MbmsGroupCallServiceBase#dispose(int): + +RethrowRemoteException: android.telephony.mbms.vendor.MbmsGroupCallServiceBase#initialize(android.telephony.mbms.MbmsGroupCallSessionCallback, int): + +RethrowRemoteException: android.telephony.mbms.vendor.MbmsStreamingServiceBase#dispose(int): + +RethrowRemoteException: android.telephony.mbms.vendor.MbmsStreamingServiceBase#getPlaybackUri(int, String): + +RethrowRemoteException: android.telephony.mbms.vendor.MbmsStreamingServiceBase#initialize(android.telephony.mbms.MbmsStreamingSessionCallback, int): + +RethrowRemoteException: android.telephony.mbms.vendor.MbmsStreamingServiceBase#onTransact(int, android.os.Parcel, android.os.Parcel, int): + +RethrowRemoteException: android.telephony.mbms.vendor.MbmsStreamingServiceBase#requestUpdateStreamingServices(int, java.util.List<java.lang.String>): + +RethrowRemoteException: android.telephony.mbms.vendor.MbmsStreamingServiceBase#startStreaming(int, String, android.telephony.mbms.StreamingServiceCallback): + +RethrowRemoteException: android.telephony.mbms.vendor.MbmsStreamingServiceBase#stopStreaming(int, String): + + + +SamShouldBeLast: android.app.ActivityManager#addOnUidImportanceListener(android.app.ActivityManager.OnUidImportanceListener, int): + +SamShouldBeLast: android.app.role.RoleManager#addOnRoleHoldersChangedListenerAsUser(java.util.concurrent.Executor, android.app.role.OnRoleHoldersChangedListener, android.os.UserHandle): + +SamShouldBeLast: android.app.role.RoleManager#removeOnRoleHoldersChangedListenerAsUser(android.app.role.OnRoleHoldersChangedListener, android.os.UserHandle): + +SamShouldBeLast: android.database.sqlite.SQLiteDebug#dump(android.util.Printer, String[]): + +SamShouldBeLast: android.database.sqlite.SQLiteDirectCursorDriver#query(android.database.sqlite.SQLiteDatabase.CursorFactory, String[]): + +SamShouldBeLast: android.location.LocationManager#requestLocationUpdates(android.location.LocationRequest, android.location.LocationListener, android.os.Looper): + SAM-compatible parameters (such as parameter 2, "listener", in android.location.LocationManager.requestLocationUpdates) should be last to improve Kotlin interoperability; see https://kotlinlang.org/docs/reference/java-interop.html#sam-conversions +SamShouldBeLast: android.location.LocationManager#requestLocationUpdates(android.location.LocationRequest, java.util.concurrent.Executor, android.location.LocationListener): + +SamShouldBeLast: android.os.BugreportManager#startBugreport(android.os.ParcelFileDescriptor, android.os.ParcelFileDescriptor, android.os.BugreportParams, java.util.concurrent.Executor, android.os.BugreportManager.BugreportCallback): + +SamShouldBeLast: android.os.IHwBinder#linkToDeath(android.os.IHwBinder.DeathRecipient, long): + +SamShouldBeLast: android.os.StrictMode.ViolationInfo#dump(android.util.Printer, String): + +SamShouldBeLast: android.permission.PermissionControllerManager#getAppPermissions(String, android.permission.PermissionControllerManager.OnGetAppPermissionResultCallback, android.os.Handler): + +SamShouldBeLast: android.permission.PermissionControllerManager#revokeRuntimePermissions(java.util.Map<java.lang.String,java.util.List<java.lang.String>>, boolean, int, java.util.concurrent.Executor, android.permission.PermissionControllerManager.OnRevokeRuntimePermissionsCallback): + +SamShouldBeLast: android.service.autofill.CharSequenceTransformation#apply(android.service.autofill.ValueFinder, android.widget.RemoteViews, int): + +SamShouldBeLast: android.service.autofill.DateTransformation#apply(android.service.autofill.ValueFinder, android.widget.RemoteViews, int): + +SamShouldBeLast: android.service.autofill.ImageTransformation#apply(android.service.autofill.ValueFinder, android.widget.RemoteViews, int): + +SamShouldBeLast: android.service.autofill.InternalTransformation#batchApply(android.service.autofill.ValueFinder, android.widget.RemoteViews, java.util.ArrayList<android.util.Pair<java.lang.Integer,android.service.autofill.InternalTransformation>>): + +SamShouldBeLast: android.telephony.ims.ImsMmTelManager#getFeatureState(java.util.function.Consumer<java.lang.Integer>, java.util.concurrent.Executor): + +SamShouldBeLast: android.view.Choreographer#postCallback(int, Runnable, Object): + +SamShouldBeLast: android.view.Choreographer#postCallbackDelayed(int, Runnable, Object, long): + +SamShouldBeLast: android.view.Choreographer#removeCallbacks(int, Runnable, Object): + +SamShouldBeLast: android.view.ViewDebug#startRenderingCommandsCapture(android.view.View, java.util.concurrent.Executor, java.util.function.Function<android.graphics.Picture,java.lang.Boolean>): + +SamShouldBeLast: android.view.accessibility.AccessibilityManager#addAccessibilityServicesStateChangeListener(android.view.accessibility.AccessibilityManager.AccessibilityServicesStateChangeListener, android.os.Handler): + + + +ServiceName: android.Manifest.permission#BIND_CELL_BROADCAST_SERVICE: + +ServiceName: android.app.AppOpsManager#OPSTR_BIND_ACCESSIBILITY_SERVICE: + +ServiceName: android.provider.Settings.Secure#ACCESSIBILITY_SHORTCUT_TARGET_SERVICE: + +ServiceName: android.provider.Settings.Secure#AUTOFILL_SERVICE: + +ServiceName: android.provider.Settings.Secure#VOICE_INTERACTION_SERVICE: + + + +SetterReturnsThis: android.media.audiopolicy.AudioPolicy.Builder#setAudioPolicyFocusListener(android.media.audiopolicy.AudioPolicy.AudioPolicyFocusListener): + +SetterReturnsThis: android.media.audiopolicy.AudioPolicy.Builder#setAudioPolicyStatusListener(android.media.audiopolicy.AudioPolicy.AudioPolicyStatusListener): + + + +StaticUtils: android.os.health.HealthKeys: + +StaticUtils: android.service.autofill.InternalTransformation: + +StaticUtils: android.telephony.mbms.vendor.VendorUtils: + +StaticUtils: android.util.FeatureFlagUtils: + +StaticUtils: android.util.proto.ProtoStream: + + + +StreamFiles: android.os.Environment#buildPath(java.io.File, java.lang.String...): + +StreamFiles: android.os.FileUtils#contains(java.io.File, java.io.File): + +StreamFiles: android.provider.MediaStore#scanFile(android.content.Context, java.io.File): + +StreamFiles: android.provider.MediaStore#scanFileFromShell(android.content.Context, java.io.File): + +StreamFiles: android.provider.MediaStore#scanVolume(android.content.Context, java.io.File): + + + +UseParcelFileDescriptor: android.util.proto.ProtoOutputStream#ProtoOutputStream(java.io.FileDescriptor) parameter #0: + + + +UserHandle: android.app.ActivityManager#switchUser(android.os.UserHandle): + When a method overload is needed to target a specific UserHandle, callers should be directed to use Context.createPackageContextAsUser() and re-obtain the relevant Manager, and no new API should be added +UserHandle: android.app.admin.DevicePolicyManager#getOwnerInstalledCaCerts(android.os.UserHandle): + +UserHandle: android.app.role.RoleManager#addOnRoleHoldersChangedListenerAsUser(java.util.concurrent.Executor, android.app.role.OnRoleHoldersChangedListener, android.os.UserHandle): + +UserHandle: android.app.role.RoleManager#addRoleHolderAsUser(String, String, int, android.os.UserHandle, java.util.concurrent.Executor, java.util.function.Consumer<java.lang.Boolean>): + +UserHandle: android.app.role.RoleManager#clearRoleHoldersAsUser(String, int, android.os.UserHandle, java.util.concurrent.Executor, java.util.function.Consumer<java.lang.Boolean>): + +UserHandle: android.app.role.RoleManager#getRoleHoldersAsUser(String, android.os.UserHandle): + +UserHandle: android.app.role.RoleManager#removeOnRoleHoldersChangedListenerAsUser(android.app.role.OnRoleHoldersChangedListener, android.os.UserHandle): + +UserHandle: android.app.role.RoleManager#removeRoleHolderAsUser(String, String, int, android.os.UserHandle, java.util.concurrent.Executor, java.util.function.Consumer<java.lang.Boolean>): + +UserHandle: android.app.usage.StorageStatsManager#queryCratesForPackage(java.util.UUID, String, android.os.UserHandle): + When a method overload is needed to target a specific UserHandle, callers should be directed to use Context.createPackageContextAsUser() and re-obtain the relevant Manager, and no new API should be added +UserHandle: android.app.usage.StorageStatsManager#queryCratesForUser(java.util.UUID, android.os.UserHandle): + When a method overload is needed to target a specific UserHandle, callers should be directed to use Context.createPackageContextAsUser() and re-obtain the relevant Manager, and no new API should be added +UserHandle: android.companion.CompanionDeviceManager#isDeviceAssociated(String, android.net.MacAddress, android.os.UserHandle): + +UserHandle: android.content.pm.PackageManager#getInstallReason(String, android.os.UserHandle): + +UserHandle: android.content.pm.PackageManager#getPermissionFlags(String, String, android.os.UserHandle): + +UserHandle: android.content.pm.PackageManager#grantRuntimePermission(String, String, android.os.UserHandle): + +UserHandle: android.content.pm.PackageManager#revokeRuntimePermission(String, String, android.os.UserHandle): + +UserHandle: android.content.pm.PackageManager#updatePermissionFlags(String, String, int, int, android.os.UserHandle): + +UserHandle: android.location.LocationManager#setLocationEnabledForUser(boolean, android.os.UserHandle): + +UserHandle: android.permission.PermissionControllerManager#applyStagedRuntimePermissionBackup(String, android.os.UserHandle, java.util.concurrent.Executor, java.util.function.Consumer<java.lang.Boolean>): + +UserHandle: android.permission.PermissionControllerManager#getRuntimePermissionBackup(android.os.UserHandle, java.util.concurrent.Executor, java.util.function.Consumer<byte[]>): + +UserHandle: android.permission.PermissionControllerManager#stageAndApplyRuntimePermissionsBackup(byte[], android.os.UserHandle): + + + +UserHandleName: android.app.ActivityView#startActivity(android.content.Intent, android.os.UserHandle): + +UserHandleName: android.content.AutofillOptions: + +UserHandleName: android.content.ContentCaptureOptions: + +UserHandleName: android.os.IncidentReportArgs: + +UserHandleName: android.provider.MediaStore#deleteContributedMedia(android.content.Context, String, android.os.UserHandle): + +UserHandleName: android.provider.MediaStore#getContributedMediaSize(android.content.Context, String, android.os.UserHandle): + + + +VisiblySynchronized: PsiClassObjectAccessExpression: + +VisiblySynchronized: PsiThisExpression: + +VisiblySynchronized: android.app.ActivityManager#addOnUidImportanceListener(android.app.ActivityManager.OnUidImportanceListener, int): + +VisiblySynchronized: android.app.ActivityManager#removeOnUidImportanceListener(android.app.ActivityManager.OnUidImportanceListener): + +VisiblySynchronized: android.content.ContentProviderClient#setDetectNotResponding(long): + +VisiblySynchronized: android.content.res.AssetManager#getApkPaths(): + +VisiblySynchronized: android.content.res.AssetManager#getLastResourceResolution(): + +VisiblySynchronized: android.content.res.AssetManager#getOverlayablesToString(String): + +VisiblySynchronized: android.content.res.AssetManager#setResourceResolutionLoggingEnabled(boolean): + +VisiblySynchronized: android.os.MessageQueue#removeSyncBarrier(int): + diff --git a/api/test-removed.txt b/api/test-removed.txt index ef0aac7eac9a..e47f6edfbff1 100644 --- a/api/test-removed.txt +++ b/api/test-removed.txt @@ -8,16 +8,3 @@ package android.app.prediction { } -package android.provider { - - public final class DeviceConfig { - method @RequiresPermission("android.permission.READ_DEVICE_CONFIG") public static void addOnPropertyChangedListener(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.provider.DeviceConfig.OnPropertyChangedListener); - method public static void removeOnPropertyChangedListener(@NonNull android.provider.DeviceConfig.OnPropertyChangedListener); - } - - public static interface DeviceConfig.OnPropertyChangedListener { - method public void onPropertyChanged(@NonNull String, @NonNull String, @Nullable String); - } - -} - |