Home | History | Annotate | Download | only in api
      1 // Signature format: 2.0
      2 package android {
      3 
      4   public static final class Manifest.permission {
      5     field public static final String ACCESS_AMBIENT_LIGHT_STATS = "android.permission.ACCESS_AMBIENT_LIGHT_STATS";
      6     field public static final String ACCESS_BROADCAST_RADIO = "android.permission.ACCESS_BROADCAST_RADIO";
      7     field public static final String ACCESS_CACHE_FILESYSTEM = "android.permission.ACCESS_CACHE_FILESYSTEM";
      8     field public static final String ACCESS_DRM_CERTIFICATES = "android.permission.ACCESS_DRM_CERTIFICATES";
      9     field @Deprecated public static final String ACCESS_FM_RADIO = "android.permission.ACCESS_FM_RADIO";
     10     field public static final String ACCESS_INSTANT_APPS = "android.permission.ACCESS_INSTANT_APPS";
     11     field public static final String ACCESS_MOCK_LOCATION = "android.permission.ACCESS_MOCK_LOCATION";
     12     field public static final String ACCESS_MTP = "android.permission.ACCESS_MTP";
     13     field public static final String ACCESS_NETWORK_CONDITIONS = "android.permission.ACCESS_NETWORK_CONDITIONS";
     14     field public static final String ACCESS_NOTIFICATIONS = "android.permission.ACCESS_NOTIFICATIONS";
     15     field public static final String ACCESS_SHARED_LIBRARIES = "android.permission.ACCESS_SHARED_LIBRARIES";
     16     field public static final String ACCESS_SHORTCUTS = "android.permission.ACCESS_SHORTCUTS";
     17     field public static final String ACCESS_SURFACE_FLINGER = "android.permission.ACCESS_SURFACE_FLINGER";
     18     field public static final String ACTIVITY_EMBEDDING = "android.permission.ACTIVITY_EMBEDDING";
     19     field public static final String ADJUST_RUNTIME_PERMISSIONS_POLICY = "android.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY";
     20     field public static final String ALLOCATE_AGGRESSIVE = "android.permission.ALLOCATE_AGGRESSIVE";
     21     field public static final String ALLOW_ANY_CODEC_FOR_PLAYBACK = "android.permission.ALLOW_ANY_CODEC_FOR_PLAYBACK";
     22     field public static final String AMBIENT_WALLPAPER = "android.permission.AMBIENT_WALLPAPER";
     23     field public static final String APPROVE_INCIDENT_REPORTS = "android.permission.APPROVE_INCIDENT_REPORTS";
     24     field public static final String BACKUP = "android.permission.BACKUP";
     25     field public static final String BIND_ATTENTION_SERVICE = "android.permission.BIND_ATTENTION_SERVICE";
     26     field public static final String BIND_AUGMENTED_AUTOFILL_SERVICE = "android.permission.BIND_AUGMENTED_AUTOFILL_SERVICE";
     27     field @Deprecated public static final String BIND_CONNECTION_SERVICE = "android.permission.BIND_CONNECTION_SERVICE";
     28     field public static final String BIND_CONTENT_CAPTURE_SERVICE = "android.permission.BIND_CONTENT_CAPTURE_SERVICE";
     29     field public static final String BIND_CONTENT_SUGGESTIONS_SERVICE = "android.permission.BIND_CONTENT_SUGGESTIONS_SERVICE";
     30     field public static final String BIND_DIRECTORY_SEARCH = "android.permission.BIND_DIRECTORY_SEARCH";
     31     field public static final String BIND_EUICC_SERVICE = "android.permission.BIND_EUICC_SERVICE";
     32     field public static final String BIND_IMS_SERVICE = "android.permission.BIND_IMS_SERVICE";
     33     field public static final String BIND_KEYGUARD_APPWIDGET = "android.permission.BIND_KEYGUARD_APPWIDGET";
     34     field public static final String BIND_NETWORK_RECOMMENDATION_SERVICE = "android.permission.BIND_NETWORK_RECOMMENDATION_SERVICE";
     35     field public static final String BIND_NOTIFICATION_ASSISTANT_SERVICE = "android.permission.BIND_NOTIFICATION_ASSISTANT_SERVICE";
     36     field public static final String BIND_PHONE_ACCOUNT_SUGGESTION_SERVICE = "android.permission.BIND_PHONE_ACCOUNT_SUGGESTION_SERVICE";
     37     field public static final String BIND_PRINT_RECOMMENDATION_SERVICE = "android.permission.BIND_PRINT_RECOMMENDATION_SERVICE";
     38     field public static final String BIND_RESOLVER_RANKER_SERVICE = "android.permission.BIND_RESOLVER_RANKER_SERVICE";
     39     field public static final String BIND_RUNTIME_PERMISSION_PRESENTER_SERVICE = "android.permission.BIND_RUNTIME_PERMISSION_PRESENTER_SERVICE";
     40     field public static final String BIND_SETTINGS_SUGGESTIONS_SERVICE = "android.permission.BIND_SETTINGS_SUGGESTIONS_SERVICE";
     41     field public static final String BIND_SOUND_TRIGGER_DETECTION_SERVICE = "android.permission.BIND_SOUND_TRIGGER_DETECTION_SERVICE";
     42     field public static final String BIND_TELEPHONY_DATA_SERVICE = "android.permission.BIND_TELEPHONY_DATA_SERVICE";
     43     field public static final String BIND_TELEPHONY_NETWORK_SERVICE = "android.permission.BIND_TELEPHONY_NETWORK_SERVICE";
     44     field public static final String BIND_TEXTCLASSIFIER_SERVICE = "android.permission.BIND_TEXTCLASSIFIER_SERVICE";
     45     field public static final String BIND_TRUST_AGENT = "android.permission.BIND_TRUST_AGENT";
     46     field public static final String BIND_TV_REMOTE_SERVICE = "android.permission.BIND_TV_REMOTE_SERVICE";
     47     field public static final String BRICK = "android.permission.BRICK";
     48     field public static final String BRIGHTNESS_SLIDER_USAGE = "android.permission.BRIGHTNESS_SLIDER_USAGE";
     49     field @Deprecated public static final String BROADCAST_NETWORK_PRIVILEGED = "android.permission.BROADCAST_NETWORK_PRIVILEGED";
     50     field public static final String CAMERA_DISABLE_TRANSMIT_LED = "android.permission.CAMERA_DISABLE_TRANSMIT_LED";
     51     field public static final String CAPTURE_AUDIO_HOTWORD = "android.permission.CAPTURE_AUDIO_HOTWORD";
     52     field public static final String CAPTURE_MEDIA_OUTPUT = "android.permission.CAPTURE_MEDIA_OUTPUT";
     53     field public static final String CAPTURE_TV_INPUT = "android.permission.CAPTURE_TV_INPUT";
     54     field public static final String CHANGE_APP_IDLE_STATE = "android.permission.CHANGE_APP_IDLE_STATE";
     55     field public static final String CHANGE_DEVICE_IDLE_TEMP_WHITELIST = "android.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST";
     56     field public static final String CLEAR_APP_USER_DATA = "android.permission.CLEAR_APP_USER_DATA";
     57     field public static final String CONFIGURE_DISPLAY_BRIGHTNESS = "android.permission.CONFIGURE_DISPLAY_BRIGHTNESS";
     58     field public static final String CONNECTIVITY_INTERNAL = "android.permission.CONNECTIVITY_INTERNAL";
     59     field public static final String CONNECTIVITY_USE_RESTRICTED_NETWORKS = "android.permission.CONNECTIVITY_USE_RESTRICTED_NETWORKS";
     60     field public static final String CONTROL_DISPLAY_COLOR_TRANSFORMS = "android.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS";
     61     field public static final String CONTROL_DISPLAY_SATURATION = "android.permission.CONTROL_DISPLAY_SATURATION";
     62     field public static final String CONTROL_INCALL_EXPERIENCE = "android.permission.CONTROL_INCALL_EXPERIENCE";
     63     field public static final String CONTROL_KEYGUARD_SECURE_NOTIFICATIONS = "android.permission.CONTROL_KEYGUARD_SECURE_NOTIFICATIONS";
     64     field public static final String CONTROL_VPN = "android.permission.CONTROL_VPN";
     65     field public static final String CRYPT_KEEPER = "android.permission.CRYPT_KEEPER";
     66     field public static final String DEVICE_POWER = "android.permission.DEVICE_POWER";
     67     field public static final String DISPATCH_PROVISIONING_MESSAGE = "android.permission.DISPATCH_PROVISIONING_MESSAGE";
     68     field public static final String FORCE_BACK = "android.permission.FORCE_BACK";
     69     field public static final String FORCE_STOP_PACKAGES = "android.permission.FORCE_STOP_PACKAGES";
     70     field public static final String GET_APP_OPS_STATS = "android.permission.GET_APP_OPS_STATS";
     71     field public static final String GET_PROCESS_STATE_AND_OOM_SCORE = "android.permission.GET_PROCESS_STATE_AND_OOM_SCORE";
     72     field public static final String GET_RUNTIME_PERMISSIONS = "android.permission.GET_RUNTIME_PERMISSIONS";
     73     field public static final String GET_TOP_ACTIVITY_INFO = "android.permission.GET_TOP_ACTIVITY_INFO";
     74     field public static final String GRANT_PROFILE_OWNER_DEVICE_IDS_ACCESS = "android.permission.GRANT_PROFILE_OWNER_DEVICE_IDS_ACCESS";
     75     field public static final String GRANT_RUNTIME_PERMISSIONS = "android.permission.GRANT_RUNTIME_PERMISSIONS";
     76     field public static final String HARDWARE_TEST = "android.permission.HARDWARE_TEST";
     77     field public static final String HDMI_CEC = "android.permission.HDMI_CEC";
     78     field public static final String HIDE_NON_SYSTEM_OVERLAY_WINDOWS = "android.permission.HIDE_NON_SYSTEM_OVERLAY_WINDOWS";
     79     field public static final String INJECT_EVENTS = "android.permission.INJECT_EVENTS";
     80     field public static final String INSTALL_DYNAMIC_SYSTEM = "android.permission.INSTALL_DYNAMIC_SYSTEM";
     81     field public static final String INSTALL_GRANT_RUNTIME_PERMISSIONS = "android.permission.INSTALL_GRANT_RUNTIME_PERMISSIONS";
     82     field public static final String INSTALL_PACKAGE_UPDATES = "android.permission.INSTALL_PACKAGE_UPDATES";
     83     field public static final String INSTALL_SELF_UPDATES = "android.permission.INSTALL_SELF_UPDATES";
     84     field public static final String INTENT_FILTER_VERIFICATION_AGENT = "android.permission.INTENT_FILTER_VERIFICATION_AGENT";
     85     field public static final String INTERACT_ACROSS_PROFILES = "android.permission.INTERACT_ACROSS_PROFILES";
     86     field public static final String INTERACT_ACROSS_USERS = "android.permission.INTERACT_ACROSS_USERS";
     87     field public static final String INTERACT_ACROSS_USERS_FULL = "android.permission.INTERACT_ACROSS_USERS_FULL";
     88     field public static final String INTERNAL_SYSTEM_WINDOW = "android.permission.INTERNAL_SYSTEM_WINDOW";
     89     field public static final String INVOKE_CARRIER_SETUP = "android.permission.INVOKE_CARRIER_SETUP";
     90     field public static final String KILL_UID = "android.permission.KILL_UID";
     91     field public static final String LOCAL_MAC_ADDRESS = "android.permission.LOCAL_MAC_ADDRESS";
     92     field public static final String LOCK_DEVICE = "android.permission.LOCK_DEVICE";
     93     field public static final String LOOP_RADIO = "android.permission.LOOP_RADIO";
     94     field public static final String MANAGE_ACCESSIBILITY = "android.permission.MANAGE_ACCESSIBILITY";
     95     field public static final String MANAGE_ACTIVITY_STACKS = "android.permission.MANAGE_ACTIVITY_STACKS";
     96     field public static final String MANAGE_APP_OPS_RESTRICTIONS = "android.permission.MANAGE_APP_OPS_RESTRICTIONS";
     97     field public static final String MANAGE_APP_PREDICTIONS = "android.permission.MANAGE_APP_PREDICTIONS";
     98     field public static final String MANAGE_APP_TOKENS = "android.permission.MANAGE_APP_TOKENS";
     99     field public static final String MANAGE_AUTO_FILL = "android.permission.MANAGE_AUTO_FILL";
    100     field public static final String MANAGE_CARRIER_OEM_UNLOCK_STATE = "android.permission.MANAGE_CARRIER_OEM_UNLOCK_STATE";
    101     field public static final String MANAGE_CA_CERTIFICATES = "android.permission.MANAGE_CA_CERTIFICATES";
    102     field public static final String MANAGE_CONTENT_CAPTURE = "android.permission.MANAGE_CONTENT_CAPTURE";
    103     field public static final String MANAGE_CONTENT_SUGGESTIONS = "android.permission.MANAGE_CONTENT_SUGGESTIONS";
    104     field public static final String MANAGE_DEBUGGING = "android.permission.MANAGE_DEBUGGING";
    105     field public static final String MANAGE_IPSEC_TUNNELS = "android.permission.MANAGE_IPSEC_TUNNELS";
    106     field public static final String MANAGE_ROLE_HOLDERS = "android.permission.MANAGE_ROLE_HOLDERS";
    107     field public static final String MANAGE_ROLLBACKS = "android.permission.MANAGE_ROLLBACKS";
    108     field public static final String MANAGE_SENSOR_PRIVACY = "android.permission.MANAGE_SENSOR_PRIVACY";
    109     field public static final String MANAGE_SOUND_TRIGGER = "android.permission.MANAGE_SOUND_TRIGGER";
    110     field public static final String MANAGE_SUBSCRIPTION_PLANS = "android.permission.MANAGE_SUBSCRIPTION_PLANS";
    111     field public static final String MANAGE_USB = "android.permission.MANAGE_USB";
    112     field public static final String MANAGE_USERS = "android.permission.MANAGE_USERS";
    113     field public static final String MANAGE_USER_OEM_UNLOCK_STATE = "android.permission.MANAGE_USER_OEM_UNLOCK_STATE";
    114     field public static final String MODIFY_APPWIDGET_BIND_PERMISSIONS = "android.permission.MODIFY_APPWIDGET_BIND_PERMISSIONS";
    115     field public static final String MODIFY_AUDIO_ROUTING = "android.permission.MODIFY_AUDIO_ROUTING";
    116     field public static final String MODIFY_CELL_BROADCASTS = "android.permission.MODIFY_CELL_BROADCASTS";
    117     field public static final String MODIFY_DAY_NIGHT_MODE = "android.permission.MODIFY_DAY_NIGHT_MODE";
    118     field @Deprecated public static final String MODIFY_NETWORK_ACCOUNTING = "android.permission.MODIFY_NETWORK_ACCOUNTING";
    119     field public static final String MODIFY_PARENTAL_CONTROLS = "android.permission.MODIFY_PARENTAL_CONTROLS";
    120     field public static final String MODIFY_QUIET_MODE = "android.permission.MODIFY_QUIET_MODE";
    121     field public static final String MOVE_PACKAGE = "android.permission.MOVE_PACKAGE";
    122     field public static final String NETWORK_CARRIER_PROVISIONING = "android.permission.NETWORK_CARRIER_PROVISIONING";
    123     field public static final String NETWORK_MANAGED_PROVISIONING = "android.permission.NETWORK_MANAGED_PROVISIONING";
    124     field public static final String NETWORK_SCAN = "android.permission.NETWORK_SCAN";
    125     field public static final String NETWORK_SETUP_WIZARD = "android.permission.NETWORK_SETUP_WIZARD";
    126     field public static final String NETWORK_SIGNAL_STRENGTH_WAKEUP = "android.permission.NETWORK_SIGNAL_STRENGTH_WAKEUP";
    127     field public static final String NOTIFICATION_DURING_SETUP = "android.permission.NOTIFICATION_DURING_SETUP";
    128     field public static final String NOTIFY_TV_INPUTS = "android.permission.NOTIFY_TV_INPUTS";
    129     field public static final String OBSERVE_APP_USAGE = "android.permission.OBSERVE_APP_USAGE";
    130     field public static final String OBSERVE_ROLE_HOLDERS = "android.permission.OBSERVE_ROLE_HOLDERS";
    131     field public static final String OPEN_ACCESSIBILITY_DETAILS_SETTINGS = "android.permission.OPEN_ACCESSIBILITY_DETAILS_SETTINGS";
    132     field public static final String OVERRIDE_WIFI_CONFIG = "android.permission.OVERRIDE_WIFI_CONFIG";
    133     field public static final String PACKAGE_VERIFICATION_AGENT = "android.permission.PACKAGE_VERIFICATION_AGENT";
    134     field public static final String PACKET_KEEPALIVE_OFFLOAD = "android.permission.PACKET_KEEPALIVE_OFFLOAD";
    135     field public static final String PEERS_MAC_ADDRESS = "android.permission.PEERS_MAC_ADDRESS";
    136     field public static final String PERFORM_CDMA_PROVISIONING = "android.permission.PERFORM_CDMA_PROVISIONING";
    137     field public static final String PERFORM_SIM_ACTIVATION = "android.permission.PERFORM_SIM_ACTIVATION";
    138     field public static final String POWER_SAVER = "android.permission.POWER_SAVER";
    139     field public static final String PROVIDE_RESOLVER_RANKER_SERVICE = "android.permission.PROVIDE_RESOLVER_RANKER_SERVICE";
    140     field public static final String PROVIDE_TRUST_AGENT = "android.permission.PROVIDE_TRUST_AGENT";
    141     field public static final String QUERY_TIME_ZONE_RULES = "android.permission.QUERY_TIME_ZONE_RULES";
    142     field public static final String READ_CELL_BROADCASTS = "android.permission.READ_CELL_BROADCASTS";
    143     field public static final String READ_CONTENT_RATING_SYSTEMS = "android.permission.READ_CONTENT_RATING_SYSTEMS";
    144     field public static final String READ_DEVICE_CONFIG = "android.permission.READ_DEVICE_CONFIG";
    145     field public static final String READ_DREAM_STATE = "android.permission.READ_DREAM_STATE";
    146     field public static final String READ_INSTALL_SESSIONS = "android.permission.READ_INSTALL_SESSIONS";
    147     field public static final String READ_NETWORK_USAGE_HISTORY = "android.permission.READ_NETWORK_USAGE_HISTORY";
    148     field public static final String READ_OEM_UNLOCK_STATE = "android.permission.READ_OEM_UNLOCK_STATE";
    149     field public static final String READ_PRINT_SERVICES = "android.permission.READ_PRINT_SERVICES";
    150     field public static final String READ_PRINT_SERVICE_RECOMMENDATIONS = "android.permission.READ_PRINT_SERVICE_RECOMMENDATIONS";
    151     field public static final String READ_PRIVILEGED_PHONE_STATE = "android.permission.READ_PRIVILEGED_PHONE_STATE";
    152     field public static final String READ_RUNTIME_PROFILES = "android.permission.READ_RUNTIME_PROFILES";
    153     field public static final String READ_SEARCH_INDEXABLES = "android.permission.READ_SEARCH_INDEXABLES";
    154     field public static final String READ_SYSTEM_UPDATE_INFO = "android.permission.READ_SYSTEM_UPDATE_INFO";
    155     field public static final String READ_WALLPAPER_INTERNAL = "android.permission.READ_WALLPAPER_INTERNAL";
    156     field public static final String READ_WIFI_CREDENTIAL = "android.permission.READ_WIFI_CREDENTIAL";
    157     field public static final String REAL_GET_TASKS = "android.permission.REAL_GET_TASKS";
    158     field public static final String RECEIVE_DATA_ACTIVITY_CHANGE = "android.permission.RECEIVE_DATA_ACTIVITY_CHANGE";
    159     field public static final String RECEIVE_DEVICE_CUSTOMIZATION_READY = "android.permission.RECEIVE_DEVICE_CUSTOMIZATION_READY";
    160     field public static final String RECEIVE_EMERGENCY_BROADCAST = "android.permission.RECEIVE_EMERGENCY_BROADCAST";
    161     field public static final String RECEIVE_WIFI_CREDENTIAL_CHANGE = "android.permission.RECEIVE_WIFI_CREDENTIAL_CHANGE";
    162     field public static final String RECOVERY = "android.permission.RECOVERY";
    163     field public static final String RECOVER_KEYSTORE = "android.permission.RECOVER_KEYSTORE";
    164     field public static final String REGISTER_CALL_PROVIDER = "android.permission.REGISTER_CALL_PROVIDER";
    165     field public static final String REGISTER_CONNECTION_MANAGER = "android.permission.REGISTER_CONNECTION_MANAGER";
    166     field public static final String REGISTER_SIM_SUBSCRIPTION = "android.permission.REGISTER_SIM_SUBSCRIPTION";
    167     field public static final String REMOTE_DISPLAY_PROVIDER = "android.permission.REMOTE_DISPLAY_PROVIDER";
    168     field public static final String REMOVE_DRM_CERTIFICATES = "android.permission.REMOVE_DRM_CERTIFICATES";
    169     field public static final String REMOVE_TASKS = "android.permission.REMOVE_TASKS";
    170     field public static final String REQUEST_NOTIFICATION_ASSISTANT_SERVICE = "android.permission.REQUEST_NOTIFICATION_ASSISTANT_SERVICE";
    171     field public static final String RESET_PASSWORD = "android.permission.RESET_PASSWORD";
    172     field public static final String RESTRICTED_VR_ACCESS = "android.permission.RESTRICTED_VR_ACCESS";
    173     field public static final String RETRIEVE_WINDOW_CONTENT = "android.permission.RETRIEVE_WINDOW_CONTENT";
    174     field public static final String REVIEW_ACCESSIBILITY_SERVICES = "android.permission.REVIEW_ACCESSIBILITY_SERVICES";
    175     field public static final String REVOKE_RUNTIME_PERMISSIONS = "android.permission.REVOKE_RUNTIME_PERMISSIONS";
    176     field public static final String SCORE_NETWORKS = "android.permission.SCORE_NETWORKS";
    177     field public static final String SEND_DEVICE_CUSTOMIZATION_READY = "android.permission.SEND_DEVICE_CUSTOMIZATION_READY";
    178     field public static final String SEND_SHOW_SUSPENDED_APP_DETAILS = "android.permission.SEND_SHOW_SUSPENDED_APP_DETAILS";
    179     field public static final String SEND_SMS_NO_CONFIRMATION = "android.permission.SEND_SMS_NO_CONFIRMATION";
    180     field public static final String SERIAL_PORT = "android.permission.SERIAL_PORT";
    181     field public static final String SET_ACTIVITY_WATCHER = "android.permission.SET_ACTIVITY_WATCHER";
    182     field public static final String SET_HARMFUL_APP_WARNINGS = "android.permission.SET_HARMFUL_APP_WARNINGS";
    183     field public static final String SET_MEDIA_KEY_LISTENER = "android.permission.SET_MEDIA_KEY_LISTENER";
    184     field public static final String SET_ORIENTATION = "android.permission.SET_ORIENTATION";
    185     field public static final String SET_POINTER_SPEED = "android.permission.SET_POINTER_SPEED";
    186     field public static final String SET_SCREEN_COMPATIBILITY = "android.permission.SET_SCREEN_COMPATIBILITY";
    187     field public static final String SET_VOLUME_KEY_LONG_PRESS_LISTENER = "android.permission.SET_VOLUME_KEY_LONG_PRESS_LISTENER";
    188     field public static final String SET_WALLPAPER_COMPONENT = "android.permission.SET_WALLPAPER_COMPONENT";
    189     field public static final String SHOW_KEYGUARD_MESSAGE = "android.permission.SHOW_KEYGUARD_MESSAGE";
    190     field public static final String SHUTDOWN = "android.permission.SHUTDOWN";
    191     field public static final String STOP_APP_SWITCHES = "android.permission.STOP_APP_SWITCHES";
    192     field public static final String SUBSTITUTE_NOTIFICATION_APP_NAME = "android.permission.SUBSTITUTE_NOTIFICATION_APP_NAME";
    193     field public static final String SUBSTITUTE_SHARE_TARGET_APP_NAME_AND_ICON = "android.permission.SUBSTITUTE_SHARE_TARGET_APP_NAME_AND_ICON";
    194     field public static final String SUSPEND_APPS = "android.permission.SUSPEND_APPS";
    195     field public static final String TETHER_PRIVILEGED = "android.permission.TETHER_PRIVILEGED";
    196     field public static final String TV_INPUT_HARDWARE = "android.permission.TV_INPUT_HARDWARE";
    197     field public static final String TV_VIRTUAL_REMOTE_CONTROLLER = "android.permission.TV_VIRTUAL_REMOTE_CONTROLLER";
    198     field public static final String UNLIMITED_SHORTCUTS_API_CALLS = "android.permission.UNLIMITED_SHORTCUTS_API_CALLS";
    199     field public static final String UPDATE_APP_OPS_STATS = "android.permission.UPDATE_APP_OPS_STATS";
    200     field public static final String UPDATE_LOCK = "android.permission.UPDATE_LOCK";
    201     field public static final String UPDATE_TIME_ZONE_RULES = "android.permission.UPDATE_TIME_ZONE_RULES";
    202     field public static final String USER_ACTIVITY = "android.permission.USER_ACTIVITY";
    203     field public static final String USE_RESERVED_DISK = "android.permission.USE_RESERVED_DISK";
    204     field public static final String WHITELIST_RESTRICTED_PERMISSIONS = "android.permission.WHITELIST_RESTRICTED_PERMISSIONS";
    205     field public static final String WRITE_DEVICE_CONFIG = "android.permission.WRITE_DEVICE_CONFIG";
    206     field public static final String WRITE_DREAM_STATE = "android.permission.WRITE_DREAM_STATE";
    207     field public static final String WRITE_EMBEDDED_SUBSCRIPTIONS = "android.permission.WRITE_EMBEDDED_SUBSCRIPTIONS";
    208     field public static final String WRITE_MEDIA_STORAGE = "android.permission.WRITE_MEDIA_STORAGE";
    209     field public static final String WRITE_OBB = "android.permission.WRITE_OBB";
    210   }
    211 
    212   public static final class Manifest.permission_group {
    213     field public static final String UNDEFINED = "android.permission-group.UNDEFINED";
    214   }
    215 
    216   public static final class R.array {
    217     field public static final int config_keySystemUuidMapping = 17235973; // 0x1070005
    218   }
    219 
    220   public static final class R.attr {
    221     field public static final int allowClearUserDataOnFailedRestore = 16844288; // 0x1010600
    222     field public static final int isVrOnly = 16844152; // 0x1010578
    223     field public static final int requiredSystemPropertyName = 16844133; // 0x1010565
    224     field public static final int requiredSystemPropertyValue = 16844134; // 0x1010566
    225     field public static final int supportsAmbientMode = 16844173; // 0x101058d
    226     field public static final int userRestriction = 16844164; // 0x1010584
    227   }
    228 
    229   public static final class R.bool {
    230     field public static final int config_sendPackageName = 17891328; // 0x1110000
    231     field public static final int config_showDefaultAssistant = 17891329; // 0x1110001
    232     field public static final int config_showDefaultEmergency = 17891330; // 0x1110002
    233     field public static final int config_showDefaultHome = 17891331; // 0x1110003
    234   }
    235 
    236   public static final class R.color {
    237     field public static final int system_notification_accent_color = 17170460; // 0x106001c
    238   }
    239 
    240   public static final class R.dimen {
    241     field public static final int config_restrictedIconSize = 17104903; // 0x1050007
    242   }
    243 
    244   public static final class R.drawable {
    245     field public static final int ic_info = 17301684; // 0x10800b4
    246   }
    247 
    248   public static final class R.raw {
    249     field public static final int loaderror = 17825792; // 0x1100000
    250     field public static final int nodomain = 17825793; // 0x1100001
    251   }
    252 
    253   public static final class R.string {
    254     field public static final int config_defaultAssistant = 17039393; // 0x1040021
    255     field public static final int config_defaultBrowser = 17039394; // 0x1040022
    256     field public static final int config_defaultDialer = 17039395; // 0x1040023
    257     field public static final int config_defaultSms = 17039396; // 0x1040024
    258     field public static final int config_feedbackIntentExtraKey = 17039391; // 0x104001f
    259     field public static final int config_feedbackIntentNameKey = 17039392; // 0x1040020
    260     field public static final int config_helpIntentExtraKey = 17039389; // 0x104001d
    261     field public static final int config_helpIntentNameKey = 17039390; // 0x104001e
    262     field public static final int config_helpPackageNameKey = 17039387; // 0x104001b
    263     field public static final int config_helpPackageNameValue = 17039388; // 0x104001c
    264   }
    265 
    266   public static final class R.style {
    267     field public static final int Theme_DeviceDefault_DocumentsUI = 16974562; // 0x10302e2
    268     field public static final int Theme_Leanback_FormWizard = 16974544; // 0x10302d0
    269   }
    270 
    271 }
    272 
    273 package android.accounts {
    274 
    275   public class AccountManager {
    276     method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public android.accounts.AccountManagerFuture<android.os.Bundle> finishSessionAsUser(android.os.Bundle, android.app.Activity, android.os.UserHandle, android.accounts.AccountManagerCallback<android.os.Bundle>, android.os.Handler);
    277   }
    278 
    279 }
    280 
    281 package android.app {
    282 
    283   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 {
    284     method public void convertFromTranslucent();
    285     method public boolean convertToTranslucent(android.app.Activity.TranslucentConversionListener, android.app.ActivityOptions);
    286     method @Deprecated public boolean isBackgroundVisibleBehind();
    287     method @Deprecated public void onBackgroundVisibleBehindChanged(boolean);
    288   }
    289 
    290   public static interface Activity.TranslucentConversionListener {
    291     method public void onTranslucentConversionComplete(boolean);
    292   }
    293 
    294   public class ActivityManager {
    295     method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public void addOnUidImportanceListener(android.app.ActivityManager.OnUidImportanceListener, int);
    296     method @RequiresPermission(android.Manifest.permission.FORCE_STOP_PACKAGES) public void forceStopPackage(String);
    297     method @RequiresPermission(anyOf={"android.permission.INTERACT_ACROSS_USERS", "android.permission.INTERACT_ACROSS_USERS_FULL"}) public static int getCurrentUser();
    298     method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public int getPackageImportance(String);
    299     method @NonNull public java.util.Collection<java.util.Locale> getSupportedLocales();
    300     method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public int getUidImportance(int);
    301     method @RequiresPermission(android.Manifest.permission.KILL_UID) public void killUid(int, String);
    302     method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public void removeOnUidImportanceListener(android.app.ActivityManager.OnUidImportanceListener);
    303     method public void setDeviceLocales(@NonNull android.os.LocaleList);
    304     method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public static void setPersistentVrThread(int);
    305     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean switchUser(@NonNull android.os.UserHandle);
    306   }
    307 
    308   public static interface ActivityManager.OnUidImportanceListener {
    309     method public void onUidImportance(int, int);
    310   }
    311 
    312   public class AlarmManager {
    313     method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void set(int, long, long, long, android.app.PendingIntent, android.os.WorkSource);
    314     method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void set(int, long, long, long, android.app.AlarmManager.OnAlarmListener, android.os.Handler, android.os.WorkSource);
    315   }
    316 
    317   public class AppOpsManager {
    318     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>);
    319     method public static String[] getOpStrs();
    320     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...);
    321     method @NonNull @RequiresPermission(android.Manifest.permission.GET_APP_OPS_STATS) public java.util.List<android.app.AppOpsManager.PackageOps> getPackagesForOps(@Nullable String[]);
    322     method public static int opToDefaultMode(@NonNull String);
    323     method @Nullable public static String opToPermission(@NonNull String);
    324     method @RequiresPermission("android.permission.MANAGE_APP_OPS_MODES") public void setMode(String, int, String, int);
    325     method @RequiresPermission("android.permission.MANAGE_APP_OPS_MODES") public void setUidMode(String, int, int);
    326     field public static final String OPSTR_ACCEPT_HANDOVER = "android:accept_handover";
    327     field public static final String OPSTR_ACCESS_ACCESSIBILITY = "android:access_accessibility";
    328     field public static final String OPSTR_ACCESS_NOTIFICATIONS = "android:access_notifications";
    329     field public static final String OPSTR_ACTIVATE_VPN = "android:activate_vpn";
    330     field public static final String OPSTR_ASSIST_SCREENSHOT = "android:assist_screenshot";
    331     field public static final String OPSTR_ASSIST_STRUCTURE = "android:assist_structure";
    332     field public static final String OPSTR_AUDIO_ACCESSIBILITY_VOLUME = "android:audio_accessibility_volume";
    333     field public static final String OPSTR_AUDIO_ALARM_VOLUME = "android:audio_alarm_volume";
    334     field public static final String OPSTR_AUDIO_BLUETOOTH_VOLUME = "android:audio_bluetooth_volume";
    335     field public static final String OPSTR_AUDIO_MASTER_VOLUME = "android:audio_master_volume";
    336     field public static final String OPSTR_AUDIO_MEDIA_VOLUME = "android:audio_media_volume";
    337     field public static final String OPSTR_AUDIO_NOTIFICATION_VOLUME = "android:audio_notification_volume";
    338     field public static final String OPSTR_AUDIO_RING_VOLUME = "android:audio_ring_volume";
    339     field public static final String OPSTR_AUDIO_VOICE_VOLUME = "android:audio_voice_volume";
    340     field public static final String OPSTR_BIND_ACCESSIBILITY_SERVICE = "android:bind_accessibility_service";
    341     field public static final String OPSTR_CHANGE_WIFI_STATE = "android:change_wifi_state";
    342     field public static final String OPSTR_GET_ACCOUNTS = "android:get_accounts";
    343     field public static final String OPSTR_GPS = "android:gps";
    344     field public static final String OPSTR_INSTANT_APP_START_FOREGROUND = "android:instant_app_start_foreground";
    345     field public static final String OPSTR_LEGACY_STORAGE = "android:legacy_storage";
    346     field public static final String OPSTR_MANAGE_IPSEC_TUNNELS = "android:manage_ipsec_tunnels";
    347     field public static final String OPSTR_MUTE_MICROPHONE = "android:mute_microphone";
    348     field public static final String OPSTR_NEIGHBORING_CELLS = "android:neighboring_cells";
    349     field public static final String OPSTR_PLAY_AUDIO = "android:play_audio";
    350     field public static final String OPSTR_POST_NOTIFICATION = "android:post_notification";
    351     field public static final String OPSTR_PROJECT_MEDIA = "android:project_media";
    352     field public static final String OPSTR_READ_CLIPBOARD = "android:read_clipboard";
    353     field public static final String OPSTR_READ_ICC_SMS = "android:read_icc_sms";
    354     field public static final String OPSTR_RECEIVE_EMERGENCY_BROADCAST = "android:receive_emergency_broadcast";
    355     field public static final String OPSTR_REQUEST_DELETE_PACKAGES = "android:request_delete_packages";
    356     field public static final String OPSTR_REQUEST_INSTALL_PACKAGES = "android:request_install_packages";
    357     field public static final String OPSTR_RUN_ANY_IN_BACKGROUND = "android:run_any_in_background";
    358     field public static final String OPSTR_RUN_IN_BACKGROUND = "android:run_in_background";
    359     field public static final String OPSTR_START_FOREGROUND = "android:start_foreground";
    360     field public static final String OPSTR_TAKE_AUDIO_FOCUS = "android:take_audio_focus";
    361     field public static final String OPSTR_TAKE_MEDIA_BUTTONS = "android:take_media_buttons";
    362     field public static final String OPSTR_TOAST_WINDOW = "android:toast_window";
    363     field public static final String OPSTR_TURN_SCREEN_ON = "android:turn_screen_on";
    364     field public static final String OPSTR_VIBRATE = "android:vibrate";
    365     field public static final String OPSTR_WAKE_LOCK = "android:wake_lock";
    366     field public static final String OPSTR_WIFI_SCAN = "android:wifi_scan";
    367     field public static final String OPSTR_WRITE_CLIPBOARD = "android:write_clipboard";
    368     field public static final String OPSTR_WRITE_ICC_SMS = "android:write_icc_sms";
    369     field public static final String OPSTR_WRITE_SMS = "android:write_sms";
    370     field public static final String OPSTR_WRITE_WALLPAPER = "android:write_wallpaper";
    371     field public static final int OP_FLAGS_ALL = 31; // 0x1f
    372     field public static final int OP_FLAGS_ALL_TRUSTED = 13; // 0xd
    373     field public static final int OP_FLAG_SELF = 1; // 0x1
    374     field public static final int OP_FLAG_TRUSTED_PROXIED = 8; // 0x8
    375     field public static final int OP_FLAG_TRUSTED_PROXY = 2; // 0x2
    376     field public static final int OP_FLAG_UNTRUSTED_PROXIED = 16; // 0x10
    377     field public static final int OP_FLAG_UNTRUSTED_PROXY = 4; // 0x4
    378     field public static final int UID_STATE_BACKGROUND = 600; // 0x258
    379     field public static final int UID_STATE_CACHED = 700; // 0x2bc
    380     field public static final int UID_STATE_FOREGROUND = 500; // 0x1f4
    381     field public static final int UID_STATE_FOREGROUND_SERVICE = 400; // 0x190
    382     field public static final int UID_STATE_FOREGROUND_SERVICE_LOCATION = 300; // 0x12c
    383     field public static final int UID_STATE_PERSISTENT = 100; // 0x64
    384     field public static final int UID_STATE_TOP = 200; // 0xc8
    385   }
    386 
    387   public static final class AppOpsManager.HistoricalOp implements android.os.Parcelable {
    388     method public int describeContents();
    389     method public long getAccessCount(int, int, int);
    390     method public long getAccessDuration(int, int, int);
    391     method public long getBackgroundAccessCount(int);
    392     method public long getBackgroundAccessDuration(int);
    393     method public long getBackgroundRejectCount(int);
    394     method public long getForegroundAccessCount(int);
    395     method public long getForegroundAccessDuration(int);
    396     method public long getForegroundRejectCount(int);
    397     method @NonNull public String getOpName();
    398     method public long getRejectCount(int, int, int);
    399     method public void writeToParcel(android.os.Parcel, int);
    400     field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.HistoricalOp> CREATOR;
    401   }
    402 
    403   public static final class AppOpsManager.HistoricalOps implements android.os.Parcelable {
    404     method public int describeContents();
    405     method public long getBeginTimeMillis();
    406     method public long getEndTimeMillis();
    407     method @IntRange(from=0) public int getUidCount();
    408     method @Nullable public android.app.AppOpsManager.HistoricalUidOps getUidOps(int);
    409     method @NonNull public android.app.AppOpsManager.HistoricalUidOps getUidOpsAt(@IntRange(from=0) int);
    410     method public void writeToParcel(android.os.Parcel, int);
    411     field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.HistoricalOps> CREATOR;
    412   }
    413 
    414   public static final class AppOpsManager.HistoricalOpsRequest {
    415   }
    416 
    417   public static final class AppOpsManager.HistoricalOpsRequest.Builder {
    418     ctor public AppOpsManager.HistoricalOpsRequest.Builder(long, long);
    419     method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest build();
    420     method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setFlags(int);
    421     method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setOpNames(@Nullable java.util.List<java.lang.String>);
    422     method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setPackageName(@Nullable String);
    423     method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setUid(int);
    424   }
    425 
    426   public static final class AppOpsManager.HistoricalPackageOps implements android.os.Parcelable {
    427     method public int describeContents();
    428     method @Nullable public android.app.AppOpsManager.HistoricalOp getOp(@NonNull String);
    429     method @NonNull public android.app.AppOpsManager.HistoricalOp getOpAt(@IntRange(from=0) int);
    430     method @IntRange(from=0) public int getOpCount();
    431     method @NonNull public String getPackageName();
    432     method public void writeToParcel(@NonNull android.os.Parcel, int);
    433     field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.HistoricalPackageOps> CREATOR;
    434   }
    435 
    436   public static final class AppOpsManager.HistoricalUidOps implements android.os.Parcelable {
    437     method public int describeContents();
    438     method @IntRange(from=0) public int getPackageCount();
    439     method @Nullable public android.app.AppOpsManager.HistoricalPackageOps getPackageOps(@NonNull String);
    440     method @NonNull public android.app.AppOpsManager.HistoricalPackageOps getPackageOpsAt(@IntRange(from=0) int);
    441     method public int getUid();
    442     method public void writeToParcel(android.os.Parcel, int);
    443     field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.HistoricalUidOps> CREATOR;
    444   }
    445 
    446   public static final class AppOpsManager.OpEntry implements android.os.Parcelable {
    447     method public int describeContents();
    448     method public long getDuration();
    449     method public long getLastAccessBackgroundTime(int);
    450     method public long getLastAccessForegroundTime(int);
    451     method public long getLastAccessTime(int);
    452     method public long getLastAccessTime(int, int, int);
    453     method public long getLastBackgroundDuration(int);
    454     method public long getLastDuration(int, int, int);
    455     method public long getLastForegroundDuration(int);
    456     method public long getLastRejectBackgroundTime(int);
    457     method public long getLastRejectForegroundTime(int);
    458     method public long getLastRejectTime(int);
    459     method public long getLastRejectTime(int, int, int);
    460     method public int getMode();
    461     method @NonNull public String getOpStr();
    462     method @Nullable public String getProxyPackageName();
    463     method @Nullable public String getProxyPackageName(int, int);
    464     method public int getProxyUid();
    465     method public int getProxyUid(int, int);
    466     method public boolean isRunning();
    467     method public void writeToParcel(android.os.Parcel, int);
    468     field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.OpEntry> CREATOR;
    469   }
    470 
    471   public static final class AppOpsManager.PackageOps implements android.os.Parcelable {
    472     method public int describeContents();
    473     method @NonNull public java.util.List<android.app.AppOpsManager.OpEntry> getOps();
    474     method @NonNull public String getPackageName();
    475     method public int getUid();
    476     method public void writeToParcel(android.os.Parcel, int);
    477     field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.PackageOps> CREATOR;
    478   }
    479 
    480   public class BroadcastOptions {
    481     method public static android.app.BroadcastOptions makeBasic();
    482     method @RequiresPermission("android.permission.START_ACTIVITIES_FROM_BACKGROUND") public void setBackgroundActivityStartsAllowed(boolean);
    483     method public void setDontSendToRestrictedApps(boolean);
    484     method @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public void setTemporaryAppWhitelistDuration(long);
    485     method public android.os.Bundle toBundle();
    486   }
    487 
    488   public class DownloadManager {
    489     field public static final String ACTION_DOWNLOAD_COMPLETED = "android.intent.action.DOWNLOAD_COMPLETED";
    490   }
    491 
    492   public abstract class InstantAppResolverService extends android.app.Service {
    493     ctor public InstantAppResolverService();
    494     method public final void attachBaseContext(android.content.Context);
    495     method public final android.os.IBinder onBind(android.content.Intent);
    496     method @Deprecated public void onGetInstantAppIntentFilter(@Nullable int[], @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
    497     method @Deprecated public void onGetInstantAppIntentFilter(@NonNull android.content.Intent, @Nullable int[], @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
    498     method public void onGetInstantAppIntentFilter(@NonNull android.content.Intent, @Nullable int[], @NonNull android.os.UserHandle, @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
    499     method @Deprecated public void onGetInstantAppResolveInfo(@Nullable int[], @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
    500     method @Deprecated public void onGetInstantAppResolveInfo(@NonNull android.content.Intent, @Nullable int[], @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
    501     method public void onGetInstantAppResolveInfo(@NonNull android.content.Intent, @Nullable int[], @NonNull android.os.UserHandle, @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
    502   }
    503 
    504   public static final class InstantAppResolverService.InstantAppResolutionCallback {
    505     method public void onInstantAppResolveInfo(java.util.List<android.content.pm.InstantAppResolveInfo>);
    506   }
    507 
    508   public class KeyguardManager {
    509     method public android.content.Intent createConfirmFactoryResetCredentialIntent(CharSequence, CharSequence, CharSequence);
    510     method @RequiresPermission(android.Manifest.permission.CONTROL_KEYGUARD_SECURE_NOTIFICATIONS) public boolean getPrivateNotificationsAllowed();
    511     method @RequiresPermission(android.Manifest.permission.SHOW_KEYGUARD_MESSAGE) public void requestDismissKeyguard(@NonNull android.app.Activity, @Nullable CharSequence, @Nullable android.app.KeyguardManager.KeyguardDismissCallback);
    512     method @RequiresPermission(android.Manifest.permission.CONTROL_KEYGUARD_SECURE_NOTIFICATIONS) public void setPrivateNotificationsAllowed(boolean);
    513   }
    514 
    515   public class Notification implements android.os.Parcelable {
    516     field public static final String CATEGORY_CAR_EMERGENCY = "car_emergency";
    517     field public static final String CATEGORY_CAR_INFORMATION = "car_information";
    518     field public static final String CATEGORY_CAR_WARNING = "car_warning";
    519     field @RequiresPermission(android.Manifest.permission.NOTIFICATION_DURING_SETUP) public static final String EXTRA_ALLOW_DURING_SETUP = "android.allowDuringSetup";
    520     field @RequiresPermission(android.Manifest.permission.SUBSTITUTE_NOTIFICATION_APP_NAME) public static final String EXTRA_SUBSTITUTE_APP_NAME = "android.substName";
    521     field public static final int FLAG_AUTOGROUP_SUMMARY = 1024; // 0x400
    522   }
    523 
    524   public static final class Notification.TvExtender implements android.app.Notification.Extender {
    525     ctor public Notification.TvExtender();
    526     ctor public Notification.TvExtender(android.app.Notification);
    527     method public android.app.Notification.Builder extend(android.app.Notification.Builder);
    528     method public String getChannelId();
    529     method public android.app.PendingIntent getContentIntent();
    530     method public android.app.PendingIntent getDeleteIntent();
    531     method public boolean getSuppressShowOverApps();
    532     method public boolean isAvailableOnTv();
    533     method public android.app.Notification.TvExtender setChannel(String);
    534     method public android.app.Notification.TvExtender setChannelId(String);
    535     method public android.app.Notification.TvExtender setContentIntent(android.app.PendingIntent);
    536     method public android.app.Notification.TvExtender setDeleteIntent(android.app.PendingIntent);
    537     method public android.app.Notification.TvExtender setSuppressShowOverApps(boolean);
    538   }
    539 
    540   public final class NotificationChannel implements android.os.Parcelable {
    541     method public int getUserLockedFields();
    542     method public boolean isDeleted();
    543     method public void populateFromXml(org.xmlpull.v1.XmlPullParser);
    544     method public org.json.JSONObject toJson() throws org.json.JSONException;
    545     method public void writeXml(org.xmlpull.v1.XmlSerializer) throws java.io.IOException;
    546   }
    547 
    548   public final class NotificationChannelGroup implements android.os.Parcelable {
    549     method public org.json.JSONObject toJson() throws org.json.JSONException;
    550   }
    551 
    552   public class NotificationManager {
    553     method @NonNull public java.util.List<java.lang.String> getAllowedAssistantAdjustments();
    554     method @Nullable public android.content.ComponentName getAllowedNotificationAssistant();
    555     method public boolean isNotificationAssistantAccessGranted(@NonNull android.content.ComponentName);
    556     method public void setNotificationAssistantAccessGranted(@Nullable android.content.ComponentName, boolean);
    557   }
    558 
    559   public final class StatsManager {
    560     method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void addConfig(long, byte[]) throws android.app.StatsManager.StatsUnavailableException;
    561     method @Deprecated @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public boolean addConfiguration(long, byte[]);
    562     method @Deprecated @Nullable @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public byte[] getData(long);
    563     method @Deprecated @Nullable @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public byte[] getMetadata();
    564     method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public long[] getRegisteredExperimentIds() throws android.app.StatsManager.StatsUnavailableException;
    565     method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public byte[] getReports(long) throws android.app.StatsManager.StatsUnavailableException;
    566     method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public byte[] getStatsMetadata() throws android.app.StatsManager.StatsUnavailableException;
    567     method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void removeConfig(long) throws android.app.StatsManager.StatsUnavailableException;
    568     method @Deprecated @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public boolean removeConfiguration(long);
    569     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;
    570     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;
    571     method @Deprecated @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public boolean setBroadcastSubscriber(long, long, android.app.PendingIntent);
    572     method @Deprecated @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public boolean setDataFetchOperation(long, android.app.PendingIntent);
    573     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;
    574     field public static final String ACTION_STATSD_STARTED = "android.app.action.STATSD_STARTED";
    575     field public static final String EXTRA_STATS_ACTIVE_CONFIG_KEYS = "android.app.extra.STATS_ACTIVE_CONFIG_KEYS";
    576     field public static final String EXTRA_STATS_BROADCAST_SUBSCRIBER_COOKIES = "android.app.extra.STATS_BROADCAST_SUBSCRIBER_COOKIES";
    577     field public static final String EXTRA_STATS_CONFIG_KEY = "android.app.extra.STATS_CONFIG_KEY";
    578     field public static final String EXTRA_STATS_CONFIG_UID = "android.app.extra.STATS_CONFIG_UID";
    579     field public static final String EXTRA_STATS_DIMENSIONS_VALUE = "android.app.extra.STATS_DIMENSIONS_VALUE";
    580     field public static final String EXTRA_STATS_SUBSCRIPTION_ID = "android.app.extra.STATS_SUBSCRIPTION_ID";
    581     field public static final String EXTRA_STATS_SUBSCRIPTION_RULE_ID = "android.app.extra.STATS_SUBSCRIPTION_RULE_ID";
    582   }
    583 
    584   public static class StatsManager.StatsUnavailableException extends android.util.AndroidException {
    585     ctor public StatsManager.StatsUnavailableException(String);
    586     ctor public StatsManager.StatsUnavailableException(String, Throwable);
    587   }
    588 
    589   public class StatusBarManager {
    590     method @NonNull @RequiresPermission(android.Manifest.permission.STATUS_BAR) public android.app.StatusBarManager.DisableInfo getDisableInfo();
    591     method @RequiresPermission(android.Manifest.permission.STATUS_BAR) public void setDisabledForSetup(boolean);
    592   }
    593 
    594   public static final class StatusBarManager.DisableInfo {
    595     method public boolean areAllComponentsEnabled();
    596     method public boolean isNavigateToHomeDisabled();
    597     method public boolean isNotificationPeekingDisabled();
    598     method public boolean isRecentsDisabled();
    599     method public boolean isSearchDisabled();
    600     method public boolean isStatusBarExpansionDisabled();
    601   }
    602 
    603   public final class Vr2dDisplayProperties implements android.os.Parcelable {
    604     ctor public Vr2dDisplayProperties(int, int, int);
    605     method public int describeContents();
    606     method public void dump(@NonNull java.io.PrintWriter, @NonNull String);
    607     method public int getAddedFlags();
    608     method public int getDpi();
    609     method public int getHeight();
    610     method public int getRemovedFlags();
    611     method public int getWidth();
    612     method public void writeToParcel(android.os.Parcel, int);
    613     field @NonNull public static final android.os.Parcelable.Creator<android.app.Vr2dDisplayProperties> CREATOR;
    614     field public static final int FLAG_VIRTUAL_DISPLAY_ENABLED = 1; // 0x1
    615   }
    616 
    617   public static final class Vr2dDisplayProperties.Builder {
    618     ctor public Vr2dDisplayProperties.Builder();
    619     method @NonNull public android.app.Vr2dDisplayProperties.Builder addFlags(int);
    620     method @NonNull public android.app.Vr2dDisplayProperties build();
    621     method @NonNull public android.app.Vr2dDisplayProperties.Builder removeFlags(int);
    622     method @NonNull public android.app.Vr2dDisplayProperties.Builder setDimensions(int, int, int);
    623     method @NonNull public android.app.Vr2dDisplayProperties.Builder setEnabled(boolean);
    624   }
    625 
    626   public class VrManager {
    627     method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public int getVr2dDisplayId();
    628     method @RequiresPermission(anyOf={android.Manifest.permission.RESTRICTED_VR_ACCESS, "android.permission.ACCESS_VR_STATE"}) public boolean isPersistentVrModeEnabled();
    629     method @RequiresPermission(anyOf={android.Manifest.permission.RESTRICTED_VR_ACCESS, "android.permission.ACCESS_VR_STATE"}) public boolean isVrModeEnabled();
    630     method @RequiresPermission(anyOf={android.Manifest.permission.RESTRICTED_VR_ACCESS, "android.permission.ACCESS_VR_STATE"}) public void registerVrStateCallback(@NonNull java.util.concurrent.Executor, @NonNull android.app.VrStateCallback);
    631     method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public void setAndBindVrCompositor(android.content.ComponentName);
    632     method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public void setPersistentVrModeEnabled(boolean);
    633     method @RequiresPermission("android.permission.ACCESS_VR_MANAGER") public void setStandbyEnabled(boolean);
    634     method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public void setVr2dDisplayProperties(@NonNull android.app.Vr2dDisplayProperties);
    635     method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public void setVrInputMethod(@Nullable android.content.ComponentName);
    636     method @RequiresPermission(anyOf={android.Manifest.permission.RESTRICTED_VR_ACCESS, "android.permission.ACCESS_VR_STATE"}) public void unregisterVrStateCallback(@NonNull android.app.VrStateCallback);
    637   }
    638 
    639   public abstract class VrStateCallback {
    640     ctor public VrStateCallback();
    641     method public void onPersistentVrStateChanged(boolean);
    642     method public void onVrStateChanged(boolean);
    643   }
    644 
    645   public final class WallpaperColors implements android.os.Parcelable {
    646     ctor public WallpaperColors(@NonNull android.graphics.Color, @Nullable android.graphics.Color, @Nullable android.graphics.Color, int);
    647     method public int getColorHints();
    648     field public static final int HINT_SUPPORTS_DARK_TEXT = 1; // 0x1
    649     field public static final int HINT_SUPPORTS_DARK_THEME = 2; // 0x2
    650   }
    651 
    652   public final class WallpaperInfo implements android.os.Parcelable {
    653     method public boolean supportsAmbientMode();
    654   }
    655 
    656   public class WallpaperManager {
    657     method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public void clearWallpaper(int, int);
    658     method public void setDisplayOffset(android.os.IBinder, int, int);
    659     method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER_COMPONENT) public boolean setWallpaperComponent(android.content.ComponentName);
    660   }
    661 
    662 }
    663 
    664 package android.app.admin {
    665 
    666   public class DevicePolicyManager {
    667     method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public String getDeviceOwner();
    668     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public android.content.ComponentName getDeviceOwnerComponentOnAnyUser();
    669     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public String getDeviceOwnerNameOnAnyUser();
    670     method @Nullable public CharSequence getDeviceOwnerOrganizationName();
    671     method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public android.os.UserHandle getDeviceOwnerUser();
    672     method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public java.util.List<java.lang.String> getPermittedAccessibilityServices(int);
    673     method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public java.util.List<java.lang.String> getPermittedInputMethodsForCurrentUser();
    674     method @Nullable public android.content.ComponentName getProfileOwner() throws java.lang.IllegalArgumentException;
    675     method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public String getProfileOwnerNameAsUser(int) throws java.lang.IllegalArgumentException;
    676     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public int getUserProvisioningState();
    677     method public boolean isDeviceManaged();
    678     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isDeviceProvisioned();
    679     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isDeviceProvisioningConfigApplied();
    680     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isManagedKiosk();
    681     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isUnattendedManagedKiosk();
    682     method @RequiresPermission("android.permission.NOTIFY_PENDING_SYSTEM_UPDATE") public void notifyPendingSystemUpdate(long);
    683     method @RequiresPermission("android.permission.NOTIFY_PENDING_SYSTEM_UPDATE") public void notifyPendingSystemUpdate(long, boolean);
    684     method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public boolean packageHasActiveAdmins(String);
    685     method @Deprecated @RequiresPermission("android.permission.MANAGE_DEVICE_ADMINS") public boolean setActiveProfileOwner(@NonNull android.content.ComponentName, String) throws java.lang.IllegalArgumentException;
    686     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void setDeviceProvisioningConfigApplied();
    687     method @RequiresPermission(value=android.Manifest.permission.GRANT_PROFILE_OWNER_DEVICE_IDS_ACCESS, conditional=true) public void setProfileOwnerCanAccessDeviceIds(@NonNull android.content.ComponentName);
    688     field public static final String ACCOUNT_FEATURE_DEVICE_OR_PROFILE_OWNER_ALLOWED = "android.account.DEVICE_OR_PROFILE_OWNER_ALLOWED";
    689     field public static final String ACCOUNT_FEATURE_DEVICE_OR_PROFILE_OWNER_DISALLOWED = "android.account.DEVICE_OR_PROFILE_OWNER_DISALLOWED";
    690     field public static final String ACTION_PROVISION_FINALIZATION = "android.app.action.PROVISION_FINALIZATION";
    691     field public static final String ACTION_PROVISION_MANAGED_DEVICE_FROM_TRUSTED_SOURCE = "android.app.action.PROVISION_MANAGED_DEVICE_FROM_TRUSTED_SOURCE";
    692     field public static final String ACTION_SET_PROFILE_OWNER = "android.app.action.SET_PROFILE_OWNER";
    693     field public static final String ACTION_STATE_USER_SETUP_COMPLETE = "android.app.action.STATE_USER_SETUP_COMPLETE";
    694     field public static final String EXTRA_PROFILE_OWNER_NAME = "android.app.extra.PROFILE_OWNER_NAME";
    695     field public static final String EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_ICON_URI = "android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_ICON_URI";
    696     field public static final String EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_LABEL = "android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_LABEL";
    697     field public static final String EXTRA_PROVISIONING_ORGANIZATION_NAME = "android.app.extra.PROVISIONING_ORGANIZATION_NAME";
    698     field public static final String EXTRA_PROVISIONING_SUPPORT_URL = "android.app.extra.PROVISIONING_SUPPORT_URL";
    699     field public static final String EXTRA_PROVISIONING_TRIGGER = "android.app.extra.PROVISIONING_TRIGGER";
    700     field public static final String EXTRA_RESTRICTION = "android.app.extra.RESTRICTION";
    701     field public static final int PROVISIONING_TRIGGER_CLOUD_ENROLLMENT = 1; // 0x1
    702     field public static final int PROVISIONING_TRIGGER_PERSISTENT_DEVICE_OWNER = 3; // 0x3
    703     field public static final int PROVISIONING_TRIGGER_QR_CODE = 2; // 0x2
    704     field public static final int PROVISIONING_TRIGGER_UNSPECIFIED = 0; // 0x0
    705     field public static final int STATE_USER_PROFILE_COMPLETE = 4; // 0x4
    706     field public static final int STATE_USER_SETUP_COMPLETE = 2; // 0x2
    707     field public static final int STATE_USER_SETUP_FINALIZED = 3; // 0x3
    708     field public static final int STATE_USER_SETUP_INCOMPLETE = 1; // 0x1
    709     field public static final int STATE_USER_UNMANAGED = 0; // 0x0
    710   }
    711 
    712   public final class SystemUpdatePolicy implements android.os.Parcelable {
    713     method public android.app.admin.SystemUpdatePolicy.InstallationOption getInstallationOptionAt(long);
    714     field public static final int TYPE_PAUSE = 4; // 0x4
    715   }
    716 
    717   public static class SystemUpdatePolicy.InstallationOption {
    718     method public long getEffectiveTime();
    719     method public int getType();
    720   }
    721 
    722 }
    723 
    724 package android.app.assist {
    725 
    726   public static class AssistStructure.ViewNode {
    727     ctor public AssistStructure.ViewNode();
    728   }
    729 
    730 }
    731 
    732 package android.app.backup {
    733 
    734   public class BackupDataInput {
    735     ctor public BackupDataInput(java.io.FileDescriptor);
    736   }
    737 
    738   public class BackupDataOutput {
    739     ctor public BackupDataOutput(java.io.FileDescriptor);
    740     ctor public BackupDataOutput(java.io.FileDescriptor, long);
    741   }
    742 
    743   public class BackupManager {
    744     method @RequiresPermission(android.Manifest.permission.BACKUP) public void backupNow();
    745     method @RequiresPermission(android.Manifest.permission.BACKUP) public android.app.backup.RestoreSession beginRestoreSession();
    746     method @RequiresPermission(android.Manifest.permission.BACKUP) public void cancelBackups();
    747     method @RequiresPermission(android.Manifest.permission.BACKUP) public long getAvailableRestoreToken(String);
    748     method @RequiresPermission(android.Manifest.permission.BACKUP) public android.content.Intent getConfigurationIntent(String);
    749     method @RequiresPermission(android.Manifest.permission.BACKUP) public String getCurrentTransport();
    750     method @Nullable @RequiresPermission(android.Manifest.permission.BACKUP) public android.content.ComponentName getCurrentTransportComponent();
    751     method @RequiresPermission(android.Manifest.permission.BACKUP) public android.content.Intent getDataManagementIntent(String);
    752     method @Nullable @RequiresPermission(android.Manifest.permission.BACKUP) public CharSequence getDataManagementIntentLabel(@NonNull String);
    753     method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.BACKUP) public String getDataManagementLabel(@NonNull String);
    754     method @RequiresPermission(android.Manifest.permission.BACKUP) public String getDestinationString(String);
    755     method @RequiresPermission(android.Manifest.permission.BACKUP) public boolean isAppEligibleForBackup(String);
    756     method @RequiresPermission(android.Manifest.permission.BACKUP) public boolean isBackupEnabled();
    757     method @RequiresPermission(android.Manifest.permission.BACKUP) public boolean isBackupServiceActive(android.os.UserHandle);
    758     method @RequiresPermission(android.Manifest.permission.BACKUP) public String[] listAllTransports();
    759     method @RequiresPermission(android.Manifest.permission.BACKUP) public int requestBackup(String[], android.app.backup.BackupObserver);
    760     method @RequiresPermission(android.Manifest.permission.BACKUP) public int requestBackup(String[], android.app.backup.BackupObserver, android.app.backup.BackupManagerMonitor, int);
    761     method @Deprecated public int requestRestore(android.app.backup.RestoreObserver, android.app.backup.BackupManagerMonitor);
    762     method @Deprecated @RequiresPermission(android.Manifest.permission.BACKUP) public String selectBackupTransport(String);
    763     method @RequiresPermission(android.Manifest.permission.BACKUP) public void selectBackupTransport(android.content.ComponentName, android.app.backup.SelectBackupTransportCallback);
    764     method @RequiresPermission(android.Manifest.permission.BACKUP) public void setAncestralSerialNumber(long);
    765     method @RequiresPermission(android.Manifest.permission.BACKUP) public void setAutoRestore(boolean);
    766     method @RequiresPermission(android.Manifest.permission.BACKUP) public void setBackupEnabled(boolean);
    767     method @Deprecated @RequiresPermission(android.Manifest.permission.BACKUP) public void updateTransportAttributes(@NonNull android.content.ComponentName, @NonNull String, @Nullable android.content.Intent, @NonNull String, @Nullable android.content.Intent, @Nullable String);
    768     method @RequiresPermission(android.Manifest.permission.BACKUP) public void updateTransportAttributes(@NonNull android.content.ComponentName, @NonNull String, @Nullable android.content.Intent, @NonNull String, @Nullable android.content.Intent, @Nullable CharSequence);
    769     field public static final int ERROR_AGENT_FAILURE = -1003; // 0xfffffc15
    770     field public static final int ERROR_BACKUP_CANCELLED = -2003; // 0xfffff82d
    771     field public static final int ERROR_BACKUP_NOT_ALLOWED = -2001; // 0xfffff82f
    772     field public static final int ERROR_PACKAGE_NOT_FOUND = -2002; // 0xfffff82e
    773     field public static final int ERROR_TRANSPORT_ABORTED = -1000; // 0xfffffc18
    774     field public static final int ERROR_TRANSPORT_INVALID = -2; // 0xfffffffe
    775     field public static final int ERROR_TRANSPORT_PACKAGE_REJECTED = -1002; // 0xfffffc16
    776     field public static final int ERROR_TRANSPORT_QUOTA_EXCEEDED = -1005; // 0xfffffc13
    777     field public static final int ERROR_TRANSPORT_UNAVAILABLE = -1; // 0xffffffff
    778     field public static final int FLAG_NON_INCREMENTAL_BACKUP = 1; // 0x1
    779     field public static final String PACKAGE_MANAGER_SENTINEL = "@pm@";
    780     field public static final int SUCCESS = 0; // 0x0
    781   }
    782 
    783   public class BackupManagerMonitor {
    784     ctor public BackupManagerMonitor();
    785     method public void onEvent(android.os.Bundle);
    786     field public static final String EXTRA_LOG_CANCEL_ALL = "android.app.backup.extra.LOG_CANCEL_ALL";
    787     field public static final String EXTRA_LOG_EVENT_CATEGORY = "android.app.backup.extra.LOG_EVENT_CATEGORY";
    788     field public static final String EXTRA_LOG_EVENT_ID = "android.app.backup.extra.LOG_EVENT_ID";
    789     field public static final String EXTRA_LOG_EVENT_PACKAGE_LONG_VERSION = "android.app.backup.extra.LOG_EVENT_PACKAGE_FULL_VERSION";
    790     field public static final String EXTRA_LOG_EVENT_PACKAGE_NAME = "android.app.backup.extra.LOG_EVENT_PACKAGE_NAME";
    791     field @Deprecated public static final String EXTRA_LOG_EVENT_PACKAGE_VERSION = "android.app.backup.extra.LOG_EVENT_PACKAGE_VERSION";
    792     field public static final String EXTRA_LOG_EXCEPTION_FULL_BACKUP = "android.app.backup.extra.LOG_EXCEPTION_FULL_BACKUP";
    793     field public static final String EXTRA_LOG_ILLEGAL_KEY = "android.app.backup.extra.LOG_ILLEGAL_KEY";
    794     field public static final String EXTRA_LOG_MANIFEST_PACKAGE_NAME = "android.app.backup.extra.LOG_MANIFEST_PACKAGE_NAME";
    795     field public static final String EXTRA_LOG_OLD_VERSION = "android.app.backup.extra.LOG_OLD_VERSION";
    796     field public static final String EXTRA_LOG_POLICY_ALLOW_APKS = "android.app.backup.extra.LOG_POLICY_ALLOW_APKS";
    797     field public static final String EXTRA_LOG_PREFLIGHT_ERROR = "android.app.backup.extra.LOG_PREFLIGHT_ERROR";
    798     field public static final String EXTRA_LOG_RESTORE_ANYWAY = "android.app.backup.extra.LOG_RESTORE_ANYWAY";
    799     field public static final String EXTRA_LOG_RESTORE_VERSION = "android.app.backup.extra.LOG_RESTORE_VERSION";
    800     field public static final String EXTRA_LOG_WIDGET_PACKAGE_NAME = "android.app.backup.extra.LOG_WIDGET_PACKAGE_NAME";
    801     field public static final int LOG_EVENT_CATEGORY_AGENT = 2; // 0x2
    802     field public static final int LOG_EVENT_CATEGORY_BACKUP_MANAGER_POLICY = 3; // 0x3
    803     field public static final int LOG_EVENT_CATEGORY_TRANSPORT = 1; // 0x1
    804     field public static final int LOG_EVENT_ID_APK_NOT_INSTALLED = 40; // 0x28
    805     field public static final int LOG_EVENT_ID_APP_HAS_NO_AGENT = 28; // 0x1c
    806     field public static final int LOG_EVENT_ID_BACKUP_DISABLED = 13; // 0xd
    807     field public static final int LOG_EVENT_ID_CANNOT_RESTORE_WITHOUT_APK = 41; // 0x29
    808     field public static final int LOG_EVENT_ID_CANT_FIND_AGENT = 30; // 0x1e
    809     field public static final int LOG_EVENT_ID_CORRUPT_MANIFEST = 46; // 0x2e
    810     field public static final int LOG_EVENT_ID_DEVICE_NOT_PROVISIONED = 14; // 0xe
    811     field public static final int LOG_EVENT_ID_ERROR_PREFLIGHT = 16; // 0x10
    812     field public static final int LOG_EVENT_ID_EXCEPTION_FULL_BACKUP = 19; // 0x13
    813     field public static final int LOG_EVENT_ID_EXPECTED_DIFFERENT_PACKAGE = 43; // 0x2b
    814     field public static final int LOG_EVENT_ID_FULL_BACKUP_CANCEL = 4; // 0x4
    815     field public static final int LOG_EVENT_ID_FULL_RESTORE_ALLOW_BACKUP_FALSE = 39; // 0x27
    816     field public static final int LOG_EVENT_ID_FULL_RESTORE_SIGNATURE_MISMATCH = 37; // 0x25
    817     field public static final int LOG_EVENT_ID_FULL_RESTORE_TIMEOUT = 45; // 0x2d
    818     field public static final int LOG_EVENT_ID_ILLEGAL_KEY = 5; // 0x5
    819     field public static final int LOG_EVENT_ID_KEY_VALUE_BACKUP_CANCEL = 21; // 0x15
    820     field public static final int LOG_EVENT_ID_KEY_VALUE_RESTORE_TIMEOUT = 31; // 0x1f
    821     field public static final int LOG_EVENT_ID_LOST_TRANSPORT = 25; // 0x19
    822     field public static final int LOG_EVENT_ID_MISSING_SIGNATURE = 42; // 0x2a
    823     field public static final int LOG_EVENT_ID_NO_DATA_TO_SEND = 7; // 0x7
    824     field public static final int LOG_EVENT_ID_NO_PACKAGES = 49; // 0x31
    825     field public static final int LOG_EVENT_ID_NO_PM_METADATA_RECEIVED = 23; // 0x17
    826     field public static final int LOG_EVENT_ID_NO_RESTORE_METADATA_AVAILABLE = 22; // 0x16
    827     field public static final int LOG_EVENT_ID_PACKAGE_INELIGIBLE = 9; // 0x9
    828     field public static final int LOG_EVENT_ID_PACKAGE_KEY_VALUE_PARTICIPANT = 10; // 0xa
    829     field public static final int LOG_EVENT_ID_PACKAGE_NOT_FOUND = 12; // 0xc
    830     field public static final int LOG_EVENT_ID_PACKAGE_NOT_PRESENT = 26; // 0x1a
    831     field public static final int LOG_EVENT_ID_PACKAGE_STOPPED = 11; // 0xb
    832     field public static final int LOG_EVENT_ID_PACKAGE_TRANSPORT_NOT_PRESENT = 15; // 0xf
    833     field public static final int LOG_EVENT_ID_PM_AGENT_HAS_NO_METADATA = 24; // 0x18
    834     field public static final int LOG_EVENT_ID_QUOTA_HIT_PREFLIGHT = 18; // 0x12
    835     field public static final int LOG_EVENT_ID_RESTORE_ANY_VERSION = 34; // 0x22
    836     field public static final int LOG_EVENT_ID_RESTORE_VERSION_HIGHER = 27; // 0x1b
    837     field public static final int LOG_EVENT_ID_SIGNATURE_MISMATCH = 29; // 0x1d
    838     field public static final int LOG_EVENT_ID_SYSTEM_APP_NO_AGENT = 38; // 0x26
    839     field public static final int LOG_EVENT_ID_TRANSPORT_IS_NULL = 50; // 0x32
    840     field public static final int LOG_EVENT_ID_TRANSPORT_NON_INCREMENTAL_BACKUP_REQUIRED = 51; // 0x33
    841     field public static final int LOG_EVENT_ID_UNKNOWN_VERSION = 44; // 0x2c
    842     field public static final int LOG_EVENT_ID_VERSIONS_MATCH = 35; // 0x23
    843     field public static final int LOG_EVENT_ID_VERSION_OF_BACKUP_OLDER = 36; // 0x24
    844     field public static final int LOG_EVENT_ID_WIDGET_METADATA_MISMATCH = 47; // 0x2f
    845     field public static final int LOG_EVENT_ID_WIDGET_UNKNOWN_VERSION = 48; // 0x30
    846   }
    847 
    848   public abstract class BackupObserver {
    849     ctor public BackupObserver();
    850     method public void backupFinished(int);
    851     method public void onResult(String, int);
    852     method public void onUpdate(String, android.app.backup.BackupProgress);
    853   }
    854 
    855   public class BackupProgress implements android.os.Parcelable {
    856     ctor public BackupProgress(long, long);
    857     method public int describeContents();
    858     method public void writeToParcel(android.os.Parcel, int);
    859     field @NonNull public static final android.os.Parcelable.Creator<android.app.backup.BackupProgress> CREATOR;
    860     field public final long bytesExpected;
    861     field public final long bytesTransferred;
    862   }
    863 
    864   public class BackupTransport {
    865     ctor public BackupTransport();
    866     method public int abortFullRestore();
    867     method public void cancelFullBackup();
    868     method public int checkFullBackupSize(long);
    869     method public int clearBackupData(android.content.pm.PackageInfo);
    870     method public android.content.Intent configurationIntent();
    871     method public String currentDestinationString();
    872     method public android.content.Intent dataManagementIntent();
    873     method @Nullable public CharSequence dataManagementIntentLabel();
    874     method @Deprecated @Nullable public String dataManagementLabel();
    875     method public int finishBackup();
    876     method public void finishRestore();
    877     method public android.app.backup.RestoreSet[] getAvailableRestoreSets();
    878     method public long getBackupQuota(String, boolean);
    879     method public android.os.IBinder getBinder();
    880     method public long getCurrentRestoreSet();
    881     method public int getNextFullRestoreDataChunk(android.os.ParcelFileDescriptor);
    882     method public int getRestoreData(android.os.ParcelFileDescriptor);
    883     method public int getTransportFlags();
    884     method public int initializeDevice();
    885     method public boolean isAppEligibleForBackup(android.content.pm.PackageInfo, boolean);
    886     method public String name();
    887     method public android.app.backup.RestoreDescription nextRestorePackage();
    888     method public int performBackup(android.content.pm.PackageInfo, android.os.ParcelFileDescriptor, int);
    889     method public int performBackup(android.content.pm.PackageInfo, android.os.ParcelFileDescriptor);
    890     method public int performFullBackup(android.content.pm.PackageInfo, android.os.ParcelFileDescriptor, int);
    891     method public int performFullBackup(android.content.pm.PackageInfo, android.os.ParcelFileDescriptor);
    892     method public long requestBackupTime();
    893     method public long requestFullBackupTime();
    894     method public int sendBackupData(int);
    895     method public int startRestore(long, android.content.pm.PackageInfo[]);
    896     method public String transportDirName();
    897     field public static final int AGENT_ERROR = -1003; // 0xfffffc15
    898     field public static final int AGENT_UNKNOWN = -1004; // 0xfffffc14
    899     field public static final String EXTRA_TRANSPORT_REGISTRATION = "android.app.backup.extra.TRANSPORT_REGISTRATION";
    900     field public static final int FLAG_INCREMENTAL = 2; // 0x2
    901     field public static final int FLAG_NON_INCREMENTAL = 4; // 0x4
    902     field public static final int FLAG_USER_INITIATED = 1; // 0x1
    903     field public static final int NO_MORE_DATA = -1; // 0xffffffff
    904     field public static final int TRANSPORT_ERROR = -1000; // 0xfffffc18
    905     field public static final int TRANSPORT_NON_INCREMENTAL_BACKUP_REQUIRED = -1006; // 0xfffffc12
    906     field public static final int TRANSPORT_NOT_INITIALIZED = -1001; // 0xfffffc17
    907     field public static final int TRANSPORT_OK = 0; // 0x0
    908     field public static final int TRANSPORT_PACKAGE_REJECTED = -1002; // 0xfffffc16
    909     field public static final int TRANSPORT_QUOTA_EXCEEDED = -1005; // 0xfffffc13
    910   }
    911 
    912   public class RestoreDescription implements android.os.Parcelable {
    913     ctor public RestoreDescription(String, int);
    914     method public int describeContents();
    915     method public int getDataType();
    916     method public String getPackageName();
    917     method public void writeToParcel(android.os.Parcel, int);
    918     field @NonNull public static final android.os.Parcelable.Creator<android.app.backup.RestoreDescription> CREATOR;
    919     field public static final android.app.backup.RestoreDescription NO_MORE_PACKAGES;
    920     field public static final int TYPE_FULL_STREAM = 2; // 0x2
    921     field public static final int TYPE_KEY_VALUE = 1; // 0x1
    922   }
    923 
    924   public abstract class RestoreObserver {
    925     method public void restoreSetsAvailable(android.app.backup.RestoreSet[]);
    926   }
    927 
    928   public class RestoreSession {
    929     method public void endRestoreSession();
    930     method public int getAvailableRestoreSets(android.app.backup.RestoreObserver, android.app.backup.BackupManagerMonitor);
    931     method public int getAvailableRestoreSets(android.app.backup.RestoreObserver);
    932     method public int restoreAll(long, android.app.backup.RestoreObserver, android.app.backup.BackupManagerMonitor);
    933     method public int restoreAll(long, android.app.backup.RestoreObserver);
    934     method public int restorePackage(String, android.app.backup.RestoreObserver, android.app.backup.BackupManagerMonitor);
    935     method public int restorePackage(String, android.app.backup.RestoreObserver);
    936     method public int restorePackages(long, @Nullable android.app.backup.RestoreObserver, @NonNull java.util.Set<java.lang.String>, @Nullable android.app.backup.BackupManagerMonitor);
    937     method public int restorePackages(long, @Nullable android.app.backup.RestoreObserver, @NonNull java.util.Set<java.lang.String>);
    938   }
    939 
    940   public class RestoreSet implements android.os.Parcelable {
    941     ctor public RestoreSet();
    942     ctor public RestoreSet(String, String, long);
    943     method public int describeContents();
    944     method public void writeToParcel(android.os.Parcel, int);
    945     field @NonNull public static final android.os.Parcelable.Creator<android.app.backup.RestoreSet> CREATOR;
    946     field public String device;
    947     field public String name;
    948     field public long token;
    949   }
    950 
    951   public abstract class SelectBackupTransportCallback {
    952     ctor public SelectBackupTransportCallback();
    953     method public void onFailure(int);
    954     method public void onSuccess(String);
    955   }
    956 
    957 }
    958 
    959 package android.app.contentsuggestions {
    960 
    961   public final class ClassificationsRequest implements android.os.Parcelable {
    962     method public int describeContents();
    963     method @NonNull public android.os.Bundle getExtras();
    964     method @NonNull public java.util.List<android.app.contentsuggestions.ContentSelection> getSelections();
    965     method public void writeToParcel(android.os.Parcel, int);
    966     field @NonNull public static final android.os.Parcelable.Creator<android.app.contentsuggestions.ClassificationsRequest> CREATOR;
    967   }
    968 
    969   public static final class ClassificationsRequest.Builder {
    970     ctor public ClassificationsRequest.Builder(@NonNull java.util.List<android.app.contentsuggestions.ContentSelection>);
    971     method @NonNull public android.app.contentsuggestions.ClassificationsRequest build();
    972     method @NonNull public android.app.contentsuggestions.ClassificationsRequest.Builder setExtras(@NonNull android.os.Bundle);
    973   }
    974 
    975   public final class ContentClassification implements android.os.Parcelable {
    976     ctor public ContentClassification(@NonNull String, @NonNull android.os.Bundle);
    977     method public int describeContents();
    978     method @NonNull public android.os.Bundle getExtras();
    979     method @NonNull public String getId();
    980     method public void writeToParcel(android.os.Parcel, int);
    981     field @NonNull public static final android.os.Parcelable.Creator<android.app.contentsuggestions.ContentClassification> CREATOR;
    982   }
    983 
    984   public final class ContentSelection implements android.os.Parcelable {
    985     ctor public ContentSelection(@NonNull String, @NonNull android.os.Bundle);
    986     method public int describeContents();
    987     method @NonNull public android.os.Bundle getExtras();
    988     method @NonNull public String getId();
    989     method public void writeToParcel(android.os.Parcel, int);
    990     field @NonNull public static final android.os.Parcelable.Creator<android.app.contentsuggestions.ContentSelection> CREATOR;
    991   }
    992 
    993   public final class ContentSuggestionsManager {
    994     method public void classifyContentSelections(@NonNull android.app.contentsuggestions.ClassificationsRequest, @NonNull java.util.concurrent.Executor, @NonNull android.app.contentsuggestions.ContentSuggestionsManager.ClassificationsCallback);
    995     method public boolean isEnabled();
    996     method public void notifyInteraction(@NonNull String, @NonNull android.os.Bundle);
    997     method public void provideContextImage(int, @NonNull android.os.Bundle);
    998     method public void suggestContentSelections(@NonNull android.app.contentsuggestions.SelectionsRequest, @NonNull java.util.concurrent.Executor, @NonNull android.app.contentsuggestions.ContentSuggestionsManager.SelectionsCallback);
    999   }
   1000 
   1001   public static interface ContentSuggestionsManager.ClassificationsCallback {
   1002     method public void onContentClassificationsAvailable(int, @NonNull java.util.List<android.app.contentsuggestions.ContentClassification>);
   1003   }
   1004 
   1005   public static interface ContentSuggestionsManager.SelectionsCallback {
   1006     method public void onContentSelectionsAvailable(int, @NonNull java.util.List<android.app.contentsuggestions.ContentSelection>);
   1007   }
   1008 
   1009   public final class SelectionsRequest implements android.os.Parcelable {
   1010     method public int describeContents();
   1011     method @NonNull public android.os.Bundle getExtras();
   1012     method @Nullable public android.graphics.Point getInterestPoint();
   1013     method public int getTaskId();
   1014     method public void writeToParcel(android.os.Parcel, int);
   1015     field @NonNull public static final android.os.Parcelable.Creator<android.app.contentsuggestions.SelectionsRequest> CREATOR;
   1016   }
   1017 
   1018   public static final class SelectionsRequest.Builder {
   1019     ctor public SelectionsRequest.Builder(int);
   1020     method @NonNull public android.app.contentsuggestions.SelectionsRequest build();
   1021     method @NonNull public android.app.contentsuggestions.SelectionsRequest.Builder setExtras(@NonNull android.os.Bundle);
   1022     method @NonNull public android.app.contentsuggestions.SelectionsRequest.Builder setInterestPoint(@NonNull android.graphics.Point);
   1023   }
   1024 
   1025 }
   1026 
   1027 package android.app.job {
   1028 
   1029   public abstract class JobScheduler {
   1030     method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public abstract int scheduleAsPackage(@NonNull android.app.job.JobInfo, @NonNull String, int, String);
   1031   }
   1032 
   1033 }
   1034 
   1035 package android.app.prediction {
   1036 
   1037   public final class AppPredictionContext implements android.os.Parcelable {
   1038     method public int describeContents();
   1039     method @Nullable public android.os.Bundle getExtras();
   1040     method @NonNull public String getPackageName();
   1041     method @IntRange(from=0) public int getPredictedTargetCount();
   1042     method @NonNull public String getUiSurface();
   1043     method public void writeToParcel(@NonNull android.os.Parcel, int);
   1044     field @NonNull public static final android.os.Parcelable.Creator<android.app.prediction.AppPredictionContext> CREATOR;
   1045   }
   1046 
   1047   public static final class AppPredictionContext.Builder {
   1048     ctor public AppPredictionContext.Builder(@NonNull android.content.Context);
   1049     method @NonNull public android.app.prediction.AppPredictionContext build();
   1050     method @NonNull public android.app.prediction.AppPredictionContext.Builder setExtras(@Nullable android.os.Bundle);
   1051     method @NonNull public android.app.prediction.AppPredictionContext.Builder setPredictedTargetCount(@IntRange(from=0) int);
   1052     method @NonNull public android.app.prediction.AppPredictionContext.Builder setUiSurface(@NonNull String);
   1053   }
   1054 
   1055   public final class AppPredictionManager {
   1056     method @NonNull public android.app.prediction.AppPredictor createAppPredictionSession(@NonNull android.app.prediction.AppPredictionContext);
   1057   }
   1058 
   1059   public final class AppPredictionSessionId implements android.os.Parcelable {
   1060     method public int describeContents();
   1061     method public void writeToParcel(android.os.Parcel, int);
   1062     field @NonNull public static final android.os.Parcelable.Creator<android.app.prediction.AppPredictionSessionId> CREATOR;
   1063   }
   1064 
   1065   public final class AppPredictor {
   1066     method public void destroy();
   1067     method public void notifyAppTargetEvent(@NonNull android.app.prediction.AppTargetEvent);
   1068     method public void notifyLaunchLocationShown(@NonNull String, @NonNull java.util.List<android.app.prediction.AppTargetId>);
   1069     method public void registerPredictionUpdates(@NonNull java.util.concurrent.Executor, @NonNull android.app.prediction.AppPredictor.Callback);
   1070     method public void requestPredictionUpdate();
   1071     method @Nullable public void sortTargets(@NonNull java.util.List<android.app.prediction.AppTarget>, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.util.List<android.app.prediction.AppTarget>>);
   1072     method public void unregisterPredictionUpdates(@NonNull android.app.prediction.AppPredictor.Callback);
   1073   }
   1074 
   1075   public static interface AppPredictor.Callback {
   1076     method public void onTargetsAvailable(@NonNull java.util.List<android.app.prediction.AppTarget>);
   1077   }
   1078 
   1079   public final class AppTarget implements android.os.Parcelable {
   1080     method public int describeContents();
   1081     method @Nullable public String getClassName();
   1082     method @NonNull public android.app.prediction.AppTargetId getId();
   1083     method @NonNull public String getPackageName();
   1084     method @IntRange(from=0) public int getRank();
   1085     method @Nullable public android.content.pm.ShortcutInfo getShortcutInfo();
   1086     method @NonNull public android.os.UserHandle getUser();
   1087     method public void writeToParcel(android.os.Parcel, int);
   1088     field @NonNull public static final android.os.Parcelable.Creator<android.app.prediction.AppTarget> CREATOR;
   1089   }
   1090 
   1091   public static final class AppTarget.Builder {
   1092     ctor public AppTarget.Builder(@NonNull android.app.prediction.AppTargetId, @NonNull String, @NonNull android.os.UserHandle);
   1093     ctor public AppTarget.Builder(@NonNull android.app.prediction.AppTargetId, @NonNull android.content.pm.ShortcutInfo);
   1094     method @NonNull public android.app.prediction.AppTarget build();
   1095     method @NonNull public android.app.prediction.AppTarget.Builder setClassName(@NonNull String);
   1096     method @NonNull public android.app.prediction.AppTarget.Builder setRank(@IntRange(from=0) int);
   1097   }
   1098 
   1099   public final class AppTargetEvent implements android.os.Parcelable {
   1100     method public int describeContents();
   1101     method public int getAction();
   1102     method @Nullable public String getLaunchLocation();
   1103     method @Nullable public android.app.prediction.AppTarget getTarget();
   1104     method public void writeToParcel(android.os.Parcel, int);
   1105     field public static final int ACTION_DISMISS = 2; // 0x2
   1106     field public static final int ACTION_LAUNCH = 1; // 0x1
   1107     field public static final int ACTION_PIN = 3; // 0x3
   1108     field @NonNull public static final android.os.Parcelable.Creator<android.app.prediction.AppTargetEvent> CREATOR;
   1109   }
   1110 
   1111   public static final class AppTargetEvent.Builder {
   1112     ctor public AppTargetEvent.Builder(@Nullable android.app.prediction.AppTarget, int);
   1113     method @NonNull public android.app.prediction.AppTargetEvent build();
   1114     method @NonNull public android.app.prediction.AppTargetEvent.Builder setLaunchLocation(@Nullable String);
   1115   }
   1116 
   1117   public final class AppTargetId implements android.os.Parcelable {
   1118     ctor public AppTargetId(@NonNull String);
   1119     method public int describeContents();
   1120     method public void writeToParcel(android.os.Parcel, int);
   1121     field @NonNull public static final android.os.Parcelable.Creator<android.app.prediction.AppTargetId> CREATOR;
   1122   }
   1123 
   1124 }
   1125 
   1126 package android.app.role {
   1127 
   1128   public interface OnRoleHoldersChangedListener {
   1129     method public void onRoleHoldersChanged(@NonNull String, @NonNull android.os.UserHandle);
   1130   }
   1131 
   1132   public abstract class RoleControllerService extends android.app.Service {
   1133     ctor public RoleControllerService();
   1134     method @WorkerThread public abstract boolean onAddRoleHolder(@NonNull String, @NonNull String, int);
   1135     method @Nullable public final android.os.IBinder onBind(@Nullable android.content.Intent);
   1136     method @WorkerThread public abstract boolean onClearRoleHolders(@NonNull String, int);
   1137     method @WorkerThread public abstract boolean onGrantDefaultRoles();
   1138     method public abstract boolean onIsApplicationQualifiedForRole(@NonNull String, @NonNull String);
   1139     method public abstract boolean onIsRoleVisible(@NonNull String);
   1140     method @WorkerThread public abstract boolean onRemoveRoleHolder(@NonNull String, @NonNull String, int);
   1141     field public static final String SERVICE_INTERFACE = "android.app.role.RoleControllerService";
   1142   }
   1143 
   1144   public final class RoleManager {
   1145     method @RequiresPermission(android.Manifest.permission.OBSERVE_ROLE_HOLDERS) public void addOnRoleHoldersChangedListenerAsUser(@NonNull java.util.concurrent.Executor, @NonNull android.app.role.OnRoleHoldersChangedListener, @NonNull android.os.UserHandle);
   1146     method @RequiresPermission(android.Manifest.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>);
   1147     method @RequiresPermission("com.android.permissioncontroller.permission.MANAGE_ROLES_FROM_CONTROLLER") public boolean addRoleHolderFromController(@NonNull String, @NonNull String);
   1148     method @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public void clearRoleHoldersAsUser(@NonNull String, int, @NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>);
   1149     method @NonNull @RequiresPermission("com.android.permissioncontroller.permission.MANAGE_ROLES_FROM_CONTROLLER") public java.util.List<java.lang.String> getHeldRolesFromController(@NonNull String);
   1150     method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public java.util.List<java.lang.String> getRoleHolders(@NonNull String);
   1151     method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public java.util.List<java.lang.String> getRoleHoldersAsUser(@NonNull String, @NonNull android.os.UserHandle);
   1152     method @RequiresPermission(android.Manifest.permission.OBSERVE_ROLE_HOLDERS) public void removeOnRoleHoldersChangedListenerAsUser(@NonNull android.app.role.OnRoleHoldersChangedListener, @NonNull android.os.UserHandle);
   1153     method @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public void removeRoleHolderAsUser(@NonNull String, @NonNull String, int, @NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>);
   1154     method @RequiresPermission("com.android.permissioncontroller.permission.MANAGE_ROLES_FROM_CONTROLLER") public boolean removeRoleHolderFromController(@NonNull String, @NonNull String);
   1155     method @RequiresPermission("com.android.permissioncontroller.permission.MANAGE_ROLES_FROM_CONTROLLER") public void setRoleNamesFromController(@NonNull java.util.List<java.lang.String>);
   1156     field public static final int MANAGE_HOLDERS_FLAG_DONT_KILL_APP = 1; // 0x1
   1157   }
   1158 
   1159 }
   1160 
   1161 package android.app.usage {
   1162 
   1163   public final class CacheQuotaHint implements android.os.Parcelable {
   1164     ctor public CacheQuotaHint(android.app.usage.CacheQuotaHint.Builder);
   1165     method public int describeContents();
   1166     method public long getQuota();
   1167     method public int getUid();
   1168     method public android.app.usage.UsageStats getUsageStats();
   1169     method public String getVolumeUuid();
   1170     method public void writeToParcel(android.os.Parcel, int);
   1171     field @NonNull public static final android.os.Parcelable.Creator<android.app.usage.CacheQuotaHint> CREATOR;
   1172     field public static final long QUOTA_NOT_SET = -1L; // 0xffffffffffffffffL
   1173   }
   1174 
   1175   public static final class CacheQuotaHint.Builder {
   1176     ctor public CacheQuotaHint.Builder();
   1177     ctor public CacheQuotaHint.Builder(android.app.usage.CacheQuotaHint);
   1178     method @NonNull public android.app.usage.CacheQuotaHint build();
   1179     method @NonNull public android.app.usage.CacheQuotaHint.Builder setQuota(long);
   1180     method @NonNull public android.app.usage.CacheQuotaHint.Builder setUid(int);
   1181     method @NonNull public android.app.usage.CacheQuotaHint.Builder setUsageStats(@Nullable android.app.usage.UsageStats);
   1182     method @NonNull public android.app.usage.CacheQuotaHint.Builder setVolumeUuid(@Nullable String);
   1183   }
   1184 
   1185   public abstract class CacheQuotaService extends android.app.Service {
   1186     ctor public CacheQuotaService();
   1187     method public android.os.IBinder onBind(android.content.Intent);
   1188     method public abstract java.util.List<android.app.usage.CacheQuotaHint> onComputeCacheQuotaHints(java.util.List<android.app.usage.CacheQuotaHint>);
   1189     field public static final String SERVICE_INTERFACE = "android.app.usage.CacheQuotaService";
   1190   }
   1191 
   1192   public static final class UsageEvents.Event {
   1193     method public int getInstanceId();
   1194     method public String getNotificationChannelId();
   1195     method @Nullable public String getTaskRootClassName();
   1196     method @Nullable public String getTaskRootPackageName();
   1197     method public boolean isInstantApp();
   1198     field public static final int NOTIFICATION_INTERRUPTION = 12; // 0xc
   1199     field public static final int NOTIFICATION_SEEN = 10; // 0xa
   1200     field public static final int SLICE_PINNED = 14; // 0xe
   1201     field public static final int SLICE_PINNED_PRIV = 13; // 0xd
   1202     field public static final int SYSTEM_INTERACTION = 6; // 0x6
   1203   }
   1204 
   1205   public final class UsageStats implements android.os.Parcelable {
   1206     method public int getAppLaunchCount();
   1207   }
   1208 
   1209   public final class UsageStatsManager {
   1210     method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public int getAppStandbyBucket(String);
   1211     method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public java.util.Map<java.lang.String,java.lang.Integer> getAppStandbyBuckets();
   1212     method public int getUsageSource();
   1213     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);
   1214     method @RequiresPermission(android.Manifest.permission.OBSERVE_APP_USAGE) public void registerAppUsageObserver(int, @NonNull String[], long, @NonNull java.util.concurrent.TimeUnit, @NonNull android.app.PendingIntent);
   1215     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);
   1216     method public void reportUsageStart(@NonNull android.app.Activity, @NonNull String);
   1217     method public void reportUsageStart(@NonNull android.app.Activity, @NonNull String, long);
   1218     method public void reportUsageStop(@NonNull android.app.Activity, @NonNull String);
   1219     method @RequiresPermission(android.Manifest.permission.CHANGE_APP_IDLE_STATE) public void setAppStandbyBucket(String, int);
   1220     method @RequiresPermission(android.Manifest.permission.CHANGE_APP_IDLE_STATE) public void setAppStandbyBuckets(java.util.Map<java.lang.String,java.lang.Integer>);
   1221     method @RequiresPermission(allOf={android.Manifest.permission.SUSPEND_APPS, android.Manifest.permission.OBSERVE_APP_USAGE}) public void unregisterAppUsageLimitObserver(int);
   1222     method @RequiresPermission(android.Manifest.permission.OBSERVE_APP_USAGE) public void unregisterAppUsageObserver(int);
   1223     method @RequiresPermission(android.Manifest.permission.OBSERVE_APP_USAGE) public void unregisterUsageSessionObserver(int);
   1224     method @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public void whitelistAppTemporarily(String, long, android.os.UserHandle);
   1225     field public static final String EXTRA_OBSERVER_ID = "android.app.usage.extra.OBSERVER_ID";
   1226     field public static final String EXTRA_TIME_LIMIT = "android.app.usage.extra.TIME_LIMIT";
   1227     field public static final String EXTRA_TIME_USED = "android.app.usage.extra.TIME_USED";
   1228     field public static final int STANDBY_BUCKET_EXEMPTED = 5; // 0x5
   1229     field public static final int STANDBY_BUCKET_NEVER = 50; // 0x32
   1230     field public static final int USAGE_SOURCE_CURRENT_ACTIVITY = 2; // 0x2
   1231     field public static final int USAGE_SOURCE_TASK_ROOT_ACTIVITY = 1; // 0x1
   1232   }
   1233 
   1234 }
   1235 
   1236 package android.bluetooth {
   1237 
   1238   public final class BluetoothAdapter {
   1239     method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean addOnMetadataChangedListener(@NonNull android.bluetooth.BluetoothDevice, @NonNull java.util.concurrent.Executor, @NonNull android.bluetooth.BluetoothAdapter.OnMetadataChangedListener);
   1240     method public boolean disableBLE();
   1241     method public boolean enableBLE();
   1242     method @RequiresPermission(android.Manifest.permission.BLUETOOTH_ADMIN) public boolean enableNoAutoConnect();
   1243     method public boolean isBleScanAlwaysAvailable();
   1244     method public boolean isLeEnabled();
   1245     method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean removeOnMetadataChangedListener(@NonNull android.bluetooth.BluetoothDevice, @NonNull android.bluetooth.BluetoothAdapter.OnMetadataChangedListener);
   1246     field public static final String ACTION_BLE_STATE_CHANGED = "android.bluetooth.adapter.action.BLE_STATE_CHANGED";
   1247     field public static final String ACTION_REQUEST_BLE_SCAN_ALWAYS_AVAILABLE = "android.bluetooth.adapter.action.REQUEST_BLE_SCAN_ALWAYS_AVAILABLE";
   1248   }
   1249 
   1250   public static interface BluetoothAdapter.OnMetadataChangedListener {
   1251     method public void onMetadataChanged(@NonNull android.bluetooth.BluetoothDevice, int, @Nullable byte[]);
   1252   }
   1253 
   1254   public final class BluetoothDevice implements android.os.Parcelable {
   1255     method @RequiresPermission(android.Manifest.permission.BLUETOOTH_ADMIN) public boolean cancelBondProcess();
   1256     method @Nullable @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public byte[] getMetadata(int);
   1257     method @RequiresPermission(android.Manifest.permission.BLUETOOTH) public boolean isConnected();
   1258     method @RequiresPermission(android.Manifest.permission.BLUETOOTH) public boolean isEncrypted();
   1259     method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean isInSilenceMode();
   1260     method @RequiresPermission(android.Manifest.permission.BLUETOOTH_ADMIN) public boolean removeBond();
   1261     method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean setMetadata(int, @NonNull byte[]);
   1262     method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean setPhonebookAccessPermission(int);
   1263     method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean setSilenceMode(boolean);
   1264     field public static final int ACCESS_ALLOWED = 1; // 0x1
   1265     field public static final int ACCESS_REJECTED = 2; // 0x2
   1266     field public static final int ACCESS_UNKNOWN = 0; // 0x0
   1267     field public static final String ACTION_SILENCE_MODE_CHANGED = "android.bluetooth.device.action.SILENCE_MODE_CHANGED";
   1268     field public static final int METADATA_COMPANION_APP = 4; // 0x4
   1269     field public static final int METADATA_ENHANCED_SETTINGS_UI_URI = 16; // 0x10
   1270     field public static final int METADATA_HARDWARE_VERSION = 3; // 0x3
   1271     field public static final int METADATA_IS_UNTETHERED_HEADSET = 6; // 0x6
   1272     field public static final int METADATA_MAIN_ICON = 5; // 0x5
   1273     field public static final int METADATA_MANUFACTURER_NAME = 0; // 0x0
   1274     field public static final int METADATA_MAX_LENGTH = 2048; // 0x800
   1275     field public static final int METADATA_MODEL_NAME = 1; // 0x1
   1276     field public static final int METADATA_SOFTWARE_VERSION = 2; // 0x2
   1277     field public static final int METADATA_UNTETHERED_CASE_BATTERY = 12; // 0xc
   1278     field public static final int METADATA_UNTETHERED_CASE_CHARGING = 15; // 0xf
   1279     field public static final int METADATA_UNTETHERED_CASE_ICON = 9; // 0x9
   1280     field public static final int METADATA_UNTETHERED_LEFT_BATTERY = 10; // 0xa
   1281     field public static final int METADATA_UNTETHERED_LEFT_CHARGING = 13; // 0xd
   1282     field public static final int METADATA_UNTETHERED_LEFT_ICON = 7; // 0x7
   1283     field public static final int METADATA_UNTETHERED_RIGHT_BATTERY = 11; // 0xb
   1284     field public static final int METADATA_UNTETHERED_RIGHT_CHARGING = 14; // 0xe
   1285     field public static final int METADATA_UNTETHERED_RIGHT_ICON = 8; // 0x8
   1286   }
   1287 
   1288   public final class BluetoothHeadset implements android.bluetooth.BluetoothProfile {
   1289     method @RequiresPermission(android.Manifest.permission.BLUETOOTH_ADMIN) public boolean connect(android.bluetooth.BluetoothDevice);
   1290     method @RequiresPermission(android.Manifest.permission.BLUETOOTH_ADMIN) public boolean disconnect(android.bluetooth.BluetoothDevice);
   1291     method @RequiresPermission(android.Manifest.permission.BLUETOOTH_ADMIN) public boolean setPriority(android.bluetooth.BluetoothDevice, int);
   1292   }
   1293 
   1294   public interface BluetoothProfile {
   1295     field public static final int PRIORITY_OFF = 0; // 0x0
   1296     field public static final int PRIORITY_ON = 100; // 0x64
   1297   }
   1298 
   1299 }
   1300 
   1301 package android.bluetooth.le {
   1302 
   1303   public final class BluetoothLeScanner {
   1304     method @RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_ADMIN, android.Manifest.permission.UPDATE_DEVICE_STATS}) public void startScanFromSource(android.os.WorkSource, android.bluetooth.le.ScanCallback);
   1305     method @RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_ADMIN, android.Manifest.permission.UPDATE_DEVICE_STATS}) public void startScanFromSource(java.util.List<android.bluetooth.le.ScanFilter>, android.bluetooth.le.ScanSettings, android.os.WorkSource, android.bluetooth.le.ScanCallback);
   1306     method public void startTruncatedScan(java.util.List<android.bluetooth.le.TruncatedFilter>, android.bluetooth.le.ScanSettings, android.bluetooth.le.ScanCallback);
   1307   }
   1308 
   1309   public final class ResultStorageDescriptor implements android.os.Parcelable {
   1310     ctor public ResultStorageDescriptor(int, int, int);
   1311     method public int describeContents();
   1312     method public int getLength();
   1313     method public int getOffset();
   1314     method public int getType();
   1315     method public void writeToParcel(android.os.Parcel, int);
   1316     field @NonNull public static final android.os.Parcelable.Creator<android.bluetooth.le.ResultStorageDescriptor> CREATOR;
   1317   }
   1318 
   1319   public final class ScanSettings implements android.os.Parcelable {
   1320     field public static final int SCAN_RESULT_TYPE_ABBREVIATED = 1; // 0x1
   1321     field public static final int SCAN_RESULT_TYPE_FULL = 0; // 0x0
   1322   }
   1323 
   1324   public static final class ScanSettings.Builder {
   1325     method public android.bluetooth.le.ScanSettings.Builder setScanResultType(int);
   1326   }
   1327 
   1328   public final class TruncatedFilter {
   1329     ctor public TruncatedFilter(android.bluetooth.le.ScanFilter, java.util.List<android.bluetooth.le.ResultStorageDescriptor>);
   1330     method public android.bluetooth.le.ScanFilter getFilter();
   1331     method public java.util.List<android.bluetooth.le.ResultStorageDescriptor> getStorageDescriptors();
   1332   }
   1333 
   1334 }
   1335 
   1336 package android.content {
   1337 
   1338   public class ContentProviderClient implements java.lang.AutoCloseable {
   1339     method @RequiresPermission(android.Manifest.permission.REMOVE_TASKS) public void setDetectNotResponding(long);
   1340   }
   1341 
   1342   public abstract class ContentResolver {
   1343     method @Nullable @RequiresPermission("android.permission.CACHE_CONTENT") public android.os.Bundle getCache(@NonNull android.net.Uri);
   1344     method @RequiresPermission("android.permission.CACHE_CONTENT") public void putCache(@NonNull android.net.Uri, @Nullable android.os.Bundle);
   1345   }
   1346 
   1347   public abstract class Context {
   1348     method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public boolean bindServiceAsUser(@RequiresPermission android.content.Intent, android.content.ServiceConnection, int, android.os.UserHandle);
   1349     method public abstract android.content.Context createCredentialProtectedStorageContext();
   1350     method public android.content.Context createPackageContextAsUser(String, int, android.os.UserHandle) throws android.content.pm.PackageManager.NameNotFoundException;
   1351     method @Nullable public abstract java.io.File getPreloadsFileCache();
   1352     method public abstract boolean isCredentialProtectedStorage();
   1353     method public abstract void sendBroadcast(android.content.Intent, @Nullable String, @Nullable android.os.Bundle);
   1354     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);
   1355     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);
   1356     method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public void startActivityAsUser(@RequiresPermission @NonNull android.content.Intent, @NonNull android.os.UserHandle);
   1357     field public static final String APP_PREDICTION_SERVICE = "app_prediction";
   1358     field public static final String BACKUP_SERVICE = "backup";
   1359     field public static final String BUGREPORT_SERVICE = "bugreport";
   1360     field public static final String CONTENT_SUGGESTIONS_SERVICE = "content_suggestions";
   1361     field public static final String CONTEXTHUB_SERVICE = "contexthub";
   1362     field public static final String EUICC_CARD_SERVICE = "euicc_card";
   1363     field public static final String HDMI_CONTROL_SERVICE = "hdmi_control";
   1364     field public static final String NETD_SERVICE = "netd";
   1365     field public static final String NETWORK_SCORE_SERVICE = "network_score";
   1366     field public static final String OEM_LOCK_SERVICE = "oem_lock";
   1367     field public static final String PERMISSION_SERVICE = "permission";
   1368     field public static final String PERSISTENT_DATA_BLOCK_SERVICE = "persistent_data_block";
   1369     field public static final String ROLLBACK_SERVICE = "rollback";
   1370     field public static final String SECURE_ELEMENT_SERVICE = "secure_element";
   1371     field public static final String STATS_MANAGER = "stats";
   1372     field public static final String STATUS_BAR_SERVICE = "statusbar";
   1373     field public static final String SYSTEM_UPDATE_SERVICE = "system_update";
   1374     field public static final String VR_SERVICE = "vrmanager";
   1375     field @Deprecated public static final String WIFI_RTT_SERVICE = "rttmanager";
   1376     field public static final String WIFI_SCANNING_SERVICE = "wifiscanner";
   1377   }
   1378 
   1379   public class ContextWrapper extends android.content.Context {
   1380     method public android.content.Context createCredentialProtectedStorageContext();
   1381     method public java.io.File getPreloadsFileCache();
   1382     method public boolean isCredentialProtectedStorage();
   1383     method public void sendBroadcast(android.content.Intent, String, android.os.Bundle);
   1384     method public void sendBroadcastAsUser(android.content.Intent, android.os.UserHandle, String, android.os.Bundle);
   1385     method public void sendOrderedBroadcast(android.content.Intent, String, android.os.Bundle, android.content.BroadcastReceiver, android.os.Handler, int, String, android.os.Bundle);
   1386   }
   1387 
   1388   public class Intent implements java.lang.Cloneable android.os.Parcelable {
   1389     field public static final String ACTION_BATTERY_LEVEL_CHANGED = "android.intent.action.BATTERY_LEVEL_CHANGED";
   1390     field public static final String ACTION_CALL_EMERGENCY = "android.intent.action.CALL_EMERGENCY";
   1391     field public static final String ACTION_CALL_PRIVILEGED = "android.intent.action.CALL_PRIVILEGED";
   1392     field public static final String ACTION_DEVICE_CUSTOMIZATION_READY = "android.intent.action.DEVICE_CUSTOMIZATION_READY";
   1393     field public static final String ACTION_FACTORY_RESET = "android.intent.action.FACTORY_RESET";
   1394     field public static final String ACTION_GLOBAL_BUTTON = "android.intent.action.GLOBAL_BUTTON";
   1395     field public static final String ACTION_INCIDENT_REPORT_READY = "android.intent.action.INCIDENT_REPORT_READY";
   1396     field public static final String ACTION_INSTALL_INSTANT_APP_PACKAGE = "android.intent.action.INSTALL_INSTANT_APP_PACKAGE";
   1397     field public static final String ACTION_INSTANT_APP_RESOLVER_SETTINGS = "android.intent.action.INSTANT_APP_RESOLVER_SETTINGS";
   1398     field public static final String ACTION_INTENT_FILTER_NEEDS_VERIFICATION = "android.intent.action.INTENT_FILTER_NEEDS_VERIFICATION";
   1399     field @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) public static final String ACTION_MANAGE_APP_PERMISSION = "android.intent.action.MANAGE_APP_PERMISSION";
   1400     field public static final String ACTION_MANAGE_APP_PERMISSIONS = "android.intent.action.MANAGE_APP_PERMISSIONS";
   1401     field @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public static final String ACTION_MANAGE_DEFAULT_APP = "android.intent.action.MANAGE_DEFAULT_APP";
   1402     field public static final String ACTION_MANAGE_PERMISSIONS = "android.intent.action.MANAGE_PERMISSIONS";
   1403     field public static final String ACTION_MANAGE_PERMISSION_APPS = "android.intent.action.MANAGE_PERMISSION_APPS";
   1404     field @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public static final String ACTION_MANAGE_SPECIAL_APP_ACCESSES = "android.intent.action.MANAGE_SPECIAL_APP_ACCESSES";
   1405     field public static final String ACTION_MASTER_CLEAR_NOTIFICATION = "android.intent.action.MASTER_CLEAR_NOTIFICATION";
   1406     field public static final String ACTION_PENDING_INCIDENT_REPORTS_CHANGED = "android.intent.action.PENDING_INCIDENT_REPORTS_CHANGED";
   1407     field public static final String ACTION_PRE_BOOT_COMPLETED = "android.intent.action.PRE_BOOT_COMPLETED";
   1408     field public static final String ACTION_QUERY_PACKAGE_RESTART = "android.intent.action.QUERY_PACKAGE_RESTART";
   1409     field public static final String ACTION_RESOLVE_INSTANT_APP_PACKAGE = "android.intent.action.RESOLVE_INSTANT_APP_PACKAGE";
   1410     field @RequiresPermission(android.Manifest.permission.REVIEW_ACCESSIBILITY_SERVICES) public static final String ACTION_REVIEW_ACCESSIBILITY_SERVICES = "android.intent.action.REVIEW_ACCESSIBILITY_SERVICES";
   1411     field @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) public static final String ACTION_REVIEW_ONGOING_PERMISSION_USAGE = "android.intent.action.REVIEW_ONGOING_PERMISSION_USAGE";
   1412     field public static final String ACTION_REVIEW_PERMISSIONS = "android.intent.action.REVIEW_PERMISSIONS";
   1413     field @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) public static final String ACTION_REVIEW_PERMISSION_USAGE = "android.intent.action.REVIEW_PERMISSION_USAGE";
   1414     field public static final String ACTION_ROLLBACK_COMMITTED = "android.intent.action.ROLLBACK_COMMITTED";
   1415     field public static final String ACTION_SHOW_SUSPENDED_APP_DETAILS = "android.intent.action.SHOW_SUSPENDED_APP_DETAILS";
   1416     field @Deprecated public static final String ACTION_SIM_STATE_CHANGED = "android.intent.action.SIM_STATE_CHANGED";
   1417     field public static final String ACTION_SPLIT_CONFIGURATION_CHANGED = "android.intent.action.SPLIT_CONFIGURATION_CHANGED";
   1418     field public static final String ACTION_UPGRADE_SETUP = "android.intent.action.UPGRADE_SETUP";
   1419     field public static final String ACTION_USER_ADDED = "android.intent.action.USER_ADDED";
   1420     field public static final String ACTION_USER_REMOVED = "android.intent.action.USER_REMOVED";
   1421     field public static final String ACTION_VOICE_ASSIST = "android.intent.action.VOICE_ASSIST";
   1422     field public static final String CATEGORY_LEANBACK_SETTINGS = "android.intent.category.LEANBACK_SETTINGS";
   1423     field public static final String EXTRA_CALLING_PACKAGE = "android.intent.extra.CALLING_PACKAGE";
   1424     field public static final String EXTRA_FORCE_FACTORY_RESET = "android.intent.extra.FORCE_FACTORY_RESET";
   1425     field public static final String EXTRA_INSTANT_APP_ACTION = "android.intent.extra.INSTANT_APP_ACTION";
   1426     field public static final String EXTRA_INSTANT_APP_BUNDLES = "android.intent.extra.INSTANT_APP_BUNDLES";
   1427     field public static final String EXTRA_INSTANT_APP_EXTRAS = "android.intent.extra.INSTANT_APP_EXTRAS";
   1428     field public static final String EXTRA_INSTANT_APP_FAILURE = "android.intent.extra.INSTANT_APP_FAILURE";
   1429     field public static final String EXTRA_INSTANT_APP_HOSTNAME = "android.intent.extra.INSTANT_APP_HOSTNAME";
   1430     field public static final String EXTRA_INSTANT_APP_SUCCESS = "android.intent.extra.INSTANT_APP_SUCCESS";
   1431     field public static final String EXTRA_INSTANT_APP_TOKEN = "android.intent.extra.INSTANT_APP_TOKEN";
   1432     field public static final String EXTRA_LONG_VERSION_CODE = "android.intent.extra.LONG_VERSION_CODE";
   1433     field public static final String EXTRA_ORIGINATING_UID = "android.intent.extra.ORIGINATING_UID";
   1434     field public static final String EXTRA_PACKAGES = "android.intent.extra.PACKAGES";
   1435     field public static final String EXTRA_PERMISSION_GROUP_NAME = "android.intent.extra.PERMISSION_GROUP_NAME";
   1436     field public static final String EXTRA_PERMISSION_NAME = "android.intent.extra.PERMISSION_NAME";
   1437     field public static final String EXTRA_REASON = "android.intent.extra.REASON";
   1438     field public static final String EXTRA_REMOTE_CALLBACK = "android.intent.extra.REMOTE_CALLBACK";
   1439     field public static final String EXTRA_RESULT_NEEDED = "android.intent.extra.RESULT_NEEDED";
   1440     field public static final String EXTRA_ROLE_NAME = "android.intent.extra.ROLE_NAME";
   1441     field public static final String EXTRA_UNKNOWN_INSTANT_APP = "android.intent.extra.UNKNOWN_INSTANT_APP";
   1442     field public static final String EXTRA_VERIFICATION_BUNDLE = "android.intent.extra.VERIFICATION_BUNDLE";
   1443     field public static final String METADATA_SETUP_VERSION = "android.SETUP_VERSION";
   1444   }
   1445 
   1446   public class IntentFilter implements android.os.Parcelable {
   1447     method public final int getOrder();
   1448     method public final void setOrder(int);
   1449   }
   1450 
   1451 }
   1452 
   1453 package android.content.om {
   1454 
   1455   public final class OverlayInfo implements android.os.Parcelable {
   1456     method public int describeContents();
   1457     method @Nullable public String getCategory();
   1458     method @NonNull public String getPackageName();
   1459     method @Nullable public String getTargetOverlayableName();
   1460     method @NonNull public String getTargetPackageName();
   1461     method public int getUserId();
   1462     method public boolean isEnabled();
   1463     method public void writeToParcel(android.os.Parcel, int);
   1464     field @NonNull public static final android.os.Parcelable.Creator<android.content.om.OverlayInfo> CREATOR;
   1465   }
   1466 
   1467   public class OverlayManager {
   1468     method @Nullable public android.content.om.OverlayInfo getOverlayInfo(@NonNull String, @NonNull android.os.UserHandle);
   1469     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);
   1470     method @RequiresPermission(anyOf={"android.permission.INTERACT_ACROSS_USERS", "android.permission.INTERACT_ACROSS_USERS_FULL"}) public void setEnabled(@NonNull String, boolean, @NonNull android.os.UserHandle);
   1471     method @RequiresPermission(anyOf={"android.permission.INTERACT_ACROSS_USERS", "android.permission.INTERACT_ACROSS_USERS_FULL"}) public void setEnabledExclusiveInCategory(@NonNull String, @NonNull android.os.UserHandle);
   1472   }
   1473 
   1474 }
   1475 
   1476 package android.content.pm {
   1477 
   1478   public class ApplicationInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable {
   1479     method public boolean isEncryptionAware();
   1480     method public boolean isInstantApp();
   1481     field public String credentialProtectedDataDir;
   1482     field public int targetSandboxVersion;
   1483   }
   1484 
   1485   public class CrossProfileApps {
   1486     method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_PROFILES) public void startActivity(@NonNull android.content.ComponentName, @NonNull android.os.UserHandle);
   1487   }
   1488 
   1489   public final class InstantAppInfo implements android.os.Parcelable {
   1490     ctor public InstantAppInfo(android.content.pm.ApplicationInfo, String[], String[]);
   1491     ctor public InstantAppInfo(String, CharSequence, String[], String[]);
   1492     method public int describeContents();
   1493     method @Nullable public android.content.pm.ApplicationInfo getApplicationInfo();
   1494     method @Nullable public String[] getGrantedPermissions();
   1495     method @NonNull public String getPackageName();
   1496     method @Nullable public String[] getRequestedPermissions();
   1497     method @NonNull public android.graphics.drawable.Drawable loadIcon(@NonNull android.content.pm.PackageManager);
   1498     method @NonNull public CharSequence loadLabel(@NonNull android.content.pm.PackageManager);
   1499     method public void writeToParcel(android.os.Parcel, int);
   1500     field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.InstantAppInfo> CREATOR;
   1501   }
   1502 
   1503   public final class InstantAppIntentFilter implements android.os.Parcelable {
   1504     ctor public InstantAppIntentFilter(@Nullable String, @NonNull java.util.List<android.content.IntentFilter>);
   1505     method public int describeContents();
   1506     method public java.util.List<android.content.IntentFilter> getFilters();
   1507     method public String getSplitName();
   1508     method public void writeToParcel(android.os.Parcel, int);
   1509     field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.InstantAppIntentFilter> CREATOR;
   1510   }
   1511 
   1512   public final class InstantAppResolveInfo implements android.os.Parcelable {
   1513     ctor public InstantAppResolveInfo(@NonNull android.content.pm.InstantAppResolveInfo.InstantAppDigest, @Nullable String, @Nullable java.util.List<android.content.pm.InstantAppIntentFilter>, int);
   1514     ctor public InstantAppResolveInfo(@NonNull android.content.pm.InstantAppResolveInfo.InstantAppDigest, @Nullable String, @Nullable java.util.List<android.content.pm.InstantAppIntentFilter>, long, @Nullable android.os.Bundle);
   1515     ctor public InstantAppResolveInfo(@NonNull String, @Nullable String, @Nullable java.util.List<android.content.pm.InstantAppIntentFilter>);
   1516     ctor public InstantAppResolveInfo(@Nullable android.os.Bundle);
   1517     method public int describeContents();
   1518     method public byte[] getDigestBytes();
   1519     method public int getDigestPrefix();
   1520     method @Nullable public android.os.Bundle getExtras();
   1521     method public java.util.List<android.content.pm.InstantAppIntentFilter> getIntentFilters();
   1522     method public long getLongVersionCode();
   1523     method public String getPackageName();
   1524     method @Deprecated public int getVersionCode();
   1525     method public boolean shouldLetInstallerDecide();
   1526     method public void writeToParcel(android.os.Parcel, int);
   1527     field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.InstantAppResolveInfo> CREATOR;
   1528   }
   1529 
   1530   public static final class InstantAppResolveInfo.InstantAppDigest implements android.os.Parcelable {
   1531     ctor public InstantAppResolveInfo.InstantAppDigest(@NonNull String);
   1532     method public int describeContents();
   1533     method public byte[][] getDigestBytes();
   1534     method public int[] getDigestPrefix();
   1535     method public void writeToParcel(android.os.Parcel, int);
   1536     field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.InstantAppResolveInfo.InstantAppDigest> CREATOR;
   1537     field public static final android.content.pm.InstantAppResolveInfo.InstantAppDigest UNDEFINED;
   1538   }
   1539 
   1540   public final class IntentFilterVerificationInfo implements android.os.Parcelable {
   1541     method public int describeContents();
   1542     method public java.util.Set<java.lang.String> getDomains();
   1543     method public String getPackageName();
   1544     method public int getStatus();
   1545     method public void writeToParcel(android.os.Parcel, int);
   1546     field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.IntentFilterVerificationInfo> CREATOR;
   1547   }
   1548 
   1549   public class LauncherApps {
   1550     method @Nullable public android.content.pm.LauncherApps.AppUsageLimit getAppUsageLimit(@NonNull String, @NonNull android.os.UserHandle);
   1551   }
   1552 
   1553   public static final class LauncherApps.AppUsageLimit implements android.os.Parcelable {
   1554     method public int describeContents();
   1555     method public long getTotalUsageLimit();
   1556     method public long getUsageRemaining();
   1557     method public void writeToParcel(android.os.Parcel, int);
   1558     field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.LauncherApps.AppUsageLimit> CREATOR;
   1559   }
   1560 
   1561   public class PackageInstaller {
   1562     method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void setPermissionsResult(int, boolean);
   1563   }
   1564 
   1565   public static class PackageInstaller.Session implements java.io.Closeable {
   1566     method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void commitTransferred(@NonNull android.content.IntentSender);
   1567   }
   1568 
   1569   public static class PackageInstaller.SessionInfo implements android.os.Parcelable {
   1570     method public boolean getAllocateAggressive();
   1571     method @Deprecated public boolean getAllowDowngrade();
   1572     method public boolean getDontKillApp();
   1573     method public boolean getEnableRollback();
   1574     method @Nullable public String[] getGrantedRuntimePermissions();
   1575     method public boolean getInstallAsFullApp(boolean);
   1576     method public boolean getInstallAsInstantApp(boolean);
   1577     method public boolean getInstallAsVirtualPreload();
   1578     method public boolean getRequestDowngrade();
   1579     method @NonNull public java.util.Set<java.lang.String> getWhitelistedRestrictedPermissions();
   1580   }
   1581 
   1582   public static class PackageInstaller.SessionParams implements android.os.Parcelable {
   1583     method @RequiresPermission(android.Manifest.permission.ALLOCATE_AGGRESSIVE) public void setAllocateAggressive(boolean);
   1584     method @Deprecated public void setAllowDowngrade(boolean);
   1585     method public void setDontKillApp(boolean);
   1586     method public void setEnableRollback(boolean);
   1587     method @RequiresPermission(android.Manifest.permission.INSTALL_GRANT_RUNTIME_PERMISSIONS) public void setGrantedRuntimePermissions(String[]);
   1588     method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void setInstallAsApex();
   1589     method public void setInstallAsInstantApp(boolean);
   1590     method public void setInstallAsVirtualPreload();
   1591     method public void setRequestDowngrade(boolean);
   1592     method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void setStaged();
   1593   }
   1594 
   1595   public class PackageItemInfo {
   1596     method public static void forceSafeLabels();
   1597     method @Deprecated @NonNull public CharSequence loadSafeLabel(@NonNull android.content.pm.PackageManager);
   1598     method @NonNull public CharSequence loadSafeLabel(@NonNull android.content.pm.PackageManager, @FloatRange(from=0) float, int);
   1599   }
   1600 
   1601   public abstract class PackageManager {
   1602     method @RequiresPermission("android.permission.OBSERVE_GRANT_REVOKE_PERMISSIONS") public abstract void addOnPermissionsChangeListener(@NonNull android.content.pm.PackageManager.OnPermissionsChangedListener);
   1603     method public abstract boolean arePermissionsIndividuallyControlled();
   1604     method @NonNull public abstract java.util.List<android.content.IntentFilter> getAllIntentFilters(@NonNull String);
   1605     method @NonNull @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public android.content.pm.ApplicationInfo getApplicationInfoAsUser(@NonNull String, int, @NonNull android.os.UserHandle) throws android.content.pm.PackageManager.NameNotFoundException;
   1606     method @NonNull public android.content.pm.dex.ArtManager getArtManager();
   1607     method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_SHARED_LIBRARIES) public java.util.List<android.content.pm.SharedLibraryInfo> getDeclaredSharedLibraries(@NonNull String, int);
   1608     method @Nullable @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public abstract String getDefaultBrowserPackageNameAsUser(int);
   1609     method @Nullable @RequiresPermission(android.Manifest.permission.SET_HARMFUL_APP_WARNINGS) public CharSequence getHarmfulAppWarning(@NonNull String);
   1610     method @Nullable public String getIncidentReportApproverPackageName();
   1611     method @NonNull @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public abstract java.util.List<android.content.pm.PackageInfo> getInstalledPackagesAsUser(int, int);
   1612     method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_INSTANT_APPS) public abstract android.graphics.drawable.Drawable getInstantAppIcon(String);
   1613     method @Nullable public abstract android.content.ComponentName getInstantAppInstallerComponent();
   1614     method @Nullable public abstract android.content.ComponentName getInstantAppResolverSettingsComponent();
   1615     method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_INSTANT_APPS) public abstract java.util.List<android.content.pm.InstantAppInfo> getInstantApps();
   1616     method @NonNull public abstract java.util.List<android.content.pm.IntentFilterVerificationInfo> getIntentFilterVerifications(@NonNull String);
   1617     method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public abstract int getIntentVerificationStatusAsUser(@NonNull String, int);
   1618     method @android.content.pm.PackageManager.PermissionFlags @RequiresPermission(anyOf={android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS, android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS, android.Manifest.permission.GET_RUNTIME_PERMISSIONS}) public abstract int getPermissionFlags(@NonNull String, @NonNull String, @NonNull android.os.UserHandle);
   1619     method @NonNull @RequiresPermission(android.Manifest.permission.SUSPEND_APPS) public String[] getUnsuspendablePackages(@NonNull String[]);
   1620     method @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) public abstract void grantRuntimePermission(@NonNull String, @NonNull String, @NonNull android.os.UserHandle);
   1621     method @Deprecated public abstract int installExistingPackage(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException;
   1622     method @Deprecated public abstract int installExistingPackage(@NonNull String, int) throws android.content.pm.PackageManager.NameNotFoundException;
   1623     method @NonNull @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public java.util.List<android.content.pm.ResolveInfo> queryBroadcastReceiversAsUser(@NonNull android.content.Intent, int, android.os.UserHandle);
   1624     method @NonNull @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public java.util.List<android.content.pm.ResolveInfo> queryIntentActivitiesAsUser(@NonNull android.content.Intent, int, @NonNull android.os.UserHandle);
   1625     method @NonNull @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public java.util.List<android.content.pm.ResolveInfo> queryIntentContentProvidersAsUser(@NonNull android.content.Intent, int, @NonNull android.os.UserHandle);
   1626     method @NonNull @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public java.util.List<android.content.pm.ResolveInfo> queryIntentServicesAsUser(@NonNull android.content.Intent, int, @NonNull android.os.UserHandle);
   1627     method public abstract void registerDexModule(@NonNull String, @Nullable android.content.pm.PackageManager.DexModuleRegisterCallback);
   1628     method @RequiresPermission("android.permission.OBSERVE_GRANT_REVOKE_PERMISSIONS") public abstract void removeOnPermissionsChangeListener(@NonNull android.content.pm.PackageManager.OnPermissionsChangedListener);
   1629     method public void replacePreferredActivity(@NonNull android.content.IntentFilter, int, @NonNull java.util.List<android.content.ComponentName>, @NonNull android.content.ComponentName);
   1630     method @RequiresPermission(android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS) public abstract void revokeRuntimePermission(@NonNull String, @NonNull String, @NonNull android.os.UserHandle);
   1631     method public void sendDeviceCustomizationReadyBroadcast();
   1632     method @RequiresPermission(allOf={android.Manifest.permission.SET_PREFERRED_APPLICATIONS, android.Manifest.permission.INTERACT_ACROSS_USERS_FULL}) public abstract boolean setDefaultBrowserPackageNameAsUser(@Nullable String, int);
   1633     method @NonNull @RequiresPermission(android.Manifest.permission.SUSPEND_APPS) public String[] setDistractingPackageRestrictions(@NonNull String[], int);
   1634     method @RequiresPermission(android.Manifest.permission.SET_HARMFUL_APP_WARNINGS) public void setHarmfulAppWarning(@NonNull String, @Nullable CharSequence);
   1635     method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.SUSPEND_APPS) public String[] setPackagesSuspended(@Nullable String[], boolean, @Nullable android.os.PersistableBundle, @Nullable android.os.PersistableBundle, @Nullable String);
   1636     method @Nullable @RequiresPermission(android.Manifest.permission.SUSPEND_APPS) public String[] setPackagesSuspended(@Nullable String[], boolean, @Nullable android.os.PersistableBundle, @Nullable android.os.PersistableBundle, @Nullable android.content.pm.SuspendDialogInfo);
   1637     method @RequiresPermission(value=android.Manifest.permission.CHANGE_COMPONENT_ENABLED_STATE, conditional=true) public void setSyntheticAppDetailsActivityEnabled(@NonNull String, boolean);
   1638     method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public abstract void setUpdateAvailable(@NonNull String, boolean);
   1639     method @RequiresPermission(android.Manifest.permission.SET_PREFERRED_APPLICATIONS) public abstract boolean updateIntentVerificationStatusAsUser(@NonNull String, int, int);
   1640     method @RequiresPermission(anyOf={android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS, android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS}) public abstract void updatePermissionFlags(@NonNull String, @NonNull String, @android.content.pm.PackageManager.PermissionFlags int, @android.content.pm.PackageManager.PermissionFlags int, @NonNull android.os.UserHandle);
   1641     method @RequiresPermission(android.Manifest.permission.INTENT_FILTER_VERIFICATION_AGENT) public abstract void verifyIntentFilter(int, int, @NonNull java.util.List<java.lang.String>);
   1642     field public static final String ACTION_REQUEST_PERMISSIONS = "android.content.pm.action.REQUEST_PERMISSIONS";
   1643     field public static final String EXTRA_REQUEST_PERMISSIONS_NAMES = "android.content.pm.extra.REQUEST_PERMISSIONS_NAMES";
   1644     field public static final String EXTRA_REQUEST_PERMISSIONS_RESULTS = "android.content.pm.extra.REQUEST_PERMISSIONS_RESULTS";
   1645     field public static final String FEATURE_BROADCAST_RADIO = "android.hardware.broadcastradio";
   1646     field public static final String FEATURE_TELEPHONY_CARRIERLOCK = "android.hardware.telephony.carrierlock";
   1647     field public static final int FLAG_PERMISSION_APPLY_RESTRICTION = 16384; // 0x4000
   1648     field public static final int FLAG_PERMISSION_GRANTED_BY_DEFAULT = 32; // 0x20
   1649     field public static final int FLAG_PERMISSION_GRANTED_BY_ROLE = 32768; // 0x8000
   1650     field public static final int FLAG_PERMISSION_POLICY_FIXED = 4; // 0x4
   1651     field public static final int FLAG_PERMISSION_RESTRICTION_INSTALLER_EXEMPT = 2048; // 0x800
   1652     field public static final int FLAG_PERMISSION_RESTRICTION_SYSTEM_EXEMPT = 4096; // 0x1000
   1653     field public static final int FLAG_PERMISSION_RESTRICTION_UPGRADE_EXEMPT = 8192; // 0x2000
   1654     field public static final int FLAG_PERMISSION_REVIEW_REQUIRED = 64; // 0x40
   1655     field public static final int FLAG_PERMISSION_REVOKE_ON_UPGRADE = 8; // 0x8
   1656     field public static final int FLAG_PERMISSION_SYSTEM_FIXED = 16; // 0x10
   1657     field public static final int FLAG_PERMISSION_USER_FIXED = 2; // 0x2
   1658     field public static final int FLAG_PERMISSION_USER_SENSITIVE_WHEN_DENIED = 512; // 0x200
   1659     field public static final int FLAG_PERMISSION_USER_SENSITIVE_WHEN_GRANTED = 256; // 0x100
   1660     field public static final int FLAG_PERMISSION_USER_SET = 1; // 0x1
   1661     field public static final int INSTALL_FAILED_ALREADY_EXISTS = -1; // 0xffffffff
   1662     field public static final int INSTALL_FAILED_CONFLICTING_PROVIDER = -13; // 0xfffffff3
   1663     field public static final int INSTALL_FAILED_CONTAINER_ERROR = -18; // 0xffffffee
   1664     field public static final int INSTALL_FAILED_CPU_ABI_INCOMPATIBLE = -16; // 0xfffffff0
   1665     field public static final int INSTALL_FAILED_DEXOPT = -11; // 0xfffffff5
   1666     field public static final int INSTALL_FAILED_DUPLICATE_PACKAGE = -5; // 0xfffffffb
   1667     field public static final int INSTALL_FAILED_INSUFFICIENT_STORAGE = -4; // 0xfffffffc
   1668     field public static final int INSTALL_FAILED_INTERNAL_ERROR = -110; // 0xffffff92
   1669     field public static final int INSTALL_FAILED_INVALID_APK = -2; // 0xfffffffe
   1670     field public static final int INSTALL_FAILED_INVALID_INSTALL_LOCATION = -19; // 0xffffffed
   1671     field public static final int INSTALL_FAILED_INVALID_URI = -3; // 0xfffffffd
   1672     field public static final int INSTALL_FAILED_MEDIA_UNAVAILABLE = -20; // 0xffffffec
   1673     field public static final int INSTALL_FAILED_MISSING_FEATURE = -17; // 0xffffffef
   1674     field public static final int INSTALL_FAILED_MISSING_SHARED_LIBRARY = -9; // 0xfffffff7
   1675     field public static final int INSTALL_FAILED_NEWER_SDK = -14; // 0xfffffff2
   1676     field public static final int INSTALL_FAILED_NO_SHARED_USER = -6; // 0xfffffffa
   1677     field public static final int INSTALL_FAILED_OLDER_SDK = -12; // 0xfffffff4
   1678     field public static final int INSTALL_FAILED_PACKAGE_CHANGED = -23; // 0xffffffe9
   1679     field public static final int INSTALL_FAILED_PERMISSION_MODEL_DOWNGRADE = -26; // 0xffffffe6
   1680     field public static final int INSTALL_FAILED_REPLACE_COULDNT_DELETE = -10; // 0xfffffff6
   1681     field public static final int INSTALL_FAILED_SANDBOX_VERSION_DOWNGRADE = -27; // 0xffffffe5
   1682     field public static final int INSTALL_FAILED_SHARED_USER_INCOMPATIBLE = -8; // 0xfffffff8
   1683     field public static final int INSTALL_FAILED_TEST_ONLY = -15; // 0xfffffff1
   1684     field public static final int INSTALL_FAILED_UPDATE_INCOMPATIBLE = -7; // 0xfffffff9
   1685     field public static final int INSTALL_FAILED_VERIFICATION_FAILURE = -22; // 0xffffffea
   1686     field public static final int INSTALL_FAILED_VERIFICATION_TIMEOUT = -21; // 0xffffffeb
   1687     field public static final int INSTALL_PARSE_FAILED_BAD_MANIFEST = -101; // 0xffffff9b
   1688     field public static final int INSTALL_PARSE_FAILED_BAD_PACKAGE_NAME = -106; // 0xffffff96
   1689     field public static final int INSTALL_PARSE_FAILED_BAD_SHARED_USER_ID = -107; // 0xffffff95
   1690     field public static final int INSTALL_PARSE_FAILED_CERTIFICATE_ENCODING = -105; // 0xffffff97
   1691     field public static final int INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES = -104; // 0xffffff98
   1692     field public static final int INSTALL_PARSE_FAILED_MANIFEST_EMPTY = -109; // 0xffffff93
   1693     field public static final int INSTALL_PARSE_FAILED_MANIFEST_MALFORMED = -108; // 0xffffff94
   1694     field public static final int INSTALL_PARSE_FAILED_NOT_APK = -100; // 0xffffff9c
   1695     field public static final int INSTALL_PARSE_FAILED_NO_CERTIFICATES = -103; // 0xffffff99
   1696     field public static final int INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION = -102; // 0xffffff9a
   1697     field public static final int INSTALL_SUCCEEDED = 1; // 0x1
   1698     field public static final int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ALWAYS = 2; // 0x2
   1699     field public static final int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ALWAYS_ASK = 4; // 0x4
   1700     field public static final int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ASK = 1; // 0x1
   1701     field public static final int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_NEVER = 3; // 0x3
   1702     field public static final int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_UNDEFINED = 0; // 0x0
   1703     field public static final int INTENT_FILTER_VERIFICATION_FAILURE = -1; // 0xffffffff
   1704     field public static final int INTENT_FILTER_VERIFICATION_SUCCESS = 1; // 0x1
   1705     field @Deprecated public static final int MASK_PERMISSION_FLAGS = 255; // 0xff
   1706     field public static final int MATCH_ANY_USER = 4194304; // 0x400000
   1707     field public static final int MATCH_FACTORY_ONLY = 2097152; // 0x200000
   1708     field public static final int MATCH_INSTANT = 8388608; // 0x800000
   1709     field public static final int RESTRICTION_HIDE_FROM_SUGGESTIONS = 1; // 0x1
   1710     field public static final int RESTRICTION_HIDE_NOTIFICATIONS = 2; // 0x2
   1711     field public static final int RESTRICTION_NONE = 0; // 0x0
   1712   }
   1713 
   1714   public abstract static class PackageManager.DexModuleRegisterCallback {
   1715     ctor public PackageManager.DexModuleRegisterCallback();
   1716     method public abstract void onDexModuleRegistered(String, boolean, String);
   1717   }
   1718 
   1719   public static interface PackageManager.OnPermissionsChangedListener {
   1720     method public void onPermissionsChanged(int);
   1721   }
   1722 
   1723   @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 {
   1724   }
   1725 
   1726   public class PermissionGroupInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable {
   1727     field @StringRes public final int backgroundRequestDetailResourceId;
   1728     field @StringRes public final int backgroundRequestResourceId;
   1729     field @StringRes public final int requestDetailResourceId;
   1730     field @StringRes public int requestRes;
   1731   }
   1732 
   1733   public class PermissionInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable {
   1734     field public static final int FLAG_REMOVED = 2; // 0x2
   1735     field public static final int PROTECTION_FLAG_APP_PREDICTOR = 2097152; // 0x200000
   1736     field public static final int PROTECTION_FLAG_CONFIGURATOR = 524288; // 0x80000
   1737     field public static final int PROTECTION_FLAG_DOCUMENTER = 262144; // 0x40000
   1738     field public static final int PROTECTION_FLAG_INCIDENT_REPORT_APPROVER = 1048576; // 0x100000
   1739     field public static final int PROTECTION_FLAG_OEM = 16384; // 0x4000
   1740     field public static final int PROTECTION_FLAG_SYSTEM_TEXT_CLASSIFIER = 65536; // 0x10000
   1741     field public static final int PROTECTION_FLAG_WELLBEING = 131072; // 0x20000
   1742     field @Nullable public final String backgroundPermission;
   1743     field @StringRes public int requestRes;
   1744   }
   1745 
   1746   public class ResolveInfo implements android.os.Parcelable {
   1747     field public boolean handleAllWebDataURI;
   1748   }
   1749 
   1750   public final class ShortcutInfo implements android.os.Parcelable {
   1751     method @Nullable public android.app.Person[] getPersons();
   1752   }
   1753 
   1754   public class ShortcutManager {
   1755     method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_APP_PREDICTIONS) public java.util.List<android.content.pm.ShortcutManager.ShareShortcutInfo> getShareTargets(@NonNull android.content.IntentFilter);
   1756     method public boolean hasShareTargets(@NonNull String);
   1757   }
   1758 
   1759   public static final class ShortcutManager.ShareShortcutInfo implements android.os.Parcelable {
   1760     method public int describeContents();
   1761     method @NonNull public android.content.pm.ShortcutInfo getShortcutInfo();
   1762     method @NonNull public android.content.ComponentName getTargetComponent();
   1763     method public void writeToParcel(@NonNull android.os.Parcel, int);
   1764     field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.ShortcutManager.ShareShortcutInfo> CREATOR;
   1765   }
   1766 
   1767   public final class SuspendDialogInfo implements android.os.Parcelable {
   1768     method public int describeContents();
   1769     method public void writeToParcel(android.os.Parcel, int);
   1770     field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.SuspendDialogInfo> CREATOR;
   1771   }
   1772 
   1773   public static final class SuspendDialogInfo.Builder {
   1774     ctor public SuspendDialogInfo.Builder();
   1775     method @NonNull public android.content.pm.SuspendDialogInfo build();
   1776     method @NonNull public android.content.pm.SuspendDialogInfo.Builder setIcon(@DrawableRes int);
   1777     method @NonNull public android.content.pm.SuspendDialogInfo.Builder setMessage(@NonNull String);
   1778     method @NonNull public android.content.pm.SuspendDialogInfo.Builder setMessage(@StringRes int);
   1779     method @NonNull public android.content.pm.SuspendDialogInfo.Builder setNeutralButtonText(@StringRes int);
   1780     method @NonNull public android.content.pm.SuspendDialogInfo.Builder setTitle(@StringRes int);
   1781   }
   1782 
   1783 }
   1784 
   1785 package android.content.pm.dex {
   1786 
   1787   public class ArtManager {
   1788     method @RequiresPermission(allOf={android.Manifest.permission.READ_RUNTIME_PROFILES, android.Manifest.permission.PACKAGE_USAGE_STATS}) public boolean isRuntimeProfilingEnabled(int);
   1789     method @RequiresPermission(allOf={android.Manifest.permission.READ_RUNTIME_PROFILES, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void snapshotRuntimeProfile(int, @Nullable String, @Nullable String, @NonNull java.util.concurrent.Executor, @NonNull android.content.pm.dex.ArtManager.SnapshotRuntimeProfileCallback);
   1790     field public static final int PROFILE_APPS = 0; // 0x0
   1791     field public static final int PROFILE_BOOT_IMAGE = 1; // 0x1
   1792     field public static final int SNAPSHOT_FAILED_CODE_PATH_NOT_FOUND = 1; // 0x1
   1793     field public static final int SNAPSHOT_FAILED_INTERNAL_ERROR = 2; // 0x2
   1794     field public static final int SNAPSHOT_FAILED_PACKAGE_NOT_FOUND = 0; // 0x0
   1795   }
   1796 
   1797   public abstract static class ArtManager.SnapshotRuntimeProfileCallback {
   1798     ctor public ArtManager.SnapshotRuntimeProfileCallback();
   1799     method public abstract void onError(int);
   1800     method public abstract void onSuccess(android.os.ParcelFileDescriptor);
   1801   }
   1802 
   1803 }
   1804 
   1805 package android.content.pm.permission {
   1806 
   1807   @Deprecated public final class RuntimePermissionPresentationInfo implements android.os.Parcelable {
   1808     ctor @Deprecated public RuntimePermissionPresentationInfo(CharSequence, boolean, boolean);
   1809     method @Deprecated public int describeContents();
   1810     method @Deprecated @NonNull public CharSequence getLabel();
   1811     method @Deprecated public boolean isGranted();
   1812     method @Deprecated public boolean isStandard();
   1813     method @Deprecated public void writeToParcel(android.os.Parcel, int);
   1814     field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.content.pm.permission.RuntimePermissionPresentationInfo> CREATOR;
   1815   }
   1816 
   1817 }
   1818 
   1819 package android.content.rollback {
   1820 
   1821   public final class PackageRollbackInfo implements android.os.Parcelable {
   1822     method public int describeContents();
   1823     method @NonNull public String getPackageName();
   1824     method @NonNull public android.content.pm.VersionedPackage getVersionRolledBackFrom();
   1825     method @NonNull public android.content.pm.VersionedPackage getVersionRolledBackTo();
   1826     method public void writeToParcel(android.os.Parcel, int);
   1827     field @NonNull public static final android.os.Parcelable.Creator<android.content.rollback.PackageRollbackInfo> CREATOR;
   1828   }
   1829 
   1830   public final class RollbackInfo implements android.os.Parcelable {
   1831     method public int describeContents();
   1832     method @NonNull public java.util.List<android.content.pm.VersionedPackage> getCausePackages();
   1833     method public int getCommittedSessionId();
   1834     method @NonNull public java.util.List<android.content.rollback.PackageRollbackInfo> getPackages();
   1835     method public int getRollbackId();
   1836     method public boolean isStaged();
   1837     method public void writeToParcel(android.os.Parcel, int);
   1838     field @NonNull public static final android.os.Parcelable.Creator<android.content.rollback.RollbackInfo> CREATOR;
   1839   }
   1840 
   1841   public final class RollbackManager {
   1842     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);
   1843     method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_ROLLBACKS, "android.permission.TEST_MANAGE_ROLLBACKS"}) @NonNull public java.util.List<android.content.rollback.RollbackInfo> getAvailableRollbacks();
   1844     method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_ROLLBACKS, "android.permission.TEST_MANAGE_ROLLBACKS"}) @NonNull public java.util.List<android.content.rollback.RollbackInfo> getRecentlyCommittedRollbacks();
   1845     field public static final String EXTRA_STATUS = "android.content.rollback.extra.STATUS";
   1846     field public static final String EXTRA_STATUS_MESSAGE = "android.content.rollback.extra.STATUS_MESSAGE";
   1847     field public static final int STATUS_FAILURE = 1; // 0x1
   1848     field public static final int STATUS_FAILURE_INSTALL = 3; // 0x3
   1849     field public static final int STATUS_FAILURE_ROLLBACK_UNAVAILABLE = 2; // 0x2
   1850     field public static final int STATUS_SUCCESS = 0; // 0x0
   1851   }
   1852 
   1853 }
   1854 
   1855 package android.hardware {
   1856 
   1857   public final class Sensor {
   1858     method public java.util.UUID getUuid();
   1859     method public boolean isDataInjectionSupported();
   1860     field public static final String STRING_TYPE_DYNAMIC_SENSOR_META = "android.sensor.dynamic_sensor_meta";
   1861     field public static final String STRING_TYPE_WRIST_TILT_GESTURE = "android.sensor.wrist_tilt_gesture";
   1862     field public static final int TYPE_DYNAMIC_SENSOR_META = 32; // 0x20
   1863     field public static final int TYPE_WRIST_TILT_GESTURE = 26; // 0x1a
   1864   }
   1865 
   1866   public abstract class SensorManager {
   1867     method public boolean initDataInjection(boolean);
   1868     method public boolean injectSensorData(android.hardware.Sensor, float[], int, long);
   1869   }
   1870 
   1871 }
   1872 
   1873 package android.hardware.camera2 {
   1874 
   1875   public abstract class CameraDevice implements java.lang.AutoCloseable {
   1876     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;
   1877     field public static final int SESSION_OPERATION_MODE_CONSTRAINED_HIGH_SPEED = 1; // 0x1
   1878     field public static final int SESSION_OPERATION_MODE_NORMAL = 0; // 0x0
   1879     field public static final int SESSION_OPERATION_MODE_VENDOR_START = 32768; // 0x8000
   1880   }
   1881 
   1882 }
   1883 
   1884 package android.hardware.camera2.params {
   1885 
   1886   public final class OutputConfiguration implements android.os.Parcelable {
   1887     ctor public OutputConfiguration(@NonNull android.view.Surface, int);
   1888     ctor public OutputConfiguration(int, @NonNull android.view.Surface, int);
   1889     method public int getRotation();
   1890     field public static final int ROTATION_0 = 0; // 0x0
   1891     field public static final int ROTATION_180 = 2; // 0x2
   1892     field public static final int ROTATION_270 = 3; // 0x3
   1893     field public static final int ROTATION_90 = 1; // 0x1
   1894   }
   1895 
   1896 }
   1897 
   1898 package android.hardware.display {
   1899 
   1900   public final class AmbientBrightnessDayStats implements android.os.Parcelable {
   1901     method public int describeContents();
   1902     method public float[] getBucketBoundaries();
   1903     method public java.time.LocalDate getLocalDate();
   1904     method public float[] getStats();
   1905     method public void writeToParcel(android.os.Parcel, int);
   1906     field @NonNull public static final android.os.Parcelable.Creator<android.hardware.display.AmbientBrightnessDayStats> CREATOR;
   1907   }
   1908 
   1909   public final class BrightnessChangeEvent implements android.os.Parcelable {
   1910     method public int describeContents();
   1911     method public void writeToParcel(android.os.Parcel, int);
   1912     field @NonNull public static final android.os.Parcelable.Creator<android.hardware.display.BrightnessChangeEvent> CREATOR;
   1913     field public final float batteryLevel;
   1914     field public final float brightness;
   1915     field public final long colorSampleDuration;
   1916     field public final int colorTemperature;
   1917     field @Nullable public final long[] colorValueBuckets;
   1918     field public final boolean isDefaultBrightnessConfig;
   1919     field public final boolean isUserSetBrightness;
   1920     field public final float lastBrightness;
   1921     field public final long[] luxTimestamps;
   1922     field public final float[] luxValues;
   1923     field public final boolean nightMode;
   1924     field public final String packageName;
   1925     field public final float powerBrightnessFactor;
   1926     field public final long timeStamp;
   1927   }
   1928 
   1929   public final class BrightnessConfiguration implements android.os.Parcelable {
   1930     method public int describeContents();
   1931     method @Nullable public android.hardware.display.BrightnessCorrection getCorrectionByCategory(int);
   1932     method @Nullable public android.hardware.display.BrightnessCorrection getCorrectionByPackageName(@NonNull String);
   1933     method public android.util.Pair<float[],float[]> getCurve();
   1934     method public void writeToParcel(android.os.Parcel, int);
   1935     field @NonNull public static final android.os.Parcelable.Creator<android.hardware.display.BrightnessConfiguration> CREATOR;
   1936   }
   1937 
   1938   public static class BrightnessConfiguration.Builder {
   1939     ctor public BrightnessConfiguration.Builder(float[], float[]);
   1940     method @NonNull public android.hardware.display.BrightnessConfiguration.Builder addCorrectionByCategory(int, @NonNull android.hardware.display.BrightnessCorrection);
   1941     method @NonNull public android.hardware.display.BrightnessConfiguration.Builder addCorrectionByPackageName(@NonNull String, @NonNull android.hardware.display.BrightnessCorrection);
   1942     method @NonNull public android.hardware.display.BrightnessConfiguration build();
   1943     method public int getMaxCorrectionsByCategory();
   1944     method public int getMaxCorrectionsByPackageName();
   1945     method @NonNull public android.hardware.display.BrightnessConfiguration.Builder setDescription(@Nullable String);
   1946   }
   1947 
   1948   public final class BrightnessCorrection implements android.os.Parcelable {
   1949     method @FloatRange(from=0.0) public float apply(@FloatRange(from=0.0) float);
   1950     method @NonNull public static android.hardware.display.BrightnessCorrection createScaleAndTranslateLog(float, float);
   1951     method public int describeContents();
   1952     method public void writeToParcel(android.os.Parcel, int);
   1953     field @NonNull public static final android.os.Parcelable.Creator<android.hardware.display.BrightnessCorrection> CREATOR;
   1954   }
   1955 
   1956   public final class ColorDisplayManager {
   1957     method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public int getNightDisplayAutoMode();
   1958     method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public int getTransformCapabilities();
   1959     method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public boolean setAppSaturationLevel(@NonNull String, @IntRange(from=0, to=100) int);
   1960     method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public boolean setNightDisplayAutoMode(int);
   1961     method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public boolean setNightDisplayCustomEndTime(@NonNull java.time.LocalTime);
   1962     method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public boolean setNightDisplayCustomStartTime(@NonNull java.time.LocalTime);
   1963     method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public boolean setSaturationLevel(@IntRange(from=0, to=100) int);
   1964     field public static final int AUTO_MODE_CUSTOM_TIME = 1; // 0x1
   1965     field public static final int AUTO_MODE_DISABLED = 0; // 0x0
   1966     field public static final int AUTO_MODE_TWILIGHT = 2; // 0x2
   1967     field public static final int CAPABILITY_HARDWARE_ACCELERATION_GLOBAL = 2; // 0x2
   1968     field public static final int CAPABILITY_HARDWARE_ACCELERATION_PER_APP = 4; // 0x4
   1969     field public static final int CAPABILITY_NONE = 0; // 0x0
   1970     field public static final int CAPABILITY_PROTECTED_CONTENT = 1; // 0x1
   1971   }
   1972 
   1973   public final class DisplayManager {
   1974     method @RequiresPermission(android.Manifest.permission.ACCESS_AMBIENT_LIGHT_STATS) public java.util.List<android.hardware.display.AmbientBrightnessDayStats> getAmbientBrightnessStats();
   1975     method @RequiresPermission(android.Manifest.permission.CONFIGURE_DISPLAY_BRIGHTNESS) public android.hardware.display.BrightnessConfiguration getBrightnessConfiguration();
   1976     method @RequiresPermission(android.Manifest.permission.BRIGHTNESS_SLIDER_USAGE) public java.util.List<android.hardware.display.BrightnessChangeEvent> getBrightnessEvents();
   1977     method @Nullable @RequiresPermission(android.Manifest.permission.CONFIGURE_DISPLAY_BRIGHTNESS) public android.hardware.display.BrightnessConfiguration getDefaultBrightnessConfiguration();
   1978     method public android.util.Pair<float[],float[]> getMinimumBrightnessCurve();
   1979     method public android.graphics.Point getStableDisplaySize();
   1980     method @RequiresPermission(android.Manifest.permission.CONFIGURE_DISPLAY_BRIGHTNESS) public void setBrightnessConfiguration(android.hardware.display.BrightnessConfiguration);
   1981     method @Deprecated @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_SATURATION) public void setSaturationLevel(float);
   1982   }
   1983 
   1984 }
   1985 
   1986 package android.hardware.hdmi {
   1987 
   1988   public abstract class HdmiClient {
   1989     method public android.hardware.hdmi.HdmiDeviceInfo getActiveSource();
   1990     method public void sendKeyEvent(int, boolean);
   1991     method public void sendVendorCommand(int, byte[], boolean);
   1992     method public void setVendorCommandListener(@NonNull android.hardware.hdmi.HdmiControlManager.VendorCommandListener);
   1993   }
   1994 
   1995   public final class HdmiControlManager {
   1996     method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void addHotplugEventListener(android.hardware.hdmi.HdmiControlManager.HotplugEventListener);
   1997     method @Nullable public android.hardware.hdmi.HdmiClient getClient(int);
   1998     method @NonNull public java.util.List<android.hardware.hdmi.HdmiDeviceInfo> getConnectedDevices();
   1999     method public int getPhysicalAddress();
   2000     method @Nullable public android.hardware.hdmi.HdmiPlaybackClient getPlaybackClient();
   2001     method @Nullable public android.hardware.hdmi.HdmiSwitchClient getSwitchClient();
   2002     method @Nullable public android.hardware.hdmi.HdmiTvClient getTvClient();
   2003     method public boolean isDeviceConnected(@NonNull android.hardware.hdmi.HdmiDeviceInfo);
   2004     method public void powerOffDevice(@NonNull android.hardware.hdmi.HdmiDeviceInfo);
   2005     method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void removeHotplugEventListener(android.hardware.hdmi.HdmiControlManager.HotplugEventListener);
   2006     method public void setActiveSource(@NonNull android.hardware.hdmi.HdmiDeviceInfo);
   2007     method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setStandbyMode(boolean);
   2008     field public static final String ACTION_OSD_MESSAGE = "android.hardware.hdmi.action.OSD_MESSAGE";
   2009     field public static final int AVR_VOLUME_MUTED = 101; // 0x65
   2010     field public static final int CLEAR_TIMER_STATUS_CEC_DISABLE = 162; // 0xa2
   2011     field public static final int CLEAR_TIMER_STATUS_CHECK_RECORDER_CONNECTION = 160; // 0xa0
   2012     field public static final int CLEAR_TIMER_STATUS_FAIL_TO_CLEAR_SELECTED_SOURCE = 161; // 0xa1
   2013     field public static final int CLEAR_TIMER_STATUS_TIMER_CLEARED = 128; // 0x80
   2014     field public static final int CLEAR_TIMER_STATUS_TIMER_NOT_CLEARED_NO_INFO_AVAILABLE = 2; // 0x2
   2015     field public static final int CLEAR_TIMER_STATUS_TIMER_NOT_CLEARED_NO_MATCHING = 1; // 0x1
   2016     field public static final int CLEAR_TIMER_STATUS_TIMER_NOT_CLEARED_RECORDING = 0; // 0x0
   2017     field public static final int CONTROL_STATE_CHANGED_REASON_SETTING = 1; // 0x1
   2018     field public static final int CONTROL_STATE_CHANGED_REASON_STANDBY = 3; // 0x3
   2019     field public static final int CONTROL_STATE_CHANGED_REASON_START = 0; // 0x0
   2020     field public static final int CONTROL_STATE_CHANGED_REASON_WAKEUP = 2; // 0x2
   2021     field public static final int DEVICE_EVENT_ADD_DEVICE = 1; // 0x1
   2022     field public static final int DEVICE_EVENT_REMOVE_DEVICE = 2; // 0x2
   2023     field public static final int DEVICE_EVENT_UPDATE_DEVICE = 3; // 0x3
   2024     field public static final String EXTRA_MESSAGE_EXTRA_PARAM1 = "android.hardware.hdmi.extra.MESSAGE_EXTRA_PARAM1";
   2025     field public static final String EXTRA_MESSAGE_ID = "android.hardware.hdmi.extra.MESSAGE_ID";
   2026     field public static final int ONE_TOUCH_RECORD_ALREADY_RECORDING = 18; // 0x12
   2027     field public static final int ONE_TOUCH_RECORD_CEC_DISABLED = 51; // 0x33
   2028     field public static final int ONE_TOUCH_RECORD_CHECK_RECORDER_CONNECTION = 49; // 0x31
   2029     field public static final int ONE_TOUCH_RECORD_DISALLOW_TO_COPY = 13; // 0xd
   2030     field public static final int ONE_TOUCH_RECORD_DISALLOW_TO_FUTHER_COPIES = 14; // 0xe
   2031     field public static final int ONE_TOUCH_RECORD_FAIL_TO_RECORD_DISPLAYED_SCREEN = 50; // 0x32
   2032     field public static final int ONE_TOUCH_RECORD_INVALID_EXTERNAL_PHYSICAL_ADDRESS = 10; // 0xa
   2033     field public static final int ONE_TOUCH_RECORD_INVALID_EXTERNAL_PLUG_NUMBER = 9; // 0x9
   2034     field public static final int ONE_TOUCH_RECORD_MEDIA_PROBLEM = 21; // 0x15
   2035     field public static final int ONE_TOUCH_RECORD_MEDIA_PROTECTED = 19; // 0x13
   2036     field public static final int ONE_TOUCH_RECORD_NOT_ENOUGH_SPACE = 22; // 0x16
   2037     field public static final int ONE_TOUCH_RECORD_NO_MEDIA = 16; // 0x10
   2038     field public static final int ONE_TOUCH_RECORD_NO_OR_INSUFFICIENT_CA_ENTITLEMENTS = 12; // 0xc
   2039     field public static final int ONE_TOUCH_RECORD_NO_SOURCE_SIGNAL = 20; // 0x14
   2040     field public static final int ONE_TOUCH_RECORD_OTHER_REASON = 31; // 0x1f
   2041     field public static final int ONE_TOUCH_RECORD_PARENT_LOCK_ON = 23; // 0x17
   2042     field public static final int ONE_TOUCH_RECORD_PLAYING = 17; // 0x11
   2043     field public static final int ONE_TOUCH_RECORD_PREVIOUS_RECORDING_IN_PROGRESS = 48; // 0x30
   2044     field public static final int ONE_TOUCH_RECORD_RECORDING_ALREADY_TERMINATED = 27; // 0x1b
   2045     field public static final int ONE_TOUCH_RECORD_RECORDING_ANALOGUE_SERVICE = 3; // 0x3
   2046     field public static final int ONE_TOUCH_RECORD_RECORDING_CURRENTLY_SELECTED_SOURCE = 1; // 0x1
   2047     field public static final int ONE_TOUCH_RECORD_RECORDING_DIGITAL_SERVICE = 2; // 0x2
   2048     field public static final int ONE_TOUCH_RECORD_RECORDING_EXTERNAL_INPUT = 4; // 0x4
   2049     field public static final int ONE_TOUCH_RECORD_RECORDING_TERMINATED_NORMALLY = 26; // 0x1a
   2050     field public static final int ONE_TOUCH_RECORD_UNABLE_ANALOGUE_SERVICE = 6; // 0x6
   2051     field public static final int ONE_TOUCH_RECORD_UNABLE_DIGITAL_SERVICE = 5; // 0x5
   2052     field public static final int ONE_TOUCH_RECORD_UNABLE_SELECTED_SERVICE = 7; // 0x7
   2053     field public static final int ONE_TOUCH_RECORD_UNSUPPORTED_CA = 11; // 0xb
   2054     field public static final int OSD_MESSAGE_ARC_CONNECTED_INVALID_PORT = 1; // 0x1
   2055     field public static final int OSD_MESSAGE_AVR_VOLUME_CHANGED = 2; // 0x2
   2056     field public static final int POWER_STATUS_ON = 0; // 0x0
   2057     field public static final int POWER_STATUS_STANDBY = 1; // 0x1
   2058     field public static final int POWER_STATUS_TRANSIENT_TO_ON = 2; // 0x2
   2059     field public static final int POWER_STATUS_TRANSIENT_TO_STANDBY = 3; // 0x3
   2060     field public static final int POWER_STATUS_UNKNOWN = -1; // 0xffffffff
   2061     field @Deprecated public static final int RESULT_ALREADY_IN_PROGRESS = 4; // 0x4
   2062     field public static final int RESULT_COMMUNICATION_FAILED = 7; // 0x7
   2063     field public static final int RESULT_EXCEPTION = 5; // 0x5
   2064     field public static final int RESULT_INCORRECT_MODE = 6; // 0x6
   2065     field public static final int RESULT_SOURCE_NOT_AVAILABLE = 2; // 0x2
   2066     field public static final int RESULT_SUCCESS = 0; // 0x0
   2067     field public static final int RESULT_TARGET_NOT_AVAILABLE = 3; // 0x3
   2068     field public static final int RESULT_TIMEOUT = 1; // 0x1
   2069     field public static final int TIMER_RECORDING_RESULT_EXTRA_CEC_DISABLED = 3; // 0x3
   2070     field public static final int TIMER_RECORDING_RESULT_EXTRA_CHECK_RECORDER_CONNECTION = 1; // 0x1
   2071     field public static final int TIMER_RECORDING_RESULT_EXTRA_FAIL_TO_RECORD_SELECTED_SOURCE = 2; // 0x2
   2072     field public static final int TIMER_RECORDING_RESULT_EXTRA_NO_ERROR = 0; // 0x0
   2073     field public static final int TIMER_RECORDING_TYPE_ANALOGUE = 2; // 0x2
   2074     field public static final int TIMER_RECORDING_TYPE_DIGITAL = 1; // 0x1
   2075     field public static final int TIMER_RECORDING_TYPE_EXTERNAL = 3; // 0x3
   2076     field public static final int TIMER_STATUS_MEDIA_INFO_NOT_PRESENT = 2; // 0x2
   2077     field public static final int TIMER_STATUS_MEDIA_INFO_PRESENT_NOT_PROTECTED = 0; // 0x0
   2078     field public static final int TIMER_STATUS_MEDIA_INFO_PRESENT_PROTECTED = 1; // 0x1
   2079     field public static final int TIMER_STATUS_NOT_PROGRAMMED_CA_NOT_SUPPORTED = 6; // 0x6
   2080     field public static final int TIMER_STATUS_NOT_PROGRAMMED_CLOCK_FAILURE = 10; // 0xa
   2081     field public static final int TIMER_STATUS_NOT_PROGRAMMED_DATE_OUT_OF_RANGE = 2; // 0x2
   2082     field public static final int TIMER_STATUS_NOT_PROGRAMMED_DUPLICATED = 14; // 0xe
   2083     field public static final int TIMER_STATUS_NOT_PROGRAMMED_INVALID_EXTERNAL_PHYSICAL_NUMBER = 5; // 0x5
   2084     field public static final int TIMER_STATUS_NOT_PROGRAMMED_INVALID_EXTERNAL_PLUG_NUMBER = 4; // 0x4
   2085     field public static final int TIMER_STATUS_NOT_PROGRAMMED_INVALID_SEQUENCE = 3; // 0x3
   2086     field public static final int TIMER_STATUS_NOT_PROGRAMMED_NO_CA_ENTITLEMENTS = 7; // 0x7
   2087     field public static final int TIMER_STATUS_NOT_PROGRAMMED_NO_FREE_TIME = 1; // 0x1
   2088     field public static final int TIMER_STATUS_NOT_PROGRAMMED_PARENTAL_LOCK_ON = 9; // 0x9
   2089     field public static final int TIMER_STATUS_NOT_PROGRAMMED_UNSUPPORTED_RESOLUTION = 8; // 0x8
   2090     field public static final int TIMER_STATUS_PROGRAMMED_INFO_ENOUGH_SPACE = 8; // 0x8
   2091     field public static final int TIMER_STATUS_PROGRAMMED_INFO_MIGHT_NOT_ENOUGH_SPACE = 11; // 0xb
   2092     field public static final int TIMER_STATUS_PROGRAMMED_INFO_NOT_ENOUGH_SPACE = 9; // 0x9
   2093     field public static final int TIMER_STATUS_PROGRAMMED_INFO_NO_MEDIA_INFO = 10; // 0xa
   2094   }
   2095 
   2096   @IntDef({android.hardware.hdmi.HdmiControlManager.RESULT_SUCCESS, android.hardware.hdmi.HdmiControlManager.RESULT_TIMEOUT, android.hardware.hdmi.HdmiControlManager.RESULT_SOURCE_NOT_AVAILABLE, android.hardware.hdmi.HdmiControlManager.RESULT_TARGET_NOT_AVAILABLE, android.hardware.hdmi.HdmiControlManager.RESULT_ALREADY_IN_PROGRESS, android.hardware.hdmi.HdmiControlManager.RESULT_EXCEPTION, android.hardware.hdmi.HdmiControlManager.RESULT_INCORRECT_MODE, android.hardware.hdmi.HdmiControlManager.RESULT_COMMUNICATION_FAILED}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) public static @interface HdmiControlManager.ControlCallbackResult {
   2097   }
   2098 
   2099   public static interface HdmiControlManager.HotplugEventListener {
   2100     method public void onReceived(android.hardware.hdmi.HdmiHotplugEvent);
   2101   }
   2102 
   2103   public static interface HdmiControlManager.VendorCommandListener {
   2104     method public void onControlStateChanged(boolean, int);
   2105     method public void onReceived(int, int, byte[], boolean);
   2106   }
   2107 
   2108   public class HdmiDeviceInfo implements android.os.Parcelable {
   2109     ctor public HdmiDeviceInfo();
   2110     method public int describeContents();
   2111     method public int getAdopterId();
   2112     method public int getDeviceId();
   2113     method public int getDevicePowerStatus();
   2114     method public int getDeviceType();
   2115     method public String getDisplayName();
   2116     method public int getId();
   2117     method public int getLogicalAddress();
   2118     method public int getPhysicalAddress();
   2119     method public int getPortId();
   2120     method public int getVendorId();
   2121     method public static int idForCecDevice(int);
   2122     method public static int idForHardware(int);
   2123     method public static int idForMhlDevice(int);
   2124     method public boolean isCecDevice();
   2125     method public boolean isInactivated();
   2126     method public boolean isMhlDevice();
   2127     method public boolean isSourceType();
   2128     method public void writeToParcel(android.os.Parcel, int);
   2129     field public static final int ADDR_INTERNAL = 0; // 0x0
   2130     field @NonNull public static final android.os.Parcelable.Creator<android.hardware.hdmi.HdmiDeviceInfo> CREATOR;
   2131     field public static final int DEVICE_AUDIO_SYSTEM = 5; // 0x5
   2132     field public static final int DEVICE_INACTIVE = -1; // 0xffffffff
   2133     field public static final int DEVICE_PLAYBACK = 4; // 0x4
   2134     field public static final int DEVICE_RECORDER = 1; // 0x1
   2135     field public static final int DEVICE_RESERVED = 2; // 0x2
   2136     field public static final int DEVICE_TUNER = 3; // 0x3
   2137     field public static final int DEVICE_TV = 0; // 0x0
   2138     field public static final int ID_INVALID = 65535; // 0xffff
   2139     field public static final android.hardware.hdmi.HdmiDeviceInfo INACTIVE_DEVICE;
   2140     field public static final int PATH_INTERNAL = 0; // 0x0
   2141     field public static final int PATH_INVALID = 65535; // 0xffff
   2142     field public static final int PORT_INVALID = -1; // 0xffffffff
   2143   }
   2144 
   2145   public final class HdmiHotplugEvent implements android.os.Parcelable {
   2146     method public int describeContents();
   2147     method public int getPort();
   2148     method public boolean isConnected();
   2149     method public void writeToParcel(android.os.Parcel, int);
   2150     field @NonNull public static final android.os.Parcelable.Creator<android.hardware.hdmi.HdmiHotplugEvent> CREATOR;
   2151   }
   2152 
   2153   public final class HdmiPlaybackClient extends android.hardware.hdmi.HdmiClient {
   2154     method public int getDeviceType();
   2155     method public void oneTouchPlay(android.hardware.hdmi.HdmiPlaybackClient.OneTouchPlayCallback);
   2156     method public void queryDisplayStatus(android.hardware.hdmi.HdmiPlaybackClient.DisplayStatusCallback);
   2157     method public void sendStandby();
   2158   }
   2159 
   2160   public static interface HdmiPlaybackClient.DisplayStatusCallback {
   2161     method public void onComplete(int);
   2162   }
   2163 
   2164   public static interface HdmiPlaybackClient.OneTouchPlayCallback {
   2165     method public void onComplete(int);
   2166   }
   2167 
   2168   public final class HdmiPortInfo implements android.os.Parcelable {
   2169     ctor public HdmiPortInfo(int, int, int, boolean, boolean, boolean);
   2170     method public int describeContents();
   2171     method public int getAddress();
   2172     method public int getId();
   2173     method public int getType();
   2174     method public boolean isArcSupported();
   2175     method public boolean isCecSupported();
   2176     method public boolean isMhlSupported();
   2177     method public void writeToParcel(android.os.Parcel, int);
   2178     field @NonNull public static final android.os.Parcelable.Creator<android.hardware.hdmi.HdmiPortInfo> CREATOR;
   2179     field public static final int PORT_INPUT = 0; // 0x0
   2180     field public static final int PORT_OUTPUT = 1; // 0x1
   2181   }
   2182 
   2183   public abstract class HdmiRecordListener {
   2184     ctor public HdmiRecordListener();
   2185     method public void onClearTimerRecordingResult(int, int);
   2186     method public void onOneTouchRecordResult(int, int);
   2187     method public abstract android.hardware.hdmi.HdmiRecordSources.RecordSource onOneTouchRecordSourceRequested(int);
   2188     method public void onTimerRecordingResult(int, android.hardware.hdmi.HdmiRecordListener.TimerStatusData);
   2189   }
   2190 
   2191   public static class HdmiRecordListener.TimerStatusData {
   2192     method public int getDurationHour();
   2193     method public int getDurationMinute();
   2194     method public int getExtraError();
   2195     method public int getMediaInfo();
   2196     method public int getNotProgammedError();
   2197     method public int getProgrammedInfo();
   2198     method public boolean isOverlapped();
   2199     method public boolean isProgrammed();
   2200   }
   2201 
   2202   public final class HdmiRecordSources {
   2203     method public static boolean checkRecordSource(byte[]);
   2204     method public static android.hardware.hdmi.HdmiRecordSources.OwnSource ofOwnSource();
   2205   }
   2206 
   2207   public static final class HdmiRecordSources.AnalogueServiceSource extends android.hardware.hdmi.HdmiRecordSources.RecordSource {
   2208   }
   2209 
   2210   public static final class HdmiRecordSources.DigitalServiceSource extends android.hardware.hdmi.HdmiRecordSources.RecordSource {
   2211   }
   2212 
   2213   public static final class HdmiRecordSources.ExternalPhysicalAddress extends android.hardware.hdmi.HdmiRecordSources.RecordSource {
   2214   }
   2215 
   2216   public static final class HdmiRecordSources.ExternalPlugData extends android.hardware.hdmi.HdmiRecordSources.RecordSource {
   2217   }
   2218 
   2219   public static final class HdmiRecordSources.OwnSource extends android.hardware.hdmi.HdmiRecordSources.RecordSource {
   2220   }
   2221 
   2222   public abstract static class HdmiRecordSources.RecordSource {
   2223   }
   2224 
   2225   public class HdmiSwitchClient extends android.hardware.hdmi.HdmiClient {
   2226     method public int getDeviceType();
   2227     method public void selectPort(int, @NonNull android.hardware.hdmi.HdmiSwitchClient.OnSelectListener);
   2228     method public void selectPort(int, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.hdmi.HdmiSwitchClient.OnSelectListener);
   2229   }
   2230 
   2231   public static interface HdmiSwitchClient.OnSelectListener {
   2232     method public void onSelect(@android.hardware.hdmi.HdmiControlManager.ControlCallbackResult int);
   2233   }
   2234 
   2235   public class HdmiTimerRecordSources {
   2236     method public static boolean checkTimerRecordSource(int, byte[]);
   2237     method public static android.hardware.hdmi.HdmiTimerRecordSources.Duration durationOf(int, int);
   2238     method public static android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource ofAnalogueSource(android.hardware.hdmi.HdmiTimerRecordSources.TimerInfo, android.hardware.hdmi.HdmiRecordSources.AnalogueServiceSource);
   2239     method public static android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource ofDigitalSource(android.hardware.hdmi.HdmiTimerRecordSources.TimerInfo, android.hardware.hdmi.HdmiRecordSources.DigitalServiceSource);
   2240     method public static android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource ofExternalPhysicalAddress(android.hardware.hdmi.HdmiTimerRecordSources.TimerInfo, android.hardware.hdmi.HdmiRecordSources.ExternalPhysicalAddress);
   2241     method public static android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource ofExternalPlug(android.hardware.hdmi.HdmiTimerRecordSources.TimerInfo, android.hardware.hdmi.HdmiRecordSources.ExternalPlugData);
   2242     method public static android.hardware.hdmi.HdmiTimerRecordSources.Time timeOf(int, int);
   2243     method public static android.hardware.hdmi.HdmiTimerRecordSources.TimerInfo timerInfoOf(int, int, android.hardware.hdmi.HdmiTimerRecordSources.Time, android.hardware.hdmi.HdmiTimerRecordSources.Duration, int);
   2244     field public static final int RECORDING_SEQUENCE_REPEAT_FRIDAY = 32; // 0x20
   2245     field public static final int RECORDING_SEQUENCE_REPEAT_MONDAY = 2; // 0x2
   2246     field public static final int RECORDING_SEQUENCE_REPEAT_ONCE_ONLY = 0; // 0x0
   2247     field public static final int RECORDING_SEQUENCE_REPEAT_SATUREDAY = 64; // 0x40
   2248     field public static final int RECORDING_SEQUENCE_REPEAT_SUNDAY = 1; // 0x1
   2249     field public static final int RECORDING_SEQUENCE_REPEAT_THURSDAY = 16; // 0x10
   2250     field public static final int RECORDING_SEQUENCE_REPEAT_TUESDAY = 4; // 0x4
   2251     field public static final int RECORDING_SEQUENCE_REPEAT_WEDNESDAY = 8; // 0x8
   2252   }
   2253 
   2254   public static final class HdmiTimerRecordSources.Duration {
   2255   }
   2256 
   2257   public static final class HdmiTimerRecordSources.Time {
   2258   }
   2259 
   2260   public static final class HdmiTimerRecordSources.TimerInfo {
   2261   }
   2262 
   2263   public static final class HdmiTimerRecordSources.TimerRecordSource {
   2264   }
   2265 
   2266   public final class HdmiTvClient extends android.hardware.hdmi.HdmiClient {
   2267     method public void clearTimerRecording(int, int, android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource);
   2268     method public void deviceSelect(int, @NonNull android.hardware.hdmi.HdmiTvClient.SelectCallback);
   2269     method public java.util.List<android.hardware.hdmi.HdmiDeviceInfo> getDeviceList();
   2270     method public int getDeviceType();
   2271     method public void portSelect(int, @NonNull android.hardware.hdmi.HdmiTvClient.SelectCallback);
   2272     method public void sendMhlVendorCommand(int, int, int, byte[]);
   2273     method public void sendStandby(int);
   2274     method public void setHdmiMhlVendorCommandListener(android.hardware.hdmi.HdmiTvClient.HdmiMhlVendorCommandListener);
   2275     method public void setInputChangeListener(android.hardware.hdmi.HdmiTvClient.InputChangeListener);
   2276     method public void setRecordListener(@NonNull android.hardware.hdmi.HdmiRecordListener);
   2277     method public void setSystemAudioMode(boolean, android.hardware.hdmi.HdmiTvClient.SelectCallback);
   2278     method public void setSystemAudioMute(boolean);
   2279     method public void setSystemAudioVolume(int, int, int);
   2280     method public void startOneTouchRecord(int, @NonNull android.hardware.hdmi.HdmiRecordSources.RecordSource);
   2281     method public void startTimerRecording(int, int, android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource);
   2282     method public void stopOneTouchRecord(int);
   2283     field public static final int VENDOR_DATA_SIZE = 16; // 0x10
   2284   }
   2285 
   2286   public static interface HdmiTvClient.HdmiMhlVendorCommandListener {
   2287     method public void onReceived(int, int, int, byte[]);
   2288   }
   2289 
   2290   public static interface HdmiTvClient.InputChangeListener {
   2291     method public void onChanged(android.hardware.hdmi.HdmiDeviceInfo);
   2292   }
   2293 
   2294   public static interface HdmiTvClient.SelectCallback {
   2295     method public void onComplete(int);
   2296   }
   2297 
   2298 }
   2299 
   2300 package android.hardware.location {
   2301 
   2302   public class ContextHubClient implements java.io.Closeable {
   2303     method public void close();
   2304     method @NonNull public android.hardware.location.ContextHubInfo getAttachedHub();
   2305     method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public int sendMessageToNanoApp(@NonNull android.hardware.location.NanoAppMessage);
   2306   }
   2307 
   2308   public class ContextHubClientCallback {
   2309     ctor public ContextHubClientCallback();
   2310     method public void onHubReset(android.hardware.location.ContextHubClient);
   2311     method public void onMessageFromNanoApp(android.hardware.location.ContextHubClient, android.hardware.location.NanoAppMessage);
   2312     method public void onNanoAppAborted(android.hardware.location.ContextHubClient, long, int);
   2313     method public void onNanoAppDisabled(android.hardware.location.ContextHubClient, long);
   2314     method public void onNanoAppEnabled(android.hardware.location.ContextHubClient, long);
   2315     method public void onNanoAppLoaded(android.hardware.location.ContextHubClient, long);
   2316     method public void onNanoAppUnloaded(android.hardware.location.ContextHubClient, long);
   2317   }
   2318 
   2319   public class ContextHubInfo implements android.os.Parcelable {
   2320     ctor public ContextHubInfo();
   2321     method public int describeContents();
   2322     method public byte getChreApiMajorVersion();
   2323     method public byte getChreApiMinorVersion();
   2324     method public short getChrePatchVersion();
   2325     method public long getChrePlatformId();
   2326     method public int getId();
   2327     method public int getMaxPacketLengthBytes();
   2328     method public android.hardware.location.MemoryRegion[] getMemoryRegions();
   2329     method public String getName();
   2330     method public float getPeakMips();
   2331     method public float getPeakPowerDrawMw();
   2332     method public int getPlatformVersion();
   2333     method public float getSleepPowerDrawMw();
   2334     method public int getStaticSwVersion();
   2335     method public float getStoppedPowerDrawMw();
   2336     method public int[] getSupportedSensors();
   2337     method public String getToolchain();
   2338     method public int getToolchainVersion();
   2339     method public String getVendor();
   2340     method public void writeToParcel(android.os.Parcel, int);
   2341     field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.ContextHubInfo> CREATOR;
   2342   }
   2343 
   2344   public class ContextHubIntentEvent {
   2345     method @NonNull public static android.hardware.location.ContextHubIntentEvent fromIntent(@NonNull android.content.Intent);
   2346     method @NonNull public android.hardware.location.ContextHubInfo getContextHubInfo();
   2347     method public int getEventType();
   2348     method public int getNanoAppAbortCode();
   2349     method public long getNanoAppId();
   2350     method @NonNull public android.hardware.location.NanoAppMessage getNanoAppMessage();
   2351   }
   2352 
   2353   public final class ContextHubManager {
   2354     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);
   2355     method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) @NonNull public android.hardware.location.ContextHubClient createClient(@NonNull android.hardware.location.ContextHubInfo, @NonNull android.hardware.location.ContextHubClientCallback);
   2356     method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) @NonNull public android.hardware.location.ContextHubClient createClient(@NonNull android.hardware.location.ContextHubInfo, @NonNull android.app.PendingIntent, long);
   2357     method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) @NonNull public android.hardware.location.ContextHubTransaction<java.lang.Void> disableNanoApp(@NonNull android.hardware.location.ContextHubInfo, long);
   2358     method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) @NonNull public android.hardware.location.ContextHubTransaction<java.lang.Void> enableNanoApp(@NonNull android.hardware.location.ContextHubInfo, long);
   2359     method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public int[] findNanoAppOnHub(int, @NonNull android.hardware.location.NanoAppFilter);
   2360     method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public int[] getContextHubHandles();
   2361     method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public android.hardware.location.ContextHubInfo getContextHubInfo(int);
   2362     method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) @NonNull public java.util.List<android.hardware.location.ContextHubInfo> getContextHubs();
   2363     method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public android.hardware.location.NanoAppInstanceInfo getNanoAppInstanceInfo(int);
   2364     method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public int loadNanoApp(int, @NonNull android.hardware.location.NanoApp);
   2365     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);
   2366     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);
   2367     method @Deprecated public int registerCallback(@NonNull android.hardware.location.ContextHubManager.Callback);
   2368     method @Deprecated public int registerCallback(android.hardware.location.ContextHubManager.Callback, android.os.Handler);
   2369     method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public int sendMessage(int, int, @NonNull android.hardware.location.ContextHubMessage);
   2370     method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public int unloadNanoApp(int);
   2371     method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) @NonNull public android.hardware.location.ContextHubTransaction<java.lang.Void> unloadNanoApp(@NonNull android.hardware.location.ContextHubInfo, long);
   2372     method @Deprecated public int unregisterCallback(@NonNull android.hardware.location.ContextHubManager.Callback);
   2373     field public static final int EVENT_HUB_RESET = 6; // 0x6
   2374     field public static final int EVENT_NANOAPP_ABORTED = 4; // 0x4
   2375     field public static final int EVENT_NANOAPP_DISABLED = 3; // 0x3
   2376     field public static final int EVENT_NANOAPP_ENABLED = 2; // 0x2
   2377     field public static final int EVENT_NANOAPP_LOADED = 0; // 0x0
   2378     field public static final int EVENT_NANOAPP_MESSAGE = 5; // 0x5
   2379     field public static final int EVENT_NANOAPP_UNLOADED = 1; // 0x1
   2380     field public static final String EXTRA_CONTEXT_HUB_INFO = "android.hardware.location.extra.CONTEXT_HUB_INFO";
   2381     field public static final String EXTRA_EVENT_TYPE = "android.hardware.location.extra.EVENT_TYPE";
   2382     field public static final String EXTRA_MESSAGE = "android.hardware.location.extra.MESSAGE";
   2383     field public static final String EXTRA_NANOAPP_ABORT_CODE = "android.hardware.location.extra.NANOAPP_ABORT_CODE";
   2384     field public static final String EXTRA_NANOAPP_ID = "android.hardware.location.extra.NANOAPP_ID";
   2385   }
   2386 
   2387   @Deprecated public abstract static class ContextHubManager.Callback {
   2388     ctor @Deprecated protected ContextHubManager.Callback();
   2389     method @Deprecated public abstract void onMessageReceipt(int, int, @NonNull android.hardware.location.ContextHubMessage);
   2390   }
   2391 
   2392   @Deprecated public class ContextHubMessage implements android.os.Parcelable {
   2393     ctor @Deprecated public ContextHubMessage(int, int, byte[]);
   2394     method @Deprecated public int describeContents();
   2395     method @Deprecated public byte[] getData();
   2396     method @Deprecated public int getMsgType();
   2397     method @Deprecated public int getVersion();
   2398     method @Deprecated public void setMsgData(byte[]);
   2399     method @Deprecated public void setMsgType(int);
   2400     method @Deprecated public void setVersion(int);
   2401     method @Deprecated public void writeToParcel(android.os.Parcel, int);
   2402     field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.ContextHubMessage> CREATOR;
   2403   }
   2404 
   2405   public class ContextHubTransaction<T> {
   2406     method public int getType();
   2407     method public void setOnCompleteListener(@NonNull android.hardware.location.ContextHubTransaction.OnCompleteListener<T>, @NonNull java.util.concurrent.Executor);
   2408     method public void setOnCompleteListener(@NonNull android.hardware.location.ContextHubTransaction.OnCompleteListener<T>);
   2409     method public static String typeToString(int, boolean);
   2410     method public android.hardware.location.ContextHubTransaction.Response<T> waitForResponse(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException, java.util.concurrent.TimeoutException;
   2411     field public static final int RESULT_FAILED_AT_HUB = 5; // 0x5
   2412     field public static final int RESULT_FAILED_BAD_PARAMS = 2; // 0x2
   2413     field public static final int RESULT_FAILED_BUSY = 4; // 0x4
   2414     field public static final int RESULT_FAILED_HAL_UNAVAILABLE = 8; // 0x8
   2415     field public static final int RESULT_FAILED_SERVICE_INTERNAL_FAILURE = 7; // 0x7
   2416     field public static final int RESULT_FAILED_TIMEOUT = 6; // 0x6
   2417     field public static final int RESULT_FAILED_UNINITIALIZED = 3; // 0x3
   2418     field public static final int RESULT_FAILED_UNKNOWN = 1; // 0x1
   2419     field public static final int RESULT_SUCCESS = 0; // 0x0
   2420     field public static final int TYPE_DISABLE_NANOAPP = 3; // 0x3
   2421     field public static final int TYPE_ENABLE_NANOAPP = 2; // 0x2
   2422     field public static final int TYPE_LOAD_NANOAPP = 0; // 0x0
   2423     field public static final int TYPE_QUERY_NANOAPPS = 4; // 0x4
   2424     field public static final int TYPE_UNLOAD_NANOAPP = 1; // 0x1
   2425   }
   2426 
   2427   @java.lang.FunctionalInterface public static interface ContextHubTransaction.OnCompleteListener<L> {
   2428     method public void onComplete(android.hardware.location.ContextHubTransaction<L>, android.hardware.location.ContextHubTransaction.Response<L>);
   2429   }
   2430 
   2431   public static class ContextHubTransaction.Response<R> {
   2432     method public R getContents();
   2433     method public int getResult();
   2434   }
   2435 
   2436   public final class GeofenceHardware {
   2437     method public boolean addGeofence(int, int, android.hardware.location.GeofenceHardwareRequest, android.hardware.location.GeofenceHardwareCallback);
   2438     method public int[] getMonitoringTypes();
   2439     method public int getStatusOfMonitoringType(int);
   2440     method public boolean pauseGeofence(int, int);
   2441     method public boolean registerForMonitorStateChangeCallback(int, android.hardware.location.GeofenceHardwareMonitorCallback);
   2442     method public boolean removeGeofence(int, int);
   2443     method public boolean resumeGeofence(int, int, int);
   2444     method public boolean unregisterForMonitorStateChangeCallback(int, android.hardware.location.GeofenceHardwareMonitorCallback);
   2445     field public static final int GEOFENCE_ENTERED = 1; // 0x1
   2446     field public static final int GEOFENCE_ERROR_ID_EXISTS = 2; // 0x2
   2447     field public static final int GEOFENCE_ERROR_ID_UNKNOWN = 3; // 0x3
   2448     field public static final int GEOFENCE_ERROR_INSUFFICIENT_MEMORY = 6; // 0x6
   2449     field public static final int GEOFENCE_ERROR_INVALID_TRANSITION = 4; // 0x4
   2450     field public static final int GEOFENCE_ERROR_TOO_MANY_GEOFENCES = 1; // 0x1
   2451     field public static final int GEOFENCE_EXITED = 2; // 0x2
   2452     field public static final int GEOFENCE_FAILURE = 5; // 0x5
   2453     field public static final int GEOFENCE_SUCCESS = 0; // 0x0
   2454     field public static final int GEOFENCE_UNCERTAIN = 4; // 0x4
   2455     field public static final int MONITORING_TYPE_FUSED_HARDWARE = 1; // 0x1
   2456     field public static final int MONITORING_TYPE_GPS_HARDWARE = 0; // 0x0
   2457     field public static final int MONITOR_CURRENTLY_AVAILABLE = 0; // 0x0
   2458     field public static final int MONITOR_CURRENTLY_UNAVAILABLE = 1; // 0x1
   2459     field public static final int MONITOR_UNSUPPORTED = 2; // 0x2
   2460     field public static final int SOURCE_TECHNOLOGY_BLUETOOTH = 16; // 0x10
   2461     field public static final int SOURCE_TECHNOLOGY_CELL = 8; // 0x8
   2462     field public static final int SOURCE_TECHNOLOGY_GNSS = 1; // 0x1
   2463     field public static final int SOURCE_TECHNOLOGY_SENSORS = 4; // 0x4
   2464     field public static final int SOURCE_TECHNOLOGY_WIFI = 2; // 0x2
   2465   }
   2466 
   2467   public abstract class GeofenceHardwareCallback {
   2468     ctor public GeofenceHardwareCallback();
   2469     method public void onGeofenceAdd(int, int);
   2470     method public void onGeofencePause(int, int);
   2471     method public void onGeofenceRemove(int, int);
   2472     method public void onGeofenceResume(int, int);
   2473     method public void onGeofenceTransition(int, int, android.location.Location, long, int);
   2474   }
   2475 
   2476   public abstract class GeofenceHardwareMonitorCallback {
   2477     ctor public GeofenceHardwareMonitorCallback();
   2478     method @Deprecated public void onMonitoringSystemChange(int, boolean, android.location.Location);
   2479     method public void onMonitoringSystemChange(android.hardware.location.GeofenceHardwareMonitorEvent);
   2480   }
   2481 
   2482   public class GeofenceHardwareMonitorEvent implements android.os.Parcelable {
   2483     ctor public GeofenceHardwareMonitorEvent(int, int, int, android.location.Location);
   2484     method public int describeContents();
   2485     method public android.location.Location getLocation();
   2486     method public int getMonitoringStatus();
   2487     method public int getMonitoringType();
   2488     method public int getSourceTechnologies();
   2489     method public void writeToParcel(android.os.Parcel, int);
   2490     field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.GeofenceHardwareMonitorEvent> CREATOR;
   2491   }
   2492 
   2493   public final class GeofenceHardwareRequest {
   2494     ctor public GeofenceHardwareRequest();
   2495     method public static android.hardware.location.GeofenceHardwareRequest createCircularGeofence(double, double, double);
   2496     method public int getLastTransition();
   2497     method public double getLatitude();
   2498     method public double getLongitude();
   2499     method public int getMonitorTransitions();
   2500     method public int getNotificationResponsiveness();
   2501     method public double getRadius();
   2502     method public int getSourceTechnologies();
   2503     method public int getUnknownTimer();
   2504     method public void setLastTransition(int);
   2505     method public void setMonitorTransitions(int);
   2506     method public void setNotificationResponsiveness(int);
   2507     method public void setSourceTechnologies(int);
   2508     method public void setUnknownTimer(int);
   2509   }
   2510 
   2511   public class MemoryRegion implements android.os.Parcelable {
   2512     ctor public MemoryRegion(android.os.Parcel);
   2513     method public int describeContents();
   2514     method public int getCapacityBytes();
   2515     method public int getFreeCapacityBytes();
   2516     method public boolean isExecutable();
   2517     method public boolean isReadable();
   2518     method public boolean isWritable();
   2519     method public void writeToParcel(android.os.Parcel, int);
   2520     field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.MemoryRegion> CREATOR;
   2521   }
   2522 
   2523   @Deprecated public class NanoApp implements android.os.Parcelable {
   2524     ctor @Deprecated public NanoApp();
   2525     ctor @Deprecated public NanoApp(int, byte[]);
   2526     ctor @Deprecated public NanoApp(long, byte[]);
   2527     method @Deprecated public int describeContents();
   2528     method @Deprecated public byte[] getAppBinary();
   2529     method @Deprecated public long getAppId();
   2530     method @Deprecated public int getAppVersion();
   2531     method @Deprecated public String getName();
   2532     method @Deprecated public int getNeededExecMemBytes();
   2533     method @Deprecated public int getNeededReadMemBytes();
   2534     method @Deprecated public int[] getNeededSensors();
   2535     method @Deprecated public int getNeededWriteMemBytes();
   2536     method @Deprecated public int[] getOutputEvents();
   2537     method @Deprecated public String getPublisher();
   2538     method @Deprecated public void setAppBinary(byte[]);
   2539     method @Deprecated public void setAppId(long);
   2540     method @Deprecated public void setAppVersion(int);
   2541     method @Deprecated public void setName(String);
   2542     method @Deprecated public void setNeededExecMemBytes(int);
   2543     method @Deprecated public void setNeededReadMemBytes(int);
   2544     method @Deprecated public void setNeededSensors(int[]);
   2545     method @Deprecated public void setNeededWriteMemBytes(int);
   2546     method @Deprecated public void setOutputEvents(int[]);
   2547     method @Deprecated public void setPublisher(String);
   2548     method @Deprecated public void writeToParcel(android.os.Parcel, int);
   2549     field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoApp> CREATOR;
   2550   }
   2551 
   2552   public final class NanoAppBinary implements android.os.Parcelable {
   2553     ctor public NanoAppBinary(byte[]);
   2554     method public int describeContents();
   2555     method public byte[] getBinary();
   2556     method public byte[] getBinaryNoHeader();
   2557     method public int getFlags();
   2558     method public int getHeaderVersion();
   2559     method public long getHwHubType();
   2560     method public long getNanoAppId();
   2561     method public int getNanoAppVersion();
   2562     method public byte getTargetChreApiMajorVersion();
   2563     method public byte getTargetChreApiMinorVersion();
   2564     method public boolean hasValidHeader();
   2565     method public boolean isEncrypted();
   2566     method public boolean isSigned();
   2567     method public void writeToParcel(android.os.Parcel, int);
   2568     field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoAppBinary> CREATOR;
   2569   }
   2570 
   2571   @Deprecated public class NanoAppFilter implements android.os.Parcelable {
   2572     ctor @Deprecated public NanoAppFilter(long, int, int, long);
   2573     method @Deprecated public int describeContents();
   2574     method @Deprecated public boolean testMatch(android.hardware.location.NanoAppInstanceInfo);
   2575     method @Deprecated public void writeToParcel(android.os.Parcel, int);
   2576     field @Deprecated public static final int APP_ANY = -1; // 0xffffffff
   2577     field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoAppFilter> CREATOR;
   2578     field @Deprecated public static final int FLAGS_VERSION_ANY = -1; // 0xffffffff
   2579     field @Deprecated public static final int FLAGS_VERSION_GREAT_THAN = 2; // 0x2
   2580     field @Deprecated public static final int FLAGS_VERSION_LESS_THAN = 4; // 0x4
   2581     field @Deprecated public static final int FLAGS_VERSION_STRICTLY_EQUAL = 8; // 0x8
   2582     field @Deprecated public static final int HUB_ANY = -1; // 0xffffffff
   2583     field @Deprecated public static final int VENDOR_ANY = -1; // 0xffffffff
   2584   }
   2585 
   2586   @Deprecated public class NanoAppInstanceInfo implements android.os.Parcelable {
   2587     ctor @Deprecated public NanoAppInstanceInfo();
   2588     method @Deprecated public int describeContents();
   2589     method @Deprecated public long getAppId();
   2590     method @Deprecated public int getAppVersion();
   2591     method @Deprecated public int getContexthubId();
   2592     method @Deprecated public int getHandle();
   2593     method @Deprecated public String getName();
   2594     method @Deprecated public int getNeededExecMemBytes();
   2595     method @Deprecated public int getNeededReadMemBytes();
   2596     method @Deprecated @NonNull public int[] getNeededSensors();
   2597     method @Deprecated public int getNeededWriteMemBytes();
   2598     method @Deprecated @NonNull public int[] getOutputEvents();
   2599     method @Deprecated public String getPublisher();
   2600     method @Deprecated public void writeToParcel(android.os.Parcel, int);
   2601     field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoAppInstanceInfo> CREATOR;
   2602   }
   2603 
   2604   public final class NanoAppMessage implements android.os.Parcelable {
   2605     method public static android.hardware.location.NanoAppMessage createMessageFromNanoApp(long, int, byte[], boolean);
   2606     method public static android.hardware.location.NanoAppMessage createMessageToNanoApp(long, int, byte[]);
   2607     method public int describeContents();
   2608     method public byte[] getMessageBody();
   2609     method public int getMessageType();
   2610     method public long getNanoAppId();
   2611     method public boolean isBroadcastMessage();
   2612     method public void writeToParcel(android.os.Parcel, int);
   2613     field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoAppMessage> CREATOR;
   2614   }
   2615 
   2616   public final class NanoAppState implements android.os.Parcelable {
   2617     ctor public NanoAppState(long, int, boolean);
   2618     method public int describeContents();
   2619     method public long getNanoAppId();
   2620     method public long getNanoAppVersion();
   2621     method public boolean isEnabled();
   2622     method public void writeToParcel(android.os.Parcel, int);
   2623     field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoAppState> CREATOR;
   2624   }
   2625 
   2626 }
   2627 
   2628 package android.hardware.radio {
   2629 
   2630   public final class Announcement implements android.os.Parcelable {
   2631     method public int describeContents();
   2632     method @NonNull public android.hardware.radio.ProgramSelector getSelector();
   2633     method public int getType();
   2634     method @NonNull public java.util.Map<java.lang.String,java.lang.String> getVendorInfo();
   2635     method public void writeToParcel(android.os.Parcel, int);
   2636     field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.Announcement> CREATOR;
   2637     field public static final int TYPE_EMERGENCY = 1; // 0x1
   2638     field public static final int TYPE_EVENT = 6; // 0x6
   2639     field public static final int TYPE_MISC = 8; // 0x8
   2640     field public static final int TYPE_NEWS = 5; // 0x5
   2641     field public static final int TYPE_SPORT = 7; // 0x7
   2642     field public static final int TYPE_TRAFFIC = 3; // 0x3
   2643     field public static final int TYPE_WARNING = 2; // 0x2
   2644     field public static final int TYPE_WEATHER = 4; // 0x4
   2645   }
   2646 
   2647   public static interface Announcement.OnListUpdatedListener {
   2648     method public void onListUpdated(java.util.Collection<android.hardware.radio.Announcement>);
   2649   }
   2650 
   2651   public final class ProgramList implements java.lang.AutoCloseable {
   2652     method public void addOnCompleteListener(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.radio.ProgramList.OnCompleteListener);
   2653     method public void addOnCompleteListener(@NonNull android.hardware.radio.ProgramList.OnCompleteListener);
   2654     method public void close();
   2655     method @Nullable public android.hardware.radio.RadioManager.ProgramInfo get(@NonNull android.hardware.radio.ProgramSelector.Identifier);
   2656     method public void registerListCallback(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.radio.ProgramList.ListCallback);
   2657     method public void registerListCallback(@NonNull android.hardware.radio.ProgramList.ListCallback);
   2658     method public void removeOnCompleteListener(@NonNull android.hardware.radio.ProgramList.OnCompleteListener);
   2659     method @NonNull public java.util.List<android.hardware.radio.RadioManager.ProgramInfo> toList();
   2660     method public void unregisterListCallback(@NonNull android.hardware.radio.ProgramList.ListCallback);
   2661   }
   2662 
   2663   public static final class ProgramList.Filter implements android.os.Parcelable {
   2664     ctor public ProgramList.Filter(@NonNull java.util.Set<java.lang.Integer>, @NonNull java.util.Set<android.hardware.radio.ProgramSelector.Identifier>, boolean, boolean);
   2665     method public boolean areCategoriesIncluded();
   2666     method public boolean areModificationsExcluded();
   2667     method public int describeContents();
   2668     method @NonNull public java.util.Set<java.lang.Integer> getIdentifierTypes();
   2669     method @NonNull public java.util.Set<android.hardware.radio.ProgramSelector.Identifier> getIdentifiers();
   2670     method public void writeToParcel(android.os.Parcel, int);
   2671     field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.ProgramList.Filter> CREATOR;
   2672   }
   2673 
   2674   public abstract static class ProgramList.ListCallback {
   2675     ctor public ProgramList.ListCallback();
   2676     method public void onItemChanged(@NonNull android.hardware.radio.ProgramSelector.Identifier);
   2677     method public void onItemRemoved(@NonNull android.hardware.radio.ProgramSelector.Identifier);
   2678   }
   2679 
   2680   public static interface ProgramList.OnCompleteListener {
   2681     method public void onComplete();
   2682   }
   2683 
   2684   public final class ProgramSelector implements android.os.Parcelable {
   2685     ctor public ProgramSelector(@android.hardware.radio.ProgramSelector.ProgramType int, @NonNull android.hardware.radio.ProgramSelector.Identifier, @Nullable android.hardware.radio.ProgramSelector.Identifier[], @Nullable long[]);
   2686     method @NonNull public static android.hardware.radio.ProgramSelector createAmFmSelector(@android.hardware.radio.RadioManager.Band int, int);
   2687     method @NonNull public static android.hardware.radio.ProgramSelector createAmFmSelector(@android.hardware.radio.RadioManager.Band int, int, int);
   2688     method public int describeContents();
   2689     method @NonNull public android.hardware.radio.ProgramSelector.Identifier[] getAllIds(@android.hardware.radio.ProgramSelector.IdentifierType int);
   2690     method public long getFirstId(@android.hardware.radio.ProgramSelector.IdentifierType int);
   2691     method @NonNull public android.hardware.radio.ProgramSelector.Identifier getPrimaryId();
   2692     method @Deprecated @android.hardware.radio.ProgramSelector.ProgramType public int getProgramType();
   2693     method @NonNull public android.hardware.radio.ProgramSelector.Identifier[] getSecondaryIds();
   2694     method @Deprecated @NonNull public long[] getVendorIds();
   2695     method @NonNull public android.hardware.radio.ProgramSelector withSecondaryPreferred(@NonNull android.hardware.radio.ProgramSelector.Identifier);
   2696     method public void writeToParcel(android.os.Parcel, int);
   2697     field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.ProgramSelector> CREATOR;
   2698     field public static final int IDENTIFIER_TYPE_AMFM_FREQUENCY = 1; // 0x1
   2699     field public static final int IDENTIFIER_TYPE_DAB_ENSEMBLE = 6; // 0x6
   2700     field public static final int IDENTIFIER_TYPE_DAB_FREQUENCY = 8; // 0x8
   2701     field public static final int IDENTIFIER_TYPE_DAB_SCID = 7; // 0x7
   2702     field public static final int IDENTIFIER_TYPE_DAB_SIDECC = 5; // 0x5
   2703     field public static final int IDENTIFIER_TYPE_DAB_SID_EXT = 5; // 0x5
   2704     field public static final int IDENTIFIER_TYPE_DRMO_FREQUENCY = 10; // 0xa
   2705     field @Deprecated public static final int IDENTIFIER_TYPE_DRMO_MODULATION = 11; // 0xb
   2706     field public static final int IDENTIFIER_TYPE_DRMO_SERVICE_ID = 9; // 0x9
   2707     field public static final int IDENTIFIER_TYPE_HD_STATION_ID_EXT = 3; // 0x3
   2708     field public static final int IDENTIFIER_TYPE_HD_STATION_NAME = 10004; // 0x2714
   2709     field @Deprecated public static final int IDENTIFIER_TYPE_HD_SUBCHANNEL = 4; // 0x4
   2710     field public static final int IDENTIFIER_TYPE_INVALID = 0; // 0x0
   2711     field public static final int IDENTIFIER_TYPE_RDS_PI = 2; // 0x2
   2712     field public static final int IDENTIFIER_TYPE_SXM_CHANNEL = 13; // 0xd
   2713     field public static final int IDENTIFIER_TYPE_SXM_SERVICE_ID = 12; // 0xc
   2714     field public static final int IDENTIFIER_TYPE_VENDOR_END = 1999; // 0x7cf
   2715     field @Deprecated public static final int IDENTIFIER_TYPE_VENDOR_PRIMARY_END = 1999; // 0x7cf
   2716     field @Deprecated public static final int IDENTIFIER_TYPE_VENDOR_PRIMARY_START = 1000; // 0x3e8
   2717     field public static final int IDENTIFIER_TYPE_VENDOR_START = 1000; // 0x3e8
   2718     field @Deprecated public static final int PROGRAM_TYPE_AM = 1; // 0x1
   2719     field @Deprecated public static final int PROGRAM_TYPE_AM_HD = 3; // 0x3
   2720     field @Deprecated public static final int PROGRAM_TYPE_DAB = 5; // 0x5
   2721     field @Deprecated public static final int PROGRAM_TYPE_DRMO = 6; // 0x6
   2722     field @Deprecated public static final int PROGRAM_TYPE_FM = 2; // 0x2
   2723     field @Deprecated public static final int PROGRAM_TYPE_FM_HD = 4; // 0x4
   2724     field @Deprecated public static final int PROGRAM_TYPE_INVALID = 0; // 0x0
   2725     field @Deprecated public static final int PROGRAM_TYPE_SXM = 7; // 0x7
   2726     field @Deprecated public static final int PROGRAM_TYPE_VENDOR_END = 1999; // 0x7cf
   2727     field @Deprecated public static final int PROGRAM_TYPE_VENDOR_START = 1000; // 0x3e8
   2728   }
   2729 
   2730   public static final class ProgramSelector.Identifier implements android.os.Parcelable {
   2731     ctor public ProgramSelector.Identifier(@android.hardware.radio.ProgramSelector.IdentifierType int, long);
   2732     method public int describeContents();
   2733     method @android.hardware.radio.ProgramSelector.IdentifierType public int getType();
   2734     method public long getValue();
   2735     method public void writeToParcel(android.os.Parcel, int);
   2736     field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.ProgramSelector.Identifier> CREATOR;
   2737   }
   2738 
   2739   @IntDef(prefix={"IDENTIFIER_TYPE_"}, value={android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_INVALID, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_AMFM_FREQUENCY, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_RDS_PI, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_HD_STATION_ID_EXT, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_HD_SUBCHANNEL, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_HD_STATION_NAME, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_DAB_SID_EXT, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_DAB_SIDECC, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_DAB_ENSEMBLE, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_DAB_SCID, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_DAB_FREQUENCY, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_DRMO_SERVICE_ID, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_DRMO_FREQUENCY, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_DRMO_MODULATION, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_SXM_SERVICE_ID, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_SXM_CHANNEL}) @IntRange(from=android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_VENDOR_START, to=android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_VENDOR_END) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface ProgramSelector.IdentifierType {
   2740   }
   2741 
   2742   @Deprecated @IntDef(prefix={"PROGRAM_TYPE_"}, value={android.hardware.radio.ProgramSelector.PROGRAM_TYPE_INVALID, android.hardware.radio.ProgramSelector.PROGRAM_TYPE_AM, android.hardware.radio.ProgramSelector.PROGRAM_TYPE_FM, android.hardware.radio.ProgramSelector.PROGRAM_TYPE_AM_HD, android.hardware.radio.ProgramSelector.PROGRAM_TYPE_FM_HD, android.hardware.radio.ProgramSelector.PROGRAM_TYPE_DAB, android.hardware.radio.ProgramSelector.PROGRAM_TYPE_DRMO, android.hardware.radio.ProgramSelector.PROGRAM_TYPE_SXM}) @IntRange(from=android.hardware.radio.ProgramSelector.PROGRAM_TYPE_VENDOR_START, to=android.hardware.radio.ProgramSelector.PROGRAM_TYPE_VENDOR_END) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface ProgramSelector.ProgramType {
   2743   }
   2744 
   2745   public class RadioManager {
   2746     method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public void addAnnouncementListener(@NonNull java.util.Set<java.lang.Integer>, @NonNull android.hardware.radio.Announcement.OnListUpdatedListener);
   2747     method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public void addAnnouncementListener(@NonNull java.util.concurrent.Executor, @NonNull java.util.Set<java.lang.Integer>, @NonNull android.hardware.radio.Announcement.OnListUpdatedListener);
   2748     method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public int listModules(java.util.List<android.hardware.radio.RadioManager.ModuleProperties>);
   2749     method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public android.hardware.radio.RadioTuner openTuner(int, android.hardware.radio.RadioManager.BandConfig, boolean, android.hardware.radio.RadioTuner.Callback, android.os.Handler);
   2750     method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public void removeAnnouncementListener(@NonNull android.hardware.radio.Announcement.OnListUpdatedListener);
   2751     field public static final int BAND_AM = 0; // 0x0
   2752     field public static final int BAND_AM_HD = 3; // 0x3
   2753     field public static final int BAND_FM = 1; // 0x1
   2754     field public static final int BAND_FM_HD = 2; // 0x2
   2755     field public static final int BAND_INVALID = -1; // 0xffffffff
   2756     field public static final int CLASS_AM_FM = 0; // 0x0
   2757     field public static final int CLASS_DT = 2; // 0x2
   2758     field public static final int CLASS_SAT = 1; // 0x1
   2759     field public static final int CONFIG_DAB_DAB_LINKING = 6; // 0x6
   2760     field public static final int CONFIG_DAB_DAB_SOFT_LINKING = 8; // 0x8
   2761     field public static final int CONFIG_DAB_FM_LINKING = 7; // 0x7
   2762     field public static final int CONFIG_DAB_FM_SOFT_LINKING = 9; // 0x9
   2763     field public static final int CONFIG_FORCE_ANALOG = 2; // 0x2
   2764     field public static final int CONFIG_FORCE_DIGITAL = 3; // 0x3
   2765     field public static final int CONFIG_FORCE_MONO = 1; // 0x1
   2766     field public static final int CONFIG_RDS_AF = 4; // 0x4
   2767     field public static final int CONFIG_RDS_REG = 5; // 0x5
   2768     field public static final int REGION_ITU_1 = 0; // 0x0
   2769     field public static final int REGION_ITU_2 = 1; // 0x1
   2770     field public static final int REGION_JAPAN = 3; // 0x3
   2771     field public static final int REGION_KOREA = 4; // 0x4
   2772     field public static final int REGION_OIRT = 2; // 0x2
   2773     field public static final int STATUS_BAD_VALUE = -22; // 0xffffffea
   2774     field public static final int STATUS_DEAD_OBJECT = -32; // 0xffffffe0
   2775     field public static final int STATUS_ERROR = -2147483648; // 0x80000000
   2776     field public static final int STATUS_INVALID_OPERATION = -38; // 0xffffffda
   2777     field public static final int STATUS_NO_INIT = -19; // 0xffffffed
   2778     field public static final int STATUS_OK = 0; // 0x0
   2779     field public static final int STATUS_PERMISSION_DENIED = -1; // 0xffffffff
   2780     field public static final int STATUS_TIMED_OUT = -110; // 0xffffff92
   2781   }
   2782 
   2783   public static class RadioManager.AmBandConfig extends android.hardware.radio.RadioManager.BandConfig {
   2784     method public boolean getStereo();
   2785     field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.AmBandConfig> CREATOR;
   2786   }
   2787 
   2788   public static class RadioManager.AmBandConfig.Builder {
   2789     ctor public RadioManager.AmBandConfig.Builder(android.hardware.radio.RadioManager.AmBandDescriptor);
   2790     ctor public RadioManager.AmBandConfig.Builder(android.hardware.radio.RadioManager.AmBandConfig);
   2791     method public android.hardware.radio.RadioManager.AmBandConfig build();
   2792     method public android.hardware.radio.RadioManager.AmBandConfig.Builder setStereo(boolean);
   2793   }
   2794 
   2795   public static class RadioManager.AmBandDescriptor extends android.hardware.radio.RadioManager.BandDescriptor {
   2796     method public boolean isStereoSupported();
   2797     field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.AmBandDescriptor> CREATOR;
   2798   }
   2799 
   2800   @IntDef(prefix={"BAND_"}, value={android.hardware.radio.RadioManager.BAND_INVALID, android.hardware.radio.RadioManager.BAND_AM, android.hardware.radio.RadioManager.BAND_FM, android.hardware.radio.RadioManager.BAND_AM_HD, android.hardware.radio.RadioManager.BAND_FM_HD}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface RadioManager.Band {
   2801   }
   2802 
   2803   public static class RadioManager.BandConfig implements android.os.Parcelable {
   2804     method public int describeContents();
   2805     method public int getLowerLimit();
   2806     method public int getRegion();
   2807     method public int getSpacing();
   2808     method public int getType();
   2809     method public int getUpperLimit();
   2810     method public void writeToParcel(android.os.Parcel, int);
   2811     field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.BandConfig> CREATOR;
   2812   }
   2813 
   2814   public static class RadioManager.BandDescriptor implements android.os.Parcelable {
   2815     method public int describeContents();
   2816     method public int getLowerLimit();
   2817     method public int getRegion();
   2818     method public int getSpacing();
   2819     method public int getType();
   2820     method public int getUpperLimit();
   2821     method public boolean isAmBand();
   2822     method public boolean isFmBand();
   2823     method public void writeToParcel(android.os.Parcel, int);
   2824     field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.BandDescriptor> CREATOR;
   2825   }
   2826 
   2827   public static class RadioManager.FmBandConfig extends android.hardware.radio.RadioManager.BandConfig {
   2828     method public boolean getAf();
   2829     method public boolean getEa();
   2830     method public boolean getRds();
   2831     method public boolean getStereo();
   2832     method public boolean getTa();
   2833     field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.FmBandConfig> CREATOR;
   2834   }
   2835 
   2836   public static class RadioManager.FmBandConfig.Builder {
   2837     ctor public RadioManager.FmBandConfig.Builder(android.hardware.radio.RadioManager.FmBandDescriptor);
   2838     ctor public RadioManager.FmBandConfig.Builder(android.hardware.radio.RadioManager.FmBandConfig);
   2839     method public android.hardware.radio.RadioManager.FmBandConfig build();
   2840     method public android.hardware.radio.RadioManager.FmBandConfig.Builder setAf(boolean);
   2841     method public android.hardware.radio.RadioManager.FmBandConfig.Builder setEa(boolean);
   2842     method public android.hardware.radio.RadioManager.FmBandConfig.Builder setRds(boolean);
   2843     method public android.hardware.radio.RadioManager.FmBandConfig.Builder setStereo(boolean);
   2844     method public android.hardware.radio.RadioManager.FmBandConfig.Builder setTa(boolean);
   2845   }
   2846 
   2847   public static class RadioManager.FmBandDescriptor extends android.hardware.radio.RadioManager.BandDescriptor {
   2848     method public boolean isAfSupported();
   2849     method public boolean isEaSupported();
   2850     method public boolean isRdsSupported();
   2851     method public boolean isStereoSupported();
   2852     method public boolean isTaSupported();
   2853     field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.FmBandDescriptor> CREATOR;
   2854   }
   2855 
   2856   public static class RadioManager.ModuleProperties implements android.os.Parcelable {
   2857     method public int describeContents();
   2858     method public android.hardware.radio.RadioManager.BandDescriptor[] getBands();
   2859     method public int getClassId();
   2860     method @Nullable public java.util.Map<java.lang.String,java.lang.Integer> getDabFrequencyTable();
   2861     method public int getId();
   2862     method public String getImplementor();
   2863     method public int getNumAudioSources();
   2864     method public int getNumTuners();
   2865     method public String getProduct();
   2866     method public String getSerial();
   2867     method @NonNull public String getServiceName();
   2868     method @NonNull public java.util.Map<java.lang.String,java.lang.String> getVendorInfo();
   2869     method public String getVersion();
   2870     method public boolean isBackgroundScanningSupported();
   2871     method public boolean isCaptureSupported();
   2872     method public boolean isInitializationRequired();
   2873     method public boolean isProgramIdentifierSupported(@android.hardware.radio.ProgramSelector.IdentifierType int);
   2874     method public boolean isProgramTypeSupported(@android.hardware.radio.ProgramSelector.ProgramType int);
   2875     method public void writeToParcel(android.os.Parcel, int);
   2876     field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.ModuleProperties> CREATOR;
   2877   }
   2878 
   2879   public static class RadioManager.ProgramInfo implements android.os.Parcelable {
   2880     method public int describeContents();
   2881     method @Deprecated public int getChannel();
   2882     method @Nullable public android.hardware.radio.ProgramSelector.Identifier getLogicallyTunedTo();
   2883     method public android.hardware.radio.RadioMetadata getMetadata();
   2884     method @Nullable public android.hardware.radio.ProgramSelector.Identifier getPhysicallyTunedTo();
   2885     method @Nullable public java.util.Collection<android.hardware.radio.ProgramSelector.Identifier> getRelatedContent();
   2886     method @NonNull public android.hardware.radio.ProgramSelector getSelector();
   2887     method public int getSignalStrength();
   2888     method @Deprecated public int getSubChannel();
   2889     method @NonNull public java.util.Map<java.lang.String,java.lang.String> getVendorInfo();
   2890     method @Deprecated public boolean isDigital();
   2891     method public boolean isLive();
   2892     method public boolean isMuted();
   2893     method public boolean isStereo();
   2894     method public boolean isTrafficAnnouncementActive();
   2895     method public boolean isTrafficProgram();
   2896     method public boolean isTuned();
   2897     method public void writeToParcel(android.os.Parcel, int);
   2898     field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.ProgramInfo> CREATOR;
   2899   }
   2900 
   2901   public final class RadioMetadata implements android.os.Parcelable {
   2902     method public boolean containsKey(String);
   2903     method public int describeContents();
   2904     method @Deprecated public android.graphics.Bitmap getBitmap(String);
   2905     method public android.hardware.radio.RadioMetadata.Clock getClock(String);
   2906     method public int getInt(String);
   2907     method public String getString(String);
   2908     method public java.util.Set<java.lang.String> keySet();
   2909     method public int size();
   2910     method public void writeToParcel(android.os.Parcel, int);
   2911     field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioMetadata> CREATOR;
   2912     field public static final String METADATA_KEY_ALBUM = "android.hardware.radio.metadata.ALBUM";
   2913     field public static final String METADATA_KEY_ART = "android.hardware.radio.metadata.ART";
   2914     field public static final String METADATA_KEY_ARTIST = "android.hardware.radio.metadata.ARTIST";
   2915     field public static final String METADATA_KEY_CLOCK = "android.hardware.radio.metadata.CLOCK";
   2916     field public static final String METADATA_KEY_DAB_COMPONENT_NAME = "android.hardware.radio.metadata.DAB_COMPONENT_NAME";
   2917     field public static final String METADATA_KEY_DAB_COMPONENT_NAME_SHORT = "android.hardware.radio.metadata.DAB_COMPONENT_NAME_SHORT";
   2918     field public static final String METADATA_KEY_DAB_ENSEMBLE_NAME = "android.hardware.radio.metadata.DAB_ENSEMBLE_NAME";
   2919     field public static final String METADATA_KEY_DAB_ENSEMBLE_NAME_SHORT = "android.hardware.radio.metadata.DAB_ENSEMBLE_NAME_SHORT";
   2920     field public static final String METADATA_KEY_DAB_SERVICE_NAME = "android.hardware.radio.metadata.DAB_SERVICE_NAME";
   2921     field public static final String METADATA_KEY_DAB_SERVICE_NAME_SHORT = "android.hardware.radio.metadata.DAB_SERVICE_NAME_SHORT";
   2922     field public static final String METADATA_KEY_GENRE = "android.hardware.radio.metadata.GENRE";
   2923     field public static final String METADATA_KEY_ICON = "android.hardware.radio.metadata.ICON";
   2924     field public static final String METADATA_KEY_PROGRAM_NAME = "android.hardware.radio.metadata.PROGRAM_NAME";
   2925     field public static final String METADATA_KEY_RBDS_PTY = "android.hardware.radio.metadata.RBDS_PTY";
   2926     field public static final String METADATA_KEY_RDS_PI = "android.hardware.radio.metadata.RDS_PI";
   2927     field public static final String METADATA_KEY_RDS_PS = "android.hardware.radio.metadata.RDS_PS";
   2928     field public static final String METADATA_KEY_RDS_PTY = "android.hardware.radio.metadata.RDS_PTY";
   2929     field public static final String METADATA_KEY_RDS_RT = "android.hardware.radio.metadata.RDS_RT";
   2930     field public static final String METADATA_KEY_TITLE = "android.hardware.radio.metadata.TITLE";
   2931   }
   2932 
   2933   public static final class RadioMetadata.Builder {
   2934     ctor public RadioMetadata.Builder();
   2935     ctor public RadioMetadata.Builder(android.hardware.radio.RadioMetadata);
   2936     method public android.hardware.radio.RadioMetadata build();
   2937     method public android.hardware.radio.RadioMetadata.Builder putBitmap(String, android.graphics.Bitmap);
   2938     method public android.hardware.radio.RadioMetadata.Builder putClock(String, long, int);
   2939     method public android.hardware.radio.RadioMetadata.Builder putInt(String, int);
   2940     method public android.hardware.radio.RadioMetadata.Builder putString(String, String);
   2941   }
   2942 
   2943   public static final class RadioMetadata.Clock implements android.os.Parcelable {
   2944     ctor public RadioMetadata.Clock(long, int);
   2945     method public int describeContents();
   2946     method public int getTimezoneOffsetMinutes();
   2947     method public long getUtcEpochSeconds();
   2948     method public void writeToParcel(android.os.Parcel, int);
   2949     field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioMetadata.Clock> CREATOR;
   2950   }
   2951 
   2952   public abstract class RadioTuner {
   2953     ctor public RadioTuner();
   2954     method public abstract int cancel();
   2955     method public abstract void cancelAnnouncement();
   2956     method public abstract void close();
   2957     method @Deprecated public abstract int getConfiguration(android.hardware.radio.RadioManager.BandConfig[]);
   2958     method @Nullable public android.hardware.radio.ProgramList getDynamicProgramList(@Nullable android.hardware.radio.ProgramList.Filter);
   2959     method public abstract boolean getMute();
   2960     method @NonNull public java.util.Map<java.lang.String,java.lang.String> getParameters(@NonNull java.util.List<java.lang.String>);
   2961     method @Deprecated public abstract int getProgramInformation(android.hardware.radio.RadioManager.ProgramInfo[]);
   2962     method @Deprecated @NonNull public abstract java.util.List<android.hardware.radio.RadioManager.ProgramInfo> getProgramList(@Nullable java.util.Map<java.lang.String,java.lang.String>);
   2963     method public abstract boolean hasControl();
   2964     method @Deprecated public abstract boolean isAnalogForced();
   2965     method @Deprecated public abstract boolean isAntennaConnected();
   2966     method public boolean isConfigFlagSet(int);
   2967     method public boolean isConfigFlagSupported(int);
   2968     method public abstract int scan(int, boolean);
   2969     method @Deprecated public abstract void setAnalogForced(boolean);
   2970     method public void setConfigFlag(int, boolean);
   2971     method @Deprecated public abstract int setConfiguration(android.hardware.radio.RadioManager.BandConfig);
   2972     method public abstract int setMute(boolean);
   2973     method @NonNull public java.util.Map<java.lang.String,java.lang.String> setParameters(@NonNull java.util.Map<java.lang.String,java.lang.String>);
   2974     method public abstract boolean startBackgroundScan();
   2975     method public abstract int step(int, boolean);
   2976     method @Deprecated public abstract int tune(int, int);
   2977     method public abstract void tune(@NonNull android.hardware.radio.ProgramSelector);
   2978     field public static final int DIRECTION_DOWN = 1; // 0x1
   2979     field public static final int DIRECTION_UP = 0; // 0x0
   2980     field @Deprecated public static final int ERROR_BACKGROUND_SCAN_FAILED = 6; // 0x6
   2981     field @Deprecated public static final int ERROR_BACKGROUND_SCAN_UNAVAILABLE = 5; // 0x5
   2982     field @Deprecated public static final int ERROR_CANCELLED = 2; // 0x2
   2983     field @Deprecated public static final int ERROR_CONFIG = 4; // 0x4
   2984     field @Deprecated public static final int ERROR_HARDWARE_FAILURE = 0; // 0x0
   2985     field @Deprecated public static final int ERROR_SCAN_TIMEOUT = 3; // 0x3
   2986     field @Deprecated public static final int ERROR_SERVER_DIED = 1; // 0x1
   2987   }
   2988 
   2989   public abstract static class RadioTuner.Callback {
   2990     ctor public RadioTuner.Callback();
   2991     method public void onAntennaState(boolean);
   2992     method public void onBackgroundScanAvailabilityChange(boolean);
   2993     method public void onBackgroundScanComplete();
   2994     method @Deprecated public void onConfigurationChanged(android.hardware.radio.RadioManager.BandConfig);
   2995     method public void onControlChanged(boolean);
   2996     method public void onEmergencyAnnouncement(boolean);
   2997     method @Deprecated public void onError(int);
   2998     method @Deprecated public void onMetadataChanged(android.hardware.radio.RadioMetadata);
   2999     method public void onParametersUpdated(@NonNull java.util.Map<java.lang.String,java.lang.String>);
   3000     method public void onProgramInfoChanged(android.hardware.radio.RadioManager.ProgramInfo);
   3001     method public void onProgramListChanged();
   3002     method public void onTrafficAnnouncement(boolean);
   3003     method public void onTuneFailed(int, @Nullable android.hardware.radio.ProgramSelector);
   3004   }
   3005 
   3006 }
   3007 
   3008 package android.hardware.soundtrigger {
   3009 
   3010   public class SoundTrigger {
   3011     field public static final int STATUS_OK = 0; // 0x0
   3012   }
   3013 
   3014   public static class SoundTrigger.RecognitionEvent {
   3015     method @Nullable public android.media.AudioFormat getCaptureFormat();
   3016     method public int getCaptureSession();
   3017     method public byte[] getData();
   3018     method public boolean isCaptureAvailable();
   3019   }
   3020 
   3021 }
   3022 
   3023 package android.hardware.usb {
   3024 
   3025   public class UsbDeviceConnection {
   3026     method public boolean resetDevice();
   3027   }
   3028 
   3029   public class UsbManager {
   3030     method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_USB) public java.util.List<android.hardware.usb.UsbPort> getPorts();
   3031     method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void grantPermission(android.hardware.usb.UsbDevice, String);
   3032     field @RequiresPermission(android.Manifest.permission.MANAGE_USB) public static final String ACTION_USB_PORT_CHANGED = "android.hardware.usb.action.USB_PORT_CHANGED";
   3033   }
   3034 
   3035   public final class UsbPort {
   3036     method @RequiresPermission(android.Manifest.permission.MANAGE_USB) @Nullable public android.hardware.usb.UsbPortStatus getStatus();
   3037     method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void setRoles(int, int);
   3038   }
   3039 
   3040   public final class UsbPortStatus implements android.os.Parcelable {
   3041     method public int describeContents();
   3042     method public int getCurrentDataRole();
   3043     method public int getCurrentMode();
   3044     method public int getCurrentPowerRole();
   3045     method public int getSupportedRoleCombinations();
   3046     method public boolean isConnected();
   3047     method public boolean isRoleCombinationSupported(int, int);
   3048     method public void writeToParcel(android.os.Parcel, int);
   3049     field @NonNull public static final android.os.Parcelable.Creator<android.hardware.usb.UsbPortStatus> CREATOR;
   3050     field public static final int DATA_ROLE_DEVICE = 2; // 0x2
   3051     field public static final int DATA_ROLE_HOST = 1; // 0x1
   3052     field public static final int DATA_ROLE_NONE = 0; // 0x0
   3053     field public static final int MODE_AUDIO_ACCESSORY = 4; // 0x4
   3054     field public static final int MODE_DEBUG_ACCESSORY = 8; // 0x8
   3055     field public static final int MODE_DFP = 2; // 0x2
   3056     field public static final int MODE_NONE = 0; // 0x0
   3057     field public static final int MODE_UFP = 1; // 0x1
   3058     field public static final int POWER_ROLE_NONE = 0; // 0x0
   3059     field public static final int POWER_ROLE_SINK = 2; // 0x2
   3060     field public static final int POWER_ROLE_SOURCE = 1; // 0x1
   3061   }
   3062 
   3063 }
   3064 
   3065 package android.location {
   3066 
   3067   public abstract class BatchedLocationCallback {
   3068     ctor public BatchedLocationCallback();
   3069     method public void onLocationBatch(java.util.List<android.location.Location>);
   3070   }
   3071 
   3072   public final class GnssCapabilities {
   3073     method public boolean hasGeofencing();
   3074     method public boolean hasLowPowerMode();
   3075     method public boolean hasMeasurementCorrections();
   3076     method public boolean hasMeasurementCorrectionsExcessPathLength();
   3077     method public boolean hasMeasurementCorrectionsLosSats();
   3078     method public boolean hasMeasurementCorrectionsReflectingPane();
   3079     method public boolean hasMeasurements();
   3080     method public boolean hasNavMessages();
   3081     method public boolean hasSatelliteBlacklist();
   3082   }
   3083 
   3084   public final class GnssMeasurementCorrections implements android.os.Parcelable {
   3085     method public int describeContents();
   3086     method @FloatRange(from=-1000.0F, to=10000.0f) public double getAltitudeMeters();
   3087     method @FloatRange(from=0.0f) public double getHorizontalPositionUncertaintyMeters();
   3088     method @FloatRange(from=-90.0F, to=90.0f) public double getLatitudeDegrees();
   3089     method @FloatRange(from=-180.0F, to=180.0f) public double getLongitudeDegrees();
   3090     method @NonNull public java.util.List<android.location.GnssSingleSatCorrection> getSingleSatelliteCorrectionList();
   3091     method @IntRange(from=0) public long getToaGpsNanosecondsOfWeek();
   3092     method @FloatRange(from=0.0f) public double getVerticalPositionUncertaintyMeters();
   3093     method public void writeToParcel(@NonNull android.os.Parcel, int);
   3094     field public static final android.os.Parcelable.Creator<android.location.GnssMeasurementCorrections> CREATOR;
   3095   }
   3096 
   3097   public static final class GnssMeasurementCorrections.Builder {
   3098     ctor public GnssMeasurementCorrections.Builder();
   3099     method @NonNull public android.location.GnssMeasurementCorrections build();
   3100     method @NonNull public android.location.GnssMeasurementCorrections.Builder setAltitudeMeters(@FloatRange(from=-1000.0F, to=10000.0f) double);
   3101     method @NonNull public android.location.GnssMeasurementCorrections.Builder setHorizontalPositionUncertaintyMeters(@FloatRange(from=0.0f) double);
   3102     method @NonNull public android.location.GnssMeasurementCorrections.Builder setLatitudeDegrees(@FloatRange(from=-90.0F, to=90.0f) double);
   3103     method @NonNull public android.location.GnssMeasurementCorrections.Builder setLongitudeDegrees(@FloatRange(from=-180.0F, to=180.0f) double);
   3104     method @NonNull public android.location.GnssMeasurementCorrections.Builder setSingleSatelliteCorrectionList(@NonNull java.util.List<android.location.GnssSingleSatCorrection>);
   3105     method @NonNull public android.location.GnssMeasurementCorrections.Builder setToaGpsNanosecondsOfWeek(@IntRange(from=0) long);
   3106     method @NonNull public android.location.GnssMeasurementCorrections.Builder setVerticalPositionUncertaintyMeters(@FloatRange(from=0.0f) double);
   3107   }
   3108 
   3109   public final class GnssReflectingPlane implements android.os.Parcelable {
   3110     method public int describeContents();
   3111     method @FloatRange(from=-1000.0F, to=10000.0f) public double getAltitudeMeters();
   3112     method @FloatRange(from=0.0f, to=360.0f) public double getAzimuthDegrees();
   3113     method @FloatRange(from=-90.0F, to=90.0f) public double getLatitudeDegrees();
   3114     method @FloatRange(from=-180.0F, to=180.0f) public double getLongitudeDegrees();
   3115     method public void writeToParcel(@NonNull android.os.Parcel, int);
   3116     field public static final android.os.Parcelable.Creator<android.location.GnssReflectingPlane> CREATOR;
   3117   }
   3118 
   3119   public static final class GnssReflectingPlane.Builder {
   3120     ctor public GnssReflectingPlane.Builder();
   3121     method @NonNull public android.location.GnssReflectingPlane build();
   3122     method @NonNull public android.location.GnssReflectingPlane.Builder setAltitudeMeters(@FloatRange(from=-1000.0F, to=10000.0f) double);
   3123     method @NonNull public android.location.GnssReflectingPlane.Builder setAzimuthDegrees(@FloatRange(from=0.0f, to=360.0f) double);
   3124     method @NonNull public android.location.GnssReflectingPlane.Builder setLatitudeDegrees(@FloatRange(from=-90.0F, to=90.0f) double);
   3125     method @NonNull public android.location.GnssReflectingPlane.Builder setLongitudeDegrees(@FloatRange(from=-180.0F, to=180.0f) double);
   3126   }
   3127 
   3128   public final class GnssSingleSatCorrection implements android.os.Parcelable {
   3129     method public int describeContents();
   3130     method @FloatRange(from=0.0f, fromInclusive=false) public float getCarrierFrequencyHz();
   3131     method public int getConstellationType();
   3132     method @FloatRange(from=0.0f) public float getExcessPathLengthMeters();
   3133     method @FloatRange(from=0.0f) public float getExcessPathLengthUncertaintyMeters();
   3134     method @FloatRange(from=0.0f, to=1.0f) public float getProbabilityLineOfSight();
   3135     method @Nullable public android.location.GnssReflectingPlane getReflectingPlane();
   3136     method @IntRange(from=0) public int getSatelliteId();
   3137     method public boolean hasExcessPathLength();
   3138     method public boolean hasExcessPathLengthUncertainty();
   3139     method public boolean hasReflectingPlane();
   3140     method public boolean hasValidSatelliteLineOfSight();
   3141     method public void writeToParcel(@NonNull android.os.Parcel, int);
   3142     field public static final android.os.Parcelable.Creator<android.location.GnssSingleSatCorrection> CREATOR;
   3143   }
   3144 
   3145   public static final class GnssSingleSatCorrection.Builder {
   3146     ctor public GnssSingleSatCorrection.Builder();
   3147     method @NonNull public android.location.GnssSingleSatCorrection build();
   3148     method @NonNull public android.location.GnssSingleSatCorrection.Builder setCarrierFrequencyHz(@FloatRange(from=0.0f, fromInclusive=false) float);
   3149     method @NonNull public android.location.GnssSingleSatCorrection.Builder setConstellationType(int);
   3150     method @NonNull public android.location.GnssSingleSatCorrection.Builder setExcessPathLengthMeters(@FloatRange(from=0.0f) float);
   3151     method @NonNull public android.location.GnssSingleSatCorrection.Builder setExcessPathLengthUncertaintyMeters(@FloatRange(from=0.0f) float);
   3152     method @NonNull public android.location.GnssSingleSatCorrection.Builder setProbabilityLineOfSight(@FloatRange(from=0.0f, to=1.0f) float);
   3153     method @NonNull public android.location.GnssSingleSatCorrection.Builder setReflectingPlane(@Nullable android.location.GnssReflectingPlane);
   3154     method @NonNull public android.location.GnssSingleSatCorrection.Builder setSatelliteId(@IntRange(from=0) int);
   3155   }
   3156 
   3157   public class GpsClock implements android.os.Parcelable {
   3158     method public int describeContents();
   3159     method public double getBiasInNs();
   3160     method public double getBiasUncertaintyInNs();
   3161     method public double getDriftInNsPerSec();
   3162     method public double getDriftUncertaintyInNsPerSec();
   3163     method public long getFullBiasInNs();
   3164     method public short getLeapSecond();
   3165     method public long getTimeInNs();
   3166     method public double getTimeUncertaintyInNs();
   3167     method public byte getType();
   3168     method public boolean hasBiasInNs();
   3169     method public boolean hasBiasUncertaintyInNs();
   3170     method public boolean hasDriftInNsPerSec();
   3171     method public boolean hasDriftUncertaintyInNsPerSec();
   3172     method public boolean hasFullBiasInNs();
   3173     method public boolean hasLeapSecond();
   3174     method public boolean hasTimeUncertaintyInNs();
   3175     method public void reset();
   3176     method public void resetBiasInNs();
   3177     method public void resetBiasUncertaintyInNs();
   3178     method public void resetDriftInNsPerSec();
   3179     method public void resetDriftUncertaintyInNsPerSec();
   3180     method public void resetFullBiasInNs();
   3181     method public void resetLeapSecond();
   3182     method public void resetTimeUncertaintyInNs();
   3183     method public void set(android.location.GpsClock);
   3184     method public void setBiasInNs(double);
   3185     method public void setBiasUncertaintyInNs(double);
   3186     method public void setDriftInNsPerSec(double);
   3187     method public void setDriftUncertaintyInNsPerSec(double);
   3188     method public void setFullBiasInNs(long);
   3189     method public void setLeapSecond(short);
   3190     method public void setTimeInNs(long);
   3191     method public void setTimeUncertaintyInNs(double);
   3192     method public void setType(byte);
   3193     method public void writeToParcel(android.os.Parcel, int);
   3194     field @NonNull public static final android.os.Parcelable.Creator<android.location.GpsClock> CREATOR;
   3195     field public static final byte TYPE_GPS_TIME = 2; // 0x2
   3196     field public static final byte TYPE_LOCAL_HW_TIME = 1; // 0x1
   3197     field public static final byte TYPE_UNKNOWN = 0; // 0x0
   3198   }
   3199 
   3200   public class GpsMeasurement implements android.os.Parcelable {
   3201     method public int describeContents();
   3202     method public double getAccumulatedDeltaRangeInMeters();
   3203     method public short getAccumulatedDeltaRangeState();
   3204     method public double getAccumulatedDeltaRangeUncertaintyInMeters();
   3205     method public double getAzimuthInDeg();
   3206     method public double getAzimuthUncertaintyInDeg();
   3207     method public int getBitNumber();
   3208     method public long getCarrierCycles();
   3209     method public float getCarrierFrequencyInHz();
   3210     method public double getCarrierPhase();
   3211     method public double getCarrierPhaseUncertainty();
   3212     method public double getCn0InDbHz();
   3213     method public double getCodePhaseInChips();
   3214     method public double getCodePhaseUncertaintyInChips();
   3215     method public double getDopplerShiftInHz();
   3216     method public double getDopplerShiftUncertaintyInHz();
   3217     method public double getElevationInDeg();
   3218     method public double getElevationUncertaintyInDeg();
   3219     method public byte getLossOfLock();
   3220     method public byte getMultipathIndicator();
   3221     method public byte getPrn();
   3222     method public double getPseudorangeInMeters();
   3223     method public double getPseudorangeRateInMetersPerSec();
   3224     method public double getPseudorangeRateUncertaintyInMetersPerSec();
   3225     method public double getPseudorangeUncertaintyInMeters();
   3226     method public long getReceivedGpsTowInNs();
   3227     method public long getReceivedGpsTowUncertaintyInNs();
   3228     method public double getSnrInDb();
   3229     method public short getState();
   3230     method public short getTimeFromLastBitInMs();
   3231     method public double getTimeOffsetInNs();
   3232     method public boolean hasAzimuthInDeg();
   3233     method public boolean hasAzimuthUncertaintyInDeg();
   3234     method public boolean hasBitNumber();
   3235     method public boolean hasCarrierCycles();
   3236     method public boolean hasCarrierFrequencyInHz();
   3237     method public boolean hasCarrierPhase();
   3238     method public boolean hasCarrierPhaseUncertainty();
   3239     method public boolean hasCodePhaseInChips();
   3240     method public boolean hasCodePhaseUncertaintyInChips();
   3241     method public boolean hasDopplerShiftInHz();
   3242     method public boolean hasDopplerShiftUncertaintyInHz();
   3243     method public boolean hasElevationInDeg();
   3244     method public boolean hasElevationUncertaintyInDeg();
   3245     method public boolean hasPseudorangeInMeters();
   3246     method public boolean hasPseudorangeUncertaintyInMeters();
   3247     method public boolean hasSnrInDb();
   3248     method public boolean hasTimeFromLastBitInMs();
   3249     method public boolean isPseudorangeRateCorrected();
   3250     method public boolean isUsedInFix();
   3251     method public void reset();
   3252     method public void resetAzimuthInDeg();
   3253     method public void resetAzimuthUncertaintyInDeg();
   3254     method public void resetBitNumber();
   3255     method public void resetCarrierCycles();
   3256     method public void resetCarrierFrequencyInHz();
   3257     method public void resetCarrierPhase();
   3258     method public void resetCarrierPhaseUncertainty();
   3259     method public void resetCodePhaseInChips();
   3260     method public void resetCodePhaseUncertaintyInChips();
   3261     method public void resetDopplerShiftInHz();
   3262     method public void resetDopplerShiftUncertaintyInHz();
   3263     method public void resetElevationInDeg();
   3264     method public void resetElevationUncertaintyInDeg();
   3265     method public void resetPseudorangeInMeters();
   3266     method public void resetPseudorangeUncertaintyInMeters();
   3267     method public void resetSnrInDb();
   3268     method public void resetTimeFromLastBitInMs();
   3269     method public void set(android.location.GpsMeasurement);
   3270     method public void setAccumulatedDeltaRangeInMeters(double);
   3271     method public void setAccumulatedDeltaRangeState(short);
   3272     method public void setAccumulatedDeltaRangeUncertaintyInMeters(double);
   3273     method public void setAzimuthInDeg(double);
   3274     method public void setAzimuthUncertaintyInDeg(double);
   3275     method public void setBitNumber(int);
   3276     method public void setCarrierCycles(long);
   3277     method public void setCarrierFrequencyInHz(float);
   3278     method public void setCarrierPhase(double);
   3279     method public void setCarrierPhaseUncertainty(double);
   3280     method public void setCn0InDbHz(double);
   3281     method public void setCodePhaseInChips(double);
   3282     method public void setCodePhaseUncertaintyInChips(double);
   3283     method public void setDopplerShiftInHz(double);
   3284     method public void setDopplerShiftUncertaintyInHz(double);
   3285     method public void setElevationInDeg(double);
   3286     method public void setElevationUncertaintyInDeg(double);
   3287     method public void setLossOfLock(byte);
   3288     method public void setMultipathIndicator(byte);
   3289     method public void setPrn(byte);
   3290     method public void setPseudorangeInMeters(double);
   3291     method public void setPseudorangeRateInMetersPerSec(double);
   3292     method public void setPseudorangeRateUncertaintyInMetersPerSec(double);
   3293     method public void setPseudorangeUncertaintyInMeters(double);
   3294     method public void setReceivedGpsTowInNs(long);
   3295     method public void setReceivedGpsTowUncertaintyInNs(long);
   3296     method public void setSnrInDb(double);
   3297     method public void setState(short);
   3298     method public void setTimeFromLastBitInMs(short);
   3299     method public void setTimeOffsetInNs(double);
   3300     method public void setUsedInFix(boolean);
   3301     method public void writeToParcel(android.os.Parcel, int);
   3302     field public static final short ADR_STATE_CYCLE_SLIP = 4; // 0x4
   3303     field public static final short ADR_STATE_RESET = 2; // 0x2
   3304     field public static final short ADR_STATE_UNKNOWN = 0; // 0x0
   3305     field public static final short ADR_STATE_VALID = 1; // 0x1
   3306     field @NonNull public static final android.os.Parcelable.Creator<android.location.GpsMeasurement> CREATOR;
   3307     field public static final byte LOSS_OF_LOCK_CYCLE_SLIP = 2; // 0x2
   3308     field public static final byte LOSS_OF_LOCK_OK = 1; // 0x1
   3309     field public static final byte LOSS_OF_LOCK_UNKNOWN = 0; // 0x0
   3310     field public static final byte MULTIPATH_INDICATOR_DETECTED = 1; // 0x1
   3311     field public static final byte MULTIPATH_INDICATOR_NOT_USED = 2; // 0x2
   3312     field public static final byte MULTIPATH_INDICATOR_UNKNOWN = 0; // 0x0
   3313     field public static final short STATE_BIT_SYNC = 2; // 0x2
   3314     field public static final short STATE_CODE_LOCK = 1; // 0x1
   3315     field public static final short STATE_MSEC_AMBIGUOUS = 16; // 0x10
   3316     field public static final short STATE_SUBFRAME_SYNC = 4; // 0x4
   3317     field public static final short STATE_TOW_DECODED = 8; // 0x8
   3318     field public static final short STATE_UNKNOWN = 0; // 0x0
   3319   }
   3320 
   3321   public class GpsMeasurementsEvent implements android.os.Parcelable {
   3322     ctor public GpsMeasurementsEvent(android.location.GpsClock, android.location.GpsMeasurement[]);
   3323     method public int describeContents();
   3324     method @NonNull public android.location.GpsClock getClock();
   3325     method @NonNull public java.util.Collection<android.location.GpsMeasurement> getMeasurements();
   3326     method public void writeToParcel(android.os.Parcel, int);
   3327     field @NonNull public static final android.os.Parcelable.Creator<android.location.GpsMeasurementsEvent> CREATOR;
   3328     field public static final int STATUS_GPS_LOCATION_DISABLED = 2; // 0x2
   3329     field public static final int STATUS_NOT_SUPPORTED = 0; // 0x0
   3330     field public static final int STATUS_READY = 1; // 0x1
   3331   }
   3332 
   3333   public static interface GpsMeasurementsEvent.Listener {
   3334     method public void onGpsMeasurementsReceived(android.location.GpsMeasurementsEvent);
   3335     method public void onStatusChanged(int);
   3336   }
   3337 
   3338   public class GpsNavigationMessage implements android.os.Parcelable {
   3339     method public int describeContents();
   3340     method @NonNull public byte[] getData();
   3341     method public short getMessageId();
   3342     method public byte getPrn();
   3343     method public short getStatus();
   3344     method public short getSubmessageId();
   3345     method public byte getType();
   3346     method public void reset();
   3347     method public void set(android.location.GpsNavigationMessage);
   3348     method public void setData(byte[]);
   3349     method public void setMessageId(short);
   3350     method public void setPrn(byte);
   3351     method public void setStatus(short);
   3352     method public void setSubmessageId(short);
   3353     method public void setType(byte);
   3354     method public void writeToParcel(android.os.Parcel, int);
   3355     field @NonNull public static final android.os.Parcelable.Creator<android.location.GpsNavigationMessage> CREATOR;
   3356     field public static final short STATUS_PARITY_PASSED = 1; // 0x1
   3357     field public static final short STATUS_PARITY_REBUILT = 2; // 0x2
   3358     field public static final short STATUS_UNKNOWN = 0; // 0x0
   3359     field public static final byte TYPE_CNAV2 = 4; // 0x4
   3360     field public static final byte TYPE_L1CA = 1; // 0x1
   3361     field public static final byte TYPE_L2CNAV = 2; // 0x2
   3362     field public static final byte TYPE_L5CNAV = 3; // 0x3
   3363     field public static final byte TYPE_UNKNOWN = 0; // 0x0
   3364   }
   3365 
   3366   public class GpsNavigationMessageEvent implements android.os.Parcelable {
   3367     ctor public GpsNavigationMessageEvent(android.location.GpsNavigationMessage);
   3368     method public int describeContents();
   3369     method @NonNull public android.location.GpsNavigationMessage getNavigationMessage();
   3370     method public void writeToParcel(android.os.Parcel, int);
   3371     field @NonNull public static final android.os.Parcelable.Creator<android.location.GpsNavigationMessageEvent> CREATOR;
   3372     field public static int STATUS_GPS_LOCATION_DISABLED;
   3373     field public static int STATUS_NOT_SUPPORTED;
   3374     field public static int STATUS_READY;
   3375   }
   3376 
   3377   public static interface GpsNavigationMessageEvent.Listener {
   3378     method public void onGpsNavigationMessageReceived(android.location.GpsNavigationMessageEvent);
   3379     method public void onStatusChanged(int);
   3380   }
   3381 
   3382   public class Location implements android.os.Parcelable {
   3383     method public boolean isComplete();
   3384     method public void makeComplete();
   3385     method public void setIsFromMockProvider(boolean);
   3386   }
   3387 
   3388   public class LocationManager {
   3389     method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void flushGnssBatch();
   3390     method @Nullable public String getExtraLocationControllerPackage();
   3391     method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public int getGnssBatchSize();
   3392     method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public android.location.GnssCapabilities getGnssCapabilities();
   3393     method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public void injectGnssMeasurementCorrections(@NonNull android.location.GnssMeasurementCorrections);
   3394     method public boolean isExtraLocationControllerPackageEnabled();
   3395     method public boolean isLocationEnabledForUser(@NonNull android.os.UserHandle);
   3396     method public boolean isProviderEnabledForUser(@NonNull String, @NonNull android.os.UserHandle);
   3397     method public boolean isProviderPackage(@NonNull String);
   3398     method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public boolean registerGnssBatchedLocationCallback(long, boolean, @NonNull android.location.BatchedLocationCallback, @Nullable android.os.Handler);
   3399     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);
   3400     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);
   3401     method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void setExtraLocationControllerPackage(@Nullable String);
   3402     method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void setExtraLocationControllerPackageEnabled(boolean);
   3403     method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public void setLocationEnabledForUser(boolean, @NonNull android.os.UserHandle);
   3404     method @Deprecated @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean setProviderEnabledForUser(@NonNull String, boolean, @NonNull android.os.UserHandle);
   3405     method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public boolean unregisterGnssBatchedLocationCallback(@NonNull android.location.BatchedLocationCallback);
   3406   }
   3407 
   3408   public final class LocationRequest implements android.os.Parcelable {
   3409     method @NonNull public static android.location.LocationRequest create();
   3410     method @NonNull public static android.location.LocationRequest createFromDeprecatedCriteria(@NonNull android.location.Criteria, long, float, boolean);
   3411     method @NonNull public static android.location.LocationRequest createFromDeprecatedProvider(@NonNull String, long, float, boolean);
   3412     method public int describeContents();
   3413     method public long getExpireAt();
   3414     method public long getFastestInterval();
   3415     method public boolean getHideFromAppOps();
   3416     method public long getInterval();
   3417     method public int getNumUpdates();
   3418     method @NonNull public String getProvider();
   3419     method public int getQuality();
   3420     method public float getSmallestDisplacement();
   3421     method @Nullable public android.os.WorkSource getWorkSource();
   3422     method public boolean isLocationSettingsIgnored();
   3423     method public boolean isLowPowerMode();
   3424     method @NonNull public android.location.LocationRequest setExpireAt(long);
   3425     method @NonNull public android.location.LocationRequest setExpireIn(long);
   3426     method @NonNull public android.location.LocationRequest setFastestInterval(long);
   3427     method public void setHideFromAppOps(boolean);
   3428     method @NonNull public android.location.LocationRequest setInterval(long);
   3429     method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) @NonNull public android.location.LocationRequest setLocationSettingsIgnored(boolean);
   3430     method @NonNull public android.location.LocationRequest setLowPowerMode(boolean);
   3431     method @NonNull public android.location.LocationRequest setNumUpdates(int);
   3432     method @NonNull public android.location.LocationRequest setProvider(@NonNull String);
   3433     method @NonNull public android.location.LocationRequest setQuality(int);
   3434     method @NonNull public android.location.LocationRequest setSmallestDisplacement(float);
   3435     method public void setWorkSource(@Nullable android.os.WorkSource);
   3436     method public void writeToParcel(android.os.Parcel, int);
   3437     field public static final int ACCURACY_BLOCK = 102; // 0x66
   3438     field public static final int ACCURACY_CITY = 104; // 0x68
   3439     field public static final int ACCURACY_FINE = 100; // 0x64
   3440     field @NonNull public static final android.os.Parcelable.Creator<android.location.LocationRequest> CREATOR;
   3441     field public static final int POWER_HIGH = 203; // 0xcb
   3442     field public static final int POWER_LOW = 201; // 0xc9
   3443     field public static final int POWER_NONE = 200; // 0xc8
   3444   }
   3445 
   3446 }
   3447 
   3448 package android.media {
   3449 
   3450   public final class AudioAttributes implements android.os.Parcelable {
   3451     method public int getAllFlags();
   3452     method public android.os.Bundle getBundle();
   3453     method public int getCapturePreset();
   3454     field public static final int FLAG_BEACON = 8; // 0x8
   3455     field public static final int FLAG_BYPASS_INTERRUPTION_POLICY = 64; // 0x40
   3456     field public static final int FLAG_BYPASS_MUTE = 128; // 0x80
   3457     field public static final int FLAG_HW_HOTWORD = 32; // 0x20
   3458   }
   3459 
   3460   public static class AudioAttributes.Builder {
   3461     method public android.media.AudioAttributes.Builder addBundle(@NonNull android.os.Bundle);
   3462     method public android.media.AudioAttributes.Builder setCapturePreset(int);
   3463     method public android.media.AudioAttributes.Builder setInternalCapturePreset(int);
   3464   }
   3465 
   3466   public final class AudioFocusInfo implements android.os.Parcelable {
   3467     method public int describeContents();
   3468     method @NonNull public android.media.AudioAttributes getAttributes();
   3469     method @NonNull public String getClientId();
   3470     method public int getClientUid();
   3471     method public int getFlags();
   3472     method public int getGainRequest();
   3473     method public int getLossReceived();
   3474     method @NonNull public String getPackageName();
   3475     method public void writeToParcel(android.os.Parcel, int);
   3476     field @NonNull public static final android.os.Parcelable.Creator<android.media.AudioFocusInfo> CREATOR;
   3477   }
   3478 
   3479   public final class AudioFocusRequest {
   3480     method public boolean locksFocus();
   3481   }
   3482 
   3483   public static final class AudioFocusRequest.Builder {
   3484     method @NonNull public android.media.AudioFocusRequest.Builder setLocksFocus(boolean);
   3485   }
   3486 
   3487   public class AudioManager {
   3488     method @Deprecated public int abandonAudioFocus(android.media.AudioManager.OnAudioFocusChangeListener, android.media.AudioAttributes);
   3489     method public void clearAudioServerStateCallback();
   3490     method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int dispatchAudioFocusChange(@NonNull android.media.AudioFocusInfo, int, @NonNull android.media.audiopolicy.AudioPolicy);
   3491     method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static java.util.List<android.media.audiopolicy.AudioProductStrategy> getAudioProductStrategies();
   3492     method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static java.util.List<android.media.audiopolicy.AudioVolumeGroup> getAudioVolumeGroups();
   3493     method @IntRange(from=0) @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getMaxVolumeIndexForAttributes(@NonNull android.media.AudioAttributes);
   3494     method @IntRange(from=0) @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getMinVolumeIndexForAttributes(@NonNull android.media.AudioAttributes);
   3495     method @IntRange(from=0) @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getVolumeIndexForAttributes(@NonNull android.media.AudioAttributes);
   3496     method public boolean isAudioServerRunning();
   3497     method public boolean isHdmiSystemAudioSupported();
   3498     method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int registerAudioPolicy(@NonNull android.media.audiopolicy.AudioPolicy);
   3499     method public void registerVolumeGroupCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.VolumeGroupCallback);
   3500     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;
   3501     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;
   3502     method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int requestAudioFocus(@NonNull android.media.AudioFocusRequest, @Nullable android.media.audiopolicy.AudioPolicy);
   3503     method public void setAudioServerStateCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.AudioServerStateCallback);
   3504     method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void setFocusRequestResult(@NonNull android.media.AudioFocusInfo, int, @NonNull android.media.audiopolicy.AudioPolicy);
   3505     method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void setVolumeIndexForAttributes(@NonNull android.media.AudioAttributes, int, int);
   3506     method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void unregisterAudioPolicy(@NonNull android.media.audiopolicy.AudioPolicy);
   3507     method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void unregisterAudioPolicyAsync(@NonNull android.media.audiopolicy.AudioPolicy);
   3508     method public void unregisterVolumeGroupCallback(@NonNull android.media.AudioManager.VolumeGroupCallback);
   3509     field public static final int AUDIOFOCUS_FLAG_DELAY_OK = 1; // 0x1
   3510     field public static final int AUDIOFOCUS_FLAG_LOCK = 4; // 0x4
   3511     field public static final int AUDIOFOCUS_FLAG_PAUSES_ON_DUCKABLE_LOSS = 2; // 0x2
   3512     field public static final int SUCCESS = 0; // 0x0
   3513   }
   3514 
   3515   public abstract static class AudioManager.AudioServerStateCallback {
   3516     ctor public AudioManager.AudioServerStateCallback();
   3517     method public void onAudioServerDown();
   3518     method public void onAudioServerUp();
   3519   }
   3520 
   3521   public abstract static class AudioManager.VolumeGroupCallback {
   3522     ctor public AudioManager.VolumeGroupCallback();
   3523     method public void onAudioVolumeGroupChanged(int, int);
   3524   }
   3525 
   3526   public final class AudioPlaybackConfiguration implements android.os.Parcelable {
   3527     method public int getClientPid();
   3528     method public int getClientUid();
   3529     method public int getPlayerInterfaceId();
   3530     method public android.media.PlayerProxy getPlayerProxy();
   3531     method public int getPlayerState();
   3532     method public int getPlayerType();
   3533     field public static final int PLAYER_STATE_IDLE = 1; // 0x1
   3534     field public static final int PLAYER_STATE_PAUSED = 3; // 0x3
   3535     field public static final int PLAYER_STATE_RELEASED = 0; // 0x0
   3536     field public static final int PLAYER_STATE_STARTED = 2; // 0x2
   3537     field public static final int PLAYER_STATE_STOPPED = 4; // 0x4
   3538     field public static final int PLAYER_STATE_UNKNOWN = -1; // 0xffffffff
   3539     field public static final int PLAYER_TYPE_JAM_AUDIOTRACK = 1; // 0x1
   3540     field public static final int PLAYER_TYPE_JAM_MEDIAPLAYER = 2; // 0x2
   3541     field public static final int PLAYER_TYPE_JAM_SOUNDPOOL = 3; // 0x3
   3542     field public static final int PLAYER_TYPE_SLES_AUDIOPLAYER_BUFFERQUEUE = 11; // 0xb
   3543     field public static final int PLAYER_TYPE_SLES_AUDIOPLAYER_URI_FD = 12; // 0xc
   3544     field public static final int PLAYER_TYPE_UNKNOWN = -1; // 0xffffffff
   3545   }
   3546 
   3547   public class AudioRecord implements android.media.AudioRecordingMonitor android.media.AudioRouting android.media.MicrophoneDirection {
   3548     ctor public AudioRecord(android.media.AudioAttributes, android.media.AudioFormat, int, int) throws java.lang.IllegalArgumentException;
   3549   }
   3550 
   3551   public static class AudioRecord.Builder {
   3552     method public android.media.AudioRecord.Builder setAudioAttributes(@NonNull android.media.AudioAttributes) throws java.lang.IllegalArgumentException;
   3553     method public android.media.AudioRecord.Builder setSessionId(int) throws java.lang.IllegalArgumentException;
   3554   }
   3555 
   3556   public class HwAudioSource {
   3557     method public boolean isPlaying();
   3558     method public void start();
   3559     method public void stop();
   3560   }
   3561 
   3562   public static final class HwAudioSource.Builder {
   3563     ctor public HwAudioSource.Builder();
   3564     method @NonNull public android.media.HwAudioSource build();
   3565     method @NonNull public android.media.HwAudioSource.Builder setAudioAttributes(@NonNull android.media.AudioAttributes);
   3566     method @NonNull public android.media.HwAudioSource.Builder setAudioDeviceInfo(@NonNull android.media.AudioDeviceInfo);
   3567   }
   3568 
   3569   public final class MediaRecorder.AudioSource {
   3570     field @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_OUTPUT) public static final int ECHO_REFERENCE = 1997; // 0x7cd
   3571     field @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_HOTWORD) public static final int HOTWORD = 1999; // 0x7cf
   3572     field public static final int RADIO_TUNER = 1998; // 0x7ce
   3573   }
   3574 
   3575   public class PlayerProxy {
   3576     method public void pause();
   3577     method public void setPan(float);
   3578     method public void setStartDelayMs(int);
   3579     method public void setVolume(float);
   3580     method public void start();
   3581     method public void stop();
   3582   }
   3583 
   3584 }
   3585 
   3586 package android.media.audiopolicy {
   3587 
   3588   public class AudioMix {
   3589     method public int getMixState();
   3590     field public static final int MIX_STATE_DISABLED = -1; // 0xffffffff
   3591     field public static final int MIX_STATE_IDLE = 0; // 0x0
   3592     field public static final int MIX_STATE_MIXING = 1; // 0x1
   3593     field public static final int ROUTE_FLAG_LOOP_BACK = 2; // 0x2
   3594     field public static final int ROUTE_FLAG_RENDER = 1; // 0x1
   3595   }
   3596 
   3597   public static class AudioMix.Builder {
   3598     ctor public AudioMix.Builder(android.media.audiopolicy.AudioMixingRule) throws java.lang.IllegalArgumentException;
   3599     method public android.media.audiopolicy.AudioMix build() throws java.lang.IllegalArgumentException;
   3600     method public android.media.audiopolicy.AudioMix.Builder setDevice(@NonNull android.media.AudioDeviceInfo) throws java.lang.IllegalArgumentException;
   3601     method public android.media.audiopolicy.AudioMix.Builder setFormat(android.media.AudioFormat) throws java.lang.IllegalArgumentException;
   3602     method public android.media.audiopolicy.AudioMix.Builder setRouteFlags(int) throws java.lang.IllegalArgumentException;
   3603   }
   3604 
   3605   public class AudioMixingRule {
   3606     field public static final int RULE_MATCH_ATTRIBUTE_CAPTURE_PRESET = 2; // 0x2
   3607     field public static final int RULE_MATCH_ATTRIBUTE_USAGE = 1; // 0x1
   3608     field public static final int RULE_MATCH_UID = 4; // 0x4
   3609   }
   3610 
   3611   public static class AudioMixingRule.Builder {
   3612     ctor public AudioMixingRule.Builder();
   3613     method public android.media.audiopolicy.AudioMixingRule.Builder addMixRule(int, Object) throws java.lang.IllegalArgumentException;
   3614     method public android.media.audiopolicy.AudioMixingRule.Builder addRule(android.media.AudioAttributes, int) throws java.lang.IllegalArgumentException;
   3615     method @NonNull public android.media.audiopolicy.AudioMixingRule.Builder allowPrivilegedPlaybackCapture(boolean);
   3616     method public android.media.audiopolicy.AudioMixingRule build();
   3617     method public android.media.audiopolicy.AudioMixingRule.Builder excludeMixRule(int, Object) throws java.lang.IllegalArgumentException;
   3618     method public android.media.audiopolicy.AudioMixingRule.Builder excludeRule(android.media.AudioAttributes, int) throws java.lang.IllegalArgumentException;
   3619   }
   3620 
   3621   public class AudioPolicy {
   3622     method public int attachMixes(@NonNull java.util.List<android.media.audiopolicy.AudioMix>);
   3623     method public android.media.AudioRecord createAudioRecordSink(android.media.audiopolicy.AudioMix) throws java.lang.IllegalArgumentException;
   3624     method public android.media.AudioTrack createAudioTrackSource(android.media.audiopolicy.AudioMix) throws java.lang.IllegalArgumentException;
   3625     method public int detachMixes(@NonNull java.util.List<android.media.audiopolicy.AudioMix>);
   3626     method public int getFocusDuckingBehavior();
   3627     method public int getStatus();
   3628     method public boolean removeUidDeviceAffinity(int);
   3629     method public int setFocusDuckingBehavior(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException;
   3630     method public void setRegistration(String);
   3631     method public boolean setUidDeviceAffinity(int, @NonNull java.util.List<android.media.AudioDeviceInfo>);
   3632     method public String toLogFriendlyString();
   3633     field public static final int FOCUS_POLICY_DUCKING_DEFAULT = 0; // 0x0
   3634     field public static final int FOCUS_POLICY_DUCKING_IN_APP = 0; // 0x0
   3635     field public static final int FOCUS_POLICY_DUCKING_IN_POLICY = 1; // 0x1
   3636     field public static final int POLICY_STATUS_REGISTERED = 2; // 0x2
   3637     field public static final int POLICY_STATUS_UNREGISTERED = 1; // 0x1
   3638   }
   3639 
   3640   public abstract static class AudioPolicy.AudioPolicyFocusListener {
   3641     ctor public AudioPolicy.AudioPolicyFocusListener();
   3642     method public void onAudioFocusAbandon(android.media.AudioFocusInfo);
   3643     method public void onAudioFocusGrant(android.media.AudioFocusInfo, int);
   3644     method public void onAudioFocusLoss(android.media.AudioFocusInfo, boolean);
   3645     method public void onAudioFocusRequest(android.media.AudioFocusInfo, int);
   3646   }
   3647 
   3648   public abstract static class AudioPolicy.AudioPolicyStatusListener {
   3649     ctor public AudioPolicy.AudioPolicyStatusListener();
   3650     method public void onMixStateUpdate(android.media.audiopolicy.AudioMix);
   3651     method public void onStatusChange();
   3652   }
   3653 
   3654   public abstract static class AudioPolicy.AudioPolicyVolumeCallback {
   3655     ctor public AudioPolicy.AudioPolicyVolumeCallback();
   3656     method public void onVolumeAdjustment(int);
   3657   }
   3658 
   3659   public static class AudioPolicy.Builder {
   3660     ctor public AudioPolicy.Builder(android.content.Context);
   3661     method @NonNull public android.media.audiopolicy.AudioPolicy.Builder addMix(@NonNull android.media.audiopolicy.AudioMix) throws java.lang.IllegalArgumentException;
   3662     method @NonNull public android.media.audiopolicy.AudioPolicy build();
   3663     method public void setAudioPolicyFocusListener(android.media.audiopolicy.AudioPolicy.AudioPolicyFocusListener);
   3664     method public void setAudioPolicyStatusListener(android.media.audiopolicy.AudioPolicy.AudioPolicyStatusListener);
   3665     method @NonNull public android.media.audiopolicy.AudioPolicy.Builder setAudioPolicyVolumeCallback(@NonNull android.media.audiopolicy.AudioPolicy.AudioPolicyVolumeCallback);
   3666     method @NonNull public android.media.audiopolicy.AudioPolicy.Builder setIsAudioFocusPolicy(boolean);
   3667     method @NonNull public android.media.audiopolicy.AudioPolicy.Builder setLooper(@NonNull android.os.Looper) throws java.lang.IllegalArgumentException;
   3668   }
   3669 
   3670   public final class AudioProductStrategy implements android.os.Parcelable {
   3671     method public int describeContents();
   3672     method @NonNull public android.media.AudioAttributes getAudioAttributes();
   3673     method public int getId();
   3674     method public void writeToParcel(@NonNull android.os.Parcel, int);
   3675     field @NonNull public static final android.os.Parcelable.Creator<android.media.audiopolicy.AudioProductStrategy> CREATOR;
   3676   }
   3677 
   3678   public final class AudioVolumeGroup implements android.os.Parcelable {
   3679     method public int describeContents();
   3680     method @NonNull public java.util.List<android.media.AudioAttributes> getAudioAttributes();
   3681     method public int getId();
   3682     method @NonNull public int[] getLegacyStreamTypes();
   3683     method @NonNull public String name();
   3684     method public void writeToParcel(@NonNull android.os.Parcel, int);
   3685     field public static final android.os.Parcelable.Creator<android.media.audiopolicy.AudioVolumeGroup> CREATOR;
   3686     field public static final int DEFAULT_VOLUME_GROUP = -1; // 0xffffffff
   3687   }
   3688 
   3689 }
   3690 
   3691 package android.media.session {
   3692 
   3693   public final class MediaSessionManager {
   3694     method @RequiresPermission(android.Manifest.permission.SET_MEDIA_KEY_LISTENER) public void setOnMediaKeyListener(android.media.session.MediaSessionManager.OnMediaKeyListener, @Nullable android.os.Handler);
   3695     method @RequiresPermission(android.Manifest.permission.SET_VOLUME_KEY_LONG_PRESS_LISTENER) public void setOnVolumeKeyLongPressListener(android.media.session.MediaSessionManager.OnVolumeKeyLongPressListener, @Nullable android.os.Handler);
   3696   }
   3697 
   3698   public static interface MediaSessionManager.OnMediaKeyListener {
   3699     method public boolean onMediaKey(android.view.KeyEvent);
   3700   }
   3701 
   3702   public static interface MediaSessionManager.OnVolumeKeyLongPressListener {
   3703     method public void onVolumeKeyLongPress(android.view.KeyEvent);
   3704   }
   3705 
   3706 }
   3707 
   3708 package android.media.soundtrigger {
   3709 
   3710   public abstract class SoundTriggerDetectionService extends android.app.Service {
   3711     ctor public SoundTriggerDetectionService();
   3712     method @MainThread public void onConnected(@NonNull java.util.UUID, @Nullable android.os.Bundle);
   3713     method @MainThread public void onDisconnected(@NonNull java.util.UUID, @Nullable android.os.Bundle);
   3714     method @MainThread public void onError(@NonNull java.util.UUID, @Nullable android.os.Bundle, int, int);
   3715     method @MainThread public void onGenericRecognitionEvent(@NonNull java.util.UUID, @Nullable android.os.Bundle, int, @NonNull android.hardware.soundtrigger.SoundTrigger.RecognitionEvent);
   3716     method @MainThread public abstract void onStopOperation(@NonNull java.util.UUID, @Nullable android.os.Bundle, int);
   3717     method public final void operationFinished(@Nullable java.util.UUID, int);
   3718   }
   3719 
   3720   public final class SoundTriggerDetector {
   3721     method @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public boolean startRecognition(int);
   3722     method @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public boolean stopRecognition();
   3723     field public static final int RECOGNITION_FLAG_ALLOW_MULTIPLE_TRIGGERS = 2; // 0x2
   3724     field public static final int RECOGNITION_FLAG_CAPTURE_TRIGGER_AUDIO = 1; // 0x1
   3725   }
   3726 
   3727   public abstract static class SoundTriggerDetector.Callback {
   3728     ctor public SoundTriggerDetector.Callback();
   3729     method public abstract void onAvailabilityChanged(int);
   3730     method public abstract void onDetected(@NonNull android.media.soundtrigger.SoundTriggerDetector.EventPayload);
   3731     method public abstract void onError();
   3732     method public abstract void onRecognitionPaused();
   3733     method public abstract void onRecognitionResumed();
   3734   }
   3735 
   3736   public static class SoundTriggerDetector.EventPayload {
   3737     method @Nullable public android.media.AudioFormat getCaptureAudioFormat();
   3738     method @Nullable public byte[] getTriggerAudio();
   3739   }
   3740 
   3741   public final class SoundTriggerManager {
   3742     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);
   3743     method @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public void deleteModel(java.util.UUID);
   3744     method public int getDetectionServiceOperationsTimeout();
   3745     method @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public android.media.soundtrigger.SoundTriggerManager.Model getModel(java.util.UUID);
   3746     method @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public void updateModel(android.media.soundtrigger.SoundTriggerManager.Model);
   3747   }
   3748 
   3749   public static class SoundTriggerManager.Model {
   3750     method public static android.media.soundtrigger.SoundTriggerManager.Model create(java.util.UUID, java.util.UUID, byte[]);
   3751     method public byte[] getModelData();
   3752     method public java.util.UUID getModelUuid();
   3753     method public java.util.UUID getVendorUuid();
   3754   }
   3755 
   3756 }
   3757 
   3758 package android.media.tv {
   3759 
   3760   public final class TvContentRatingSystemInfo implements android.os.Parcelable {
   3761     method public static android.media.tv.TvContentRatingSystemInfo createTvContentRatingSystemInfo(int, android.content.pm.ApplicationInfo);
   3762     method public int describeContents();
   3763     method public android.net.Uri getXmlUri();
   3764     method public boolean isSystemDefined();
   3765     method public void writeToParcel(android.os.Parcel, int);
   3766   }
   3767 
   3768   public final class TvContract {
   3769     method public static android.net.Uri buildChannelsUriForInput(@Nullable String, boolean);
   3770     method public static android.net.Uri buildChannelsUriForInput(@Nullable String, @Nullable String, boolean);
   3771     field public static final String ACTION_CHANNEL_BROWSABLE_REQUESTED = "android.media.tv.action.CHANNEL_BROWSABLE_REQUESTED";
   3772     field public static final String EXTRA_BLOCKED_PACKAGES = "android.media.tv.extra.BLOCKED_PACKAGES";
   3773     field public static final String EXTRA_COLUMN_NAME = "android.media.tv.extra.COLUMN_NAME";
   3774     field public static final String EXTRA_DATA_TYPE = "android.media.tv.extra.DATA_TYPE";
   3775     field public static final String EXTRA_DEFAULT_VALUE = "android.media.tv.extra.DEFAULT_VALUE";
   3776     field public static final String EXTRA_EXISTING_COLUMN_NAMES = "android.media.tv.extra.EXISTING_COLUMN_NAMES";
   3777     field public static final String EXTRA_PACKAGE_NAME = "android.media.tv.extra.PACKAGE_NAME";
   3778     field public static final String EXTRA_RESULT_CODE = "android.media.tv.extra.RESULT_CODE";
   3779     field public static final String METHOD_ADD_COLUMN = "add_column";
   3780     field public static final String METHOD_BLOCK_PACKAGE = "block_package";
   3781     field public static final String METHOD_GET_BLOCKED_PACKAGES = "get_blocked_packages";
   3782     field public static final String METHOD_GET_COLUMNS = "get_columns";
   3783     field public static final String METHOD_UNBLOCK_PACKAGE = "unblock_package";
   3784     field public static final int RESULT_ERROR_INVALID_ARGUMENT = 2; // 0x2
   3785     field public static final int RESULT_ERROR_IO = 1; // 0x1
   3786     field public static final int RESULT_OK = 0; // 0x0
   3787   }
   3788 
   3789   public static final class TvContract.WatchedPrograms implements android.media.tv.TvContract.BaseTvColumns {
   3790     field public static final String COLUMN_CHANNEL_ID = "channel_id";
   3791     field public static final String COLUMN_DESCRIPTION = "description";
   3792     field public static final String COLUMN_END_TIME_UTC_MILLIS = "end_time_utc_millis";
   3793     field public static final String COLUMN_INTERNAL_SESSION_TOKEN = "session_token";
   3794     field public static final String COLUMN_INTERNAL_TUNE_PARAMS = "tune_params";
   3795     field public static final String COLUMN_START_TIME_UTC_MILLIS = "start_time_utc_millis";
   3796     field public static final String COLUMN_TITLE = "title";
   3797     field public static final String COLUMN_WATCH_END_TIME_UTC_MILLIS = "watch_end_time_utc_millis";
   3798     field public static final String COLUMN_WATCH_START_TIME_UTC_MILLIS = "watch_start_time_utc_millis";
   3799     field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/watched_program";
   3800     field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/watched_program";
   3801     field public static final android.net.Uri CONTENT_URI;
   3802   }
   3803 
   3804   public final class TvInputHardwareInfo implements android.os.Parcelable {
   3805     method public int describeContents();
   3806     method public String getAudioAddress();
   3807     method public int getAudioType();
   3808     method public int getCableConnectionStatus();
   3809     method public int getDeviceId();
   3810     method public int getHdmiPortId();
   3811     method public int getType();
   3812     method public void readFromParcel(android.os.Parcel);
   3813     method public void writeToParcel(android.os.Parcel, int);
   3814     field public static final int CABLE_CONNECTION_STATUS_CONNECTED = 1; // 0x1
   3815     field public static final int CABLE_CONNECTION_STATUS_DISCONNECTED = 2; // 0x2
   3816     field public static final int CABLE_CONNECTION_STATUS_UNKNOWN = 0; // 0x0
   3817     field @NonNull public static final android.os.Parcelable.Creator<android.media.tv.TvInputHardwareInfo> CREATOR;
   3818     field public static final int TV_INPUT_TYPE_COMPONENT = 6; // 0x6
   3819     field public static final int TV_INPUT_TYPE_COMPOSITE = 3; // 0x3
   3820     field public static final int TV_INPUT_TYPE_DISPLAY_PORT = 10; // 0xa
   3821     field public static final int TV_INPUT_TYPE_DVI = 8; // 0x8
   3822     field public static final int TV_INPUT_TYPE_HDMI = 9; // 0x9
   3823     field public static final int TV_INPUT_TYPE_OTHER_HARDWARE = 1; // 0x1
   3824     field public static final int TV_INPUT_TYPE_SCART = 5; // 0x5
   3825     field public static final int TV_INPUT_TYPE_SVIDEO = 4; // 0x4
   3826     field public static final int TV_INPUT_TYPE_TUNER = 2; // 0x2
   3827     field public static final int TV_INPUT_TYPE_VGA = 7; // 0x7
   3828   }
   3829 
   3830   public static final class TvInputHardwareInfo.Builder {
   3831     ctor public TvInputHardwareInfo.Builder();
   3832     method public android.media.tv.TvInputHardwareInfo.Builder audioAddress(String);
   3833     method public android.media.tv.TvInputHardwareInfo.Builder audioType(int);
   3834     method public android.media.tv.TvInputHardwareInfo build();
   3835     method public android.media.tv.TvInputHardwareInfo.Builder cableConnectionStatus(int);
   3836     method public android.media.tv.TvInputHardwareInfo.Builder deviceId(int);
   3837     method public android.media.tv.TvInputHardwareInfo.Builder hdmiPortId(int);
   3838     method public android.media.tv.TvInputHardwareInfo.Builder type(int);
   3839   }
   3840 
   3841   public final class TvInputInfo implements android.os.Parcelable {
   3842     method @Deprecated public static android.media.tv.TvInputInfo createTvInputInfo(android.content.Context, android.content.pm.ResolveInfo, android.hardware.hdmi.HdmiDeviceInfo, String, String, android.net.Uri) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException;
   3843     method @Deprecated public static android.media.tv.TvInputInfo createTvInputInfo(android.content.Context, android.content.pm.ResolveInfo, android.hardware.hdmi.HdmiDeviceInfo, String, int, android.graphics.drawable.Icon) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException;
   3844     method @Deprecated public static android.media.tv.TvInputInfo createTvInputInfo(android.content.Context, android.content.pm.ResolveInfo, android.media.tv.TvInputHardwareInfo, String, android.net.Uri) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException;
   3845     method @Deprecated public static android.media.tv.TvInputInfo createTvInputInfo(android.content.Context, android.content.pm.ResolveInfo, android.media.tv.TvInputHardwareInfo, int, android.graphics.drawable.Icon) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException;
   3846     method public android.hardware.hdmi.HdmiDeviceInfo getHdmiDeviceInfo();
   3847     method public boolean isConnectedToHdmiSwitch();
   3848     method public boolean isHardwareInput();
   3849     method public android.graphics.drawable.Drawable loadIcon(@NonNull android.content.Context, int);
   3850   }
   3851 
   3852   public static final class TvInputInfo.Builder {
   3853     method public android.media.tv.TvInputInfo.Builder setHdmiDeviceInfo(android.hardware.hdmi.HdmiDeviceInfo);
   3854     method public android.media.tv.TvInputInfo.Builder setIcon(android.graphics.drawable.Icon);
   3855     method public android.media.tv.TvInputInfo.Builder setIcon(android.graphics.drawable.Icon, int);
   3856     method public android.media.tv.TvInputInfo.Builder setLabel(CharSequence);
   3857     method public android.media.tv.TvInputInfo.Builder setLabel(@StringRes int);
   3858     method public android.media.tv.TvInputInfo.Builder setParentId(String);
   3859     method public android.media.tv.TvInputInfo.Builder setTvInputHardwareInfo(android.media.tv.TvInputHardwareInfo);
   3860   }
   3861 
   3862   public static final class TvInputInfo.TvInputSettings {
   3863     method public static java.util.Map<java.lang.String,java.lang.String> getCustomLabels(android.content.Context, int);
   3864     method public static java.util.Set<java.lang.String> getHiddenTvInputIds(android.content.Context, int);
   3865     method public static void putCustomLabels(android.content.Context, java.util.Map<java.lang.String,java.lang.String>, int);
   3866     method public static void putHiddenTvInputs(android.content.Context, java.util.Set<java.lang.String>, int);
   3867   }
   3868 
   3869   public final class TvInputManager {
   3870     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);
   3871     method @RequiresPermission(android.Manifest.permission.MODIFY_PARENTAL_CONTROLS) public void addBlockedRating(@NonNull android.media.tv.TvContentRating);
   3872     method @RequiresPermission(android.Manifest.permission.CAPTURE_TV_INPUT) public boolean captureFrame(String, android.view.Surface, android.media.tv.TvStreamConfig);
   3873     method @RequiresPermission(android.Manifest.permission.CAPTURE_TV_INPUT) public java.util.List<android.media.tv.TvStreamConfig> getAvailableTvStreamConfigList(String);
   3874     method @RequiresPermission(android.Manifest.permission.TV_INPUT_HARDWARE) public java.util.List<android.media.tv.TvInputHardwareInfo> getHardwareList();
   3875     method @RequiresPermission(android.Manifest.permission.READ_CONTENT_RATING_SYSTEMS) public java.util.List<android.media.tv.TvContentRatingSystemInfo> getTvContentRatingSystemList();
   3876     method @RequiresPermission(android.Manifest.permission.CAPTURE_TV_INPUT) public boolean isSingleSessionActive();
   3877     method @RequiresPermission(android.Manifest.permission.NOTIFY_TV_INPUTS) public void notifyPreviewProgramAddedToWatchNext(String, long, long);
   3878     method @RequiresPermission(android.Manifest.permission.NOTIFY_TV_INPUTS) public void notifyPreviewProgramBrowsableDisabled(String, long);
   3879     method @RequiresPermission(android.Manifest.permission.NOTIFY_TV_INPUTS) public void notifyWatchNextProgramBrowsableDisabled(String, long);
   3880     method @RequiresPermission(android.Manifest.permission.TV_INPUT_HARDWARE) public void releaseTvInputHardware(int, android.media.tv.TvInputManager.Hardware);
   3881     method @RequiresPermission(android.Manifest.permission.MODIFY_PARENTAL_CONTROLS) public void removeBlockedRating(@NonNull android.media.tv.TvContentRating);
   3882     method @RequiresPermission(android.Manifest.permission.MODIFY_PARENTAL_CONTROLS) public void setParentalControlsEnabled(boolean);
   3883   }
   3884 
   3885   public static final class TvInputManager.Hardware {
   3886     method public void overrideAudioSink(int, String, int, int, int);
   3887     method public void setStreamVolume(float);
   3888     method public boolean setSurface(android.view.Surface, android.media.tv.TvStreamConfig);
   3889   }
   3890 
   3891   public abstract static class TvInputManager.HardwareCallback {
   3892     ctor public TvInputManager.HardwareCallback();
   3893     method public abstract void onReleased();
   3894     method public abstract void onStreamConfigChanged(android.media.tv.TvStreamConfig[]);
   3895   }
   3896 
   3897   public abstract class TvInputService extends android.app.Service {
   3898     method @Nullable public android.media.tv.TvInputInfo onHardwareAdded(android.media.tv.TvInputHardwareInfo);
   3899     method @Nullable public String onHardwareRemoved(android.media.tv.TvInputHardwareInfo);
   3900     method @Nullable public android.media.tv.TvInputInfo onHdmiDeviceAdded(android.hardware.hdmi.HdmiDeviceInfo);
   3901     method @Nullable public String onHdmiDeviceRemoved(android.hardware.hdmi.HdmiDeviceInfo);
   3902   }
   3903 
   3904   public abstract static class TvInputService.RecordingSession {
   3905     method public void notifySessionEvent(@NonNull String, android.os.Bundle);
   3906   }
   3907 
   3908   public abstract static class TvInputService.Session implements android.view.KeyEvent.Callback {
   3909     method public void notifySessionEvent(@NonNull String, android.os.Bundle);
   3910     method public void onSetMain(boolean);
   3911   }
   3912 
   3913   public abstract static class TvRecordingClient.RecordingCallback {
   3914     method public void onEvent(String, String, android.os.Bundle);
   3915   }
   3916 
   3917   public class TvStreamConfig implements android.os.Parcelable {
   3918     method public int describeContents();
   3919     method public int getGeneration();
   3920     method public int getMaxHeight();
   3921     method public int getMaxWidth();
   3922     method public int getStreamId();
   3923     method public int getType();
   3924     method public void writeToParcel(android.os.Parcel, int);
   3925     field @NonNull public static final android.os.Parcelable.Creator<android.media.tv.TvStreamConfig> CREATOR;
   3926     field public static final int STREAM_TYPE_BUFFER_PRODUCER = 2; // 0x2
   3927     field public static final int STREAM_TYPE_INDEPENDENT_VIDEO_SOURCE = 1; // 0x1
   3928   }
   3929 
   3930   public static final class TvStreamConfig.Builder {
   3931     ctor public TvStreamConfig.Builder();
   3932     method public android.media.tv.TvStreamConfig build();
   3933     method public android.media.tv.TvStreamConfig.Builder generation(int);
   3934     method public android.media.tv.TvStreamConfig.Builder maxHeight(int);
   3935     method public android.media.tv.TvStreamConfig.Builder maxWidth(int);
   3936     method public android.media.tv.TvStreamConfig.Builder streamId(int);
   3937     method public android.media.tv.TvStreamConfig.Builder type(int);
   3938   }
   3939 
   3940   public class TvView extends android.view.ViewGroup {
   3941     method @RequiresPermission("android.permission.CHANGE_HDMI_CEC_ACTIVE_SOURCE") public void setMain();
   3942     method @RequiresPermission(android.Manifest.permission.MODIFY_PARENTAL_CONTROLS) public void unblockContent(android.media.tv.TvContentRating);
   3943   }
   3944 
   3945   public abstract static class TvView.TvInputCallback {
   3946     method public void onEvent(String, String, android.os.Bundle);
   3947   }
   3948 
   3949 }
   3950 
   3951 package android.metrics {
   3952 
   3953   public class LogMaker {
   3954     ctor public LogMaker(int);
   3955     ctor public LogMaker(Object[]);
   3956     method public android.metrics.LogMaker addTaggedData(int, Object);
   3957     method public android.metrics.LogMaker clearCategory();
   3958     method public android.metrics.LogMaker clearPackageName();
   3959     method public android.metrics.LogMaker clearSubtype();
   3960     method public android.metrics.LogMaker clearTaggedData(int);
   3961     method public android.metrics.LogMaker clearType();
   3962     method public void deserialize(Object[]);
   3963     method public int getCategory();
   3964     method public long getCounterBucket();
   3965     method public String getCounterName();
   3966     method public int getCounterValue();
   3967     method public String getPackageName();
   3968     method public int getProcessId();
   3969     method public int getSubtype();
   3970     method public Object getTaggedData(int);
   3971     method public long getTimestamp();
   3972     method public int getType();
   3973     method public int getUid();
   3974     method public boolean isLongCounterBucket();
   3975     method public boolean isSubsetOf(android.metrics.LogMaker);
   3976     method public boolean isValidValue(Object);
   3977     method public Object[] serialize();
   3978     method public android.metrics.LogMaker setCategory(int);
   3979     method public android.metrics.LogMaker setPackageName(String);
   3980     method public android.metrics.LogMaker setSubtype(int);
   3981     method public android.metrics.LogMaker setType(int);
   3982   }
   3983 
   3984   public class MetricsReader {
   3985     ctor public MetricsReader();
   3986     method public void checkpoint();
   3987     method public boolean hasNext();
   3988     method public android.metrics.LogMaker next();
   3989     method public void read(long);
   3990     method public void reset();
   3991   }
   3992 
   3993 }
   3994 
   3995 package android.net {
   3996 
   3997   public class CaptivePortal implements android.os.Parcelable {
   3998     method public void logEvent(int, @NonNull String);
   3999     method public void useNetwork();
   4000     field public static final int APP_RETURN_DISMISSED = 0; // 0x0
   4001     field public static final int APP_RETURN_UNWANTED = 1; // 0x1
   4002     field public static final int APP_RETURN_WANTED_AS_IS = 2; // 0x2
   4003   }
   4004 
   4005   public class ConnectivityManager {
   4006     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);
   4007     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);
   4008     method @RequiresPermission(android.Manifest.permission.LOCAL_MAC_ADDRESS) public String getCaptivePortalServerUrl();
   4009     method @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void getLatestTetheringEntitlementResult(int, boolean, @NonNull java.util.concurrent.Executor, @NonNull android.net.ConnectivityManager.OnTetheringEntitlementResultListener);
   4010     method @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.WRITE_SETTINGS}) public boolean isTetheringSupported();
   4011     method @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void registerTetheringEventCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.ConnectivityManager.OnTetheringEventCallback);
   4012     method @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD, "android.permission.NETWORK_STACK"}) public void setAirplaneMode(boolean);
   4013     method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, "android.permission.NETWORK_STACK"}) public boolean shouldAvoidBadWifi();
   4014     method @RequiresPermission(android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK) public void startCaptivePortalApp(@NonNull android.net.Network, @NonNull android.os.Bundle);
   4015     method @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void startTethering(int, boolean, android.net.ConnectivityManager.OnStartTetheringCallback);
   4016     method @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void startTethering(int, boolean, android.net.ConnectivityManager.OnStartTetheringCallback, android.os.Handler);
   4017     method @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void stopTethering(int);
   4018     method @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void unregisterTetheringEventCallback(@NonNull android.net.ConnectivityManager.OnTetheringEventCallback);
   4019     field public static final String EXTRA_CAPTIVE_PORTAL_PROBE_SPEC = "android.net.extra.CAPTIVE_PORTAL_PROBE_SPEC";
   4020     field public static final String EXTRA_CAPTIVE_PORTAL_USER_AGENT = "android.net.extra.CAPTIVE_PORTAL_USER_AGENT";
   4021     field public static final int TETHERING_BLUETOOTH = 2; // 0x2
   4022     field public static final int TETHERING_USB = 1; // 0x1
   4023     field public static final int TETHERING_WIFI = 0; // 0x0
   4024     field public static final int TETHER_ERROR_ENTITLEMENT_UNKONWN = 13; // 0xd
   4025     field public static final int TETHER_ERROR_NO_ERROR = 0; // 0x0
   4026     field public static final int TETHER_ERROR_PROVISION_FAILED = 11; // 0xb
   4027   }
   4028 
   4029   public abstract static class ConnectivityManager.OnStartTetheringCallback {
   4030     ctor public ConnectivityManager.OnStartTetheringCallback();
   4031     method public void onTetheringFailed();
   4032     method public void onTetheringStarted();
   4033   }
   4034 
   4035   public static interface ConnectivityManager.OnTetheringEntitlementResultListener {
   4036     method public void onTetheringEntitlementResult(int);
   4037   }
   4038 
   4039   public abstract static class ConnectivityManager.OnTetheringEventCallback {
   4040     ctor public ConnectivityManager.OnTetheringEventCallback();
   4041     method public void onUpstreamChanged(@Nullable android.net.Network);
   4042   }
   4043 
   4044   public final class IpPrefix implements android.os.Parcelable {
   4045     ctor public IpPrefix(@NonNull java.net.InetAddress, @IntRange(from=0, to=128) int);
   4046     ctor public IpPrefix(@NonNull String);
   4047   }
   4048 
   4049   public final class IpSecManager {
   4050     method @RequiresPermission(android.Manifest.permission.MANAGE_IPSEC_TUNNELS) public void applyTunnelModeTransform(@NonNull android.net.IpSecManager.IpSecTunnelInterface, int, @NonNull android.net.IpSecTransform) throws java.io.IOException;
   4051     method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_IPSEC_TUNNELS) public android.net.IpSecManager.IpSecTunnelInterface createIpSecTunnelInterface(@NonNull java.net.InetAddress, @NonNull java.net.InetAddress, @NonNull android.net.Network) throws java.io.IOException, android.net.IpSecManager.ResourceUnavailableException;
   4052   }
   4053 
   4054   public static final class IpSecManager.IpSecTunnelInterface implements java.lang.AutoCloseable {
   4055     method @RequiresPermission(android.Manifest.permission.MANAGE_IPSEC_TUNNELS) public void addAddress(@NonNull java.net.InetAddress, int) throws java.io.IOException;
   4056     method public void close();
   4057     method @NonNull public String getInterfaceName();
   4058     method @RequiresPermission(android.Manifest.permission.MANAGE_IPSEC_TUNNELS) public void removeAddress(@NonNull java.net.InetAddress, int) throws java.io.IOException;
   4059   }
   4060 
   4061   public static class IpSecTransform.Builder {
   4062     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;
   4063   }
   4064 
   4065   public class LinkAddress implements android.os.Parcelable {
   4066     ctor public LinkAddress(@NonNull java.net.InetAddress, @IntRange(from=0, to=128) int, int, int);
   4067     ctor public LinkAddress(@NonNull java.net.InetAddress, @IntRange(from=0, to=128) int);
   4068     ctor public LinkAddress(@NonNull String);
   4069     ctor public LinkAddress(@NonNull String, int, int);
   4070     method public boolean isGlobalPreferred();
   4071     method public boolean isIpv4();
   4072     method public boolean isIpv6();
   4073     method public boolean isSameAddressAs(@Nullable android.net.LinkAddress);
   4074   }
   4075 
   4076   public final class LinkProperties implements android.os.Parcelable {
   4077     ctor public LinkProperties(@Nullable android.net.LinkProperties);
   4078     method public boolean addDnsServer(@NonNull java.net.InetAddress);
   4079     method public boolean addLinkAddress(@NonNull android.net.LinkAddress);
   4080     method @Nullable public android.net.IpPrefix getNat64Prefix();
   4081     method @NonNull public java.util.List<java.net.InetAddress> getPcscfServers();
   4082     method @Nullable public String getTcpBufferSizes();
   4083     method @NonNull public java.util.List<java.net.InetAddress> getValidatedPrivateDnsServers();
   4084     method public boolean hasGlobalIpv6Address();
   4085     method public boolean hasIpv4Address();
   4086     method public boolean hasIpv6DefaultRoute();
   4087     method public boolean isIpv4Provisioned();
   4088     method public boolean isIpv6Provisioned();
   4089     method public boolean isProvisioned();
   4090     method public boolean isReachable(@NonNull java.net.InetAddress);
   4091     method public boolean removeDnsServer(@NonNull java.net.InetAddress);
   4092     method public boolean removeLinkAddress(@NonNull android.net.LinkAddress);
   4093     method public boolean removeRoute(@NonNull android.net.RouteInfo);
   4094     method public void setNat64Prefix(@Nullable android.net.IpPrefix);
   4095     method public void setPcscfServers(@NonNull java.util.Collection<java.net.InetAddress>);
   4096     method public void setPrivateDnsServerName(@Nullable String);
   4097     method public void setTcpBufferSizes(@Nullable String);
   4098     method public void setUsePrivateDns(boolean);
   4099     method public void setValidatedPrivateDnsServers(@NonNull java.util.Collection<java.net.InetAddress>);
   4100   }
   4101 
   4102   public class Network implements android.os.Parcelable {
   4103     ctor public Network(@NonNull android.net.Network);
   4104     method @NonNull public android.net.Network getPrivateDnsBypassingCopy();
   4105   }
   4106 
   4107   public final class NetworkCapabilities implements android.os.Parcelable {
   4108     method @NonNull public int[] getTransportTypes();
   4109     method public boolean satisfiedByNetworkCapabilities(@Nullable android.net.NetworkCapabilities);
   4110     field public static final int NET_CAPABILITY_OEM_PAID = 22; // 0x16
   4111     field public static final int NET_CAPABILITY_PARTIAL_CONNECTIVITY = 24; // 0x18
   4112   }
   4113 
   4114   public class NetworkKey implements android.os.Parcelable {
   4115     ctor public NetworkKey(android.net.WifiKey);
   4116     method public int describeContents();
   4117     method public void writeToParcel(android.os.Parcel, int);
   4118     field @NonNull public static final android.os.Parcelable.Creator<android.net.NetworkKey> CREATOR;
   4119     field public static final int TYPE_WIFI = 1; // 0x1
   4120     field public final int type;
   4121     field public final android.net.WifiKey wifiKey;
   4122   }
   4123 
   4124   public abstract class NetworkRecommendationProvider {
   4125     ctor public NetworkRecommendationProvider(android.content.Context, java.util.concurrent.Executor);
   4126     method public final android.os.IBinder getBinder();
   4127     method public abstract void onRequestScores(android.net.NetworkKey[]);
   4128   }
   4129 
   4130   public static class NetworkRequest.Builder {
   4131     method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_SIGNAL_STRENGTH_WAKEUP) public android.net.NetworkRequest.Builder setSignalStrength(int);
   4132   }
   4133 
   4134   public class NetworkScoreManager {
   4135     method @RequiresPermission(anyOf={android.Manifest.permission.SCORE_NETWORKS, "android.permission.REQUEST_NETWORK_SCORES"}) public boolean clearScores() throws java.lang.SecurityException;
   4136     method @RequiresPermission(anyOf={android.Manifest.permission.SCORE_NETWORKS, "android.permission.REQUEST_NETWORK_SCORES"}) public void disableScoring() throws java.lang.SecurityException;
   4137     method @RequiresPermission(anyOf={android.Manifest.permission.SCORE_NETWORKS, "android.permission.REQUEST_NETWORK_SCORES"}) public String getActiveScorerPackage();
   4138     method @RequiresPermission(anyOf={android.Manifest.permission.SCORE_NETWORKS, "android.permission.REQUEST_NETWORK_SCORES"}) public boolean setActiveScorer(String) throws java.lang.SecurityException;
   4139     method @RequiresPermission(android.Manifest.permission.SCORE_NETWORKS) public boolean updateScores(android.net.ScoredNetwork[]) throws java.lang.SecurityException;
   4140     field public static final String ACTION_CHANGE_ACTIVE = "android.net.scoring.CHANGE_ACTIVE";
   4141     field public static final String ACTION_CUSTOM_ENABLE = "android.net.scoring.CUSTOM_ENABLE";
   4142     field public static final String ACTION_RECOMMEND_NETWORKS = "android.net.action.RECOMMEND_NETWORKS";
   4143     field public static final String ACTION_SCORER_CHANGED = "android.net.scoring.SCORER_CHANGED";
   4144     field public static final String ACTION_SCORE_NETWORKS = "android.net.scoring.SCORE_NETWORKS";
   4145     field public static final String EXTRA_NETWORKS_TO_SCORE = "networksToScore";
   4146     field public static final String EXTRA_NEW_SCORER = "newScorer";
   4147     field public static final String EXTRA_PACKAGE_NAME = "packageName";
   4148   }
   4149 
   4150   public class NetworkStack {
   4151     field public static final String PERMISSION_MAINLINE_NETWORK_STACK = "android.permission.MAINLINE_NETWORK_STACK";
   4152   }
   4153 
   4154   public final class RouteInfo implements android.os.Parcelable {
   4155     ctor public RouteInfo(@Nullable android.net.IpPrefix, @Nullable java.net.InetAddress, @Nullable String, int);
   4156     method public int getType();
   4157     field public static final int RTN_THROW = 9; // 0x9
   4158     field public static final int RTN_UNICAST = 1; // 0x1
   4159     field public static final int RTN_UNREACHABLE = 7; // 0x7
   4160   }
   4161 
   4162   public class RssiCurve implements android.os.Parcelable {
   4163     ctor public RssiCurve(int, int, byte[]);
   4164     ctor public RssiCurve(int, int, byte[], int);
   4165     method public int describeContents();
   4166     method public byte lookupScore(int);
   4167     method public byte lookupScore(int, boolean);
   4168     method public void writeToParcel(android.os.Parcel, int);
   4169     field @NonNull public static final android.os.Parcelable.Creator<android.net.RssiCurve> CREATOR;
   4170     field public final int activeNetworkRssiBoost;
   4171     field public final int bucketWidth;
   4172     field public final byte[] rssiBuckets;
   4173     field public final int start;
   4174   }
   4175 
   4176   public class ScoredNetwork implements android.os.Parcelable {
   4177     ctor public ScoredNetwork(android.net.NetworkKey, android.net.RssiCurve);
   4178     ctor public ScoredNetwork(android.net.NetworkKey, android.net.RssiCurve, boolean);
   4179     ctor public ScoredNetwork(android.net.NetworkKey, android.net.RssiCurve, boolean, @Nullable android.os.Bundle);
   4180     method public int calculateBadge(int);
   4181     method public int describeContents();
   4182     method public void writeToParcel(android.os.Parcel, int);
   4183     field public static final String ATTRIBUTES_KEY_BADGING_CURVE = "android.net.attributes.key.BADGING_CURVE";
   4184     field public static final String ATTRIBUTES_KEY_HAS_CAPTIVE_PORTAL = "android.net.attributes.key.HAS_CAPTIVE_PORTAL";
   4185     field public static final String ATTRIBUTES_KEY_RANKING_SCORE_OFFSET = "android.net.attributes.key.RANKING_SCORE_OFFSET";
   4186     field @NonNull public static final android.os.Parcelable.Creator<android.net.ScoredNetwork> CREATOR;
   4187     field @Nullable public final android.os.Bundle attributes;
   4188     field public final boolean meteredHint;
   4189     field public final android.net.NetworkKey networkKey;
   4190     field public final android.net.RssiCurve rssiCurve;
   4191   }
   4192 
   4193   public final class StaticIpConfiguration implements android.os.Parcelable {
   4194     ctor public StaticIpConfiguration();
   4195     ctor public StaticIpConfiguration(@Nullable android.net.StaticIpConfiguration);
   4196     method public void addDnsServer(@NonNull java.net.InetAddress);
   4197     method public void clear();
   4198     method public int describeContents();
   4199     method @NonNull public java.util.List<java.net.InetAddress> getDnsServers();
   4200     method @Nullable public String getDomains();
   4201     method @Nullable public java.net.InetAddress getGateway();
   4202     method @Nullable public android.net.LinkAddress getIpAddress();
   4203     method @NonNull public java.util.List<android.net.RouteInfo> getRoutes(@Nullable String);
   4204     method public void writeToParcel(android.os.Parcel, int);
   4205     field @NonNull public static final android.os.Parcelable.Creator<android.net.StaticIpConfiguration> CREATOR;
   4206   }
   4207 
   4208   public static final class StaticIpConfiguration.Builder {
   4209     ctor public StaticIpConfiguration.Builder();
   4210     method @NonNull public android.net.StaticIpConfiguration build();
   4211     method @NonNull public android.net.StaticIpConfiguration.Builder setDnsServers(@NonNull Iterable<java.net.InetAddress>);
   4212     method @NonNull public android.net.StaticIpConfiguration.Builder setDomains(@Nullable String);
   4213     method @NonNull public android.net.StaticIpConfiguration.Builder setGateway(@Nullable java.net.InetAddress);
   4214     method @NonNull public android.net.StaticIpConfiguration.Builder setIpAddress(@Nullable android.net.LinkAddress);
   4215   }
   4216 
   4217   public class TrafficStats {
   4218     method public static void setThreadStatsTagApp();
   4219     method public static void setThreadStatsTagBackup();
   4220     method public static void setThreadStatsTagRestore();
   4221     field public static final int TAG_NETWORK_STACK_IMPERSONATION_RANGE_END = -113; // 0xffffff8f
   4222     field public static final int TAG_NETWORK_STACK_IMPERSONATION_RANGE_START = -128; // 0xffffff80
   4223     field public static final int TAG_NETWORK_STACK_RANGE_END = -257; // 0xfffffeff
   4224     field public static final int TAG_NETWORK_STACK_RANGE_START = -768; // 0xfffffd00
   4225     field public static final int TAG_SYSTEM_IMPERSONATION_RANGE_END = -241; // 0xffffff0f
   4226     field public static final int TAG_SYSTEM_IMPERSONATION_RANGE_START = -256; // 0xffffff00
   4227   }
   4228 
   4229   public abstract class Uri implements java.lang.Comparable<android.net.Uri> android.os.Parcelable {
   4230     method @NonNull public String toSafeString();
   4231   }
   4232 
   4233   public class VpnService extends android.app.Service {
   4234     method @RequiresPermission(android.Manifest.permission.CONTROL_VPN) public static void prepareAndAuthorize(android.content.Context);
   4235   }
   4236 
   4237   public class WebAddress {
   4238     ctor public WebAddress(String) throws android.net.ParseException;
   4239   }
   4240 
   4241   public class WifiKey implements android.os.Parcelable {
   4242     ctor public WifiKey(String, String);
   4243     method public int describeContents();
   4244     method public void writeToParcel(android.os.Parcel, int);
   4245     field @NonNull public static final android.os.Parcelable.Creator<android.net.WifiKey> CREATOR;
   4246     field public final String bssid;
   4247     field public final String ssid;
   4248   }
   4249 
   4250 }
   4251 
   4252 package android.net.apf {
   4253 
   4254   public final class ApfCapabilities implements android.os.Parcelable {
   4255     ctor public ApfCapabilities(int, int, int);
   4256     method public int describeContents();
   4257     method public static boolean getApfDrop8023Frames();
   4258     method @NonNull public static int[] getApfEtherTypeBlackList();
   4259     method public boolean hasDataAccess();
   4260     method public void writeToParcel(android.os.Parcel, int);
   4261     field public static final android.os.Parcelable.Creator<android.net.apf.ApfCapabilities> CREATOR;
   4262     field public final int apfPacketFormat;
   4263     field public final int apfVersionSupported;
   4264     field public final int maximumApfProgramSize;
   4265   }
   4266 
   4267 }
   4268 
   4269 package android.net.metrics {
   4270 
   4271   public final class ApfProgramEvent implements android.net.metrics.IpConnectivityLog.Event {
   4272   }
   4273 
   4274   public static final class ApfProgramEvent.Builder {
   4275     ctor public ApfProgramEvent.Builder();
   4276     method @NonNull public android.net.metrics.ApfProgramEvent build();
   4277     method @NonNull public android.net.metrics.ApfProgramEvent.Builder setActualLifetime(long);
   4278     method @NonNull public android.net.metrics.ApfProgramEvent.Builder setCurrentRas(int);
   4279     method @NonNull public android.net.metrics.ApfProgramEvent.Builder setFilteredRas(int);
   4280     method @NonNull public android.net.metrics.ApfProgramEvent.Builder setFlags(boolean, boolean);
   4281     method @NonNull public android.net.metrics.ApfProgramEvent.Builder setLifetime(long);
   4282     method @NonNull public android.net.metrics.ApfProgramEvent.Builder setProgramLength(int);
   4283   }
   4284 
   4285   public final class ApfStats implements android.net.metrics.IpConnectivityLog.Event {
   4286   }
   4287 
   4288   public static final class ApfStats.Builder {
   4289     ctor public ApfStats.Builder();
   4290     method @NonNull public android.net.metrics.ApfStats build();
   4291     method @NonNull public android.net.metrics.ApfStats.Builder setDroppedRas(int);
   4292     method @NonNull public android.net.metrics.ApfStats.Builder setDurationMs(long);
   4293     method @NonNull public android.net.metrics.ApfStats.Builder setMatchingRas(int);
   4294     method @NonNull public android.net.metrics.ApfStats.Builder setMaxProgramSize(int);
   4295     method @NonNull public android.net.metrics.ApfStats.Builder setParseErrors(int);
   4296     method @NonNull public android.net.metrics.ApfStats.Builder setProgramUpdates(int);
   4297     method @NonNull public android.net.metrics.ApfStats.Builder setProgramUpdatesAll(int);
   4298     method @NonNull public android.net.metrics.ApfStats.Builder setProgramUpdatesAllowingMulticast(int);
   4299     method @NonNull public android.net.metrics.ApfStats.Builder setReceivedRas(int);
   4300     method @NonNull public android.net.metrics.ApfStats.Builder setZeroLifetimeRas(int);
   4301   }
   4302 
   4303   public final class DhcpClientEvent implements android.net.metrics.IpConnectivityLog.Event {
   4304   }
   4305 
   4306   public static final class DhcpClientEvent.Builder {
   4307     ctor public DhcpClientEvent.Builder();
   4308     method @NonNull public android.net.metrics.DhcpClientEvent build();
   4309     method @NonNull public android.net.metrics.DhcpClientEvent.Builder setDurationMs(int);
   4310     method @NonNull public android.net.metrics.DhcpClientEvent.Builder setMsg(String);
   4311   }
   4312 
   4313   public final class DhcpErrorEvent implements android.net.metrics.IpConnectivityLog.Event {
   4314     ctor public DhcpErrorEvent(int);
   4315     method public static int errorCodeWithOption(int, int);
   4316     field public static final int BOOTP_TOO_SHORT = 67174400; // 0x4010000
   4317     field public static final int BUFFER_UNDERFLOW = 83951616; // 0x5010000
   4318     field public static final int DHCP_BAD_MAGIC_COOKIE = 67239936; // 0x4020000
   4319     field public static final int DHCP_ERROR = 4; // 0x4
   4320     field public static final int DHCP_INVALID_OPTION_LENGTH = 67305472; // 0x4030000
   4321     field public static final int DHCP_NO_COOKIE = 67502080; // 0x4060000
   4322     field public static final int DHCP_NO_MSG_TYPE = 67371008; // 0x4040000
   4323     field public static final int DHCP_UNKNOWN_MSG_TYPE = 67436544; // 0x4050000
   4324     field public static final int L2_ERROR = 1; // 0x1
   4325     field public static final int L2_TOO_SHORT = 16842752; // 0x1010000
   4326     field public static final int L2_WRONG_ETH_TYPE = 16908288; // 0x1020000
   4327     field public static final int L3_ERROR = 2; // 0x2
   4328     field public static final int L3_INVALID_IP = 33751040; // 0x2030000
   4329     field public static final int L3_NOT_IPV4 = 33685504; // 0x2020000
   4330     field public static final int L3_TOO_SHORT = 33619968; // 0x2010000
   4331     field public static final int L4_ERROR = 3; // 0x3
   4332     field public static final int L4_NOT_UDP = 50397184; // 0x3010000
   4333     field public static final int L4_WRONG_PORT = 50462720; // 0x3020000
   4334     field public static final int MISC_ERROR = 5; // 0x5
   4335     field public static final int PARSING_ERROR = 84082688; // 0x5030000
   4336     field public static final int RECEIVE_ERROR = 84017152; // 0x5020000
   4337   }
   4338 
   4339   public class IpConnectivityLog {
   4340     ctor public IpConnectivityLog();
   4341     method public boolean log(long, @NonNull android.net.metrics.IpConnectivityLog.Event);
   4342     method public boolean log(@NonNull String, @NonNull android.net.metrics.IpConnectivityLog.Event);
   4343     method public boolean log(@NonNull android.net.Network, @NonNull int[], @NonNull android.net.metrics.IpConnectivityLog.Event);
   4344     method public boolean log(int, @NonNull int[], @NonNull android.net.metrics.IpConnectivityLog.Event);
   4345     method public boolean log(@NonNull android.net.metrics.IpConnectivityLog.Event);
   4346   }
   4347 
   4348   public static interface IpConnectivityLog.Event extends android.os.Parcelable {
   4349   }
   4350 
   4351   public final class IpManagerEvent implements android.net.metrics.IpConnectivityLog.Event {
   4352     ctor public IpManagerEvent(int, long);
   4353     field public static final int COMPLETE_LIFECYCLE = 3; // 0x3
   4354     field public static final int ERROR_INTERFACE_NOT_FOUND = 8; // 0x8
   4355     field public static final int ERROR_INVALID_PROVISIONING = 7; // 0x7
   4356     field public static final int ERROR_STARTING_IPREACHABILITYMONITOR = 6; // 0x6
   4357     field public static final int ERROR_STARTING_IPV4 = 4; // 0x4
   4358     field public static final int ERROR_STARTING_IPV6 = 5; // 0x5
   4359     field public static final int PROVISIONING_FAIL = 2; // 0x2
   4360     field public static final int PROVISIONING_OK = 1; // 0x1
   4361   }
   4362 
   4363   public final class IpReachabilityEvent implements android.net.metrics.IpConnectivityLog.Event {
   4364     ctor public IpReachabilityEvent(int);
   4365     field public static final int NUD_FAILED = 512; // 0x200
   4366     field public static final int NUD_FAILED_ORGANIC = 1024; // 0x400
   4367     field public static final int PROBE = 256; // 0x100
   4368     field public static final int PROVISIONING_LOST = 768; // 0x300
   4369     field public static final int PROVISIONING_LOST_ORGANIC = 1280; // 0x500
   4370   }
   4371 
   4372   public final class NetworkEvent implements android.net.metrics.IpConnectivityLog.Event {
   4373     ctor public NetworkEvent(int, long);
   4374     ctor public NetworkEvent(int);
   4375     field public static final int NETWORK_CAPTIVE_PORTAL_FOUND = 4; // 0x4
   4376     field public static final int NETWORK_CONNECTED = 1; // 0x1
   4377     field public static final int NETWORK_CONSECUTIVE_DNS_TIMEOUT_FOUND = 12; // 0xc
   4378     field public static final int NETWORK_DISCONNECTED = 7; // 0x7
   4379     field public static final int NETWORK_FIRST_VALIDATION_PORTAL_FOUND = 10; // 0xa
   4380     field public static final int NETWORK_FIRST_VALIDATION_SUCCESS = 8; // 0x8
   4381     field public static final int NETWORK_LINGER = 5; // 0x5
   4382     field public static final int NETWORK_PARTIAL_CONNECTIVITY = 13; // 0xd
   4383     field public static final int NETWORK_REVALIDATION_PORTAL_FOUND = 11; // 0xb
   4384     field public static final int NETWORK_REVALIDATION_SUCCESS = 9; // 0x9
   4385     field public static final int NETWORK_UNLINGER = 6; // 0x6
   4386     field public static final int NETWORK_VALIDATED = 2; // 0x2
   4387     field public static final int NETWORK_VALIDATION_FAILED = 3; // 0x3
   4388   }
   4389 
   4390   public final class RaEvent implements android.net.metrics.IpConnectivityLog.Event {
   4391   }
   4392 
   4393   public static final class RaEvent.Builder {
   4394     ctor public RaEvent.Builder();
   4395     method @NonNull public android.net.metrics.RaEvent build();
   4396     method @NonNull public android.net.metrics.RaEvent.Builder updateDnsslLifetime(long);
   4397     method @NonNull public android.net.metrics.RaEvent.Builder updatePrefixPreferredLifetime(long);
   4398     method @NonNull public android.net.metrics.RaEvent.Builder updatePrefixValidLifetime(long);
   4399     method @NonNull public android.net.metrics.RaEvent.Builder updateRdnssLifetime(long);
   4400     method @NonNull public android.net.metrics.RaEvent.Builder updateRouteInfoLifetime(long);
   4401     method @NonNull public android.net.metrics.RaEvent.Builder updateRouterLifetime(long);
   4402   }
   4403 
   4404   public final class ValidationProbeEvent implements android.net.metrics.IpConnectivityLog.Event {
   4405     method @NonNull public static String getProbeName(int);
   4406     field public static final int DNS_FAILURE = 0; // 0x0
   4407     field public static final int DNS_SUCCESS = 1; // 0x1
   4408     field public static final int PROBE_DNS = 0; // 0x0
   4409     field public static final int PROBE_FALLBACK = 4; // 0x4
   4410     field public static final int PROBE_HTTP = 1; // 0x1
   4411     field public static final int PROBE_HTTPS = 2; // 0x2
   4412     field public static final int PROBE_PAC = 3; // 0x3
   4413     field public static final int PROBE_PRIVDNS = 5; // 0x5
   4414   }
   4415 
   4416   public static final class ValidationProbeEvent.Builder {
   4417     ctor public ValidationProbeEvent.Builder();
   4418     method @NonNull public android.net.metrics.ValidationProbeEvent build();
   4419     method @NonNull public android.net.metrics.ValidationProbeEvent.Builder setDurationMs(long);
   4420     method @NonNull public android.net.metrics.ValidationProbeEvent.Builder setProbeType(int, boolean);
   4421     method @NonNull public android.net.metrics.ValidationProbeEvent.Builder setReturnCode(int);
   4422   }
   4423 
   4424 }
   4425 
   4426 package android.net.util {
   4427 
   4428   public final class SocketUtils {
   4429     method public static void bindSocketToInterface(@NonNull java.io.FileDescriptor, @NonNull String) throws android.system.ErrnoException;
   4430     method public static void closeSocket(@Nullable java.io.FileDescriptor) throws java.io.IOException;
   4431     method @NonNull public static java.net.SocketAddress makeNetlinkSocketAddress(int, int);
   4432     method @NonNull public static java.net.SocketAddress makePacketSocketAddress(int, int);
   4433     method @NonNull public static java.net.SocketAddress makePacketSocketAddress(int, @NonNull byte[]);
   4434   }
   4435 
   4436 }
   4437 
   4438 package android.net.wifi {
   4439 
   4440   public abstract class EasyConnectStatusCallback {
   4441     ctor public EasyConnectStatusCallback();
   4442     method public abstract void onConfiguratorSuccess(int);
   4443     method public abstract void onEnrolleeSuccess(int);
   4444     method public abstract void onFailure(int);
   4445     method public abstract void onProgress(int);
   4446     field public static final int EASY_CONNECT_EVENT_FAILURE_AUTHENTICATION = -2; // 0xfffffffe
   4447     field public static final int EASY_CONNECT_EVENT_FAILURE_BUSY = -5; // 0xfffffffb
   4448     field public static final int EASY_CONNECT_EVENT_FAILURE_CONFIGURATION = -4; // 0xfffffffc
   4449     field public static final int EASY_CONNECT_EVENT_FAILURE_GENERIC = -7; // 0xfffffff9
   4450     field public static final int EASY_CONNECT_EVENT_FAILURE_INVALID_NETWORK = -9; // 0xfffffff7
   4451     field public static final int EASY_CONNECT_EVENT_FAILURE_INVALID_URI = -1; // 0xffffffff
   4452     field public static final int EASY_CONNECT_EVENT_FAILURE_NOT_COMPATIBLE = -3; // 0xfffffffd
   4453     field public static final int EASY_CONNECT_EVENT_FAILURE_NOT_SUPPORTED = -8; // 0xfffffff8
   4454     field public static final int EASY_CONNECT_EVENT_FAILURE_TIMEOUT = -6; // 0xfffffffa
   4455     field public static final int EASY_CONNECT_EVENT_PROGRESS_AUTHENTICATION_SUCCESS = 0; // 0x0
   4456     field public static final int EASY_CONNECT_EVENT_PROGRESS_RESPONSE_PENDING = 1; // 0x1
   4457     field public static final int EASY_CONNECT_EVENT_SUCCESS_CONFIGURATION_SENT = 0; // 0x0
   4458   }
   4459 
   4460   @Deprecated public class RttManager {
   4461     method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void disableResponder(android.net.wifi.RttManager.ResponderCallback);
   4462     method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void enableResponder(android.net.wifi.RttManager.ResponderCallback);
   4463     method @Deprecated public android.net.wifi.RttManager.Capabilities getCapabilities();
   4464     method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public android.net.wifi.RttManager.RttCapabilities getRttCapabilities();
   4465     method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void startRanging(android.net.wifi.RttManager.RttParams[], android.net.wifi.RttManager.RttListener);
   4466     method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void stopRanging(android.net.wifi.RttManager.RttListener);
   4467     field @Deprecated public static final int BASE = 160256; // 0x27200
   4468     field @Deprecated public static final int CMD_OP_ABORTED = 160260; // 0x27204
   4469     field @Deprecated public static final int CMD_OP_DISABLE_RESPONDER = 160262; // 0x27206
   4470     field @Deprecated public static final int CMD_OP_ENABLE_RESPONDER = 160261; // 0x27205
   4471     field @Deprecated public static final int CMD_OP_ENALBE_RESPONDER_FAILED = 160264; // 0x27208
   4472     field @Deprecated public static final int CMD_OP_ENALBE_RESPONDER_SUCCEEDED = 160263; // 0x27207
   4473     field @Deprecated public static final int CMD_OP_FAILED = 160258; // 0x27202
   4474     field @Deprecated public static final int CMD_OP_START_RANGING = 160256; // 0x27200
   4475     field @Deprecated public static final int CMD_OP_STOP_RANGING = 160257; // 0x27201
   4476     field @Deprecated public static final int CMD_OP_SUCCEEDED = 160259; // 0x27203
   4477     field @Deprecated public static final String DESCRIPTION_KEY = "android.net.wifi.RttManager.Description";
   4478     field @Deprecated public static final int PREAMBLE_HT = 2; // 0x2
   4479     field @Deprecated public static final int PREAMBLE_LEGACY = 1; // 0x1
   4480     field @Deprecated public static final int PREAMBLE_VHT = 4; // 0x4
   4481     field @Deprecated public static final int REASON_INITIATOR_NOT_ALLOWED_WHEN_RESPONDER_ON = -6; // 0xfffffffa
   4482     field @Deprecated public static final int REASON_INVALID_LISTENER = -3; // 0xfffffffd
   4483     field @Deprecated public static final int REASON_INVALID_REQUEST = -4; // 0xfffffffc
   4484     field @Deprecated public static final int REASON_NOT_AVAILABLE = -2; // 0xfffffffe
   4485     field @Deprecated public static final int REASON_PERMISSION_DENIED = -5; // 0xfffffffb
   4486     field @Deprecated public static final int REASON_UNSPECIFIED = -1; // 0xffffffff
   4487     field @Deprecated public static final int RTT_BW_10_SUPPORT = 2; // 0x2
   4488     field @Deprecated public static final int RTT_BW_160_SUPPORT = 32; // 0x20
   4489     field @Deprecated public static final int RTT_BW_20_SUPPORT = 4; // 0x4
   4490     field @Deprecated public static final int RTT_BW_40_SUPPORT = 8; // 0x8
   4491     field @Deprecated public static final int RTT_BW_5_SUPPORT = 1; // 0x1
   4492     field @Deprecated public static final int RTT_BW_80_SUPPORT = 16; // 0x10
   4493     field @Deprecated public static final int RTT_CHANNEL_WIDTH_10 = 6; // 0x6
   4494     field @Deprecated public static final int RTT_CHANNEL_WIDTH_160 = 3; // 0x3
   4495     field @Deprecated public static final int RTT_CHANNEL_WIDTH_20 = 0; // 0x0
   4496     field @Deprecated public static final int RTT_CHANNEL_WIDTH_40 = 1; // 0x1
   4497     field @Deprecated public static final int RTT_CHANNEL_WIDTH_5 = 5; // 0x5
   4498     field @Deprecated public static final int RTT_CHANNEL_WIDTH_80 = 2; // 0x2
   4499     field @Deprecated public static final int RTT_CHANNEL_WIDTH_80P80 = 4; // 0x4
   4500     field @Deprecated public static final int RTT_CHANNEL_WIDTH_UNSPECIFIED = -1; // 0xffffffff
   4501     field @Deprecated public static final int RTT_PEER_NAN = 5; // 0x5
   4502     field @Deprecated public static final int RTT_PEER_P2P_CLIENT = 4; // 0x4
   4503     field @Deprecated public static final int RTT_PEER_P2P_GO = 3; // 0x3
   4504     field @Deprecated public static final int RTT_PEER_TYPE_AP = 1; // 0x1
   4505     field @Deprecated public static final int RTT_PEER_TYPE_STA = 2; // 0x2
   4506     field @Deprecated public static final int RTT_PEER_TYPE_UNSPECIFIED = 0; // 0x0
   4507     field @Deprecated public static final int RTT_STATUS_ABORTED = 8; // 0x8
   4508     field @Deprecated public static final int RTT_STATUS_FAILURE = 1; // 0x1
   4509     field @Deprecated public static final int RTT_STATUS_FAIL_AP_ON_DIFF_CHANNEL = 6; // 0x6
   4510     field @Deprecated public static final int RTT_STATUS_FAIL_BUSY_TRY_LATER = 12; // 0xc
   4511     field @Deprecated public static final int RTT_STATUS_FAIL_FTM_PARAM_OVERRIDE = 15; // 0xf
   4512     field @Deprecated public static final int RTT_STATUS_FAIL_INVALID_TS = 9; // 0x9
   4513     field @Deprecated public static final int RTT_STATUS_FAIL_NOT_SCHEDULED_YET = 4; // 0x4
   4514     field @Deprecated public static final int RTT_STATUS_FAIL_NO_CAPABILITY = 7; // 0x7
   4515     field @Deprecated public static final int RTT_STATUS_FAIL_NO_RSP = 2; // 0x2
   4516     field @Deprecated public static final int RTT_STATUS_FAIL_PROTOCOL = 10; // 0xa
   4517     field @Deprecated public static final int RTT_STATUS_FAIL_REJECTED = 3; // 0x3
   4518     field @Deprecated public static final int RTT_STATUS_FAIL_SCHEDULE = 11; // 0xb
   4519     field @Deprecated public static final int RTT_STATUS_FAIL_TM_TIMEOUT = 5; // 0x5
   4520     field @Deprecated public static final int RTT_STATUS_INVALID_REQ = 13; // 0xd
   4521     field @Deprecated public static final int RTT_STATUS_NO_WIFI = 14; // 0xe
   4522     field @Deprecated public static final int RTT_STATUS_SUCCESS = 0; // 0x0
   4523     field @Deprecated public static final int RTT_TYPE_11_MC = 4; // 0x4
   4524     field @Deprecated public static final int RTT_TYPE_11_V = 2; // 0x2
   4525     field @Deprecated public static final int RTT_TYPE_ONE_SIDED = 1; // 0x1
   4526     field @Deprecated public static final int RTT_TYPE_TWO_SIDED = 2; // 0x2
   4527     field @Deprecated public static final int RTT_TYPE_UNSPECIFIED = 0; // 0x0
   4528   }
   4529 
   4530   @Deprecated public class RttManager.Capabilities {
   4531     ctor @Deprecated public RttManager.Capabilities();
   4532     field @Deprecated public int supportedPeerType;
   4533     field @Deprecated public int supportedType;
   4534   }
   4535 
   4536   @Deprecated public static class RttManager.ParcelableRttParams implements android.os.Parcelable {
   4537     field @Deprecated @NonNull public android.net.wifi.RttManager.RttParams[] mParams;
   4538   }
   4539 
   4540   @Deprecated public static class RttManager.ParcelableRttResults implements android.os.Parcelable {
   4541     ctor @Deprecated public RttManager.ParcelableRttResults(android.net.wifi.RttManager.RttResult[]);
   4542     field @Deprecated public android.net.wifi.RttManager.RttResult[] mResults;
   4543   }
   4544 
   4545   @Deprecated public abstract static class RttManager.ResponderCallback {
   4546     ctor @Deprecated public RttManager.ResponderCallback();
   4547     method @Deprecated public abstract void onResponderEnableFailure(int);
   4548     method @Deprecated public abstract void onResponderEnabled(android.net.wifi.RttManager.ResponderConfig);
   4549   }
   4550 
   4551   @Deprecated public static class RttManager.ResponderConfig implements android.os.Parcelable {
   4552     ctor @Deprecated public RttManager.ResponderConfig();
   4553     method @Deprecated public int describeContents();
   4554     method @Deprecated public void writeToParcel(android.os.Parcel, int);
   4555     field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.RttManager.ResponderConfig> CREATOR;
   4556     field @Deprecated public int centerFreq0;
   4557     field @Deprecated public int centerFreq1;
   4558     field @Deprecated public int channelWidth;
   4559     field @Deprecated public int frequency;
   4560     field @Deprecated public String macAddress;
   4561     field @Deprecated public int preamble;
   4562   }
   4563 
   4564   @Deprecated public static class RttManager.RttCapabilities implements android.os.Parcelable {
   4565     ctor @Deprecated public RttManager.RttCapabilities();
   4566     field @Deprecated public int bwSupported;
   4567     field @Deprecated public boolean lciSupported;
   4568     field @Deprecated public boolean lcrSupported;
   4569     field @Deprecated public int mcVersion;
   4570     field @Deprecated public boolean oneSidedRttSupported;
   4571     field @Deprecated public int preambleSupported;
   4572     field @Deprecated public boolean responderSupported;
   4573     field @Deprecated public boolean secureRttSupported;
   4574     field @Deprecated public boolean supportedPeerType;
   4575     field @Deprecated public boolean supportedType;
   4576     field @Deprecated public boolean twoSided11McRttSupported;
   4577   }
   4578 
   4579   @Deprecated public static interface RttManager.RttListener {
   4580     method @Deprecated public void onAborted();
   4581     method @Deprecated public void onFailure(int, String);
   4582     method @Deprecated public void onSuccess(android.net.wifi.RttManager.RttResult[]);
   4583   }
   4584 
   4585   @Deprecated public static class RttManager.RttParams {
   4586     ctor @Deprecated public RttManager.RttParams();
   4587     field @Deprecated public boolean LCIRequest;
   4588     field @Deprecated public boolean LCRRequest;
   4589     field @Deprecated public int bandwidth;
   4590     field @Deprecated public String bssid;
   4591     field @Deprecated public int burstTimeout;
   4592     field @Deprecated public int centerFreq0;
   4593     field @Deprecated public int centerFreq1;
   4594     field @Deprecated public int channelWidth;
   4595     field @Deprecated public int deviceType;
   4596     field @Deprecated public int frequency;
   4597     field @Deprecated public int interval;
   4598     field @Deprecated public int numRetriesPerFTMR;
   4599     field @Deprecated public int numRetriesPerMeasurementFrame;
   4600     field @Deprecated public int numSamplesPerBurst;
   4601     field @Deprecated public int num_retries;
   4602     field @Deprecated public int num_samples;
   4603     field @Deprecated public int numberBurst;
   4604     field @Deprecated public int preamble;
   4605     field @Deprecated public int requestType;
   4606     field @Deprecated public boolean secure;
   4607   }
   4608 
   4609   @Deprecated public static class RttManager.RttResult {
   4610     ctor @Deprecated public RttManager.RttResult();
   4611     field @Deprecated public android.net.wifi.RttManager.WifiInformationElement LCI;
   4612     field @Deprecated public android.net.wifi.RttManager.WifiInformationElement LCR;
   4613     field @Deprecated public String bssid;
   4614     field @Deprecated public int burstDuration;
   4615     field @Deprecated public int burstNumber;
   4616     field @Deprecated public int distance;
   4617     field @Deprecated public int distanceSpread;
   4618     field @Deprecated public int distanceStandardDeviation;
   4619     field @Deprecated public int distance_cm;
   4620     field @Deprecated public int distance_sd_cm;
   4621     field @Deprecated public int distance_spread_cm;
   4622     field @Deprecated public int frameNumberPerBurstPeer;
   4623     field @Deprecated public int measurementFrameNumber;
   4624     field @Deprecated public int measurementType;
   4625     field @Deprecated public int negotiatedBurstNum;
   4626     field @Deprecated public int requestType;
   4627     field @Deprecated public int retryAfterDuration;
   4628     field @Deprecated public int rssi;
   4629     field @Deprecated public int rssiSpread;
   4630     field @Deprecated public int rssi_spread;
   4631     field @Deprecated public long rtt;
   4632     field @Deprecated public long rttSpread;
   4633     field @Deprecated public long rttStandardDeviation;
   4634     field @Deprecated public long rtt_ns;
   4635     field @Deprecated public long rtt_sd_ns;
   4636     field @Deprecated public long rtt_spread_ns;
   4637     field @Deprecated public int rxRate;
   4638     field @Deprecated public boolean secure;
   4639     field @Deprecated public int status;
   4640     field @Deprecated public int successMeasurementFrameNumber;
   4641     field @Deprecated public long ts;
   4642     field @Deprecated public int txRate;
   4643     field @Deprecated public int tx_rate;
   4644   }
   4645 
   4646   @Deprecated public static class RttManager.WifiInformationElement {
   4647     ctor @Deprecated public RttManager.WifiInformationElement();
   4648     field @Deprecated public byte[] data;
   4649     field @Deprecated public byte id;
   4650   }
   4651 
   4652   @Deprecated public class WifiConfiguration implements android.os.Parcelable {
   4653     method @Deprecated public boolean hasNoInternetAccess();
   4654     method @Deprecated public boolean isEphemeral();
   4655     method @Deprecated public boolean isNoInternetAccessExpected();
   4656     field @Deprecated public String creatorName;
   4657     field @Deprecated public int creatorUid;
   4658     field @Deprecated public String lastUpdateName;
   4659     field @Deprecated public int lastUpdateUid;
   4660     field @Deprecated public boolean meteredHint;
   4661     field @Deprecated public int numAssociation;
   4662     field @Deprecated public int numScorerOverride;
   4663     field @Deprecated public int numScorerOverrideAndSwitchedNetwork;
   4664     field @Deprecated public boolean useExternalScores;
   4665   }
   4666 
   4667   @Deprecated public static class WifiConfiguration.KeyMgmt {
   4668     field @Deprecated public static final int WPA2_PSK = 4; // 0x4
   4669   }
   4670 
   4671   public class WifiInfo implements android.os.Parcelable {
   4672     method public boolean isOsuAp();
   4673     method public boolean isPasspointAp();
   4674   }
   4675 
   4676   public class WifiManager {
   4677     method @RequiresPermission("android.permission.WIFI_UPDATE_USABILITY_STATS_SCORE") public void addOnWifiUsabilityStatsListener(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.OnWifiUsabilityStatsListener);
   4678     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);
   4679     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);
   4680     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);
   4681     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);
   4682     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>);
   4683     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>);
   4684     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>);
   4685     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();
   4686     method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public android.net.wifi.WifiConfiguration getWifiApConfiguration();
   4687     method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public int getWifiApState();
   4688     method @Deprecated public boolean isDeviceToDeviceRttSupported();
   4689     method public boolean isPortableHotspotSupported();
   4690     method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isWifiApEnabled();
   4691     method public boolean isWifiScannerSupported();
   4692     method @RequiresPermission("android.permission.WIFI_UPDATE_USABILITY_STATS_SCORE") public void removeOnWifiUsabilityStatsListener(@NonNull android.net.wifi.WifiManager.OnWifiUsabilityStatsListener);
   4693     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);
   4694     method @RequiresPermission("android.permission.WIFI_SET_DEVICE_MOBILITY_STATE") public void setDeviceMobilityState(int);
   4695     method @RequiresPermission(android.Manifest.permission.CHANGE_WIFI_STATE) public boolean setWifiApConfiguration(android.net.wifi.WifiConfiguration);
   4696     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);
   4697     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);
   4698     method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public boolean startScan(android.os.WorkSource);
   4699     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);
   4700     method @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD}) public void stopEasyConnectSession();
   4701     method @RequiresPermission("android.permission.WIFI_UPDATE_USABILITY_STATS_SCORE") public void updateWifiUsabilityScore(int, int, int);
   4702     field public static final int CHANGE_REASON_ADDED = 0; // 0x0
   4703     field public static final int CHANGE_REASON_CONFIG_CHANGE = 2; // 0x2
   4704     field public static final int CHANGE_REASON_REMOVED = 1; // 0x1
   4705     field public static final String CONFIGURED_NETWORKS_CHANGED_ACTION = "android.net.wifi.CONFIGURED_NETWORKS_CHANGE";
   4706     field public static final int DEVICE_MOBILITY_STATE_HIGH_MVMT = 1; // 0x1
   4707     field public static final int DEVICE_MOBILITY_STATE_LOW_MVMT = 2; // 0x2
   4708     field public static final int DEVICE_MOBILITY_STATE_STATIONARY = 3; // 0x3
   4709     field public static final int DEVICE_MOBILITY_STATE_UNKNOWN = 0; // 0x0
   4710     field public static final int EASY_CONNECT_NETWORK_ROLE_AP = 1; // 0x1
   4711     field public static final int EASY_CONNECT_NETWORK_ROLE_STA = 0; // 0x0
   4712     field public static final String EXTRA_CHANGE_REASON = "changeReason";
   4713     field public static final String EXTRA_MULTIPLE_NETWORKS_CHANGED = "multipleChanges";
   4714     field public static final String EXTRA_PREVIOUS_WIFI_AP_STATE = "previous_wifi_state";
   4715     field public static final String EXTRA_WIFI_AP_STATE = "wifi_state";
   4716     field public static final String EXTRA_WIFI_CONFIGURATION = "wifiConfiguration";
   4717     field public static final String EXTRA_WIFI_CREDENTIAL_EVENT_TYPE = "et";
   4718     field public static final String EXTRA_WIFI_CREDENTIAL_SSID = "ssid";
   4719     field public static final int PASSPOINT_HOME_NETWORK = 0; // 0x0
   4720     field public static final int PASSPOINT_ROAMING_NETWORK = 1; // 0x1
   4721     field public static final String WIFI_AP_STATE_CHANGED_ACTION = "android.net.wifi.WIFI_AP_STATE_CHANGED";
   4722     field public static final int WIFI_AP_STATE_DISABLED = 11; // 0xb
   4723     field public static final int WIFI_AP_STATE_DISABLING = 10; // 0xa
   4724     field public static final int WIFI_AP_STATE_ENABLED = 13; // 0xd
   4725     field public static final int WIFI_AP_STATE_ENABLING = 12; // 0xc
   4726     field public static final int WIFI_AP_STATE_FAILED = 14; // 0xe
   4727     field public static final String WIFI_CREDENTIAL_CHANGED_ACTION = "android.net.wifi.WIFI_CREDENTIAL_CHANGED";
   4728     field public static final int WIFI_CREDENTIAL_FORGOT = 1; // 0x1
   4729     field public static final int WIFI_CREDENTIAL_SAVED = 0; // 0x0
   4730   }
   4731 
   4732   public static interface WifiManager.ActionListener {
   4733     method public void onFailure(int);
   4734     method public void onSuccess();
   4735   }
   4736 
   4737   public static interface WifiManager.OnWifiUsabilityStatsListener {
   4738     method public void onWifiUsabilityStats(int, boolean, @NonNull android.net.wifi.WifiUsabilityStatsEntry);
   4739   }
   4740 
   4741   public class WifiNetworkConnectionStatistics implements android.os.Parcelable {
   4742     ctor public WifiNetworkConnectionStatistics(int, int);
   4743     ctor public WifiNetworkConnectionStatistics();
   4744     ctor public WifiNetworkConnectionStatistics(android.net.wifi.WifiNetworkConnectionStatistics);
   4745     method public int describeContents();
   4746     method public void writeToParcel(android.os.Parcel, int);
   4747     field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiNetworkConnectionStatistics> CREATOR;
   4748     field public int numConnection;
   4749     field public int numUsage;
   4750   }
   4751 
   4752   public class WifiScanner {
   4753     method @Deprecated public void configureWifiChange(int, int, int, int, int, android.net.wifi.WifiScanner.BssidInfo[]);
   4754     method @Deprecated public void configureWifiChange(android.net.wifi.WifiScanner.WifiChangeSettings);
   4755     method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public boolean getScanResults();
   4756     method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void startBackgroundScan(android.net.wifi.WifiScanner.ScanSettings, android.net.wifi.WifiScanner.ScanListener);
   4757     method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void startBackgroundScan(android.net.wifi.WifiScanner.ScanSettings, android.net.wifi.WifiScanner.ScanListener, android.os.WorkSource);
   4758     method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void startScan(android.net.wifi.WifiScanner.ScanSettings, android.net.wifi.WifiScanner.ScanListener);
   4759     method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void startScan(android.net.wifi.WifiScanner.ScanSettings, android.net.wifi.WifiScanner.ScanListener, android.os.WorkSource);
   4760     method @Deprecated public void startTrackingBssids(android.net.wifi.WifiScanner.BssidInfo[], int, android.net.wifi.WifiScanner.BssidListener);
   4761     method @Deprecated public void startTrackingWifiChange(android.net.wifi.WifiScanner.WifiChangeListener);
   4762     method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void stopBackgroundScan(android.net.wifi.WifiScanner.ScanListener);
   4763     method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void stopScan(android.net.wifi.WifiScanner.ScanListener);
   4764     method @Deprecated public void stopTrackingBssids(android.net.wifi.WifiScanner.BssidListener);
   4765     method @Deprecated public void stopTrackingWifiChange(android.net.wifi.WifiScanner.WifiChangeListener);
   4766     field public static final int MAX_SCAN_PERIOD_MS = 1024000; // 0xfa000
   4767     field public static final int MIN_SCAN_PERIOD_MS = 1000; // 0x3e8
   4768     field public static final int REASON_DUPLICATE_REQEUST = -5; // 0xfffffffb
   4769     field public static final int REASON_INVALID_LISTENER = -2; // 0xfffffffe
   4770     field public static final int REASON_INVALID_REQUEST = -3; // 0xfffffffd
   4771     field public static final int REASON_NOT_AUTHORIZED = -4; // 0xfffffffc
   4772     field public static final int REASON_SUCCEEDED = 0; // 0x0
   4773     field public static final int REASON_UNSPECIFIED = -1; // 0xffffffff
   4774     field @Deprecated public static final int REPORT_EVENT_AFTER_BUFFER_FULL = 0; // 0x0
   4775     field public static final int REPORT_EVENT_AFTER_EACH_SCAN = 1; // 0x1
   4776     field public static final int REPORT_EVENT_FULL_SCAN_RESULT = 2; // 0x2
   4777     field public static final int REPORT_EVENT_NO_BATCH = 4; // 0x4
   4778     field public static final int WIFI_BAND_24_GHZ = 1; // 0x1
   4779     field public static final int WIFI_BAND_5_GHZ = 2; // 0x2
   4780     field public static final int WIFI_BAND_5_GHZ_DFS_ONLY = 4; // 0x4
   4781     field public static final int WIFI_BAND_5_GHZ_WITH_DFS = 6; // 0x6
   4782     field public static final int WIFI_BAND_BOTH = 3; // 0x3
   4783     field public static final int WIFI_BAND_BOTH_WITH_DFS = 7; // 0x7
   4784     field public static final int WIFI_BAND_UNSPECIFIED = 0; // 0x0
   4785   }
   4786 
   4787   public static interface WifiScanner.ActionListener {
   4788     method public void onFailure(int, String);
   4789     method public void onSuccess();
   4790   }
   4791 
   4792   @Deprecated public static class WifiScanner.BssidInfo {
   4793     ctor @Deprecated public WifiScanner.BssidInfo();
   4794     field @Deprecated public String bssid;
   4795     field @Deprecated public int frequencyHint;
   4796     field @Deprecated public int high;
   4797     field @Deprecated public int low;
   4798   }
   4799 
   4800   @Deprecated public static interface WifiScanner.BssidListener extends android.net.wifi.WifiScanner.ActionListener {
   4801     method @Deprecated public void onFound(android.net.wifi.ScanResult[]);
   4802     method @Deprecated public void onLost(android.net.wifi.ScanResult[]);
   4803   }
   4804 
   4805   public static class WifiScanner.ChannelSpec {
   4806     ctor public WifiScanner.ChannelSpec(int);
   4807     field public int frequency;
   4808   }
   4809 
   4810   @Deprecated public static class WifiScanner.HotlistSettings implements android.os.Parcelable {
   4811     ctor @Deprecated public WifiScanner.HotlistSettings();
   4812     field @Deprecated public int apLostThreshold;
   4813     field @Deprecated public android.net.wifi.WifiScanner.BssidInfo[] bssidInfos;
   4814   }
   4815 
   4816   public static class WifiScanner.ParcelableScanData implements android.os.Parcelable {
   4817     ctor public WifiScanner.ParcelableScanData(android.net.wifi.WifiScanner.ScanData[]);
   4818     method public android.net.wifi.WifiScanner.ScanData[] getResults();
   4819     field public android.net.wifi.WifiScanner.ScanData[] mResults;
   4820   }
   4821 
   4822   public static class WifiScanner.ParcelableScanResults implements android.os.Parcelable {
   4823     ctor public WifiScanner.ParcelableScanResults(android.net.wifi.ScanResult[]);
   4824     method public android.net.wifi.ScanResult[] getResults();
   4825     field public android.net.wifi.ScanResult[] mResults;
   4826   }
   4827 
   4828   public static class WifiScanner.ScanData implements android.os.Parcelable {
   4829     ctor public WifiScanner.ScanData(int, int, android.net.wifi.ScanResult[]);
   4830     ctor public WifiScanner.ScanData(android.net.wifi.WifiScanner.ScanData);
   4831     method public int getFlags();
   4832     method public int getId();
   4833     method public android.net.wifi.ScanResult[] getResults();
   4834   }
   4835 
   4836   public static interface WifiScanner.ScanListener extends android.net.wifi.WifiScanner.ActionListener {
   4837     method public void onFullResult(android.net.wifi.ScanResult);
   4838     method public void onPeriodChanged(int);
   4839     method public void onResults(android.net.wifi.WifiScanner.ScanData[]);
   4840   }
   4841 
   4842   public static class WifiScanner.ScanSettings implements android.os.Parcelable {
   4843     ctor public WifiScanner.ScanSettings();
   4844     field public int band;
   4845     field public android.net.wifi.WifiScanner.ChannelSpec[] channels;
   4846     field public boolean hideFromAppOps;
   4847     field public boolean ignoreLocationSettings;
   4848     field public int maxPeriodInMs;
   4849     field public int maxScansToCache;
   4850     field public int numBssidsPerScan;
   4851     field public int periodInMs;
   4852     field public int reportEvents;
   4853     field public int stepCount;
   4854   }
   4855 
   4856   @Deprecated public static interface WifiScanner.WifiChangeListener extends android.net.wifi.WifiScanner.ActionListener {
   4857     method @Deprecated public void onChanging(android.net.wifi.ScanResult[]);
   4858     method @Deprecated public void onQuiescence(android.net.wifi.ScanResult[]);
   4859   }
   4860 
   4861   @Deprecated public static class WifiScanner.WifiChangeSettings implements android.os.Parcelable {
   4862     ctor @Deprecated public WifiScanner.WifiChangeSettings();
   4863     field @Deprecated public android.net.wifi.WifiScanner.BssidInfo[] bssidInfos;
   4864     field @Deprecated public int lostApSampleSize;
   4865     field @Deprecated public int minApsBreachingThreshold;
   4866     field @Deprecated public int periodInMs;
   4867     field @Deprecated public int rssiSampleSize;
   4868     field @Deprecated public int unchangedSampleSize;
   4869   }
   4870 
   4871   public final class WifiUsabilityStatsEntry implements android.os.Parcelable {
   4872     method public int describeContents();
   4873     method public int getCellularDataNetworkType();
   4874     method public int getCellularSignalStrengthDb();
   4875     method public int getCellularSignalStrengthDbm();
   4876     method public int getLinkSpeedMbps();
   4877     method public int getProbeElapsedTimeSinceLastUpdateMillis();
   4878     method public int getProbeMcsRateSinceLastUpdate();
   4879     method public int getProbeStatusSinceLastUpdate();
   4880     method public int getRssi();
   4881     method public int getRxLinkSpeedMbps();
   4882     method public long getTimeStampMillis();
   4883     method public long getTotalBackgroundScanTimeMillis();
   4884     method public long getTotalBeaconRx();
   4885     method public long getTotalCcaBusyFreqTimeMillis();
   4886     method public long getTotalHotspot2ScanTimeMillis();
   4887     method public long getTotalNanScanTimeMillis();
   4888     method public long getTotalPnoScanTimeMillis();
   4889     method public long getTotalRadioOnFreqTimeMillis();
   4890     method public long getTotalRadioOnTimeMillis();
   4891     method public long getTotalRadioRxTimeMillis();
   4892     method public long getTotalRadioTxTimeMillis();
   4893     method public long getTotalRoamScanTimeMillis();
   4894     method public long getTotalRxSuccess();
   4895     method public long getTotalScanTimeMillis();
   4896     method public long getTotalTxBad();
   4897     method public long getTotalTxRetries();
   4898     method public long getTotalTxSuccess();
   4899     method public boolean isSameRegisteredCell();
   4900     method public void writeToParcel(android.os.Parcel, int);
   4901     field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiUsabilityStatsEntry> CREATOR;
   4902     field public static final int PROBE_STATUS_FAILURE = 3; // 0x3
   4903     field public static final int PROBE_STATUS_NO_PROBE = 1; // 0x1
   4904     field public static final int PROBE_STATUS_SUCCESS = 2; // 0x2
   4905     field public static final int PROBE_STATUS_UNKNOWN = 0; // 0x0
   4906   }
   4907 
   4908 }
   4909 
   4910 package android.net.wifi.aware {
   4911 
   4912   public class DiscoverySession implements java.lang.AutoCloseable {
   4913     method @Deprecated public android.net.NetworkSpecifier createNetworkSpecifierPmk(@NonNull android.net.wifi.aware.PeerHandle, @NonNull byte[]);
   4914   }
   4915 
   4916   public static final class WifiAwareNetworkSpecifier.Builder {
   4917     method @NonNull public android.net.wifi.aware.WifiAwareNetworkSpecifier.Builder setPmk(@NonNull byte[]);
   4918   }
   4919 
   4920   public class WifiAwareSession implements java.lang.AutoCloseable {
   4921     method public android.net.NetworkSpecifier createNetworkSpecifierPmk(int, @NonNull byte[], @NonNull byte[]);
   4922   }
   4923 
   4924 }
   4925 
   4926 package android.net.wifi.hotspot2 {
   4927 
   4928   public final class OsuProvider implements android.os.Parcelable {
   4929     method public int describeContents();
   4930     method @Nullable public String getFriendlyName();
   4931     method @Nullable public android.net.Uri getServerUri();
   4932     method public void writeToParcel(android.os.Parcel, int);
   4933     field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.hotspot2.OsuProvider> CREATOR;
   4934   }
   4935 
   4936   public abstract class ProvisioningCallback {
   4937     ctor public ProvisioningCallback();
   4938     method public abstract void onProvisioningComplete();
   4939     method public abstract void onProvisioningFailure(int);
   4940     method public abstract void onProvisioningStatus(int);
   4941     field public static final int OSU_FAILURE_ADD_PASSPOINT_CONFIGURATION = 22; // 0x16
   4942     field public static final int OSU_FAILURE_AP_CONNECTION = 1; // 0x1
   4943     field public static final int OSU_FAILURE_INVALID_URL_FORMAT_FOR_OSU = 8; // 0x8
   4944     field public static final int OSU_FAILURE_NO_AAA_SERVER_TRUST_ROOT_NODE = 17; // 0x11
   4945     field public static final int OSU_FAILURE_NO_AAA_TRUST_ROOT_CERTIFICATE = 21; // 0x15
   4946     field public static final int OSU_FAILURE_NO_OSU_ACTIVITY_FOUND = 14; // 0xe
   4947     field public static final int OSU_FAILURE_NO_POLICY_SERVER_TRUST_ROOT_NODE = 19; // 0x13
   4948     field public static final int OSU_FAILURE_NO_PPS_MO = 16; // 0x10
   4949     field public static final int OSU_FAILURE_NO_REMEDIATION_SERVER_TRUST_ROOT_NODE = 18; // 0x12
   4950     field public static final int OSU_FAILURE_OSU_PROVIDER_NOT_FOUND = 23; // 0x17
   4951     field public static final int OSU_FAILURE_PROVISIONING_ABORTED = 6; // 0x6
   4952     field public static final int OSU_FAILURE_PROVISIONING_NOT_AVAILABLE = 7; // 0x7
   4953     field public static final int OSU_FAILURE_RETRIEVE_TRUST_ROOT_CERTIFICATES = 20; // 0x14
   4954     field public static final int OSU_FAILURE_SERVER_CONNECTION = 3; // 0x3
   4955     field public static final int OSU_FAILURE_SERVER_URL_INVALID = 2; // 0x2
   4956     field public static final int OSU_FAILURE_SERVER_VALIDATION = 4; // 0x4
   4957     field public static final int OSU_FAILURE_SERVICE_PROVIDER_VERIFICATION = 5; // 0x5
   4958     field public static final int OSU_FAILURE_SOAP_MESSAGE_EXCHANGE = 11; // 0xb
   4959     field public static final int OSU_FAILURE_START_REDIRECT_LISTENER = 12; // 0xc
   4960     field public static final int OSU_FAILURE_TIMED_OUT_REDIRECT_LISTENER = 13; // 0xd
   4961     field public static final int OSU_FAILURE_UNEXPECTED_COMMAND_TYPE = 9; // 0x9
   4962     field public static final int OSU_FAILURE_UNEXPECTED_SOAP_MESSAGE_STATUS = 15; // 0xf
   4963     field public static final int OSU_FAILURE_UNEXPECTED_SOAP_MESSAGE_TYPE = 10; // 0xa
   4964     field public static final int OSU_STATUS_AP_CONNECTED = 2; // 0x2
   4965     field public static final int OSU_STATUS_AP_CONNECTING = 1; // 0x1
   4966     field public static final int OSU_STATUS_INIT_SOAP_EXCHANGE = 6; // 0x6
   4967     field public static final int OSU_STATUS_REDIRECT_RESPONSE_RECEIVED = 8; // 0x8
   4968     field public static final int OSU_STATUS_RETRIEVING_TRUST_ROOT_CERTS = 11; // 0xb
   4969     field public static final int OSU_STATUS_SECOND_SOAP_EXCHANGE = 9; // 0x9
   4970     field public static final int OSU_STATUS_SERVER_CONNECTED = 5; // 0x5
   4971     field public static final int OSU_STATUS_SERVER_CONNECTING = 3; // 0x3
   4972     field public static final int OSU_STATUS_SERVER_VALIDATED = 4; // 0x4
   4973     field public static final int OSU_STATUS_THIRD_SOAP_EXCHANGE = 10; // 0xa
   4974     field public static final int OSU_STATUS_WAITING_FOR_REDIRECT_RESPONSE = 7; // 0x7
   4975   }
   4976 
   4977 }
   4978 
   4979 package android.net.wifi.rtt {
   4980 
   4981   public static final class RangingRequest.Builder {
   4982     method public android.net.wifi.rtt.RangingRequest.Builder addResponder(@NonNull android.net.wifi.rtt.ResponderConfig);
   4983   }
   4984 
   4985   public final class RangingResult implements android.os.Parcelable {
   4986     method @NonNull public byte[] getLci();
   4987     method @NonNull public byte[] getLcr();
   4988   }
   4989 
   4990   public final class ResponderConfig implements android.os.Parcelable {
   4991     ctor public ResponderConfig(@NonNull android.net.MacAddress, int, boolean, int, int, int, int, int);
   4992     ctor public ResponderConfig(@NonNull android.net.wifi.aware.PeerHandle, int, boolean, int, int, int, int, int);
   4993     method public int describeContents();
   4994     method public static android.net.wifi.rtt.ResponderConfig fromScanResult(android.net.wifi.ScanResult);
   4995     method public static android.net.wifi.rtt.ResponderConfig fromWifiAwarePeerHandleWithDefaults(android.net.wifi.aware.PeerHandle);
   4996     method public static android.net.wifi.rtt.ResponderConfig fromWifiAwarePeerMacAddressWithDefaults(android.net.MacAddress);
   4997     method public void writeToParcel(android.os.Parcel, int);
   4998     field public static final int CHANNEL_WIDTH_160MHZ = 3; // 0x3
   4999     field public static final int CHANNEL_WIDTH_20MHZ = 0; // 0x0
   5000     field public static final int CHANNEL_WIDTH_40MHZ = 1; // 0x1
   5001     field public static final int CHANNEL_WIDTH_80MHZ = 2; // 0x2
   5002     field public static final int CHANNEL_WIDTH_80MHZ_PLUS_MHZ = 4; // 0x4
   5003     field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.rtt.ResponderConfig> CREATOR;
   5004     field public static final int PREAMBLE_HT = 1; // 0x1
   5005     field public static final int PREAMBLE_LEGACY = 0; // 0x0
   5006     field public static final int PREAMBLE_VHT = 2; // 0x2
   5007     field public static final int RESPONDER_AP = 0; // 0x0
   5008     field public static final int RESPONDER_AWARE = 4; // 0x4
   5009     field public static final int RESPONDER_P2P_CLIENT = 3; // 0x3
   5010     field public static final int RESPONDER_P2P_GO = 2; // 0x2
   5011     field public static final int RESPONDER_STA = 1; // 0x1
   5012     field public final int centerFreq0;
   5013     field public final int centerFreq1;
   5014     field public final int channelWidth;
   5015     field public final int frequency;
   5016     field public final android.net.MacAddress macAddress;
   5017     field public final android.net.wifi.aware.PeerHandle peerHandle;
   5018     field public final int preamble;
   5019     field public final int responderType;
   5020     field public final boolean supports80211mc;
   5021   }
   5022 
   5023   public final class ResponderLocation implements android.os.Parcelable {
   5024     method public boolean getExtraInfoOnAssociationIndication();
   5025   }
   5026 
   5027   public class WifiRttManager {
   5028     method @RequiresPermission(allOf={android.Manifest.permission.LOCATION_HARDWARE}) public void cancelRanging(@Nullable android.os.WorkSource);
   5029     method @RequiresPermission(allOf={android.Manifest.permission.LOCATION_HARDWARE, android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.CHANGE_WIFI_STATE, android.Manifest.permission.ACCESS_WIFI_STATE}) public void startRanging(@Nullable android.os.WorkSource, @NonNull android.net.wifi.rtt.RangingRequest, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.rtt.RangingResultCallback);
   5030   }
   5031 
   5032 }
   5033 
   5034 package android.nfc {
   5035 
   5036   public final class NfcAdapter {
   5037     method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean addNfcUnlockHandler(android.nfc.NfcAdapter.NfcUnlockHandler, String[]);
   5038     method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean disable();
   5039     method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean disable(boolean);
   5040     method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean disableNdefPush();
   5041     method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean enable();
   5042     method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean enableNdefPush();
   5043     method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean enableSecureNfc(boolean);
   5044     method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean removeNfcUnlockHandler(android.nfc.NfcAdapter.NfcUnlockHandler);
   5045     method public void setNdefPushMessage(android.nfc.NdefMessage, android.app.Activity, int);
   5046     field public static final int FLAG_NDEF_PUSH_NO_CONFIRM = 1; // 0x1
   5047   }
   5048 
   5049   public static interface NfcAdapter.NfcUnlockHandler {
   5050     method public boolean onUnlockAttempted(android.nfc.Tag);
   5051   }
   5052 
   5053 }
   5054 
   5055 package android.os {
   5056 
   5057   public class BatteryManager {
   5058     method @RequiresPermission(android.Manifest.permission.POWER_SAVER) public boolean setChargingStateUpdateDelayMillis(int);
   5059     field public static final String EXTRA_EVENTS = "android.os.extra.EVENTS";
   5060     field public static final String EXTRA_EVENT_TIMESTAMP = "android.os.extra.EVENT_TIMESTAMP";
   5061   }
   5062 
   5063   public final class BatterySaverPolicyConfig implements android.os.Parcelable {
   5064     method public int describeContents();
   5065     method public float getAdjustBrightnessFactor();
   5066     method public boolean getAdvertiseIsEnabled();
   5067     method public boolean getDeferFullBackup();
   5068     method public boolean getDeferKeyValueBackup();
   5069     method @NonNull public java.util.Map<java.lang.String,java.lang.String> getDeviceSpecificSettings();
   5070     method public boolean getDisableAnimation();
   5071     method public boolean getDisableAod();
   5072     method public boolean getDisableLaunchBoost();
   5073     method public boolean getDisableOptionalSensors();
   5074     method public boolean getDisableSoundTrigger();
   5075     method public boolean getDisableVibration();
   5076     method public boolean getEnableAdjustBrightness();
   5077     method public boolean getEnableDataSaver();
   5078     method public boolean getEnableFirewall();
   5079     method public boolean getEnableNightMode();
   5080     method public boolean getEnableQuickDoze();
   5081     method public boolean getForceAllAppsStandby();
   5082     method public boolean getForceBackgroundCheck();
   5083     method public int getLocationMode();
   5084     method public void writeToParcel(android.os.Parcel, int);
   5085     field @NonNull public static final android.os.Parcelable.Creator<android.os.BatterySaverPolicyConfig> CREATOR;
   5086   }
   5087 
   5088   public static final class BatterySaverPolicyConfig.Builder {
   5089     ctor public BatterySaverPolicyConfig.Builder();
   5090     method @NonNull public android.os.BatterySaverPolicyConfig.Builder addDeviceSpecificSetting(@NonNull String, @NonNull String);
   5091     method @NonNull public android.os.BatterySaverPolicyConfig build();
   5092     method @NonNull public android.os.BatterySaverPolicyConfig.Builder setAdjustBrightnessFactor(float);
   5093     method @NonNull public android.os.BatterySaverPolicyConfig.Builder setAdvertiseIsEnabled(boolean);
   5094     method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDeferFullBackup(boolean);
   5095     method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDeferKeyValueBackup(boolean);
   5096     method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableAnimation(boolean);
   5097     method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableAod(boolean);
   5098     method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableLaunchBoost(boolean);
   5099     method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableOptionalSensors(boolean);
   5100     method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableSoundTrigger(boolean);
   5101     method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableVibration(boolean);
   5102     method @NonNull public android.os.BatterySaverPolicyConfig.Builder setEnableAdjustBrightness(boolean);
   5103     method @NonNull public android.os.BatterySaverPolicyConfig.Builder setEnableDataSaver(boolean);
   5104     method @NonNull public android.os.BatterySaverPolicyConfig.Builder setEnableFirewall(boolean);
   5105     method @NonNull public android.os.BatterySaverPolicyConfig.Builder setEnableNightMode(boolean);
   5106     method @NonNull public android.os.BatterySaverPolicyConfig.Builder setEnableQuickDoze(boolean);
   5107     method @NonNull public android.os.BatterySaverPolicyConfig.Builder setForceAllAppsStandby(boolean);
   5108     method @NonNull public android.os.BatterySaverPolicyConfig.Builder setForceBackgroundCheck(boolean);
   5109     method @NonNull public android.os.BatterySaverPolicyConfig.Builder setLocationMode(int);
   5110   }
   5111 
   5112   public class Binder implements android.os.IBinder {
   5113     method public static void setProxyTransactListener(@Nullable android.os.Binder.ProxyTransactListener);
   5114   }
   5115 
   5116   public static interface Binder.ProxyTransactListener {
   5117     method public void onTransactEnded(@Nullable Object);
   5118     method @Nullable public Object onTransactStarted(@NonNull android.os.IBinder, int);
   5119   }
   5120 
   5121   public final class BugreportManager {
   5122     method @RequiresPermission(android.Manifest.permission.DUMP) public void cancelBugreport();
   5123     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);
   5124   }
   5125 
   5126   public abstract static class BugreportManager.BugreportCallback {
   5127     ctor public BugreportManager.BugreportCallback();
   5128     method public void onError(int);
   5129     method public void onFinished();
   5130     method public void onProgress(@FloatRange(from=0.0f, to=100.0f) float);
   5131     field public static final int BUGREPORT_ERROR_ANOTHER_REPORT_IN_PROGRESS = 5; // 0x5
   5132     field public static final int BUGREPORT_ERROR_INVALID_INPUT = 1; // 0x1
   5133     field public static final int BUGREPORT_ERROR_RUNTIME = 2; // 0x2
   5134     field public static final int BUGREPORT_ERROR_USER_CONSENT_TIMED_OUT = 4; // 0x4
   5135     field public static final int BUGREPORT_ERROR_USER_DENIED_CONSENT = 3; // 0x3
   5136   }
   5137 
   5138   public final class BugreportParams {
   5139     ctor public BugreportParams(int);
   5140     method public int getMode();
   5141     field public static final int BUGREPORT_MODE_FULL = 0; // 0x0
   5142     field public static final int BUGREPORT_MODE_INTERACTIVE = 1; // 0x1
   5143     field public static final int BUGREPORT_MODE_REMOTE = 2; // 0x2
   5144     field public static final int BUGREPORT_MODE_TELEPHONY = 4; // 0x4
   5145     field public static final int BUGREPORT_MODE_WEAR = 3; // 0x3
   5146     field public static final int BUGREPORT_MODE_WIFI = 5; // 0x5
   5147   }
   5148 
   5149   public static class Build.VERSION {
   5150     field @NonNull public static final String PREVIEW_SDK_FINGERPRINT;
   5151   }
   5152 
   5153   public final class ConfigUpdate {
   5154     field public static final String ACTION_UPDATE_CARRIER_ID_DB = "android.os.action.UPDATE_CARRIER_ID_DB";
   5155     field public static final String ACTION_UPDATE_CARRIER_PROVISIONING_URLS = "android.intent.action.UPDATE_CARRIER_PROVISIONING_URLS";
   5156     field public static final String ACTION_UPDATE_CONVERSATION_ACTIONS = "android.intent.action.UPDATE_CONVERSATION_ACTIONS";
   5157     field public static final String ACTION_UPDATE_CT_LOGS = "android.intent.action.UPDATE_CT_LOGS";
   5158     field public static final String ACTION_UPDATE_INTENT_FIREWALL = "android.intent.action.UPDATE_INTENT_FIREWALL";
   5159     field public static final String ACTION_UPDATE_LANG_ID = "android.intent.action.UPDATE_LANG_ID";
   5160     field public static final String ACTION_UPDATE_NETWORK_WATCHLIST = "android.intent.action.UPDATE_NETWORK_WATCHLIST";
   5161     field public static final String ACTION_UPDATE_PINS = "android.intent.action.UPDATE_PINS";
   5162     field public static final String ACTION_UPDATE_SMART_SELECTION = "android.intent.action.UPDATE_SMART_SELECTION";
   5163     field public static final String ACTION_UPDATE_SMS_SHORT_CODES = "android.intent.action.UPDATE_SMS_SHORT_CODES";
   5164   }
   5165 
   5166   public class Environment {
   5167     method @NonNull public static java.io.File getOdmDirectory();
   5168     method @NonNull public static java.io.File getOemDirectory();
   5169     method @NonNull public static java.io.File getProductDirectory();
   5170     method @NonNull public static java.io.File getProductServicesDirectory();
   5171     method @NonNull public static java.io.File getVendorDirectory();
   5172   }
   5173 
   5174   public class HidlSupport {
   5175     method public static boolean deepEquals(Object, Object);
   5176     method public static int deepHashCode(Object);
   5177     method public static int getPidIfSharable();
   5178     method public static boolean interfacesEqual(android.os.IHwInterface, Object);
   5179   }
   5180 
   5181   public abstract class HwBinder implements android.os.IHwBinder {
   5182     ctor public HwBinder();
   5183     method public static final void configureRpcThreadpool(long, boolean);
   5184     method public static void enableInstrumentation();
   5185     method public static final android.os.IHwBinder getService(String, String) throws java.util.NoSuchElementException, android.os.RemoteException;
   5186     method public static final android.os.IHwBinder getService(String, String, boolean) throws java.util.NoSuchElementException, android.os.RemoteException;
   5187     method public static final void joinRpcThreadpool();
   5188     method public abstract void onTransact(int, android.os.HwParcel, android.os.HwParcel, int) throws android.os.RemoteException;
   5189     method public final void registerService(String) throws android.os.RemoteException;
   5190     method public final void transact(int, android.os.HwParcel, android.os.HwParcel, int) throws android.os.RemoteException;
   5191   }
   5192 
   5193   public class HwBlob {
   5194     ctor public HwBlob(int);
   5195     method public final void copyToBoolArray(long, boolean[], int);
   5196     method public final void copyToDoubleArray(long, double[], int);
   5197     method public final void copyToFloatArray(long, float[], int);
   5198     method public final void copyToInt16Array(long, short[], int);
   5199     method public final void copyToInt32Array(long, int[], int);
   5200     method public final void copyToInt64Array(long, long[], int);
   5201     method public final void copyToInt8Array(long, byte[], int);
   5202     method public final boolean getBool(long);
   5203     method public final double getDouble(long);
   5204     method public final float getFloat(long);
   5205     method public final short getInt16(long);
   5206     method public final int getInt32(long);
   5207     method public final long getInt64(long);
   5208     method public final byte getInt8(long);
   5209     method public final String getString(long);
   5210     method public final long handle();
   5211     method public final void putBlob(long, android.os.HwBlob);
   5212     method public final void putBool(long, boolean);
   5213     method public final void putBoolArray(long, boolean[]);
   5214     method public final void putDouble(long, double);
   5215     method public final void putDoubleArray(long, double[]);
   5216     method public final void putFloat(long, float);
   5217     method public final void putFloatArray(long, float[]);
   5218     method public final void putInt16(long, short);
   5219     method public final void putInt16Array(long, short[]);
   5220     method public final void putInt32(long, int);
   5221     method public final void putInt32Array(long, int[]);
   5222     method public final void putInt64(long, long);
   5223     method public final void putInt64Array(long, long[]);
   5224     method public final void putInt8(long, byte);
   5225     method public final void putInt8Array(long, byte[]);
   5226     method public final void putNativeHandle(long, @Nullable android.os.NativeHandle);
   5227     method public final void putString(long, String);
   5228     method public static Boolean[] wrapArray(@NonNull boolean[]);
   5229     method public static Long[] wrapArray(@NonNull long[]);
   5230     method public static Byte[] wrapArray(@NonNull byte[]);
   5231     method public static Short[] wrapArray(@NonNull short[]);
   5232     method public static Integer[] wrapArray(@NonNull int[]);
   5233     method public static Float[] wrapArray(@NonNull float[]);
   5234     method public static Double[] wrapArray(@NonNull double[]);
   5235   }
   5236 
   5237   public class HwParcel {
   5238     ctor public HwParcel();
   5239     method public final void enforceInterface(String);
   5240     method public final boolean readBool();
   5241     method public final java.util.ArrayList<java.lang.Boolean> readBoolVector();
   5242     method public final android.os.HwBlob readBuffer(long);
   5243     method public final double readDouble();
   5244     method public final java.util.ArrayList<java.lang.Double> readDoubleVector();
   5245     method public final android.os.HwBlob readEmbeddedBuffer(long, long, long, boolean);
   5246     method @Nullable public final android.os.NativeHandle readEmbeddedNativeHandle(long, long);
   5247     method public final float readFloat();
   5248     method public final java.util.ArrayList<java.lang.Float> readFloatVector();
   5249     method public final short readInt16();
   5250     method public final java.util.ArrayList<java.lang.Short> readInt16Vector();
   5251     method public final int readInt32();
   5252     method public final java.util.ArrayList<java.lang.Integer> readInt32Vector();
   5253     method public final long readInt64();
   5254     method public final java.util.ArrayList<java.lang.Long> readInt64Vector();
   5255     method public final byte readInt8();
   5256     method public final java.util.ArrayList<java.lang.Byte> readInt8Vector();
   5257     method @Nullable public final android.os.NativeHandle readNativeHandle();
   5258     method @NonNull public final java.util.ArrayList<android.os.NativeHandle> readNativeHandleVector();
   5259     method public final String readString();
   5260     method public final java.util.ArrayList<java.lang.String> readStringVector();
   5261     method public final android.os.IHwBinder readStrongBinder();
   5262     method public final void release();
   5263     method public final void releaseTemporaryStorage();
   5264     method public final void send();
   5265     method public final void verifySuccess();
   5266     method public final void writeBool(boolean);
   5267     method public final void writeBoolVector(java.util.ArrayList<java.lang.Boolean>);
   5268     method public final void writeBuffer(android.os.HwBlob);
   5269     method public final void writeDouble(double);
   5270     method public final void writeDoubleVector(java.util.ArrayList<java.lang.Double>);
   5271     method public final void writeFloat(float);
   5272     method public final void writeFloatVector(java.util.ArrayList<java.lang.Float>);
   5273     method public final void writeInt16(short);
   5274     method public final void writeInt16Vector(java.util.ArrayList<java.lang.Short>);
   5275     method public final void writeInt32(int);
   5276     method public final void writeInt32Vector(java.util.ArrayList<java.lang.Integer>);
   5277     method public final void writeInt64(long);
   5278     method public final void writeInt64Vector(java.util.ArrayList<java.lang.Long>);
   5279     method public final void writeInt8(byte);
   5280     method public final void writeInt8Vector(java.util.ArrayList<java.lang.Byte>);
   5281     method public final void writeInterfaceToken(String);
   5282     method public final void writeNativeHandle(@Nullable android.os.NativeHandle);
   5283     method public final void writeNativeHandleVector(@NonNull java.util.ArrayList<android.os.NativeHandle>);
   5284     method public final void writeStatus(int);
   5285     method public final void writeString(String);
   5286     method public final void writeStringVector(java.util.ArrayList<java.lang.String>);
   5287     method public final void writeStrongBinder(android.os.IHwBinder);
   5288     field public static final int STATUS_SUCCESS = 0; // 0x0
   5289   }
   5290 
   5291   @IntDef(prefix={"STATUS_"}, value={android.os.HwParcel.STATUS_SUCCESS}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface HwParcel.Status {
   5292   }
   5293 
   5294   public interface IHwBinder {
   5295     method public boolean linkToDeath(android.os.IHwBinder.DeathRecipient, long);
   5296     method public android.os.IHwInterface queryLocalInterface(String);
   5297     method public void transact(int, android.os.HwParcel, android.os.HwParcel, int) throws android.os.RemoteException;
   5298     method public boolean unlinkToDeath(android.os.IHwBinder.DeathRecipient);
   5299   }
   5300 
   5301   public static interface IHwBinder.DeathRecipient {
   5302     method public void serviceDied(long);
   5303   }
   5304 
   5305   public interface IHwInterface {
   5306     method public android.os.IHwBinder asBinder();
   5307   }
   5308 
   5309   public class IncidentManager {
   5310     method @RequiresPermission(android.Manifest.permission.APPROVE_INCIDENT_REPORTS) public void approveReport(android.net.Uri);
   5311     method @RequiresPermission("android.permission.REQUEST_INCIDENT_REPORT_APPROVAL") public void cancelAuthorization(android.os.IncidentManager.AuthListener);
   5312     method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void deleteIncidentReports(android.net.Uri);
   5313     method @RequiresPermission(android.Manifest.permission.APPROVE_INCIDENT_REPORTS) public void denyReport(android.net.Uri);
   5314     method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) @Nullable public android.os.IncidentManager.IncidentReport getIncidentReport(android.net.Uri);
   5315     method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) @NonNull public java.util.List<android.net.Uri> getIncidentReportList(String);
   5316     method @RequiresPermission(android.Manifest.permission.APPROVE_INCIDENT_REPORTS) public java.util.List<android.os.IncidentManager.PendingReport> getPendingReports();
   5317     method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void reportIncident(android.os.IncidentReportArgs);
   5318     method @RequiresPermission("android.permission.REQUEST_INCIDENT_REPORT_APPROVAL") public void requestAuthorization(int, String, int, android.os.IncidentManager.AuthListener);
   5319     field public static final int FLAG_CONFIRMATION_DIALOG = 1; // 0x1
   5320     field public static final int PRIVACY_POLICY_AUTO = 200; // 0xc8
   5321     field public static final int PRIVACY_POLICY_EXPLICIT = 100; // 0x64
   5322     field public static final int PRIVACY_POLICY_LOCAL = 0; // 0x0
   5323   }
   5324 
   5325   public static class IncidentManager.AuthListener {
   5326     ctor public IncidentManager.AuthListener();
   5327     method public void onReportApproved();
   5328     method public void onReportDenied();
   5329   }
   5330 
   5331   public static class IncidentManager.IncidentReport implements java.io.Closeable android.os.Parcelable {
   5332     ctor public IncidentManager.IncidentReport(android.os.Parcel);
   5333     method public void close();
   5334     method public int describeContents();
   5335     method public java.io.InputStream getInputStream() throws java.io.IOException;
   5336     method public long getPrivacyPolicy();
   5337     method public long getTimestamp();
   5338     method public void writeToParcel(android.os.Parcel, int);
   5339     field @NonNull public static final android.os.Parcelable.Creator<android.os.IncidentManager.IncidentReport> CREATOR;
   5340   }
   5341 
   5342   public static class IncidentManager.PendingReport {
   5343     ctor public IncidentManager.PendingReport(@NonNull android.net.Uri);
   5344     method public int getFlags();
   5345     method @NonNull public String getRequestingPackage();
   5346     method public long getTimestamp();
   5347     method @NonNull public android.net.Uri getUri();
   5348   }
   5349 
   5350   public final class IncidentReportArgs implements android.os.Parcelable {
   5351     ctor public IncidentReportArgs();
   5352     ctor public IncidentReportArgs(android.os.Parcel);
   5353     method public void addHeader(byte[]);
   5354     method public void addSection(int);
   5355     method public boolean containsSection(int);
   5356     method public int describeContents();
   5357     method public boolean isAll();
   5358     method public void readFromParcel(android.os.Parcel);
   5359     method public int sectionCount();
   5360     method public void setAll(boolean);
   5361     method public void setPrivacyPolicy(int);
   5362     method public void writeToParcel(android.os.Parcel, int);
   5363     field @NonNull public static final android.os.Parcelable.Creator<android.os.IncidentReportArgs> CREATOR;
   5364   }
   5365 
   5366   public final class NativeHandle implements java.io.Closeable {
   5367     ctor public NativeHandle();
   5368     ctor public NativeHandle(@NonNull java.io.FileDescriptor, boolean);
   5369     ctor public NativeHandle(@NonNull java.io.FileDescriptor[], @NonNull int[], boolean);
   5370     method public void close() throws java.io.IOException;
   5371     method @NonNull public android.os.NativeHandle dup() throws java.io.IOException;
   5372     method @NonNull public java.io.FileDescriptor getFileDescriptor();
   5373     method @NonNull public java.io.FileDescriptor[] getFileDescriptors();
   5374     method @NonNull public int[] getInts();
   5375     method public boolean hasSingleFileDescriptor();
   5376   }
   5377 
   5378   public final class PowerManager {
   5379     method @RequiresPermission(allOf={android.Manifest.permission.READ_DREAM_STATE, android.Manifest.permission.WRITE_DREAM_STATE}) public void dream(long);
   5380     method @RequiresPermission(android.Manifest.permission.DEVICE_POWER) public boolean forceSuspend();
   5381     method @RequiresPermission(android.Manifest.permission.POWER_SAVER) public int getPowerSaveModeTrigger();
   5382     method @RequiresPermission(anyOf={android.Manifest.permission.DEVICE_POWER, android.Manifest.permission.POWER_SAVER}) public boolean setAdaptivePowerSaveEnabled(boolean);
   5383     method @RequiresPermission(anyOf={android.Manifest.permission.DEVICE_POWER, android.Manifest.permission.POWER_SAVER}) public boolean setAdaptivePowerSavePolicy(@NonNull android.os.BatterySaverPolicyConfig);
   5384     method @RequiresPermission(android.Manifest.permission.POWER_SAVER) public boolean setDynamicPowerSaveHint(boolean, int);
   5385     method @RequiresPermission(anyOf={android.Manifest.permission.DEVICE_POWER, android.Manifest.permission.POWER_SAVER}) public boolean setPowerSaveModeEnabled(boolean);
   5386     method @RequiresPermission(anyOf={android.Manifest.permission.DEVICE_POWER, android.Manifest.permission.USER_ACTIVITY}) public void userActivity(long, int, int);
   5387     field public static final int POWER_SAVE_MODE_TRIGGER_DYNAMIC = 1; // 0x1
   5388     field public static final int POWER_SAVE_MODE_TRIGGER_PERCENTAGE = 0; // 0x0
   5389     field public static final int USER_ACTIVITY_EVENT_ACCESSIBILITY = 3; // 0x3
   5390     field public static final int USER_ACTIVITY_EVENT_BUTTON = 1; // 0x1
   5391     field public static final int USER_ACTIVITY_EVENT_OTHER = 0; // 0x0
   5392     field public static final int USER_ACTIVITY_EVENT_TOUCH = 2; // 0x2
   5393     field public static final int USER_ACTIVITY_FLAG_INDIRECT = 2; // 0x2
   5394     field public static final int USER_ACTIVITY_FLAG_NO_CHANGE_LIGHTS = 1; // 0x1
   5395   }
   5396 
   5397   public class RecoverySystem {
   5398     method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void cancelScheduledUpdate(android.content.Context) throws java.io.IOException;
   5399     method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void installPackage(android.content.Context, java.io.File, boolean) throws java.io.IOException;
   5400     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;
   5401     method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void processPackage(android.content.Context, java.io.File, android.os.RecoverySystem.ProgressListener) throws java.io.IOException;
   5402     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;
   5403     method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void scheduleUpdateOnBoot(android.content.Context, java.io.File) throws java.io.IOException;
   5404     method public static boolean verifyPackageCompatibility(java.io.File) throws java.io.IOException;
   5405   }
   5406 
   5407   public final class RemoteCallback implements android.os.Parcelable {
   5408     ctor public RemoteCallback(android.os.RemoteCallback.OnResultListener);
   5409     ctor public RemoteCallback(@NonNull android.os.RemoteCallback.OnResultListener, @Nullable android.os.Handler);
   5410     method public int describeContents();
   5411     method public void sendResult(@Nullable android.os.Bundle);
   5412     method public void writeToParcel(android.os.Parcel, int);
   5413     field @NonNull public static final android.os.Parcelable.Creator<android.os.RemoteCallback> CREATOR;
   5414   }
   5415 
   5416   public static interface RemoteCallback.OnResultListener {
   5417     method public void onResult(@Nullable android.os.Bundle);
   5418   }
   5419 
   5420   public class ServiceSpecificException extends java.lang.RuntimeException {
   5421     ctor public ServiceSpecificException(int, @Nullable String);
   5422     ctor public ServiceSpecificException(int);
   5423     field public final int errorCode;
   5424   }
   5425 
   5426   public final class StatsDimensionsValue implements android.os.Parcelable {
   5427     method public int describeContents();
   5428     method public boolean getBooleanValue();
   5429     method public int getField();
   5430     method public float getFloatValue();
   5431     method public int getIntValue();
   5432     method public long getLongValue();
   5433     method public String getStringValue();
   5434     method public java.util.List<android.os.StatsDimensionsValue> getTupleValueList();
   5435     method public int getValueType();
   5436     method public boolean isValueType(int);
   5437     method public void writeToParcel(android.os.Parcel, int);
   5438     field public static final int BOOLEAN_VALUE_TYPE = 5; // 0x5
   5439     field @NonNull public static final android.os.Parcelable.Creator<android.os.StatsDimensionsValue> CREATOR;
   5440     field public static final int FLOAT_VALUE_TYPE = 6; // 0x6
   5441     field public static final int INT_VALUE_TYPE = 3; // 0x3
   5442     field public static final int LONG_VALUE_TYPE = 4; // 0x4
   5443     field public static final int STRING_VALUE_TYPE = 2; // 0x2
   5444     field public static final int TUPLE_VALUE_TYPE = 7; // 0x7
   5445   }
   5446 
   5447   public class SystemProperties {
   5448     method @NonNull public static String get(@NonNull String);
   5449     method @NonNull public static String get(@NonNull String, @Nullable String);
   5450     method public static boolean getBoolean(@NonNull String, boolean);
   5451     method public static int getInt(@NonNull String, int);
   5452     method public static long getLong(@NonNull String, long);
   5453   }
   5454 
   5455   public class SystemUpdateManager {
   5456     method @RequiresPermission(anyOf={android.Manifest.permission.READ_SYSTEM_UPDATE_INFO, android.Manifest.permission.RECOVERY}) public android.os.Bundle retrieveSystemUpdateInfo();
   5457     method @RequiresPermission(android.Manifest.permission.RECOVERY) public void updateSystemUpdateInfo(android.os.PersistableBundle);
   5458     field public static final String KEY_IS_SECURITY_UPDATE = "is_security_update";
   5459     field public static final String KEY_STATUS = "status";
   5460     field public static final String KEY_TARGET_BUILD_FINGERPRINT = "target_build_fingerprint";
   5461     field public static final String KEY_TARGET_SECURITY_PATCH_LEVEL = "target_security_patch_level";
   5462     field public static final String KEY_TITLE = "title";
   5463     field public static final int STATUS_IDLE = 1; // 0x1
   5464     field public static final int STATUS_IN_PROGRESS = 3; // 0x3
   5465     field public static final int STATUS_UNKNOWN = 0; // 0x0
   5466     field public static final int STATUS_WAITING_DOWNLOAD = 2; // 0x2
   5467     field public static final int STATUS_WAITING_INSTALL = 4; // 0x4
   5468     field public static final int STATUS_WAITING_REBOOT = 5; // 0x5
   5469   }
   5470 
   5471   public class UpdateEngine {
   5472     ctor public UpdateEngine();
   5473     method public void applyPayload(String, long, long, String[]);
   5474     method public boolean bind(android.os.UpdateEngineCallback, android.os.Handler);
   5475     method public boolean bind(android.os.UpdateEngineCallback);
   5476     method public void cancel();
   5477     method public void resetStatus();
   5478     method public void resume();
   5479     method public void suspend();
   5480     method public boolean unbind();
   5481     method public boolean verifyPayloadMetadata(String);
   5482   }
   5483 
   5484   public static final class UpdateEngine.ErrorCodeConstants {
   5485     ctor public UpdateEngine.ErrorCodeConstants();
   5486     field public static final int DOWNLOAD_PAYLOAD_VERIFICATION_ERROR = 12; // 0xc
   5487     field public static final int DOWNLOAD_TRANSFER_ERROR = 9; // 0x9
   5488     field public static final int ERROR = 1; // 0x1
   5489     field public static final int FILESYSTEM_COPIER_ERROR = 4; // 0x4
   5490     field public static final int INSTALL_DEVICE_OPEN_ERROR = 7; // 0x7
   5491     field public static final int KERNEL_DEVICE_OPEN_ERROR = 8; // 0x8
   5492     field public static final int PAYLOAD_HASH_MISMATCH_ERROR = 10; // 0xa
   5493     field public static final int PAYLOAD_MISMATCHED_TYPE_ERROR = 6; // 0x6
   5494     field public static final int PAYLOAD_SIZE_MISMATCH_ERROR = 11; // 0xb
   5495     field public static final int PAYLOAD_TIMESTAMP_ERROR = 51; // 0x33
   5496     field public static final int POST_INSTALL_RUNNER_ERROR = 5; // 0x5
   5497     field public static final int SUCCESS = 0; // 0x0
   5498     field public static final int UPDATED_BUT_NOT_ACTIVE = 52; // 0x34
   5499   }
   5500 
   5501   public static final class UpdateEngine.UpdateStatusConstants {
   5502     ctor public UpdateEngine.UpdateStatusConstants();
   5503     field public static final int ATTEMPTING_ROLLBACK = 8; // 0x8
   5504     field public static final int CHECKING_FOR_UPDATE = 1; // 0x1
   5505     field public static final int DISABLED = 9; // 0x9
   5506     field public static final int DOWNLOADING = 3; // 0x3
   5507     field public static final int FINALIZING = 5; // 0x5
   5508     field public static final int IDLE = 0; // 0x0
   5509     field public static final int REPORTING_ERROR_EVENT = 7; // 0x7
   5510     field public static final int UPDATED_NEED_REBOOT = 6; // 0x6
   5511     field public static final int UPDATE_AVAILABLE = 2; // 0x2
   5512     field public static final int VERIFYING = 4; // 0x4
   5513   }
   5514 
   5515   public abstract class UpdateEngineCallback {
   5516     ctor public UpdateEngineCallback();
   5517     method public abstract void onPayloadApplicationComplete(int);
   5518     method public abstract void onStatusUpdate(int, float);
   5519   }
   5520 
   5521   public final class UserHandle implements android.os.Parcelable {
   5522     method public static int getAppId(int);
   5523     method public int getIdentifier();
   5524     method @Deprecated public boolean isOwner();
   5525     method public boolean isSystem();
   5526     method public static int myUserId();
   5527     method public static android.os.UserHandle of(int);
   5528     field @NonNull public static final android.os.UserHandle ALL;
   5529     field @NonNull public static final android.os.UserHandle CURRENT;
   5530     field @NonNull public static final android.os.UserHandle SYSTEM;
   5531   }
   5532 
   5533   public class UserManager {
   5534     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void clearSeedAccountData();
   5535     method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public android.os.UserHandle getProfileParent(@NonNull android.os.UserHandle);
   5536     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public String getSeedAccountName();
   5537     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public android.os.PersistableBundle getSeedAccountOptions();
   5538     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public String getSeedAccountType();
   5539     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public long[] getSerialNumbersOfUsers(boolean);
   5540     method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.GET_ACCOUNTS_PRIVILEGED}) public android.graphics.Bitmap getUserIcon();
   5541     method @Deprecated @android.os.UserManager.UserRestrictionSource @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public int getUserRestrictionSource(String, android.os.UserHandle);
   5542     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public java.util.List<android.os.UserManager.EnforcingUser> getUserRestrictionSources(String, android.os.UserHandle);
   5543     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();
   5544     method public boolean hasRestrictedProfiles();
   5545     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isAdminUser();
   5546     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isGuestUser();
   5547     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isManagedProfile();
   5548     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isManagedProfile(int);
   5549     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isPrimaryUser();
   5550     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isRestrictedProfile();
   5551     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isRestrictedProfile(@NonNull android.os.UserHandle);
   5552     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean removeUser(@NonNull android.os.UserHandle);
   5553     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void setUserIcon(@NonNull android.graphics.Bitmap);
   5554     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void setUserName(@Nullable String);
   5555     field public static final String ACTION_USER_RESTRICTIONS_CHANGED = "android.os.action.USER_RESTRICTIONS_CHANGED";
   5556     field @Deprecated public static final String DISALLOW_OEM_UNLOCK = "no_oem_unlock";
   5557     field public static final String DISALLOW_RUN_IN_BACKGROUND = "no_run_in_background";
   5558     field public static final int RESTRICTION_NOT_SET = 0; // 0x0
   5559     field public static final int RESTRICTION_SOURCE_DEVICE_OWNER = 2; // 0x2
   5560     field public static final int RESTRICTION_SOURCE_PROFILE_OWNER = 4; // 0x4
   5561     field public static final int RESTRICTION_SOURCE_SYSTEM = 1; // 0x1
   5562     field public static final int SWITCHABILITY_STATUS_OK = 0; // 0x0
   5563     field public static final int SWITCHABILITY_STATUS_SYSTEM_USER_LOCKED = 4; // 0x4
   5564     field public static final int SWITCHABILITY_STATUS_USER_IN_CALL = 1; // 0x1
   5565     field public static final int SWITCHABILITY_STATUS_USER_SWITCH_DISALLOWED = 2; // 0x2
   5566   }
   5567 
   5568   public static final class UserManager.EnforcingUser implements android.os.Parcelable {
   5569     method public int describeContents();
   5570     method public android.os.UserHandle getUserHandle();
   5571     method @android.os.UserManager.UserRestrictionSource public int getUserRestrictionSource();
   5572     method public void writeToParcel(android.os.Parcel, int);
   5573     field @NonNull public static final android.os.Parcelable.Creator<android.os.UserManager.EnforcingUser> CREATOR;
   5574   }
   5575 
   5576   @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 {
   5577   }
   5578 
   5579   public class WorkSource implements android.os.Parcelable {
   5580     method public android.os.WorkSource.WorkChain createWorkChain();
   5581   }
   5582 
   5583   public static final class WorkSource.WorkChain implements android.os.Parcelable {
   5584     ctor public WorkSource.WorkChain();
   5585     method public android.os.WorkSource.WorkChain addNode(int, @Nullable String);
   5586     method public int describeContents();
   5587     method public String getAttributionTag();
   5588     method public int getAttributionUid();
   5589     method public void writeToParcel(android.os.Parcel, int);
   5590     field @NonNull public static final android.os.Parcelable.Creator<android.os.WorkSource.WorkChain> CREATOR;
   5591   }
   5592 
   5593 }
   5594 
   5595 package android.os.image {
   5596 
   5597   public class DynamicSystemClient {
   5598     ctor public DynamicSystemClient(@NonNull android.content.Context);
   5599     method @RequiresPermission(android.Manifest.permission.INSTALL_DYNAMIC_SYSTEM) public void bind();
   5600     method public void setOnStatusChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.os.image.DynamicSystemClient.OnStatusChangedListener);
   5601     method public void setOnStatusChangedListener(@NonNull android.os.image.DynamicSystemClient.OnStatusChangedListener);
   5602     method @RequiresPermission(android.Manifest.permission.INSTALL_DYNAMIC_SYSTEM) public void start(@NonNull android.net.Uri, long);
   5603     method @RequiresPermission(android.Manifest.permission.INSTALL_DYNAMIC_SYSTEM) public void start(@NonNull android.net.Uri, long, long);
   5604     method @RequiresPermission(android.Manifest.permission.INSTALL_DYNAMIC_SYSTEM) public void unbind();
   5605     field public static final int CAUSE_ERROR_EXCEPTION = 6; // 0x6
   5606     field public static final int CAUSE_ERROR_INVALID_URL = 4; // 0x4
   5607     field public static final int CAUSE_ERROR_IO = 3; // 0x3
   5608     field public static final int CAUSE_ERROR_IPC = 5; // 0x5
   5609     field public static final int CAUSE_INSTALL_CANCELLED = 2; // 0x2
   5610     field public static final int CAUSE_INSTALL_COMPLETED = 1; // 0x1
   5611     field public static final int CAUSE_NOT_SPECIFIED = 0; // 0x0
   5612     field public static final int STATUS_IN_PROGRESS = 2; // 0x2
   5613     field public static final int STATUS_IN_USE = 4; // 0x4
   5614     field public static final int STATUS_NOT_STARTED = 1; // 0x1
   5615     field public static final int STATUS_READY = 3; // 0x3
   5616     field public static final int STATUS_UNKNOWN = 0; // 0x0
   5617   }
   5618 
   5619   public static interface DynamicSystemClient.OnStatusChangedListener {
   5620     method public void onStatusChanged(int, int, long, @Nullable Throwable);
   5621   }
   5622 
   5623 }
   5624 
   5625 package android.os.storage {
   5626 
   5627   public class StorageManager {
   5628     method @WorkerThread public void allocateBytes(@NonNull java.util.UUID, long, @RequiresPermission int) throws java.io.IOException;
   5629     method @WorkerThread public void allocateBytes(java.io.FileDescriptor, long, @RequiresPermission int) throws java.io.IOException;
   5630     method @WorkerThread public long getAllocatableBytes(@NonNull java.util.UUID, @RequiresPermission int) throws java.io.IOException;
   5631     method public static boolean hasIsolatedStorage();
   5632     field @RequiresPermission(android.Manifest.permission.ALLOCATE_AGGRESSIVE) public static final int FLAG_ALLOCATE_AGGRESSIVE = 1; // 0x1
   5633   }
   5634 
   5635 }
   5636 
   5637 package android.permission {
   5638 
   5639   public final class PermissionControllerManager {
   5640     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);
   5641     field public static final int COUNT_ONLY_WHEN_GRANTED = 1; // 0x1
   5642     field public static final int COUNT_WHEN_SYSTEM = 2; // 0x2
   5643     field public static final int REASON_INSTALLER_POLICY_VIOLATION = 2; // 0x2
   5644     field public static final int REASON_MALWARE = 1; // 0x1
   5645   }
   5646 
   5647   public abstract static class PermissionControllerManager.OnRevokeRuntimePermissionsCallback {
   5648     ctor public PermissionControllerManager.OnRevokeRuntimePermissionsCallback();
   5649     method public abstract void onRevokeRuntimePermissions(@NonNull java.util.Map<java.lang.String,java.util.List<java.lang.String>>);
   5650   }
   5651 
   5652   public abstract class PermissionControllerService extends android.app.Service {
   5653     ctor public PermissionControllerService();
   5654     method @NonNull public final android.os.IBinder onBind(android.content.Intent);
   5655     method @BinderThread public abstract void onCountPermissionApps(@NonNull java.util.List<java.lang.String>, int, @NonNull java.util.function.IntConsumer);
   5656     method @BinderThread public abstract void onGetAppPermissions(@NonNull String, @NonNull java.util.function.Consumer<java.util.List<android.permission.RuntimePermissionPresentationInfo>>);
   5657     method @BinderThread public abstract void onGetPermissionUsages(boolean, long, @NonNull java.util.function.Consumer<java.util.List<android.permission.RuntimePermissionUsageInfo>>);
   5658     method @BinderThread public abstract void onGetRuntimePermissionsBackup(@NonNull android.os.UserHandle, @NonNull java.io.OutputStream, @NonNull Runnable);
   5659     method @BinderThread public abstract void onGrantOrUpgradeDefaultRuntimePermissions(@NonNull Runnable);
   5660     method @BinderThread public abstract void onRestoreDelayedRuntimePermissionsBackup(@NonNull String, @NonNull android.os.UserHandle, @NonNull java.util.function.Consumer<java.lang.Boolean>);
   5661     method @BinderThread public abstract void onRestoreRuntimePermissionsBackup(@NonNull android.os.UserHandle, @NonNull java.io.InputStream, @NonNull Runnable);
   5662     method @BinderThread public abstract void onRevokeRuntimePermission(@NonNull String, @NonNull String, @NonNull Runnable);
   5663     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>>>);
   5664     method @BinderThread public abstract void onSetRuntimePermissionGrantStateByDeviceAdmin(@NonNull String, @NonNull String, @NonNull String, int, @NonNull java.util.function.Consumer<java.lang.Boolean>);
   5665     field public static final String SERVICE_INTERFACE = "android.permission.PermissionControllerService";
   5666   }
   5667 
   5668   public final class PermissionManager {
   5669     method @IntRange(from=0) @RequiresPermission(android.Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY) public int getRuntimePermissionsVersion();
   5670     method @NonNull public java.util.List<android.permission.PermissionManager.SplitPermissionInfo> getSplitPermissions();
   5671     method @RequiresPermission(android.Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY) public void setRuntimePermissionsVersion(@IntRange(from=0) int);
   5672   }
   5673 
   5674   public static final class PermissionManager.SplitPermissionInfo {
   5675     method @NonNull public java.util.List<java.lang.String> getNewPermissions();
   5676     method @NonNull public String getSplitPermission();
   5677     method public int getTargetSdk();
   5678   }
   5679 
   5680   public final class RuntimePermissionPresentationInfo implements android.os.Parcelable {
   5681     ctor public RuntimePermissionPresentationInfo(@NonNull CharSequence, boolean, boolean);
   5682     method public int describeContents();
   5683     method @NonNull public CharSequence getLabel();
   5684     method public boolean isGranted();
   5685     method public boolean isStandard();
   5686     method public void writeToParcel(android.os.Parcel, int);
   5687     field @NonNull public static final android.os.Parcelable.Creator<android.permission.RuntimePermissionPresentationInfo> CREATOR;
   5688   }
   5689 
   5690   public final class RuntimePermissionUsageInfo implements android.os.Parcelable {
   5691     ctor public RuntimePermissionUsageInfo(@NonNull String, int);
   5692     method public int describeContents();
   5693     method public int getAppAccessCount();
   5694     method @NonNull public String getName();
   5695     method public void writeToParcel(android.os.Parcel, int);
   5696     field @NonNull public static final android.os.Parcelable.Creator<android.permission.RuntimePermissionUsageInfo> CREATOR;
   5697   }
   5698 
   5699 }
   5700 
   5701 package android.permissionpresenterservice {
   5702 
   5703   @Deprecated public abstract class RuntimePermissionPresenterService extends android.app.Service {
   5704     ctor @Deprecated public RuntimePermissionPresenterService();
   5705     method @Deprecated public final void attachBaseContext(android.content.Context);
   5706     method @Deprecated public final android.os.IBinder onBind(android.content.Intent);
   5707     method @Deprecated public abstract java.util.List<android.content.pm.permission.RuntimePermissionPresentationInfo> onGetAppPermissions(@NonNull String);
   5708     field @Deprecated public static final String SERVICE_INTERFACE = "android.permissionpresenterservice.RuntimePermissionPresenterService";
   5709   }
   5710 
   5711 }
   5712 
   5713 package android.preference {
   5714 
   5715   @Deprecated public class PreferenceManager {
   5716     method @Deprecated public boolean isStorageCredentialProtected();
   5717     method @Deprecated public void setStorageCredentialProtected();
   5718   }
   5719 
   5720 }
   5721 
   5722 package android.print {
   5723 
   5724   public final class PrintManager {
   5725     method @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICE_RECOMMENDATIONS) public void addPrintServiceRecommendationsChangeListener(@NonNull android.print.PrintManager.PrintServiceRecommendationsChangeListener, @Nullable android.os.Handler);
   5726     method @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICES) public void addPrintServicesChangeListener(@NonNull android.print.PrintManager.PrintServicesChangeListener, @Nullable android.os.Handler);
   5727     method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICE_RECOMMENDATIONS) public java.util.List<android.printservice.recommendation.RecommendationInfo> getPrintServiceRecommendations();
   5728     method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICES) public java.util.List<android.printservice.PrintServiceInfo> getPrintServices(int);
   5729     method @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICE_RECOMMENDATIONS) public void removePrintServiceRecommendationsChangeListener(@NonNull android.print.PrintManager.PrintServiceRecommendationsChangeListener);
   5730     method @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICES) public void removePrintServicesChangeListener(@NonNull android.print.PrintManager.PrintServicesChangeListener);
   5731     field public static final int ENABLED_SERVICES = 1; // 0x1
   5732   }
   5733 
   5734   public static interface PrintManager.PrintServiceRecommendationsChangeListener {
   5735     method public void onPrintServiceRecommendationsChanged();
   5736   }
   5737 
   5738   public static interface PrintManager.PrintServicesChangeListener {
   5739     method public void onPrintServicesChanged();
   5740   }
   5741 
   5742 }
   5743 
   5744 package android.printservice {
   5745 
   5746   public final class PrintServiceInfo implements android.os.Parcelable {
   5747     method public int describeContents();
   5748     method @NonNull public android.content.ComponentName getComponentName();
   5749     method public void writeToParcel(android.os.Parcel, int);
   5750     field @NonNull public static final android.os.Parcelable.Creator<android.printservice.PrintServiceInfo> CREATOR;
   5751   }
   5752 
   5753 }
   5754 
   5755 package android.printservice.recommendation {
   5756 
   5757   public final class RecommendationInfo implements android.os.Parcelable {
   5758     ctor public RecommendationInfo(@NonNull CharSequence, @NonNull CharSequence, @NonNull java.util.List<java.net.InetAddress>, boolean);
   5759     ctor @Deprecated public RecommendationInfo(@NonNull CharSequence, @NonNull CharSequence, @IntRange(from=0) int, boolean);
   5760     method public int describeContents();
   5761     method @NonNull public java.util.List<java.net.InetAddress> getDiscoveredPrinters();
   5762     method public CharSequence getName();
   5763     method public int getNumDiscoveredPrinters();
   5764     method public CharSequence getPackageName();
   5765     method public boolean recommendsMultiVendorService();
   5766     method public void writeToParcel(android.os.Parcel, int);
   5767     field @NonNull public static final android.os.Parcelable.Creator<android.printservice.recommendation.RecommendationInfo> CREATOR;
   5768   }
   5769 
   5770   public abstract class RecommendationService extends android.app.Service {
   5771     ctor public RecommendationService();
   5772     method public final android.os.IBinder onBind(android.content.Intent);
   5773     method public abstract void onConnected();
   5774     method public abstract void onDisconnected();
   5775     method public final void updateRecommendations(@Nullable java.util.List<android.printservice.recommendation.RecommendationInfo>);
   5776     field public static final String SERVICE_INTERFACE = "android.printservice.recommendation.RecommendationService";
   5777   }
   5778 
   5779 }
   5780 
   5781 package android.provider {
   5782 
   5783   public static final class ContactsContract.MetadataSync implements android.provider.BaseColumns android.provider.ContactsContract.MetadataSyncColumns {
   5784     field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contact_metadata";
   5785     field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contact_metadata";
   5786     field public static final android.net.Uri CONTENT_URI;
   5787     field public static final String METADATA_AUTHORITY = "com.android.contacts.metadata";
   5788     field public static final android.net.Uri METADATA_AUTHORITY_URI;
   5789   }
   5790 
   5791   protected static interface ContactsContract.MetadataSyncColumns {
   5792     field public static final String ACCOUNT_NAME = "account_name";
   5793     field public static final String ACCOUNT_TYPE = "account_type";
   5794     field public static final String DATA = "data";
   5795     field public static final String DATA_SET = "data_set";
   5796     field public static final String DELETED = "deleted";
   5797     field public static final String RAW_CONTACT_BACKUP_ID = "raw_contact_backup_id";
   5798   }
   5799 
   5800   public static final class ContactsContract.MetadataSyncState implements android.provider.BaseColumns android.provider.ContactsContract.MetadataSyncStateColumns {
   5801     field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contact_metadata_sync_state";
   5802     field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contact_metadata_sync_state";
   5803     field public static final android.net.Uri CONTENT_URI;
   5804   }
   5805 
   5806   protected static interface ContactsContract.MetadataSyncStateColumns {
   5807     field public static final String ACCOUNT_NAME = "account_name";
   5808     field public static final String ACCOUNT_TYPE = "account_type";
   5809     field public static final String DATA_SET = "data_set";
   5810     field public static final String STATE = "state";
   5811   }
   5812 
   5813   public final class DeviceConfig {
   5814     method @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public static void addOnPropertiesChangedListener(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.provider.DeviceConfig.OnPropertiesChangedListener);
   5815     method @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public static boolean getBoolean(@NonNull String, @NonNull String, boolean);
   5816     method @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public static float getFloat(@NonNull String, @NonNull String, float);
   5817     method @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public static int getInt(@NonNull String, @NonNull String, int);
   5818     method @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public static long getLong(@NonNull String, @NonNull String, long);
   5819     method @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public static String getProperty(@NonNull String, @NonNull String);
   5820     method @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public static String getString(@NonNull String, @NonNull String, @Nullable String);
   5821     method public static void removeOnPropertiesChangedListener(@NonNull android.provider.DeviceConfig.OnPropertiesChangedListener);
   5822     method @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static void resetToDefaults(int, @Nullable String);
   5823     method @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static boolean setProperty(@NonNull String, @NonNull String, @Nullable String, boolean);
   5824     field public static final String NAMESPACE_ACTIVITY_MANAGER = "activity_manager";
   5825     field public static final String NAMESPACE_ACTIVITY_MANAGER_NATIVE_BOOT = "activity_manager_native_boot";
   5826     field public static final String NAMESPACE_APP_COMPAT = "app_compat";
   5827     field public static final String NAMESPACE_ATTENTION_MANAGER_SERVICE = "attention_manager_service";
   5828     field public static final String NAMESPACE_AUTOFILL = "autofill";
   5829     field public static final String NAMESPACE_CONNECTIVITY = "connectivity";
   5830     field public static final String NAMESPACE_CONTENT_CAPTURE = "content_capture";
   5831     field public static final String NAMESPACE_DEX_BOOT = "dex_boot";
   5832     field public static final String NAMESPACE_GAME_DRIVER = "game_driver";
   5833     field public static final String NAMESPACE_INPUT_NATIVE_BOOT = "input_native_boot";
   5834     field public static final String NAMESPACE_INTELLIGENCE_ATTENTION = "intelligence_attention";
   5835     field public static final String NAMESPACE_MEDIA_NATIVE = "media_native";
   5836     field public static final String NAMESPACE_NETD_NATIVE = "netd_native";
   5837     field public static final String NAMESPACE_PRIVACY = "privacy";
   5838     field public static final String NAMESPACE_ROLLBACK = "rollback";
   5839     field public static final String NAMESPACE_ROLLBACK_BOOT = "rollback_boot";
   5840     field public static final String NAMESPACE_RUNTIME = "runtime";
   5841     field public static final String NAMESPACE_RUNTIME_NATIVE = "runtime_native";
   5842     field public static final String NAMESPACE_RUNTIME_NATIVE_BOOT = "runtime_native_boot";
   5843     field public static final String NAMESPACE_SCHEDULER = "scheduler";
   5844     field public static final String NAMESPACE_STORAGE = "storage";
   5845     field public static final String NAMESPACE_SYSTEMUI = "systemui";
   5846     field public static final String NAMESPACE_TELEPHONY = "telephony";
   5847     field public static final String NAMESPACE_TEXTCLASSIFIER = "textclassifier";
   5848   }
   5849 
   5850   public static interface DeviceConfig.OnPropertiesChangedListener {
   5851     method public void onPropertiesChanged(@NonNull android.provider.DeviceConfig.Properties);
   5852   }
   5853 
   5854   public static class DeviceConfig.Properties {
   5855     method public boolean getBoolean(@NonNull String, boolean);
   5856     method public float getFloat(@NonNull String, float);
   5857     method public int getInt(@NonNull String, int);
   5858     method @NonNull public java.util.Set<java.lang.String> getKeyset();
   5859     method public long getLong(@NonNull String, long);
   5860     method @NonNull public String getNamespace();
   5861     method @Nullable public String getString(@NonNull String, @Nullable String);
   5862   }
   5863 
   5864   public final class DocumentsContract {
   5865     method public static boolean isManageMode(@NonNull android.net.Uri);
   5866     method @NonNull public static android.net.Uri setManageMode(@NonNull android.net.Uri);
   5867     field public static final String ACTION_DOCUMENT_ROOT_SETTINGS = "android.provider.action.DOCUMENT_ROOT_SETTINGS";
   5868     field public static final String ACTION_MANAGE_DOCUMENT = "android.provider.action.MANAGE_DOCUMENT";
   5869     field public static final String EXTRA_SHOW_ADVANCED = "android.provider.extra.SHOW_ADVANCED";
   5870   }
   5871 
   5872   public static final class DocumentsContract.Root {
   5873     field public static final int FLAG_ADVANCED = 65536; // 0x10000
   5874     field public static final int FLAG_HAS_SETTINGS = 131072; // 0x20000
   5875     field public static final int FLAG_REMOVABLE_SD = 262144; // 0x40000
   5876     field public static final int FLAG_REMOVABLE_USB = 524288; // 0x80000
   5877   }
   5878 
   5879   public abstract class SearchIndexableData {
   5880     ctor public SearchIndexableData();
   5881     ctor public SearchIndexableData(android.content.Context);
   5882     field public String className;
   5883     field public android.content.Context context;
   5884     field public boolean enabled;
   5885     field public int iconResId;
   5886     field public String intentAction;
   5887     field public String intentTargetClass;
   5888     field public String intentTargetPackage;
   5889     field public String key;
   5890     field public java.util.Locale locale;
   5891     field public String packageName;
   5892     field public int rank;
   5893     field public int userId;
   5894   }
   5895 
   5896   public class SearchIndexableResource extends android.provider.SearchIndexableData {
   5897     ctor public SearchIndexableResource(int, int, String, int);
   5898     ctor public SearchIndexableResource(android.content.Context);
   5899     field public int xmlResId;
   5900   }
   5901 
   5902   public class SearchIndexablesContract {
   5903     ctor public SearchIndexablesContract();
   5904     field public static final int COLUMN_INDEX_NON_INDEXABLE_KEYS_KEY_VALUE = 0; // 0x0
   5905     field public static final int COLUMN_INDEX_RAW_CLASS_NAME = 7; // 0x7
   5906     field public static final int COLUMN_INDEX_RAW_ENTRIES = 4; // 0x4
   5907     field public static final int COLUMN_INDEX_RAW_ICON_RESID = 8; // 0x8
   5908     field public static final int COLUMN_INDEX_RAW_INTENT_ACTION = 9; // 0x9
   5909     field public static final int COLUMN_INDEX_RAW_INTENT_TARGET_CLASS = 11; // 0xb
   5910     field public static final int COLUMN_INDEX_RAW_INTENT_TARGET_PACKAGE = 10; // 0xa
   5911     field public static final int COLUMN_INDEX_RAW_KEY = 12; // 0xc
   5912     field public static final int COLUMN_INDEX_RAW_KEYWORDS = 5; // 0x5
   5913     field public static final int COLUMN_INDEX_RAW_RANK = 0; // 0x0
   5914     field public static final int COLUMN_INDEX_RAW_SCREEN_TITLE = 6; // 0x6
   5915     field public static final int COLUMN_INDEX_RAW_SUMMARY_OFF = 3; // 0x3
   5916     field public static final int COLUMN_INDEX_RAW_SUMMARY_ON = 2; // 0x2
   5917     field public static final int COLUMN_INDEX_RAW_TITLE = 1; // 0x1
   5918     field public static final int COLUMN_INDEX_RAW_USER_ID = 13; // 0xd
   5919     field public static final int COLUMN_INDEX_XML_RES_CLASS_NAME = 2; // 0x2
   5920     field public static final int COLUMN_INDEX_XML_RES_ICON_RESID = 3; // 0x3
   5921     field public static final int COLUMN_INDEX_XML_RES_INTENT_ACTION = 4; // 0x4
   5922     field public static final int COLUMN_INDEX_XML_RES_INTENT_TARGET_CLASS = 6; // 0x6
   5923     field public static final int COLUMN_INDEX_XML_RES_INTENT_TARGET_PACKAGE = 5; // 0x5
   5924     field public static final int COLUMN_INDEX_XML_RES_RANK = 0; // 0x0
   5925     field public static final int COLUMN_INDEX_XML_RES_RESID = 1; // 0x1
   5926     field public static final String INDEXABLES_RAW = "indexables_raw";
   5927     field public static final String[] INDEXABLES_RAW_COLUMNS;
   5928     field public static final String INDEXABLES_RAW_PATH = "settings/indexables_raw";
   5929     field public static final String INDEXABLES_XML_RES = "indexables_xml_res";
   5930     field public static final String[] INDEXABLES_XML_RES_COLUMNS;
   5931     field public static final String INDEXABLES_XML_RES_PATH = "settings/indexables_xml_res";
   5932     field public static final String NON_INDEXABLES_KEYS = "non_indexables_key";
   5933     field public static final String[] NON_INDEXABLES_KEYS_COLUMNS;
   5934     field public static final String NON_INDEXABLES_KEYS_PATH = "settings/non_indexables_key";
   5935     field public static final String PROVIDER_INTERFACE = "android.content.action.SEARCH_INDEXABLES_PROVIDER";
   5936     field public static final String SLICE_URI_PAIRS = "slice_uri_pairs";
   5937     field @NonNull public static final String[] SLICE_URI_PAIRS_COLUMNS;
   5938     field public static final String SLICE_URI_PAIRS_PATH = "settings/slice_uri_pairs";
   5939   }
   5940 
   5941   public static class SearchIndexablesContract.BaseColumns {
   5942     field public static final String COLUMN_CLASS_NAME = "className";
   5943     field public static final String COLUMN_ICON_RESID = "iconResId";
   5944     field public static final String COLUMN_INTENT_ACTION = "intentAction";
   5945     field public static final String COLUMN_INTENT_TARGET_CLASS = "intentTargetClass";
   5946     field public static final String COLUMN_INTENT_TARGET_PACKAGE = "intentTargetPackage";
   5947     field public static final String COLUMN_RANK = "rank";
   5948   }
   5949 
   5950   public static final class SearchIndexablesContract.NonIndexableKey extends android.provider.SearchIndexablesContract.BaseColumns {
   5951     field public static final String COLUMN_KEY_VALUE = "key";
   5952     field public static final String MIME_TYPE = "vnd.android.cursor.dir/non_indexables_key";
   5953   }
   5954 
   5955   public static final class SearchIndexablesContract.RawData extends android.provider.SearchIndexablesContract.BaseColumns {
   5956     field public static final String COLUMN_ENTRIES = "entries";
   5957     field public static final String COLUMN_KEY = "key";
   5958     field public static final String COLUMN_KEYWORDS = "keywords";
   5959     field public static final String COLUMN_SCREEN_TITLE = "screenTitle";
   5960     field public static final String COLUMN_SUMMARY_OFF = "summaryOff";
   5961     field public static final String COLUMN_SUMMARY_ON = "summaryOn";
   5962     field public static final String COLUMN_TITLE = "title";
   5963     field public static final String COLUMN_USER_ID = "user_id";
   5964     field public static final String MIME_TYPE = "vnd.android.cursor.dir/indexables_raw";
   5965   }
   5966 
   5967   public static final class SearchIndexablesContract.SliceUriPairColumns {
   5968     field public static final String KEY = "key";
   5969     field public static final String SLICE_URI = "slice_uri";
   5970   }
   5971 
   5972   public static final class SearchIndexablesContract.XmlResource extends android.provider.SearchIndexablesContract.BaseColumns {
   5973     field public static final String COLUMN_XML_RESID = "xmlResId";
   5974     field public static final String MIME_TYPE = "vnd.android.cursor.dir/indexables_xml_res";
   5975   }
   5976 
   5977   public abstract class SearchIndexablesProvider extends android.content.ContentProvider {
   5978     ctor public SearchIndexablesProvider();
   5979     method public final int delete(android.net.Uri, String, String[]);
   5980     method public String getType(android.net.Uri);
   5981     method public final android.net.Uri insert(android.net.Uri, android.content.ContentValues);
   5982     method public android.database.Cursor query(android.net.Uri, String[], String, String[], String);
   5983     method public abstract android.database.Cursor queryNonIndexableKeys(String[]);
   5984     method public abstract android.database.Cursor queryRawData(String[]);
   5985     method @Nullable public android.database.Cursor querySliceUriPairs();
   5986     method public abstract android.database.Cursor queryXmlResources(String[]);
   5987     method public final int update(android.net.Uri, android.content.ContentValues, String, String[]);
   5988   }
   5989 
   5990   public final class Settings {
   5991     field public static final String ACTION_ACCESSIBILITY_DETAILS_SETTINGS = "android.settings.ACCESSIBILITY_DETAILS_SETTINGS";
   5992     field public static final String ACTION_ENTERPRISE_PRIVACY_SETTINGS = "android.settings.ENTERPRISE_PRIVACY_SETTINGS";
   5993     field public static final String ACTION_LOCATION_CONTROLLER_EXTRA_PACKAGE_SETTINGS = "android.settings.LOCATION_CONTROLLER_EXTRA_PACKAGE_SETTINGS";
   5994     field public static final String ACTION_MANAGE_DOMAIN_URLS = "android.settings.MANAGE_DOMAIN_URLS";
   5995     field public static final String ACTION_MANAGE_MORE_DEFAULT_APPS_SETTINGS = "android.settings.MANAGE_MORE_DEFAULT_APPS_SETTINGS";
   5996     field public static final String ACTION_NOTIFICATION_POLICY_ACCESS_DETAIL_SETTINGS = "android.settings.NOTIFICATION_POLICY_ACCESS_DETAIL_SETTINGS";
   5997     field public static final String ACTION_REQUEST_ENABLE_CONTENT_CAPTURE = "android.settings.REQUEST_ENABLE_CONTENT_CAPTURE";
   5998     field public static final String ACTION_SHOW_ADMIN_SUPPORT_DETAILS = "android.settings.SHOW_ADMIN_SUPPORT_DETAILS";
   5999   }
   6000 
   6001   public static final class Settings.Global extends android.provider.Settings.NameValueTable {
   6002     method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public static boolean putString(@NonNull android.content.ContentResolver, @NonNull String, @Nullable String, @Nullable String, boolean);
   6003     method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public static void resetToDefaults(@NonNull android.content.ContentResolver, @Nullable String);
   6004     field public static final String APP_STANDBY_ENABLED = "app_standby_enabled";
   6005     field public static final String AUTOFILL_COMPAT_MODE_ALLOWED_PACKAGES = "autofill_compat_mode_allowed_packages";
   6006     field public static final String CARRIER_APP_NAMES = "carrier_app_names";
   6007     field public static final String CARRIER_APP_WHITELIST = "carrier_app_whitelist";
   6008     field public static final String DEFAULT_SM_DP_PLUS = "default_sm_dp_plus";
   6009     field public static final String DEVICE_DEMO_MODE = "device_demo_mode";
   6010     field public static final String DEVICE_PROVISIONING_MOBILE_DATA_ENABLED = "device_provisioning_mobile_data";
   6011     field public static final String EUICC_PROVISIONED = "euicc_provisioned";
   6012     field public static final String INSTALL_CARRIER_APP_NOTIFICATION_PERSISTENT = "install_carrier_app_notification_persistent";
   6013     field public static final String INSTALL_CARRIER_APP_NOTIFICATION_SLEEP_MILLIS = "install_carrier_app_notification_sleep_millis";
   6014     field public static final String OTA_DISABLE_AUTOMATIC_UPDATE = "ota_disable_automatic_update";
   6015     field public static final String REQUIRE_PASSWORD_TO_DECRYPT = "require_password_to_decrypt";
   6016     field public static final String THEATER_MODE_ON = "theater_mode_on";
   6017     field public static final String WEBVIEW_MULTIPROCESS = "webview_multiprocess";
   6018     field public static final String WIFI_BADGING_THRESHOLDS = "wifi_badging_thresholds";
   6019     field public static final String WIFI_WAKEUP_ENABLED = "wifi_wakeup_enabled";
   6020   }
   6021 
   6022   public static final class Settings.Secure extends android.provider.Settings.NameValueTable {
   6023     method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public static boolean putString(@NonNull android.content.ContentResolver, @NonNull String, @Nullable String, @Nullable String, boolean);
   6024     method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public static void resetToDefaults(@NonNull android.content.ContentResolver, @Nullable String);
   6025     field public static final String ACCESSIBILITY_DISPLAY_MAGNIFICATION_NAVBAR_ENABLED = "accessibility_display_magnification_navbar_enabled";
   6026     field public static final String ASSIST_GESTURE_SETUP_COMPLETE = "assist_gesture_setup_complete";
   6027     field public static final String AUTOFILL_FEATURE_FIELD_CLASSIFICATION = "autofill_field_classification";
   6028     field public static final String AUTOFILL_USER_DATA_MAX_CATEGORY_COUNT = "autofill_user_data_max_category_count";
   6029     field public static final String AUTOFILL_USER_DATA_MAX_FIELD_CLASSIFICATION_IDS_SIZE = "autofill_user_data_max_field_classification_size";
   6030     field public static final String AUTOFILL_USER_DATA_MAX_USER_DATA_SIZE = "autofill_user_data_max_user_data_size";
   6031     field public static final String AUTOFILL_USER_DATA_MAX_VALUE_LENGTH = "autofill_user_data_max_value_length";
   6032     field public static final String AUTOFILL_USER_DATA_MIN_VALUE_LENGTH = "autofill_user_data_min_value_length";
   6033     field public static final String COMPLETED_CATEGORY_PREFIX = "suggested.completed_category.";
   6034     field public static final String DOZE_ALWAYS_ON = "doze_always_on";
   6035     field public static final String HUSH_GESTURE_USED = "hush_gesture_used";
   6036     field public static final String INSTANT_APPS_ENABLED = "instant_apps_enabled";
   6037     field public static final String LAST_SETUP_SHOWN = "last_setup_shown";
   6038     field public static final String LOCATION_ACCESS_CHECK_DELAY_MILLIS = "location_access_check_delay_millis";
   6039     field public static final String LOCATION_ACCESS_CHECK_INTERVAL_MILLIS = "location_access_check_interval_millis";
   6040     field public static final int LOCATION_MODE_ON = 3; // 0x3
   6041     field public static final String LOCATION_PERMISSIONS_UPGRADE_TO_Q_MODE = "location_permissions_upgrade_to_q_mode";
   6042     field public static final String LOCK_SCREEN_ALLOW_PRIVATE_NOTIFICATIONS = "lock_screen_allow_private_notifications";
   6043     field public static final String LOCK_SCREEN_SHOW_NOTIFICATIONS = "lock_screen_show_notifications";
   6044     field public static final String ODI_CAPTIONS_ENABLED = "odi_captions_enabled";
   6045     field public static final String THEME_CUSTOMIZATION_OVERLAY_PACKAGES = "theme_customization_overlay_packages";
   6046     field public static final String USER_SETUP_COMPLETE = "user_setup_complete";
   6047     field public static final int USER_SETUP_PERSONALIZATION_COMPLETE = 10; // 0xa
   6048     field public static final int USER_SETUP_PERSONALIZATION_NOT_STARTED = 0; // 0x0
   6049     field public static final int USER_SETUP_PERSONALIZATION_PAUSED = 2; // 0x2
   6050     field public static final int USER_SETUP_PERSONALIZATION_STARTED = 1; // 0x1
   6051     field public static final String USER_SETUP_PERSONALIZATION_STATE = "user_setup_personalization_state";
   6052     field public static final String VOLUME_HUSH_GESTURE = "volume_hush_gesture";
   6053     field public static final int VOLUME_HUSH_MUTE = 2; // 0x2
   6054     field public static final int VOLUME_HUSH_OFF = 0; // 0x0
   6055     field public static final int VOLUME_HUSH_VIBRATE = 1; // 0x1
   6056   }
   6057 
   6058   public static final class Telephony.Carriers implements android.provider.BaseColumns {
   6059     field public static final String APN_SET_ID = "apn_set_id";
   6060     field public static final int CARRIER_EDITED = 4; // 0x4
   6061     field public static final String EDITED_STATUS = "edited";
   6062     field public static final String MAX_CONNECTIONS = "max_conns";
   6063     field public static final String MODEM_PERSIST = "modem_cognitive";
   6064     field public static final String MTU = "mtu";
   6065     field public static final int NO_APN_SET_ID = 0; // 0x0
   6066     field public static final String TIME_LIMIT_FOR_MAX_CONNECTIONS = "max_conns_time";
   6067     field public static final int UNEDITED = 0; // 0x0
   6068     field public static final int USER_DELETED = 2; // 0x2
   6069     field public static final String USER_EDITABLE = "user_editable";
   6070     field public static final int USER_EDITED = 1; // 0x1
   6071     field public static final String USER_VISIBLE = "user_visible";
   6072     field public static final String WAIT_TIME_RETRY = "wait_time";
   6073   }
   6074 
   6075   public final class TimeZoneRulesDataContract {
   6076     field public static final String AUTHORITY = "com.android.timezone";
   6077   }
   6078 
   6079   public static final class TimeZoneRulesDataContract.Operation {
   6080     field public static final String COLUMN_DISTRO_MAJOR_VERSION = "distro_major_version";
   6081     field public static final String COLUMN_DISTRO_MINOR_VERSION = "distro_minor_version";
   6082     field public static final String COLUMN_REVISION = "revision";
   6083     field public static final String COLUMN_RULES_VERSION = "rules_version";
   6084     field public static final String COLUMN_TYPE = "type";
   6085     field public static final android.net.Uri CONTENT_URI;
   6086     field public static final String TYPE_INSTALL = "INSTALL";
   6087     field public static final String TYPE_NO_OP = "NOOP";
   6088     field public static final String TYPE_UNINSTALL = "UNINSTALL";
   6089   }
   6090 
   6091 }
   6092 
   6093 package android.security.keystore {
   6094 
   6095   public abstract class AttestationUtils {
   6096     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;
   6097     field public static final int ID_TYPE_IMEI = 2; // 0x2
   6098     field public static final int ID_TYPE_MEID = 3; // 0x3
   6099     field public static final int ID_TYPE_SERIAL = 1; // 0x1
   6100   }
   6101 
   6102   public class DeviceIdAttestationException extends java.lang.Exception {
   6103     ctor public DeviceIdAttestationException(@Nullable String);
   6104     ctor public DeviceIdAttestationException(@Nullable String, @Nullable Throwable);
   6105   }
   6106 
   6107 }
   6108 
   6109 package android.security.keystore.recovery {
   6110 
   6111   public class DecryptionFailedException extends java.security.GeneralSecurityException {
   6112     ctor public DecryptionFailedException(String);
   6113   }
   6114 
   6115   public class InternalRecoveryServiceException extends java.security.GeneralSecurityException {
   6116     ctor public InternalRecoveryServiceException(String);
   6117     ctor public InternalRecoveryServiceException(String, Throwable);
   6118   }
   6119 
   6120   public final class KeyChainProtectionParams implements android.os.Parcelable {
   6121     method public void clearSecret();
   6122     method public int describeContents();
   6123     method @NonNull public android.security.keystore.recovery.KeyDerivationParams getKeyDerivationParams();
   6124     method public int getLockScreenUiFormat();
   6125     method @NonNull public byte[] getSecret();
   6126     method public int getUserSecretType();
   6127     method public void writeToParcel(android.os.Parcel, int);
   6128     field @NonNull public static final android.os.Parcelable.Creator<android.security.keystore.recovery.KeyChainProtectionParams> CREATOR;
   6129     field public static final int TYPE_LOCKSCREEN = 100; // 0x64
   6130     field public static final int UI_FORMAT_PASSWORD = 2; // 0x2
   6131     field public static final int UI_FORMAT_PATTERN = 3; // 0x3
   6132     field public static final int UI_FORMAT_PIN = 1; // 0x1
   6133   }
   6134 
   6135   public static class KeyChainProtectionParams.Builder {
   6136     ctor public KeyChainProtectionParams.Builder();
   6137     method @NonNull public android.security.keystore.recovery.KeyChainProtectionParams build();
   6138     method @NonNull public android.security.keystore.recovery.KeyChainProtectionParams.Builder setKeyDerivationParams(@NonNull android.security.keystore.recovery.KeyDerivationParams);
   6139     method @NonNull public android.security.keystore.recovery.KeyChainProtectionParams.Builder setLockScreenUiFormat(int);
   6140     method @NonNull public android.security.keystore.recovery.KeyChainProtectionParams.Builder setSecret(@NonNull byte[]);
   6141     method @NonNull public android.security.keystore.recovery.KeyChainProtectionParams.Builder setUserSecretType(int);
   6142   }
   6143 
   6144   public final class KeyChainSnapshot implements android.os.Parcelable {
   6145     method public int describeContents();
   6146     method public long getCounterId();
   6147     method @NonNull public byte[] getEncryptedRecoveryKeyBlob();
   6148     method @NonNull public java.util.List<android.security.keystore.recovery.KeyChainProtectionParams> getKeyChainProtectionParams();
   6149     method public int getMaxAttempts();
   6150     method @NonNull public byte[] getServerParams();
   6151     method public int getSnapshotVersion();
   6152     method @NonNull public java.security.cert.CertPath getTrustedHardwareCertPath();
   6153     method @NonNull public java.util.List<android.security.keystore.recovery.WrappedApplicationKey> getWrappedApplicationKeys();
   6154     method public void writeToParcel(android.os.Parcel, int);
   6155     field @NonNull public static final android.os.Parcelable.Creator<android.security.keystore.recovery.KeyChainSnapshot> CREATOR;
   6156   }
   6157 
   6158   public final class KeyDerivationParams implements android.os.Parcelable {
   6159     method @NonNull public static android.security.keystore.recovery.KeyDerivationParams createScryptParams(@NonNull byte[], int);
   6160     method @NonNull public static android.security.keystore.recovery.KeyDerivationParams createSha256Params(@NonNull byte[]);
   6161     method public int describeContents();
   6162     method public int getAlgorithm();
   6163     method public int getMemoryDifficulty();
   6164     method @NonNull public byte[] getSalt();
   6165     method public void writeToParcel(android.os.Parcel, int);
   6166     field public static final int ALGORITHM_SCRYPT = 2; // 0x2
   6167     field public static final int ALGORITHM_SHA256 = 1; // 0x1
   6168     field @NonNull public static final android.os.Parcelable.Creator<android.security.keystore.recovery.KeyDerivationParams> CREATOR;
   6169   }
   6170 
   6171   public class LockScreenRequiredException extends java.security.GeneralSecurityException {
   6172     ctor public LockScreenRequiredException(String);
   6173   }
   6174 
   6175   public class RecoveryController {
   6176     method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) @NonNull public android.security.keystore.recovery.RecoverySession createRecoverySession();
   6177     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;
   6178     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;
   6179     method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) @NonNull public java.util.List<java.lang.String> getAliases() throws android.security.keystore.recovery.InternalRecoveryServiceException;
   6180     method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) @NonNull public static android.security.keystore.recovery.RecoveryController getInstance(@NonNull android.content.Context);
   6181     method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) @Nullable public java.security.Key getKey(@NonNull String) throws android.security.keystore.recovery.InternalRecoveryServiceException, java.security.UnrecoverableKeyException;
   6182     method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) @Nullable public android.security.keystore.recovery.KeyChainSnapshot getKeyChainSnapshot() throws android.security.keystore.recovery.InternalRecoveryServiceException;
   6183     method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public int[] getRecoverySecretTypes() throws android.security.keystore.recovery.InternalRecoveryServiceException;
   6184     method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public int getRecoveryStatus(@NonNull String) throws android.security.keystore.recovery.InternalRecoveryServiceException;
   6185     method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) @NonNull public java.util.Map<java.lang.String,java.security.cert.X509Certificate> getRootCertificates();
   6186     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;
   6187     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;
   6188     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;
   6189     method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public static boolean isRecoverableKeyStoreEnabled(@NonNull android.content.Context);
   6190     method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void removeKey(@NonNull String) throws android.security.keystore.recovery.InternalRecoveryServiceException;
   6191     method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void setRecoverySecretTypes(@NonNull int[]) throws android.security.keystore.recovery.InternalRecoveryServiceException;
   6192     method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void setRecoveryStatus(@NonNull String, int) throws android.security.keystore.recovery.InternalRecoveryServiceException;
   6193     method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void setServerParams(@NonNull byte[]) throws android.security.keystore.recovery.InternalRecoveryServiceException;
   6194     method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void setSnapshotCreatedPendingIntent(@Nullable android.app.PendingIntent) throws android.security.keystore.recovery.InternalRecoveryServiceException;
   6195     field public static final int RECOVERY_STATUS_PERMANENT_FAILURE = 3; // 0x3
   6196     field public static final int RECOVERY_STATUS_SYNCED = 0; // 0x0
   6197     field public static final int RECOVERY_STATUS_SYNC_IN_PROGRESS = 1; // 0x1
   6198   }
   6199 
   6200   public class RecoverySession implements java.lang.AutoCloseable {
   6201     method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void close();
   6202     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;
   6203     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;
   6204   }
   6205 
   6206   public class SessionExpiredException extends java.security.GeneralSecurityException {
   6207     ctor public SessionExpiredException(String);
   6208   }
   6209 
   6210   public final class WrappedApplicationKey implements android.os.Parcelable {
   6211     method public int describeContents();
   6212     method @NonNull public String getAlias();
   6213     method @NonNull public byte[] getEncryptedKeyMaterial();
   6214     method @Nullable public byte[] getMetadata();
   6215     method public void writeToParcel(android.os.Parcel, int);
   6216     field @NonNull public static final android.os.Parcelable.Creator<android.security.keystore.recovery.WrappedApplicationKey> CREATOR;
   6217   }
   6218 
   6219   public static class WrappedApplicationKey.Builder {
   6220     ctor public WrappedApplicationKey.Builder();
   6221     method @NonNull public android.security.keystore.recovery.WrappedApplicationKey build();
   6222     method @NonNull public android.security.keystore.recovery.WrappedApplicationKey.Builder setAlias(@NonNull String);
   6223     method @NonNull public android.security.keystore.recovery.WrappedApplicationKey.Builder setEncryptedKeyMaterial(@NonNull byte[]);
   6224     method @NonNull public android.security.keystore.recovery.WrappedApplicationKey.Builder setMetadata(@Nullable byte[]);
   6225   }
   6226 
   6227 }
   6228 
   6229 package android.service.appprediction {
   6230 
   6231   public abstract class AppPredictionService extends android.app.Service {
   6232     ctor public AppPredictionService();
   6233     method @MainThread public abstract void onAppTargetEvent(@NonNull android.app.prediction.AppPredictionSessionId, @NonNull android.app.prediction.AppTargetEvent);
   6234     method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
   6235     method public void onCreatePredictionSession(@NonNull android.app.prediction.AppPredictionContext, @NonNull android.app.prediction.AppPredictionSessionId);
   6236     method @MainThread public void onDestroyPredictionSession(@NonNull android.app.prediction.AppPredictionSessionId);
   6237     method @MainThread public abstract void onLaunchLocationShown(@NonNull android.app.prediction.AppPredictionSessionId, @NonNull String, @NonNull java.util.List<android.app.prediction.AppTargetId>);
   6238     method @MainThread public abstract void onRequestPredictionUpdate(@NonNull android.app.prediction.AppPredictionSessionId);
   6239     method @MainThread public abstract void onSortAppTargets(@NonNull android.app.prediction.AppPredictionSessionId, @NonNull java.util.List<android.app.prediction.AppTarget>, @NonNull android.os.CancellationSignal, @NonNull java.util.function.Consumer<java.util.List<android.app.prediction.AppTarget>>);
   6240     method @MainThread public void onStartPredictionUpdates();
   6241     method @MainThread public void onStopPredictionUpdates();
   6242     method public final void updatePredictions(@NonNull android.app.prediction.AppPredictionSessionId, @NonNull java.util.List<android.app.prediction.AppTarget>);
   6243   }
   6244 
   6245 }
   6246 
   6247 package android.service.attention {
   6248 
   6249   public abstract class AttentionService extends android.app.Service {
   6250     ctor public AttentionService();
   6251     method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
   6252     method public abstract void onCancelAttentionCheck(@NonNull android.service.attention.AttentionService.AttentionCallback);
   6253     method public abstract void onCheckAttention(@NonNull android.service.attention.AttentionService.AttentionCallback);
   6254     field public static final int ATTENTION_FAILURE_CAMERA_PERMISSION_ABSENT = 6; // 0x6
   6255     field public static final int ATTENTION_FAILURE_CANCELLED = 3; // 0x3
   6256     field public static final int ATTENTION_FAILURE_PREEMPTED = 4; // 0x4
   6257     field public static final int ATTENTION_FAILURE_TIMED_OUT = 5; // 0x5
   6258     field public static final int ATTENTION_FAILURE_UNKNOWN = 2; // 0x2
   6259     field public static final int ATTENTION_SUCCESS_ABSENT = 0; // 0x0
   6260     field public static final int ATTENTION_SUCCESS_PRESENT = 1; // 0x1
   6261     field public static final String SERVICE_INTERFACE = "android.service.attention.AttentionService";
   6262   }
   6263 
   6264   public static final class AttentionService.AttentionCallback {
   6265     method public void onFailure(int);
   6266     method public void onSuccess(int, long);
   6267   }
   6268 
   6269 }
   6270 
   6271 package android.service.autofill {
   6272 
   6273   public abstract class AutofillFieldClassificationService extends android.app.Service {
   6274     method public android.os.IBinder onBind(android.content.Intent);
   6275     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);
   6276     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>);
   6277     field public static final String REQUIRED_ALGORITHM_EDIT_DISTANCE = "EDIT_DISTANCE";
   6278     field public static final String REQUIRED_ALGORITHM_EXACT_MATCH = "EXACT_MATCH";
   6279     field public static final String SERVICE_INTERFACE = "android.service.autofill.AutofillFieldClassificationService";
   6280     field public static final String SERVICE_META_DATA_KEY_AVAILABLE_ALGORITHMS = "android.autofill.field_classification.available_algorithms";
   6281     field public static final String SERVICE_META_DATA_KEY_DEFAULT_ALGORITHM = "android.autofill.field_classification.default_algorithm";
   6282   }
   6283 
   6284 }
   6285 
   6286 package android.service.autofill.augmented {
   6287 
   6288   public abstract class AugmentedAutofillService extends android.app.Service {
   6289     ctor public AugmentedAutofillService();
   6290     method protected final void dump(java.io.FileDescriptor, java.io.PrintWriter, String[]);
   6291     method protected void dump(@NonNull java.io.PrintWriter, @NonNull String[]);
   6292     method public void onConnected();
   6293     method public void onDisconnected();
   6294     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);
   6295     field public static final String SERVICE_INTERFACE = "android.service.autofill.augmented.AugmentedAutofillService";
   6296   }
   6297 
   6298   public final class FillCallback {
   6299     method public void onSuccess(@Nullable android.service.autofill.augmented.FillResponse);
   6300   }
   6301 
   6302   public final class FillController {
   6303     method public void autofill(@NonNull java.util.List<android.util.Pair<android.view.autofill.AutofillId,android.view.autofill.AutofillValue>>);
   6304   }
   6305 
   6306   public final class FillRequest {
   6307     method @NonNull public android.content.ComponentName getActivityComponent();
   6308     method @NonNull public android.view.autofill.AutofillId getFocusedId();
   6309     method @NonNull public android.view.autofill.AutofillValue getFocusedValue();
   6310     method @Nullable public android.service.autofill.augmented.PresentationParams getPresentationParams();
   6311     method public int getTaskId();
   6312   }
   6313 
   6314   public final class FillResponse {
   6315   }
   6316 
   6317   public static final class FillResponse.Builder {
   6318     ctor public FillResponse.Builder();
   6319     method @NonNull public android.service.autofill.augmented.FillResponse build();
   6320     method @NonNull public android.service.autofill.augmented.FillResponse.Builder setFillWindow(@NonNull android.service.autofill.augmented.FillWindow);
   6321   }
   6322 
   6323   public final class FillWindow implements java.lang.AutoCloseable {
   6324     ctor public FillWindow();
   6325     method public void destroy();
   6326     method public boolean update(@NonNull android.service.autofill.augmented.PresentationParams.Area, @NonNull android.view.View, long);
   6327   }
   6328 
   6329   public abstract class PresentationParams {
   6330     method @Nullable public android.service.autofill.augmented.PresentationParams.Area getSuggestionArea();
   6331   }
   6332 
   6333   public abstract static class PresentationParams.Area {
   6334     method @NonNull public android.graphics.Rect getBounds();
   6335   }
   6336 
   6337 }
   6338 
   6339 package android.service.carrier {
   6340 
   6341   public abstract class ApnService extends android.app.Service {
   6342     ctor public ApnService();
   6343     method @NonNull public android.os.IBinder onBind(@Nullable android.content.Intent);
   6344     method @WorkerThread @NonNull public abstract java.util.List<android.content.ContentValues> onRestoreApns(int);
   6345   }
   6346 
   6347 }
   6348 
   6349 package android.service.contentcapture {
   6350 
   6351   public final class ActivityEvent implements android.os.Parcelable {
   6352     method public int describeContents();
   6353     method @NonNull public android.content.ComponentName getComponentName();
   6354     method public int getEventType();
   6355     method public void writeToParcel(@NonNull android.os.Parcel, int);
   6356     field @NonNull public static final android.os.Parcelable.Creator<android.service.contentcapture.ActivityEvent> CREATOR;
   6357     field public static final int TYPE_ACTIVITY_DESTROYED = 24; // 0x18
   6358     field public static final int TYPE_ACTIVITY_PAUSED = 2; // 0x2
   6359     field public static final int TYPE_ACTIVITY_RESUMED = 1; // 0x1
   6360     field public static final int TYPE_ACTIVITY_STOPPED = 23; // 0x17
   6361   }
   6362 
   6363   public abstract class ContentCaptureService extends android.app.Service {
   6364     ctor public ContentCaptureService();
   6365     method public final void disableSelf();
   6366     method public void onActivityEvent(@NonNull android.service.contentcapture.ActivityEvent);
   6367     method public void onActivitySnapshot(@NonNull android.view.contentcapture.ContentCaptureSessionId, @NonNull android.service.contentcapture.SnapshotData);
   6368     method public void onConnected();
   6369     method public void onContentCaptureEvent(@NonNull android.view.contentcapture.ContentCaptureSessionId, @NonNull android.view.contentcapture.ContentCaptureEvent);
   6370     method public void onCreateContentCaptureSession(@NonNull android.view.contentcapture.ContentCaptureContext, @NonNull android.view.contentcapture.ContentCaptureSessionId);
   6371     method public void onDataRemovalRequest(@NonNull android.view.contentcapture.DataRemovalRequest);
   6372     method public void onDestroyContentCaptureSession(@NonNull android.view.contentcapture.ContentCaptureSessionId);
   6373     method public void onDisconnected();
   6374     method public final void setContentCaptureConditions(@NonNull String, @Nullable java.util.Set<android.view.contentcapture.ContentCaptureCondition>);
   6375     method public final void setContentCaptureWhitelist(@Nullable java.util.Set<java.lang.String>, @Nullable java.util.Set<android.content.ComponentName>);
   6376     field public static final String SERVICE_INTERFACE = "android.service.contentcapture.ContentCaptureService";
   6377     field public static final String SERVICE_META_DATA = "android.content_capture";
   6378   }
   6379 
   6380   public final class SnapshotData implements android.os.Parcelable {
   6381     method public int describeContents();
   6382     method @Nullable public android.app.assist.AssistContent getAssistContent();
   6383     method @NonNull public android.os.Bundle getAssistData();
   6384     method @NonNull public android.app.assist.AssistStructure getAssistStructure();
   6385     method public void writeToParcel(@NonNull android.os.Parcel, int);
   6386     field @NonNull public static final android.os.Parcelable.Creator<android.service.contentcapture.SnapshotData> CREATOR;
   6387   }
   6388 
   6389 }
   6390 
   6391 package android.service.contentsuggestions {
   6392 
   6393   public abstract class ContentSuggestionsService extends android.app.Service {
   6394     ctor public ContentSuggestionsService();
   6395     method public abstract void onClassifyContentSelections(@NonNull android.app.contentsuggestions.ClassificationsRequest, @NonNull android.app.contentsuggestions.ContentSuggestionsManager.ClassificationsCallback);
   6396     method public abstract void onNotifyInteraction(@NonNull String, @NonNull android.os.Bundle);
   6397     method public abstract void onProcessContextImage(int, @Nullable android.graphics.Bitmap, @NonNull android.os.Bundle);
   6398     method public abstract void onSuggestContentSelections(@NonNull android.app.contentsuggestions.SelectionsRequest, @NonNull android.app.contentsuggestions.ContentSuggestionsManager.SelectionsCallback);
   6399     field public static final String SERVICE_INTERFACE = "android.service.contentsuggestions.ContentSuggestionsService";
   6400   }
   6401 
   6402 }
   6403 
   6404 package android.service.euicc {
   6405 
   6406   public final class DownloadSubscriptionResult implements android.os.Parcelable {
   6407     ctor public DownloadSubscriptionResult(int, int, int);
   6408     method public int describeContents();
   6409     method public int getCardId();
   6410     method public int getResolvableErrors();
   6411     method public int getResult();
   6412     method public void writeToParcel(android.os.Parcel, int);
   6413     field @NonNull public static final android.os.Parcelable.Creator<android.service.euicc.DownloadSubscriptionResult> CREATOR;
   6414   }
   6415 
   6416   public final class EuiccProfileInfo implements android.os.Parcelable {
   6417     method public int describeContents();
   6418     method public android.service.carrier.CarrierIdentifier getCarrierIdentifier();
   6419     method public String getIccid();
   6420     method @Nullable public String getNickname();
   6421     method @android.service.euicc.EuiccProfileInfo.PolicyRule public int getPolicyRules();
   6422     method @android.service.euicc.EuiccProfileInfo.ProfileClass public int getProfileClass();
   6423     method public String getProfileName();
   6424     method public String getServiceProviderName();
   6425     method @android.service.euicc.EuiccProfileInfo.ProfileState public int getState();
   6426     method @Nullable public java.util.List<android.telephony.UiccAccessRule> getUiccAccessRules();
   6427     method public boolean hasPolicyRule(@android.service.euicc.EuiccProfileInfo.PolicyRule int);
   6428     method public boolean hasPolicyRules();
   6429     method public void writeToParcel(android.os.Parcel, int);
   6430     field @NonNull public static final android.os.Parcelable.Creator<android.service.euicc.EuiccProfileInfo> CREATOR;
   6431     field public static final int POLICY_RULE_DELETE_AFTER_DISABLING = 4; // 0x4
   6432     field public static final int POLICY_RULE_DO_NOT_DELETE = 2; // 0x2
   6433     field public static final int POLICY_RULE_DO_NOT_DISABLE = 1; // 0x1
   6434     field public static final int PROFILE_CLASS_OPERATIONAL = 2; // 0x2
   6435     field public static final int PROFILE_CLASS_PROVISIONING = 1; // 0x1
   6436     field public static final int PROFILE_CLASS_TESTING = 0; // 0x0
   6437     field public static final int PROFILE_STATE_DISABLED = 0; // 0x0
   6438     field public static final int PROFILE_STATE_ENABLED = 1; // 0x1
   6439   }
   6440 
   6441   public static final class EuiccProfileInfo.Builder {
   6442     ctor public EuiccProfileInfo.Builder(String);
   6443     ctor public EuiccProfileInfo.Builder(android.service.euicc.EuiccProfileInfo);
   6444     method public android.service.euicc.EuiccProfileInfo build();
   6445     method public android.service.euicc.EuiccProfileInfo.Builder setCarrierIdentifier(android.service.carrier.CarrierIdentifier);
   6446     method public android.service.euicc.EuiccProfileInfo.Builder setIccid(String);
   6447     method public android.service.euicc.EuiccProfileInfo.Builder setNickname(String);
   6448     method public android.service.euicc.EuiccProfileInfo.Builder setPolicyRules(@android.service.euicc.EuiccProfileInfo.PolicyRule int);
   6449     method public android.service.euicc.EuiccProfileInfo.Builder setProfileClass(@android.service.euicc.EuiccProfileInfo.ProfileClass int);
   6450     method public android.service.euicc.EuiccProfileInfo.Builder setProfileName(String);
   6451     method public android.service.euicc.EuiccProfileInfo.Builder setServiceProviderName(String);
   6452     method public android.service.euicc.EuiccProfileInfo.Builder setState(@android.service.euicc.EuiccProfileInfo.ProfileState int);
   6453     method public android.service.euicc.EuiccProfileInfo.Builder setUiccAccessRule(@Nullable java.util.List<android.telephony.UiccAccessRule>);
   6454   }
   6455 
   6456   @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 {
   6457   }
   6458 
   6459   @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 {
   6460   }
   6461 
   6462   @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 {
   6463   }
   6464 
   6465   public abstract class EuiccService extends android.app.Service {
   6466     ctor public EuiccService();
   6467     method @CallSuper public android.os.IBinder onBind(android.content.Intent);
   6468     method public abstract int onDeleteSubscription(int, String);
   6469     method public android.service.euicc.DownloadSubscriptionResult onDownloadSubscription(int, @NonNull android.telephony.euicc.DownloadableSubscription, boolean, boolean, @Nullable android.os.Bundle);
   6470     method @Deprecated public int onDownloadSubscription(int, @NonNull android.telephony.euicc.DownloadableSubscription, boolean, boolean);
   6471     method public abstract int onEraseSubscriptions(int);
   6472     method public abstract android.service.euicc.GetDefaultDownloadableSubscriptionListResult onGetDefaultDownloadableSubscriptionList(int, boolean);
   6473     method public abstract android.service.euicc.GetDownloadableSubscriptionMetadataResult onGetDownloadableSubscriptionMetadata(int, android.telephony.euicc.DownloadableSubscription, boolean);
   6474     method public abstract String onGetEid(int);
   6475     method @NonNull public abstract android.telephony.euicc.EuiccInfo onGetEuiccInfo(int);
   6476     method @NonNull public abstract android.service.euicc.GetEuiccProfileInfoListResult onGetEuiccProfileInfoList(int);
   6477     method @android.telephony.euicc.EuiccManager.OtaStatus public abstract int onGetOtaStatus(int);
   6478     method public abstract int onRetainSubscriptionsForFactoryReset(int);
   6479     method public abstract void onStartOtaIfNecessary(int, android.service.euicc.EuiccService.OtaStatusChangedCallback);
   6480     method public abstract int onSwitchToSubscription(int, @Nullable String, boolean);
   6481     method public abstract int onUpdateSubscriptionNickname(int, String, String);
   6482     field public static final String ACTION_BIND_CARRIER_PROVISIONING_SERVICE = "android.service.euicc.action.BIND_CARRIER_PROVISIONING_SERVICE";
   6483     field public static final String ACTION_DELETE_SUBSCRIPTION_PRIVILEGED = "android.service.euicc.action.DELETE_SUBSCRIPTION_PRIVILEGED";
   6484     field public static final String ACTION_MANAGE_EMBEDDED_SUBSCRIPTIONS = "android.service.euicc.action.MANAGE_EMBEDDED_SUBSCRIPTIONS";
   6485     field public static final String ACTION_PROVISION_EMBEDDED_SUBSCRIPTION = "android.service.euicc.action.PROVISION_EMBEDDED_SUBSCRIPTION";
   6486     field public static final String ACTION_RENAME_SUBSCRIPTION_PRIVILEGED = "android.service.euicc.action.RENAME_SUBSCRIPTION_PRIVILEGED";
   6487     field @Deprecated public static final String ACTION_RESOLVE_CONFIRMATION_CODE = "android.service.euicc.action.RESOLVE_CONFIRMATION_CODE";
   6488     field public static final String ACTION_RESOLVE_DEACTIVATE_SIM = "android.service.euicc.action.RESOLVE_DEACTIVATE_SIM";
   6489     field public static final String ACTION_RESOLVE_NO_PRIVILEGES = "android.service.euicc.action.RESOLVE_NO_PRIVILEGES";
   6490     field public static final String ACTION_RESOLVE_RESOLVABLE_ERRORS = "android.service.euicc.action.RESOLVE_RESOLVABLE_ERRORS";
   6491     field public static final String ACTION_TOGGLE_SUBSCRIPTION_PRIVILEGED = "android.service.euicc.action.TOGGLE_SUBSCRIPTION_PRIVILEGED";
   6492     field public static final String CATEGORY_EUICC_UI = "android.service.euicc.category.EUICC_UI";
   6493     field public static final String EUICC_SERVICE_INTERFACE = "android.service.euicc.EuiccService";
   6494     field public static final String EXTRA_RESOLUTION_ALLOW_POLICY_RULES = "android.service.euicc.extra.RESOLUTION_ALLOW_POLICY_RULES";
   6495     field public static final String EXTRA_RESOLUTION_CALLING_PACKAGE = "android.service.euicc.extra.RESOLUTION_CALLING_PACKAGE";
   6496     field public static final String EXTRA_RESOLUTION_CARD_ID = "android.service.euicc.extra.RESOLUTION_CARD_ID";
   6497     field public static final String EXTRA_RESOLUTION_CONFIRMATION_CODE = "android.service.euicc.extra.RESOLUTION_CONFIRMATION_CODE";
   6498     field public static final String EXTRA_RESOLUTION_CONFIRMATION_CODE_RETRIED = "android.service.euicc.extra.RESOLUTION_CONFIRMATION_CODE_RETRIED";
   6499     field public static final String EXTRA_RESOLUTION_CONSENT = "android.service.euicc.extra.RESOLUTION_CONSENT";
   6500     field public static final String EXTRA_RESOLVABLE_ERRORS = "android.service.euicc.extra.RESOLVABLE_ERRORS";
   6501     field public static final int RESOLVABLE_ERROR_CONFIRMATION_CODE = 1; // 0x1
   6502     field public static final int RESOLVABLE_ERROR_POLICY_RULES = 2; // 0x2
   6503     field public static final int RESULT_FIRST_USER = 1; // 0x1
   6504     field public static final int RESULT_MUST_DEACTIVATE_SIM = -1; // 0xffffffff
   6505     field @Deprecated public static final int RESULT_NEED_CONFIRMATION_CODE = -2; // 0xfffffffe
   6506     field public static final int RESULT_OK = 0; // 0x0
   6507     field public static final int RESULT_RESOLVABLE_ERRORS = -2; // 0xfffffffe
   6508   }
   6509 
   6510   public abstract static class EuiccService.OtaStatusChangedCallback {
   6511     ctor public EuiccService.OtaStatusChangedCallback();
   6512     method public abstract void onOtaStatusChanged(int);
   6513   }
   6514 
   6515   public final class GetDefaultDownloadableSubscriptionListResult implements android.os.Parcelable {
   6516     ctor public GetDefaultDownloadableSubscriptionListResult(int, @Nullable android.telephony.euicc.DownloadableSubscription[]);
   6517     method public int describeContents();
   6518     method @Nullable public java.util.List<android.telephony.euicc.DownloadableSubscription> getDownloadableSubscriptions();
   6519     method public int getResult();
   6520     method public void writeToParcel(android.os.Parcel, int);
   6521     field @NonNull public static final android.os.Parcelable.Creator<android.service.euicc.GetDefaultDownloadableSubscriptionListResult> CREATOR;
   6522   }
   6523 
   6524   public final class GetDownloadableSubscriptionMetadataResult implements android.os.Parcelable {
   6525     ctor public GetDownloadableSubscriptionMetadataResult(int, @Nullable android.telephony.euicc.DownloadableSubscription);
   6526     method public int describeContents();
   6527     method @Nullable public android.telephony.euicc.DownloadableSubscription getDownloadableSubscription();
   6528     method public int getResult();
   6529     method public void writeToParcel(android.os.Parcel, int);
   6530     field @NonNull public static final android.os.Parcelable.Creator<android.service.euicc.GetDownloadableSubscriptionMetadataResult> CREATOR;
   6531   }
   6532 
   6533   public final class GetEuiccProfileInfoListResult implements android.os.Parcelable {
   6534     ctor public GetEuiccProfileInfoListResult(int, @Nullable android.service.euicc.EuiccProfileInfo[], boolean);
   6535     method public int describeContents();
   6536     method public boolean getIsRemovable();
   6537     method @Nullable public java.util.List<android.service.euicc.EuiccProfileInfo> getProfiles();
   6538     method public int getResult();
   6539     method public void writeToParcel(android.os.Parcel, int);
   6540     field @NonNull public static final android.os.Parcelable.Creator<android.service.euicc.GetEuiccProfileInfoListResult> CREATOR;
   6541   }
   6542 
   6543 }
   6544 
   6545 package android.service.notification {
   6546 
   6547   public final class Adjustment implements android.os.Parcelable {
   6548     ctor public Adjustment(String, String, android.os.Bundle, CharSequence, int);
   6549     ctor public Adjustment(@NonNull String, @NonNull String, @NonNull android.os.Bundle, @NonNull CharSequence, @NonNull android.os.UserHandle);
   6550     ctor protected Adjustment(android.os.Parcel);
   6551     method public int describeContents();
   6552     method @NonNull public CharSequence getExplanation();
   6553     method @NonNull public String getKey();
   6554     method @NonNull public String getPackage();
   6555     method @NonNull public android.os.Bundle getSignals();
   6556     method public int getUser();
   6557     method @NonNull public android.os.UserHandle getUserHandle();
   6558     method public void writeToParcel(android.os.Parcel, int);
   6559     field @NonNull public static final android.os.Parcelable.Creator<android.service.notification.Adjustment> CREATOR;
   6560     field public static final String KEY_CONTEXTUAL_ACTIONS = "key_contextual_actions";
   6561     field public static final String KEY_IMPORTANCE = "key_importance";
   6562     field public static final String KEY_PEOPLE = "key_people";
   6563     field public static final String KEY_SNOOZE_CRITERIA = "key_snooze_criteria";
   6564     field public static final String KEY_TEXT_REPLIES = "key_text_replies";
   6565     field public static final String KEY_USER_SENTIMENT = "key_user_sentiment";
   6566   }
   6567 
   6568   public abstract class NotificationAssistantService extends android.service.notification.NotificationListenerService {
   6569     ctor public NotificationAssistantService();
   6570     method public final void adjustNotification(@NonNull android.service.notification.Adjustment);
   6571     method public final void adjustNotifications(@NonNull java.util.List<android.service.notification.Adjustment>);
   6572     method public void onActionInvoked(@NonNull String, @NonNull android.app.Notification.Action, int);
   6573     method public void onAllowedAdjustmentsChanged();
   6574     method @NonNull public final android.os.IBinder onBind(@Nullable android.content.Intent);
   6575     method public void onNotificationDirectReplied(@NonNull String);
   6576     method @Nullable public abstract android.service.notification.Adjustment onNotificationEnqueued(@NonNull android.service.notification.StatusBarNotification);
   6577     method @Nullable public android.service.notification.Adjustment onNotificationEnqueued(@NonNull android.service.notification.StatusBarNotification, @NonNull android.app.NotificationChannel);
   6578     method public void onNotificationExpansionChanged(@NonNull String, boolean, boolean);
   6579     method public abstract void onNotificationSnoozedUntilContext(@NonNull android.service.notification.StatusBarNotification, @NonNull String);
   6580     method public void onNotificationsSeen(@NonNull java.util.List<java.lang.String>);
   6581     method public void onSuggestedReplySent(@NonNull String, @NonNull CharSequence, int);
   6582     method public final void unsnoozeNotification(@NonNull String);
   6583     field public static final String SERVICE_INTERFACE = "android.service.notification.NotificationAssistantService";
   6584     field public static final int SOURCE_FROM_APP = 0; // 0x0
   6585     field public static final int SOURCE_FROM_ASSISTANT = 1; // 0x1
   6586   }
   6587 
   6588   public abstract class NotificationListenerService extends android.app.Service {
   6589     method public void onNotificationRemoved(@NonNull android.service.notification.StatusBarNotification, @NonNull android.service.notification.NotificationListenerService.RankingMap, @NonNull android.service.notification.NotificationStats, int);
   6590   }
   6591 
   6592   public final class NotificationStats implements android.os.Parcelable {
   6593     ctor public NotificationStats();
   6594     ctor protected NotificationStats(android.os.Parcel);
   6595     method public int describeContents();
   6596     method public int getDismissalSentiment();
   6597     method public int getDismissalSurface();
   6598     method public boolean hasDirectReplied();
   6599     method public boolean hasExpanded();
   6600     method public boolean hasInteracted();
   6601     method public boolean hasSeen();
   6602     method public boolean hasSnoozed();
   6603     method public boolean hasViewedSettings();
   6604     method public void setDirectReplied();
   6605     method public void setDismissalSentiment(int);
   6606     method public void setDismissalSurface(int);
   6607     method public void setExpanded();
   6608     method public void setSeen();
   6609     method public void setSnoozed();
   6610     method public void setViewedSettings();
   6611     method public void writeToParcel(android.os.Parcel, int);
   6612     field @NonNull public static final android.os.Parcelable.Creator<android.service.notification.NotificationStats> CREATOR;
   6613     field public static final int DISMISSAL_AOD = 2; // 0x2
   6614     field public static final int DISMISSAL_NOT_DISMISSED = -1; // 0xffffffff
   6615     field public static final int DISMISSAL_OTHER = 0; // 0x0
   6616     field public static final int DISMISSAL_PEEK = 1; // 0x1
   6617     field public static final int DISMISSAL_SHADE = 3; // 0x3
   6618     field public static final int DISMISS_SENTIMENT_NEGATIVE = 0; // 0x0
   6619     field public static final int DISMISS_SENTIMENT_NEUTRAL = 1; // 0x1
   6620     field public static final int DISMISS_SENTIMENT_POSITIVE = 2; // 0x2
   6621     field public static final int DISMISS_SENTIMENT_UNKNOWN = -1000; // 0xfffffc18
   6622   }
   6623 
   6624   public final class SnoozeCriterion implements android.os.Parcelable {
   6625     ctor public SnoozeCriterion(String, CharSequence, CharSequence);
   6626     ctor protected SnoozeCriterion(android.os.Parcel);
   6627     method public int describeContents();
   6628     method public CharSequence getConfirmation();
   6629     method public CharSequence getExplanation();
   6630     method public String getId();
   6631     method public void writeToParcel(android.os.Parcel, int);
   6632     field @NonNull public static final android.os.Parcelable.Creator<android.service.notification.SnoozeCriterion> CREATOR;
   6633   }
   6634 
   6635 }
   6636 
   6637 package android.service.oemlock {
   6638 
   6639   public class OemLockManager {
   6640     method @RequiresPermission(android.Manifest.permission.MANAGE_CARRIER_OEM_UNLOCK_STATE) @Nullable public String getLockName();
   6641     method @RequiresPermission(android.Manifest.permission.MANAGE_CARRIER_OEM_UNLOCK_STATE) public boolean isOemUnlockAllowedByCarrier();
   6642     method @RequiresPermission(android.Manifest.permission.MANAGE_USER_OEM_UNLOCK_STATE) public boolean isOemUnlockAllowedByUser();
   6643     method @RequiresPermission(android.Manifest.permission.MANAGE_CARRIER_OEM_UNLOCK_STATE) public void setOemUnlockAllowedByCarrier(boolean, @Nullable byte[]);
   6644     method @RequiresPermission(android.Manifest.permission.MANAGE_USER_OEM_UNLOCK_STATE) public void setOemUnlockAllowedByUser(boolean);
   6645   }
   6646 
   6647 }
   6648 
   6649 package android.service.persistentdata {
   6650 
   6651   public class PersistentDataBlockManager {
   6652     method @RequiresPermission("android.permission.ACCESS_PDB_STATE") public int getDataBlockSize();
   6653     method @RequiresPermission(anyOf={android.Manifest.permission.READ_OEM_UNLOCK_STATE, "android.permission.OEM_UNLOCK_STATE"}) @android.service.persistentdata.PersistentDataBlockManager.FlashLockState public int getFlashLockState();
   6654     method public long getMaximumDataBlockSize();
   6655     method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_OEM_UNLOCK_STATE, "android.permission.OEM_UNLOCK_STATE"}) public boolean getOemUnlockEnabled();
   6656     method public byte[] read();
   6657     method @Deprecated @RequiresPermission("android.permission.OEM_UNLOCK_STATE") public void setOemUnlockEnabled(boolean);
   6658     method @RequiresPermission("android.permission.OEM_UNLOCK_STATE") public void wipe();
   6659     method public int write(byte[]);
   6660     field public static final int FLASH_LOCK_LOCKED = 1; // 0x1
   6661     field public static final int FLASH_LOCK_UNKNOWN = -1; // 0xffffffff
   6662     field public static final int FLASH_LOCK_UNLOCKED = 0; // 0x0
   6663   }
   6664 
   6665   @IntDef(prefix={"FLASH_LOCK_"}, value={android.service.persistentdata.PersistentDataBlockManager.FLASH_LOCK_UNKNOWN, android.service.persistentdata.PersistentDataBlockManager.FLASH_LOCK_LOCKED, android.service.persistentdata.PersistentDataBlockManager.FLASH_LOCK_UNLOCKED}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface PersistentDataBlockManager.FlashLockState {
   6666   }
   6667 
   6668 }
   6669 
   6670 package android.service.quicksettings {
   6671 
   6672   public class TileService extends android.app.Service {
   6673     method public final void setStatusIcon(android.graphics.drawable.Icon, String);
   6674   }
   6675 
   6676 }
   6677 
   6678 package android.service.resolver {
   6679 
   6680   public abstract class ResolverRankerService extends android.app.Service {
   6681     ctor public ResolverRankerService();
   6682     method public android.os.IBinder onBind(android.content.Intent);
   6683     method public void onPredictSharingProbabilities(java.util.List<android.service.resolver.ResolverTarget>);
   6684     method public void onTrainRankingModel(java.util.List<android.service.resolver.ResolverTarget>, int);
   6685     field public static final String BIND_PERMISSION = "android.permission.BIND_RESOLVER_RANKER_SERVICE";
   6686     field public static final String HOLD_PERMISSION = "android.permission.PROVIDE_RESOLVER_RANKER_SERVICE";
   6687     field public static final String SERVICE_INTERFACE = "android.service.resolver.ResolverRankerService";
   6688   }
   6689 
   6690   public final class ResolverTarget implements android.os.Parcelable {
   6691     ctor public ResolverTarget();
   6692     method public int describeContents();
   6693     method public float getChooserScore();
   6694     method public float getLaunchScore();
   6695     method public float getRecencyScore();
   6696     method public float getSelectProbability();
   6697     method public float getTimeSpentScore();
   6698     method public void setChooserScore(float);
   6699     method public void setLaunchScore(float);
   6700     method public void setRecencyScore(float);
   6701     method public void setSelectProbability(float);
   6702     method public void setTimeSpentScore(float);
   6703     method public void writeToParcel(android.os.Parcel, int);
   6704     field @NonNull public static final android.os.Parcelable.Creator<android.service.resolver.ResolverTarget> CREATOR;
   6705   }
   6706 
   6707 }
   6708 
   6709 package android.service.settings.suggestions {
   6710 
   6711   public final class Suggestion implements android.os.Parcelable {
   6712     method public int describeContents();
   6713     method public int getFlags();
   6714     method public android.graphics.drawable.Icon getIcon();
   6715     method public String getId();
   6716     method public android.app.PendingIntent getPendingIntent();
   6717     method public CharSequence getSummary();
   6718     method public CharSequence getTitle();
   6719     method public void writeToParcel(android.os.Parcel, int);
   6720     field @NonNull public static final android.os.Parcelable.Creator<android.service.settings.suggestions.Suggestion> CREATOR;
   6721     field public static final int FLAG_HAS_BUTTON = 1; // 0x1
   6722   }
   6723 
   6724   public static class Suggestion.Builder {
   6725     ctor public Suggestion.Builder(String);
   6726     method public android.service.settings.suggestions.Suggestion build();
   6727     method public android.service.settings.suggestions.Suggestion.Builder setFlags(int);
   6728     method public android.service.settings.suggestions.Suggestion.Builder setIcon(android.graphics.drawable.Icon);
   6729     method public android.service.settings.suggestions.Suggestion.Builder setPendingIntent(android.app.PendingIntent);
   6730     method public android.service.settings.suggestions.Suggestion.Builder setSummary(CharSequence);
   6731     method public android.service.settings.suggestions.Suggestion.Builder setTitle(CharSequence);
   6732   }
   6733 
   6734   public abstract class SuggestionService extends android.app.Service {
   6735     ctor public SuggestionService();
   6736     method public android.os.IBinder onBind(android.content.Intent);
   6737     method public abstract java.util.List<android.service.settings.suggestions.Suggestion> onGetSuggestions();
   6738     method public abstract void onSuggestionDismissed(android.service.settings.suggestions.Suggestion);
   6739     method public abstract void onSuggestionLaunched(android.service.settings.suggestions.Suggestion);
   6740   }
   6741 
   6742 }
   6743 
   6744 package android.service.sms {
   6745 
   6746   public abstract class FinancialSmsService extends android.app.Service {
   6747     method public android.os.IBinder onBind(android.content.Intent);
   6748     method @Nullable public abstract android.database.CursorWindow onGetSmsMessages(@NonNull android.os.Bundle);
   6749     field public static final String ACTION_FINANCIAL_SERVICE_INTENT = "android.service.sms.action.FINANCIAL_SERVICE_INTENT";
   6750   }
   6751 
   6752 }
   6753 
   6754 package android.service.textclassifier {
   6755 
   6756   public abstract class TextClassifierService extends android.app.Service {
   6757     ctor public TextClassifierService();
   6758     method @NonNull public static android.view.textclassifier.TextClassifier getDefaultTextClassifierImplementation(@NonNull android.content.Context);
   6759     method @Deprecated public final android.view.textclassifier.TextClassifier getLocalTextClassifier();
   6760     method @Nullable public final android.os.IBinder onBind(android.content.Intent);
   6761     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>);
   6762     method @MainThread public void onCreateTextClassificationSession(@NonNull android.view.textclassifier.TextClassificationContext, @NonNull android.view.textclassifier.TextClassificationSessionId);
   6763     method @MainThread public void onDestroyTextClassificationSession(@NonNull android.view.textclassifier.TextClassificationSessionId);
   6764     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>);
   6765     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>);
   6766     method @Deprecated @MainThread public void onSelectionEvent(@Nullable android.view.textclassifier.TextClassificationSessionId, @NonNull android.view.textclassifier.SelectionEvent);
   6767     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>);
   6768     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>);
   6769     method @MainThread public void onTextClassifierEvent(@Nullable android.view.textclassifier.TextClassificationSessionId, @NonNull android.view.textclassifier.TextClassifierEvent);
   6770     field public static final String SERVICE_INTERFACE = "android.service.textclassifier.TextClassifierService";
   6771   }
   6772 
   6773   public static interface TextClassifierService.Callback<T> {
   6774     method public void onFailure(CharSequence);
   6775     method public void onSuccess(T);
   6776   }
   6777 
   6778 }
   6779 
   6780 package android.service.trust {
   6781 
   6782   public class TrustAgentService extends android.app.Service {
   6783     ctor public TrustAgentService();
   6784     method public final void addEscrowToken(byte[], android.os.UserHandle);
   6785     method @Deprecated public final void grantTrust(CharSequence, long, boolean);
   6786     method public final void grantTrust(CharSequence, long, int);
   6787     method public final void isEscrowTokenActive(long, android.os.UserHandle);
   6788     method public final android.os.IBinder onBind(android.content.Intent);
   6789     method public boolean onConfigure(java.util.List<android.os.PersistableBundle>);
   6790     method public void onDeviceLocked();
   6791     method public void onDeviceUnlockLockout(long);
   6792     method public void onDeviceUnlocked();
   6793     method public void onEscrowTokenAdded(byte[], long, android.os.UserHandle);
   6794     method public void onEscrowTokenRemoved(long, boolean);
   6795     method public void onEscrowTokenStateReceived(long, int);
   6796     method public void onTrustTimeout();
   6797     method public void onUnlockAttempt(boolean);
   6798     method public final void removeEscrowToken(long, android.os.UserHandle);
   6799     method public final void revokeTrust();
   6800     method public final void setManagingTrust(boolean);
   6801     method public final void showKeyguardErrorMessage(@NonNull CharSequence);
   6802     method public final void unlockUserWithToken(long, byte[], android.os.UserHandle);
   6803     field public static final int FLAG_GRANT_TRUST_DISMISS_KEYGUARD = 2; // 0x2
   6804     field public static final int FLAG_GRANT_TRUST_INITIATED_BY_USER = 1; // 0x1
   6805     field public static final String SERVICE_INTERFACE = "android.service.trust.TrustAgentService";
   6806     field public static final int TOKEN_STATE_ACTIVE = 1; // 0x1
   6807     field public static final int TOKEN_STATE_INACTIVE = 0; // 0x0
   6808     field public static final String TRUST_AGENT_META_DATA = "android.service.trust.trustagent";
   6809   }
   6810 
   6811 }
   6812 
   6813 package android.service.wallpaper {
   6814 
   6815   public class WallpaperService.Engine {
   6816     method public boolean isInAmbientMode();
   6817     method public void onAmbientModeChanged(boolean, long);
   6818   }
   6819 
   6820 }
   6821 
   6822 package android.service.watchdog {
   6823 
   6824   public abstract class ExplicitHealthCheckService extends android.app.Service {
   6825     ctor public ExplicitHealthCheckService();
   6826     method public final void notifyHealthCheckPassed(@NonNull String);
   6827     method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
   6828     method public abstract void onCancelHealthCheck(@NonNull String);
   6829     method @NonNull public abstract java.util.List<java.lang.String> onGetRequestedPackages();
   6830     method @NonNull public abstract java.util.List<android.service.watchdog.ExplicitHealthCheckService.PackageConfig> onGetSupportedPackages();
   6831     method public abstract void onRequestHealthCheck(@NonNull String);
   6832     field public static final String BIND_PERMISSION = "android.permission.BIND_EXPLICIT_HEALTH_CHECK_SERVICE";
   6833     field public static final String SERVICE_INTERFACE = "android.service.watchdog.ExplicitHealthCheckService";
   6834   }
   6835 
   6836   public static final class ExplicitHealthCheckService.PackageConfig implements android.os.Parcelable {
   6837     ctor public ExplicitHealthCheckService.PackageConfig(@NonNull String, long);
   6838     method public int describeContents();
   6839     method public long getHealthCheckTimeoutMillis();
   6840     method @NonNull public String getPackageName();
   6841     method public void writeToParcel(android.os.Parcel, int);
   6842     field @NonNull public static final android.os.Parcelable.Creator<android.service.watchdog.ExplicitHealthCheckService.PackageConfig> CREATOR;
   6843   }
   6844 
   6845 }
   6846 
   6847 package android.telecom {
   6848 
   6849   @Deprecated public class AudioState implements android.os.Parcelable {
   6850     ctor @Deprecated public AudioState(boolean, int, int);
   6851     ctor @Deprecated public AudioState(android.telecom.AudioState);
   6852     ctor @Deprecated public AudioState(android.telecom.CallAudioState);
   6853     method @Deprecated public static String audioRouteToString(int);
   6854     method @Deprecated public int describeContents();
   6855     method @Deprecated public int getRoute();
   6856     method @Deprecated public int getSupportedRouteMask();
   6857     method @Deprecated public boolean isMuted();
   6858     method @Deprecated public void writeToParcel(android.os.Parcel, int);
   6859     field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.telecom.AudioState> CREATOR;
   6860     field @Deprecated public static final int ROUTE_BLUETOOTH = 2; // 0x2
   6861     field @Deprecated public static final int ROUTE_EARPIECE = 1; // 0x1
   6862     field @Deprecated public static final int ROUTE_SPEAKER = 8; // 0x8
   6863     field @Deprecated public static final int ROUTE_WIRED_HEADSET = 4; // 0x4
   6864     field @Deprecated public static final int ROUTE_WIRED_OR_EARPIECE = 5; // 0x5
   6865   }
   6866 
   6867   public final class Call {
   6868     method @Deprecated public void addListener(android.telecom.Call.Listener);
   6869     method @Deprecated public void removeListener(android.telecom.Call.Listener);
   6870     field @Deprecated public static final int STATE_PRE_DIAL_WAIT = 8; // 0x8
   6871   }
   6872 
   6873   @Deprecated public abstract static class Call.Listener extends android.telecom.Call.Callback {
   6874     ctor @Deprecated public Call.Listener();
   6875   }
   6876 
   6877   public abstract class Conference extends android.telecom.Conferenceable {
   6878     method @Deprecated public final android.telecom.AudioState getAudioState();
   6879     method @Deprecated public final long getConnectTimeMillis();
   6880     method public android.telecom.Connection getPrimaryConnection();
   6881     method @Deprecated public void onAudioStateChanged(android.telecom.AudioState);
   6882     method @Deprecated public final void setConnectTimeMillis(long);
   6883   }
   6884 
   6885   public abstract class Connection extends android.telecom.Conferenceable {
   6886     method @Deprecated public final android.telecom.AudioState getAudioState();
   6887     method @Deprecated public void onAudioStateChanged(android.telecom.AudioState);
   6888   }
   6889 
   6890   public abstract class InCallService extends android.app.Service {
   6891     method @Deprecated public android.telecom.Phone getPhone();
   6892     method @Deprecated public void onPhoneCreated(android.telecom.Phone);
   6893     method @Deprecated public void onPhoneDestroyed(android.telecom.Phone);
   6894   }
   6895 
   6896   public class ParcelableCallAnalytics implements android.os.Parcelable {
   6897     ctor public ParcelableCallAnalytics(long, long, int, boolean, boolean, int, int, boolean, String, boolean, java.util.List<android.telecom.ParcelableCallAnalytics.AnalyticsEvent>, java.util.List<android.telecom.ParcelableCallAnalytics.EventTiming>);
   6898     ctor public ParcelableCallAnalytics(android.os.Parcel);
   6899     method public java.util.List<android.telecom.ParcelableCallAnalytics.AnalyticsEvent> analyticsEvents();
   6900     method public int describeContents();
   6901     method public long getCallDurationMillis();
   6902     method public int getCallTechnologies();
   6903     method public int getCallTerminationCode();
   6904     method public int getCallType();
   6905     method public String getConnectionService();
   6906     method public java.util.List<android.telecom.ParcelableCallAnalytics.EventTiming> getEventTimings();
   6907     method public long getStartTimeMillis();
   6908     method public boolean isAdditionalCall();
   6909     method public boolean isCreatedFromExistingConnection();
   6910     method public boolean isEmergencyCall();
   6911     method public boolean isInterrupted();
   6912     method public void writeToParcel(android.os.Parcel, int);
   6913     field public static final int CALLTYPE_INCOMING = 1; // 0x1
   6914     field public static final int CALLTYPE_OUTGOING = 2; // 0x2
   6915     field public static final int CALLTYPE_UNKNOWN = 0; // 0x0
   6916     field public static final int CDMA_PHONE = 1; // 0x1
   6917     field @NonNull public static final android.os.Parcelable.Creator<android.telecom.ParcelableCallAnalytics> CREATOR;
   6918     field public static final int GSM_PHONE = 2; // 0x2
   6919     field public static final int IMS_PHONE = 4; // 0x4
   6920     field public static final long MILLIS_IN_1_SECOND = 1000L; // 0x3e8L
   6921     field public static final long MILLIS_IN_5_MINUTES = 300000L; // 0x493e0L
   6922     field public static final int SIP_PHONE = 8; // 0x8
   6923     field public static final int STILL_CONNECTED = -1; // 0xffffffff
   6924     field public static final int THIRD_PARTY_PHONE = 16; // 0x10
   6925   }
   6926 
   6927   public static final class ParcelableCallAnalytics.AnalyticsEvent implements android.os.Parcelable {
   6928     ctor public ParcelableCallAnalytics.AnalyticsEvent(int, long);
   6929     method public int describeContents();
   6930     method public int getEventName();
   6931     method public long getTimeSinceLastEvent();
   6932     method public void writeToParcel(android.os.Parcel, int);
   6933     field public static final int AUDIO_ROUTE_BT = 204; // 0xcc
   6934     field public static final int AUDIO_ROUTE_EARPIECE = 205; // 0xcd
   6935     field public static final int AUDIO_ROUTE_HEADSET = 206; // 0xce
   6936     field public static final int AUDIO_ROUTE_SPEAKER = 207; // 0xcf
   6937     field public static final int BIND_CS = 5; // 0x5
   6938     field public static final int BLOCK_CHECK_FINISHED = 105; // 0x69
   6939     field public static final int BLOCK_CHECK_INITIATED = 104; // 0x68
   6940     field public static final int CONFERENCE_WITH = 300; // 0x12c
   6941     field @NonNull public static final android.os.Parcelable.Creator<android.telecom.ParcelableCallAnalytics.AnalyticsEvent> CREATOR;
   6942     field public static final int CS_BOUND = 6; // 0x6
   6943     field public static final int DIRECT_TO_VM_FINISHED = 103; // 0x67
   6944     field public static final int DIRECT_TO_VM_INITIATED = 102; // 0x66
   6945     field public static final int FILTERING_COMPLETED = 107; // 0x6b
   6946     field public static final int FILTERING_INITIATED = 106; // 0x6a
   6947     field public static final int FILTERING_TIMED_OUT = 108; // 0x6c
   6948     field public static final int MUTE = 202; // 0xca
   6949     field public static final int REMOTELY_HELD = 402; // 0x192
   6950     field public static final int REMOTELY_UNHELD = 403; // 0x193
   6951     field public static final int REQUEST_ACCEPT = 7; // 0x7
   6952     field public static final int REQUEST_HOLD = 400; // 0x190
   6953     field public static final int REQUEST_PULL = 500; // 0x1f4
   6954     field public static final int REQUEST_REJECT = 8; // 0x8
   6955     field public static final int REQUEST_UNHOLD = 401; // 0x191
   6956     field public static final int SCREENING_COMPLETED = 101; // 0x65
   6957     field public static final int SCREENING_SENT = 100; // 0x64
   6958     field public static final int SET_ACTIVE = 1; // 0x1
   6959     field public static final int SET_DIALING = 4; // 0x4
   6960     field public static final int SET_DISCONNECTED = 2; // 0x2
   6961     field public static final int SET_HOLD = 404; // 0x194
   6962     field public static final int SET_PARENT = 302; // 0x12e
   6963     field public static final int SET_SELECT_PHONE_ACCOUNT = 0; // 0x0
   6964     field public static final int SILENCE = 201; // 0xc9
   6965     field public static final int SKIP_RINGING = 200; // 0xc8
   6966     field public static final int SPLIT_CONFERENCE = 301; // 0x12d
   6967     field public static final int START_CONNECTION = 3; // 0x3
   6968     field public static final int SWAP = 405; // 0x195
   6969     field public static final int UNMUTE = 203; // 0xcb
   6970   }
   6971 
   6972   public static final class ParcelableCallAnalytics.EventTiming implements android.os.Parcelable {
   6973     ctor public ParcelableCallAnalytics.EventTiming(int, long);
   6974     method public int describeContents();
   6975     method public int getName();
   6976     method public long getTime();
   6977     method public void writeToParcel(android.os.Parcel, int);
   6978     field public static final int ACCEPT_TIMING = 0; // 0x0
   6979     field public static final int BIND_CS_TIMING = 6; // 0x6
   6980     field public static final int BLOCK_CHECK_FINISHED_TIMING = 9; // 0x9
   6981     field @NonNull public static final android.os.Parcelable.Creator<android.telecom.ParcelableCallAnalytics.EventTiming> CREATOR;
   6982     field public static final int DIRECT_TO_VM_FINISHED_TIMING = 8; // 0x8
   6983     field public static final int DISCONNECT_TIMING = 2; // 0x2
   6984     field public static final int FILTERING_COMPLETED_TIMING = 10; // 0xa
   6985     field public static final int FILTERING_TIMED_OUT_TIMING = 11; // 0xb
   6986     field public static final int HOLD_TIMING = 3; // 0x3
   6987     field public static final int INVALID = 999999; // 0xf423f
   6988     field public static final int OUTGOING_TIME_TO_DIALING_TIMING = 5; // 0x5
   6989     field public static final int REJECT_TIMING = 1; // 0x1
   6990     field public static final int SCREENING_COMPLETED_TIMING = 7; // 0x7
   6991     field public static final int UNHOLD_TIMING = 4; // 0x4
   6992   }
   6993 
   6994   @Deprecated public final class Phone {
   6995     method @Deprecated public void addListener(android.telecom.Phone.Listener);
   6996     method @Deprecated public boolean canAddCall();
   6997     method @Deprecated public android.telecom.AudioState getAudioState();
   6998     method @Deprecated public android.telecom.CallAudioState getCallAudioState();
   6999     method @Deprecated public java.util.List<android.telecom.Call> getCalls();
   7000     method @Deprecated public void removeListener(android.telecom.Phone.Listener);
   7001     method @Deprecated public void requestBluetoothAudio(String);
   7002     method @Deprecated public void setAudioRoute(int);
   7003     method @Deprecated public void setMuted(boolean);
   7004   }
   7005 
   7006   @Deprecated public abstract static class Phone.Listener {
   7007     ctor @Deprecated public Phone.Listener();
   7008     method @Deprecated public void onAudioStateChanged(android.telecom.Phone, android.telecom.AudioState);
   7009     method @Deprecated public void onBringToForeground(android.telecom.Phone, boolean);
   7010     method @Deprecated public void onCallAdded(android.telecom.Phone, android.telecom.Call);
   7011     method @Deprecated public void onCallAudioStateChanged(android.telecom.Phone, android.telecom.CallAudioState);
   7012     method @Deprecated public void onCallRemoved(android.telecom.Phone, android.telecom.Call);
   7013     method @Deprecated public void onCanAddCallChanged(android.telecom.Phone, boolean);
   7014     method @Deprecated public void onSilenceRinger(android.telecom.Phone);
   7015   }
   7016 
   7017   public final class PhoneAccount implements android.os.Parcelable {
   7018     field public static final int CAPABILITY_MULTI_USER = 32; // 0x20
   7019   }
   7020 
   7021   public class PhoneAccountSuggestionService extends android.app.Service {
   7022     ctor public PhoneAccountSuggestionService();
   7023     method public void onAccountSuggestionRequest(@NonNull String);
   7024     method public android.os.IBinder onBind(android.content.Intent);
   7025     method public final void suggestPhoneAccounts(@NonNull String, @NonNull java.util.List<android.telecom.PhoneAccountSuggestion>);
   7026     field public static final String SERVICE_INTERFACE = "android.telecom.PhoneAccountSuggestionService";
   7027   }
   7028 
   7029   public final class RemoteConference {
   7030     method @Deprecated public void setAudioState(android.telecom.AudioState);
   7031   }
   7032 
   7033   public final class RemoteConnection {
   7034     method @Deprecated public void setAudioState(android.telecom.AudioState);
   7035   }
   7036 
   7037   public final class StatusHints implements android.os.Parcelable {
   7038     ctor @Deprecated public StatusHints(android.content.ComponentName, CharSequence, int, android.os.Bundle);
   7039     method @Deprecated public android.graphics.drawable.Drawable getIcon(android.content.Context);
   7040     method @Deprecated public int getIconResId();
   7041     method @Deprecated public android.content.ComponentName getPackageName();
   7042   }
   7043 
   7044   public final class TelecomAnalytics implements android.os.Parcelable {
   7045     ctor public TelecomAnalytics(java.util.List<android.telecom.TelecomAnalytics.SessionTiming>, java.util.List<android.telecom.ParcelableCallAnalytics>);
   7046     method public int describeContents();
   7047     method public java.util.List<android.telecom.ParcelableCallAnalytics> getCallAnalytics();
   7048     method public java.util.List<android.telecom.TelecomAnalytics.SessionTiming> getSessionTimings();
   7049     method public void writeToParcel(android.os.Parcel, int);
   7050     field @NonNull public static final android.os.Parcelable.Creator<android.telecom.TelecomAnalytics> CREATOR;
   7051   }
   7052 
   7053   public static final class TelecomAnalytics.SessionTiming implements android.os.Parcelable {
   7054     ctor public TelecomAnalytics.SessionTiming(int, long);
   7055     method public int describeContents();
   7056     method public Integer getKey();
   7057     method public long getTime();
   7058     method public void writeToParcel(android.os.Parcel, int);
   7059     field @NonNull public static final android.os.Parcelable.Creator<android.telecom.TelecomAnalytics.SessionTiming> CREATOR;
   7060     field public static final int CSW_ADD_CONFERENCE_CALL = 108; // 0x6c
   7061     field public static final int CSW_HANDLE_CREATE_CONNECTION_COMPLETE = 100; // 0x64
   7062     field public static final int CSW_REMOVE_CALL = 106; // 0x6a
   7063     field public static final int CSW_SET_ACTIVE = 101; // 0x65
   7064     field public static final int CSW_SET_DIALING = 103; // 0x67
   7065     field public static final int CSW_SET_DISCONNECTED = 104; // 0x68
   7066     field public static final int CSW_SET_IS_CONFERENCED = 107; // 0x6b
   7067     field public static final int CSW_SET_ON_HOLD = 105; // 0x69
   7068     field public static final int CSW_SET_RINGING = 102; // 0x66
   7069     field public static final int ICA_ANSWER_CALL = 1; // 0x1
   7070     field public static final int ICA_CONFERENCE = 8; // 0x8
   7071     field public static final int ICA_DISCONNECT_CALL = 3; // 0x3
   7072     field public static final int ICA_HOLD_CALL = 4; // 0x4
   7073     field public static final int ICA_MUTE = 6; // 0x6
   7074     field public static final int ICA_REJECT_CALL = 2; // 0x2
   7075     field public static final int ICA_SET_AUDIO_ROUTE = 7; // 0x7
   7076     field public static final int ICA_UNHOLD_CALL = 5; // 0x5
   7077   }
   7078 
   7079   public class TelecomManager {
   7080     method public void addNewUnknownCall(android.telecom.PhoneAccountHandle, android.os.Bundle);
   7081     method @Deprecated public void clearAccounts();
   7082     method public void clearPhoneAccounts();
   7083     method @RequiresPermission(android.Manifest.permission.DUMP) public android.telecom.TelecomAnalytics dumpAnalytics();
   7084     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void enablePhoneAccount(android.telecom.PhoneAccountHandle, boolean);
   7085     method public java.util.List<android.telecom.PhoneAccountHandle> getAllPhoneAccountHandles();
   7086     method public java.util.List<android.telecom.PhoneAccount> getAllPhoneAccounts();
   7087     method public int getAllPhoneAccountsCount();
   7088     method public int getCallState();
   7089     method public android.telecom.PhoneAccountHandle getConnectionManager();
   7090     method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getCurrentTtyMode();
   7091     method @Deprecated public android.content.ComponentName getDefaultPhoneApp();
   7092     method public java.util.List<android.telecom.PhoneAccountHandle> getPhoneAccountsForPackage();
   7093     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);
   7094     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean isInEmergencyCall();
   7095     method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isRinging();
   7096     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setUserSelectedOutgoingPhoneAccount(@Nullable android.telecom.PhoneAccountHandle);
   7097     field public static final String EXTRA_CALL_BACK_INTENT = "android.telecom.extra.CALL_BACK_INTENT";
   7098     field public static final String EXTRA_CLEAR_MISSED_CALLS_INTENT = "android.telecom.extra.CLEAR_MISSED_CALLS_INTENT";
   7099     field public static final String EXTRA_CONNECTION_SERVICE = "android.telecom.extra.CONNECTION_SERVICE";
   7100     field public static final String EXTRA_IS_USER_INTENT_EMERGENCY_CALL = "android.telecom.extra.IS_USER_INTENT_EMERGENCY_CALL";
   7101     field public static final int TTY_MODE_FULL = 1; // 0x1
   7102     field public static final int TTY_MODE_HCO = 2; // 0x2
   7103     field public static final int TTY_MODE_OFF = 0; // 0x0
   7104     field public static final int TTY_MODE_VCO = 3; // 0x3
   7105   }
   7106 
   7107 }
   7108 
   7109 package android.telephony {
   7110 
   7111   public final class AccessNetworkConstants {
   7112     field public static final int TRANSPORT_TYPE_INVALID = -1; // 0xffffffff
   7113     field public static final int TRANSPORT_TYPE_WLAN = 2; // 0x2
   7114     field public static final int TRANSPORT_TYPE_WWAN = 1; // 0x1
   7115   }
   7116 
   7117   public final class CallAttributes implements android.os.Parcelable {
   7118     ctor public CallAttributes(@NonNull android.telephony.PreciseCallState, int, @NonNull android.telephony.CallQuality);
   7119     method public int describeContents();
   7120     method @NonNull public android.telephony.CallQuality getCallQuality();
   7121     method public int getNetworkType();
   7122     method @NonNull public android.telephony.PreciseCallState getPreciseCallState();
   7123     method public void writeToParcel(android.os.Parcel, int);
   7124     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.CallAttributes> CREATOR;
   7125   }
   7126 
   7127   public final class CallQuality implements android.os.Parcelable {
   7128     ctor public CallQuality(int, int, int, int, int, int, int, int, int, int, int);
   7129     method public int describeContents();
   7130     method public int getAverageRelativeJitter();
   7131     method public int getAverageRoundTripTime();
   7132     method public int getCallDuration();
   7133     method public int getCodecType();
   7134     method public int getDownlinkCallQualityLevel();
   7135     method public int getMaxRelativeJitter();
   7136     method public int getNumRtpPacketsNotReceived();
   7137     method public int getNumRtpPacketsReceived();
   7138     method public int getNumRtpPacketsTransmitted();
   7139     method public int getNumRtpPacketsTransmittedLost();
   7140     method public int getUplinkCallQualityLevel();
   7141     method public void writeToParcel(android.os.Parcel, int);
   7142     field public static final int CALL_QUALITY_BAD = 4; // 0x4
   7143     field public static final int CALL_QUALITY_EXCELLENT = 0; // 0x0
   7144     field public static final int CALL_QUALITY_FAIR = 2; // 0x2
   7145     field public static final int CALL_QUALITY_GOOD = 1; // 0x1
   7146     field public static final int CALL_QUALITY_NOT_AVAILABLE = 5; // 0x5
   7147     field public static final int CALL_QUALITY_POOR = 3; // 0x3
   7148     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.CallQuality> CREATOR;
   7149   }
   7150 
   7151   public class CarrierConfigManager {
   7152     method @NonNull public static android.os.PersistableBundle getDefaultConfig();
   7153     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void overrideConfig(int, @Nullable android.os.PersistableBundle);
   7154     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void updateConfigForPhoneId(int, String);
   7155     field public static final String KEY_CARRIER_SETUP_APP_STRING = "carrier_setup_app_string";
   7156   }
   7157 
   7158   public final class CarrierRestrictionRules implements android.os.Parcelable {
   7159     method @NonNull public java.util.List<java.lang.Boolean> areCarrierIdentifiersAllowed(@NonNull java.util.List<android.service.carrier.CarrierIdentifier>);
   7160     method public int describeContents();
   7161     method @NonNull public java.util.List<android.service.carrier.CarrierIdentifier> getAllowedCarriers();
   7162     method public int getDefaultCarrierRestriction();
   7163     method @NonNull public java.util.List<android.service.carrier.CarrierIdentifier> getExcludedCarriers();
   7164     method public int getMultiSimPolicy();
   7165     method public boolean isAllCarriersAllowed();
   7166     method public void writeToParcel(android.os.Parcel, int);
   7167     field public static final int CARRIER_RESTRICTION_DEFAULT_ALLOWED = 1; // 0x1
   7168     field public static final int CARRIER_RESTRICTION_DEFAULT_NOT_ALLOWED = 0; // 0x0
   7169     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.CarrierRestrictionRules> CREATOR;
   7170     field public static final int MULTISIM_POLICY_NONE = 0; // 0x0
   7171     field public static final int MULTISIM_POLICY_ONE_VALID_SIM_MUST_BE_PRESENT = 1; // 0x1
   7172   }
   7173 
   7174   public static final class CarrierRestrictionRules.Builder {
   7175     ctor public CarrierRestrictionRules.Builder();
   7176     method @NonNull public android.telephony.CarrierRestrictionRules build();
   7177     method @NonNull public android.telephony.CarrierRestrictionRules.Builder setAllCarriersAllowed();
   7178     method @NonNull public android.telephony.CarrierRestrictionRules.Builder setAllowedCarriers(@NonNull java.util.List<android.service.carrier.CarrierIdentifier>);
   7179     method @NonNull public android.telephony.CarrierRestrictionRules.Builder setDefaultCarrierRestriction(int);
   7180     method @NonNull public android.telephony.CarrierRestrictionRules.Builder setExcludedCarriers(@NonNull java.util.List<android.service.carrier.CarrierIdentifier>);
   7181     method @NonNull public android.telephony.CarrierRestrictionRules.Builder setMultiSimPolicy(int);
   7182   }
   7183 
   7184   public final class DataFailCause {
   7185     field public static final int ACCESS_ATTEMPT_ALREADY_IN_PROGRESS = 2219; // 0x8ab
   7186     field public static final int ACCESS_BLOCK = 2087; // 0x827
   7187     field public static final int ACCESS_BLOCK_ALL = 2088; // 0x828
   7188     field public static final int ACCESS_CLASS_DSAC_REJECTION = 2108; // 0x83c
   7189     field public static final int ACCESS_CONTROL_LIST_CHECK_FAILURE = 2128; // 0x850
   7190     field public static final int ACTIVATION_REJECTED_BCM_VIOLATION = 48; // 0x30
   7191     field public static final int ACTIVATION_REJECT_GGSN = 30; // 0x1e
   7192     field public static final int ACTIVATION_REJECT_UNSPECIFIED = 31; // 0x1f
   7193     field public static final int ACTIVE_PDP_CONTEXT_MAX_NUMBER_REACHED = 65; // 0x41
   7194     field public static final int APN_DISABLED = 2045; // 0x7fd
   7195     field public static final int APN_DISALLOWED_ON_ROAMING = 2059; // 0x80b
   7196     field public static final int APN_MISMATCH = 2054; // 0x806
   7197     field public static final int APN_PARAMETERS_CHANGED = 2060; // 0x80c
   7198     field public static final int APN_PENDING_HANDOVER = 2041; // 0x7f9
   7199     field public static final int APN_TYPE_CONFLICT = 112; // 0x70
   7200     field public static final int AUTH_FAILURE_ON_EMERGENCY_CALL = 122; // 0x7a
   7201     field public static final int BEARER_HANDLING_NOT_SUPPORTED = 60; // 0x3c
   7202     field public static final int CALL_DISALLOWED_IN_ROAMING = 2068; // 0x814
   7203     field public static final int CALL_PREEMPT_BY_EMERGENCY_APN = 127; // 0x7f
   7204     field public static final int CANNOT_ENCODE_OTA_MESSAGE = 2159; // 0x86f
   7205     field public static final int CDMA_ALERT_STOP = 2077; // 0x81d
   7206     field public static final int CDMA_INCOMING_CALL = 2076; // 0x81c
   7207     field public static final int CDMA_INTERCEPT = 2073; // 0x819
   7208     field public static final int CDMA_LOCK = 2072; // 0x818
   7209     field public static final int CDMA_RELEASE_DUE_TO_SO_REJECTION = 2075; // 0x81b
   7210     field public static final int CDMA_REORDER = 2074; // 0x81a
   7211     field public static final int CDMA_RETRY_ORDER = 2086; // 0x826
   7212     field public static final int CHANNEL_ACQUISITION_FAILURE = 2078; // 0x81e
   7213     field public static final int CLOSE_IN_PROGRESS = 2030; // 0x7ee
   7214     field public static final int COLLISION_WITH_NETWORK_INITIATED_REQUEST = 56; // 0x38
   7215     field public static final int COMPANION_IFACE_IN_USE = 118; // 0x76
   7216     field public static final int CONCURRENT_SERVICES_INCOMPATIBLE = 2083; // 0x823
   7217     field public static final int CONCURRENT_SERVICES_NOT_ALLOWED = 2091; // 0x82b
   7218     field public static final int CONCURRENT_SERVICE_NOT_SUPPORTED_BY_BASE_STATION = 2080; // 0x820
   7219     field public static final int CONDITIONAL_IE_ERROR = 100; // 0x64
   7220     field public static final int CONGESTION = 2106; // 0x83a
   7221     field public static final int CONNECTION_RELEASED = 2113; // 0x841
   7222     field public static final int CS_DOMAIN_NOT_AVAILABLE = 2181; // 0x885
   7223     field public static final int CS_FALLBACK_CALL_ESTABLISHMENT_NOT_ALLOWED = 2188; // 0x88c
   7224     field public static final int DATA_PLAN_EXPIRED = 2198; // 0x896
   7225     field public static final int DATA_ROAMING_SETTINGS_DISABLED = 2064; // 0x810
   7226     field public static final int DATA_SETTINGS_DISABLED = 2063; // 0x80f
   7227     field public static final int DBM_OR_SMS_IN_PROGRESS = 2211; // 0x8a3
   7228     field public static final int DDS_SWITCHED = 2065; // 0x811
   7229     field public static final int DDS_SWITCH_IN_PROGRESS = 2067; // 0x813
   7230     field public static final int DRB_RELEASED_BY_RRC = 2112; // 0x840
   7231     field public static final int DS_EXPLICIT_DEACTIVATION = 2125; // 0x84d
   7232     field public static final int DUAL_SWITCH = 2227; // 0x8b3
   7233     field public static final int DUN_CALL_DISALLOWED = 2056; // 0x808
   7234     field public static final int DUPLICATE_BEARER_ID = 2118; // 0x846
   7235     field public static final int EHRPD_TO_HRPD_FALLBACK = 2049; // 0x801
   7236     field public static final int EMBMS_NOT_ENABLED = 2193; // 0x891
   7237     field public static final int EMBMS_REGULAR_DEACTIVATION = 2195; // 0x893
   7238     field public static final int EMERGENCY_IFACE_ONLY = 116; // 0x74
   7239     field public static final int EMERGENCY_MODE = 2221; // 0x8ad
   7240     field public static final int EMM_ACCESS_BARRED = 115; // 0x73
   7241     field public static final int EMM_ACCESS_BARRED_INFINITE_RETRY = 121; // 0x79
   7242     field public static final int EMM_ATTACH_FAILED = 2115; // 0x843
   7243     field public static final int EMM_ATTACH_STARTED = 2116; // 0x844
   7244     field public static final int EMM_DETACHED = 2114; // 0x842
   7245     field public static final int EMM_T3417_EXPIRED = 2130; // 0x852
   7246     field public static final int EMM_T3417_EXT_EXPIRED = 2131; // 0x853
   7247     field public static final int EPS_SERVICES_AND_NON_EPS_SERVICES_NOT_ALLOWED = 2178; // 0x882
   7248     field public static final int EPS_SERVICES_NOT_ALLOWED_IN_PLMN = 2179; // 0x883
   7249     field public static final int ERROR_UNSPECIFIED = 65535; // 0xffff
   7250     field public static final int ESM_BAD_OTA_MESSAGE = 2122; // 0x84a
   7251     field public static final int ESM_BEARER_DEACTIVATED_TO_SYNC_WITH_NETWORK = 2120; // 0x848
   7252     field public static final int ESM_COLLISION_SCENARIOS = 2119; // 0x847
   7253     field public static final int ESM_CONTEXT_TRANSFERRED_DUE_TO_IRAT = 2124; // 0x84c
   7254     field public static final int ESM_DOWNLOAD_SERVER_REJECTED_THE_CALL = 2123; // 0x84b
   7255     field public static final int ESM_FAILURE = 2182; // 0x886
   7256     field public static final int ESM_INFO_NOT_RECEIVED = 53; // 0x35
   7257     field public static final int ESM_LOCAL_CAUSE_NONE = 2126; // 0x84e
   7258     field public static final int ESM_NW_ACTIVATED_DED_BEARER_WITH_ID_OF_DEF_BEARER = 2121; // 0x849
   7259     field public static final int ESM_PROCEDURE_TIME_OUT = 2155; // 0x86b
   7260     field public static final int ESM_UNKNOWN_EPS_BEARER_CONTEXT = 2111; // 0x83f
   7261     field public static final int EVDO_CONNECTION_DENY_BY_BILLING_OR_AUTHENTICATION_FAILURE = 2201; // 0x899
   7262     field public static final int EVDO_CONNECTION_DENY_BY_GENERAL_OR_NETWORK_BUSY = 2200; // 0x898
   7263     field public static final int EVDO_HDR_CHANGED = 2202; // 0x89a
   7264     field public static final int EVDO_HDR_CONNECTION_SETUP_TIMEOUT = 2206; // 0x89e
   7265     field public static final int EVDO_HDR_EXITED = 2203; // 0x89b
   7266     field public static final int EVDO_HDR_NO_SESSION = 2204; // 0x89c
   7267     field public static final int EVDO_USING_GPS_FIX_INSTEAD_OF_HDR_CALL = 2205; // 0x89d
   7268     field public static final int FADE = 2217; // 0x8a9
   7269     field public static final int FAILED_TO_ACQUIRE_COLOCATED_HDR = 2207; // 0x89f
   7270     field public static final int FEATURE_NOT_SUPP = 40; // 0x28
   7271     field public static final int FILTER_SEMANTIC_ERROR = 44; // 0x2c
   7272     field public static final int FILTER_SYTAX_ERROR = 45; // 0x2d
   7273     field public static final int FORBIDDEN_APN_NAME = 2066; // 0x812
   7274     field public static final int GPRS_REGISTRATION_FAIL = -2; // 0xfffffffe
   7275     field public static final int GPRS_SERVICES_AND_NON_GPRS_SERVICES_NOT_ALLOWED = 2097; // 0x831
   7276     field public static final int GPRS_SERVICES_NOT_ALLOWED = 2098; // 0x832
   7277     field public static final int GPRS_SERVICES_NOT_ALLOWED_IN_THIS_PLMN = 2103; // 0x837
   7278     field public static final int HANDOFF_PREFERENCE_CHANGED = 2251; // 0x8cb
   7279     field public static final int HDR_ACCESS_FAILURE = 2213; // 0x8a5
   7280     field public static final int HDR_FADE = 2212; // 0x8a4
   7281     field public static final int HDR_NO_LOCK_GRANTED = 2210; // 0x8a2
   7282     field public static final int IFACE_AND_POL_FAMILY_MISMATCH = 120; // 0x78
   7283     field public static final int IFACE_MISMATCH = 117; // 0x75
   7284     field public static final int ILLEGAL_ME = 2096; // 0x830
   7285     field public static final int ILLEGAL_MS = 2095; // 0x82f
   7286     field public static final int IMEI_NOT_ACCEPTED = 2177; // 0x881
   7287     field public static final int IMPLICITLY_DETACHED = 2100; // 0x834
   7288     field public static final int IMSI_UNKNOWN_IN_HOME_SUBSCRIBER_SERVER = 2176; // 0x880
   7289     field public static final int INCOMING_CALL_REJECTED = 2092; // 0x82c
   7290     field public static final int INSUFFICIENT_RESOURCES = 26; // 0x1a
   7291     field public static final int INTERFACE_IN_USE = 2058; // 0x80a
   7292     field public static final int INTERNAL_CALL_PREEMPT_BY_HIGH_PRIO_APN = 114; // 0x72
   7293     field public static final int INTERNAL_EPC_NONEPC_TRANSITION = 2057; // 0x809
   7294     field public static final int INVALID_CONNECTION_ID = 2156; // 0x86c
   7295     field public static final int INVALID_DNS_ADDR = 123; // 0x7b
   7296     field public static final int INVALID_EMM_STATE = 2190; // 0x88e
   7297     field public static final int INVALID_MANDATORY_INFO = 96; // 0x60
   7298     field public static final int INVALID_MODE = 2223; // 0x8af
   7299     field public static final int INVALID_PCSCF_ADDR = 113; // 0x71
   7300     field public static final int INVALID_PCSCF_OR_DNS_ADDRESS = 124; // 0x7c
   7301     field public static final int INVALID_PRIMARY_NSAPI = 2158; // 0x86e
   7302     field public static final int INVALID_SIM_STATE = 2224; // 0x8b0
   7303     field public static final int INVALID_TRANSACTION_ID = 81; // 0x51
   7304     field public static final int IPV6_ADDRESS_TRANSFER_FAILED = 2047; // 0x7ff
   7305     field public static final int IPV6_PREFIX_UNAVAILABLE = 2250; // 0x8ca
   7306     field public static final int IP_ADDRESS_MISMATCH = 119; // 0x77
   7307     field public static final int IP_VERSION_MISMATCH = 2055; // 0x807
   7308     field public static final int IRAT_HANDOVER_FAILED = 2194; // 0x892
   7309     field public static final int IS707B_MAX_ACCESS_PROBES = 2089; // 0x829
   7310     field public static final int LIMITED_TO_IPV4 = 2234; // 0x8ba
   7311     field public static final int LIMITED_TO_IPV6 = 2235; // 0x8bb
   7312     field public static final int LLC_SNDCP = 25; // 0x19
   7313     field public static final int LOCAL_END = 2215; // 0x8a7
   7314     field public static final int LOCATION_AREA_NOT_ALLOWED = 2102; // 0x836
   7315     field public static final int LOST_CONNECTION = 65540; // 0x10004
   7316     field public static final int LOWER_LAYER_REGISTRATION_FAILURE = 2197; // 0x895
   7317     field public static final int LOW_POWER_MODE_OR_POWERING_DOWN = 2044; // 0x7fc
   7318     field public static final int LTE_NAS_SERVICE_REQUEST_FAILED = 2117; // 0x845
   7319     field public static final int LTE_THROTTLING_NOT_REQUIRED = 2127; // 0x84f
   7320     field public static final int MAC_FAILURE = 2183; // 0x887
   7321     field public static final int MAXIMIUM_NSAPIS_EXCEEDED = 2157; // 0x86d
   7322     field public static final int MAXINUM_SIZE_OF_L2_MESSAGE_EXCEEDED = 2166; // 0x876
   7323     field public static final int MAX_ACCESS_PROBE = 2079; // 0x81f
   7324     field public static final int MAX_IPV4_CONNECTIONS = 2052; // 0x804
   7325     field public static final int MAX_IPV6_CONNECTIONS = 2053; // 0x805
   7326     field public static final int MAX_PPP_INACTIVITY_TIMER_EXPIRED = 2046; // 0x7fe
   7327     field public static final int MESSAGE_INCORRECT_SEMANTIC = 95; // 0x5f
   7328     field public static final int MESSAGE_TYPE_UNSUPPORTED = 97; // 0x61
   7329     field public static final int MIP_CONFIG_FAILURE = 2050; // 0x802
   7330     field public static final int MIP_FA_ADMIN_PROHIBITED = 2001; // 0x7d1
   7331     field public static final int MIP_FA_DELIVERY_STYLE_NOT_SUPPORTED = 2012; // 0x7dc
   7332     field public static final int MIP_FA_ENCAPSULATION_UNAVAILABLE = 2008; // 0x7d8
   7333     field public static final int MIP_FA_HOME_AGENT_AUTHENTICATION_FAILURE = 2004; // 0x7d4
   7334     field public static final int MIP_FA_INSUFFICIENT_RESOURCES = 2002; // 0x7d2
   7335     field public static final int MIP_FA_MALFORMED_REPLY = 2007; // 0x7d7
   7336     field public static final int MIP_FA_MALFORMED_REQUEST = 2006; // 0x7d6
   7337     field public static final int MIP_FA_MISSING_CHALLENGE = 2017; // 0x7e1
   7338     field public static final int MIP_FA_MISSING_HOME_ADDRESS = 2015; // 0x7df
   7339     field public static final int MIP_FA_MISSING_HOME_AGENT = 2014; // 0x7de
   7340     field public static final int MIP_FA_MISSING_NAI = 2013; // 0x7dd
   7341     field public static final int MIP_FA_MOBILE_NODE_AUTHENTICATION_FAILURE = 2003; // 0x7d3
   7342     field public static final int MIP_FA_REASON_UNSPECIFIED = 2000; // 0x7d0
   7343     field public static final int MIP_FA_REQUESTED_LIFETIME_TOO_LONG = 2005; // 0x7d5
   7344     field public static final int MIP_FA_REVERSE_TUNNEL_IS_MANDATORY = 2011; // 0x7db
   7345     field public static final int MIP_FA_REVERSE_TUNNEL_UNAVAILABLE = 2010; // 0x7da
   7346     field public static final int MIP_FA_STALE_CHALLENGE = 2018; // 0x7e2
   7347     field public static final int MIP_FA_UNKNOWN_CHALLENGE = 2016; // 0x7e0
   7348     field public static final int MIP_FA_VJ_HEADER_COMPRESSION_UNAVAILABLE = 2009; // 0x7d9
   7349     field public static final int MIP_HA_ADMIN_PROHIBITED = 2020; // 0x7e4
   7350     field public static final int MIP_HA_ENCAPSULATION_UNAVAILABLE = 2029; // 0x7ed
   7351     field public static final int MIP_HA_FOREIGN_AGENT_AUTHENTICATION_FAILURE = 2023; // 0x7e7
   7352     field public static final int MIP_HA_INSUFFICIENT_RESOURCES = 2021; // 0x7e5
   7353     field public static final int MIP_HA_MALFORMED_REQUEST = 2025; // 0x7e9
   7354     field public static final int MIP_HA_MOBILE_NODE_AUTHENTICATION_FAILURE = 2022; // 0x7e6
   7355     field public static final int MIP_HA_REASON_UNSPECIFIED = 2019; // 0x7e3
   7356     field public static final int MIP_HA_REGISTRATION_ID_MISMATCH = 2024; // 0x7e8
   7357     field public static final int MIP_HA_REVERSE_TUNNEL_IS_MANDATORY = 2028; // 0x7ec
   7358     field public static final int MIP_HA_REVERSE_TUNNEL_UNAVAILABLE = 2027; // 0x7eb
   7359     field public static final int MIP_HA_UNKNOWN_HOME_AGENT_ADDRESS = 2026; // 0x7ea
   7360     field public static final int MISSING_UNKNOWN_APN = 27; // 0x1b
   7361     field public static final int MODEM_APP_PREEMPTED = 2032; // 0x7f0
   7362     field public static final int MODEM_RESTART = 2037; // 0x7f5
   7363     field public static final int MSC_TEMPORARILY_NOT_REACHABLE = 2180; // 0x884
   7364     field public static final int MSG_AND_PROTOCOL_STATE_UNCOMPATIBLE = 101; // 0x65
   7365     field public static final int MSG_TYPE_NONCOMPATIBLE_STATE = 98; // 0x62
   7366     field public static final int MS_IDENTITY_CANNOT_BE_DERIVED_BY_THE_NETWORK = 2099; // 0x833
   7367     field public static final int MULTIPLE_PDP_CALL_NOT_ALLOWED = 2192; // 0x890
   7368     field public static final int MULTI_CONN_TO_SAME_PDN_NOT_ALLOWED = 55; // 0x37
   7369     field public static final int NAS_LAYER_FAILURE = 2191; // 0x88f
   7370     field public static final int NAS_REQUEST_REJECTED_BY_NETWORK = 2167; // 0x877
   7371     field public static final int NAS_SIGNALLING = 14; // 0xe
   7372     field public static final int NETWORK_FAILURE = 38; // 0x26
   7373     field public static final int NETWORK_INITIATED_DETACH_NO_AUTO_REATTACH = 2154; // 0x86a
   7374     field public static final int NETWORK_INITIATED_DETACH_WITH_AUTO_REATTACH = 2153; // 0x869
   7375     field public static final int NETWORK_INITIATED_TERMINATION = 2031; // 0x7ef
   7376     field public static final int NONE = 0; // 0x0
   7377     field public static final int NON_IP_NOT_SUPPORTED = 2069; // 0x815
   7378     field public static final int NORMAL_RELEASE = 2218; // 0x8aa
   7379     field public static final int NO_CDMA_SERVICE = 2084; // 0x824
   7380     field public static final int NO_COLLOCATED_HDR = 2225; // 0x8b1
   7381     field public static final int NO_EPS_BEARER_CONTEXT_ACTIVATED = 2189; // 0x88d
   7382     field public static final int NO_GPRS_CONTEXT = 2094; // 0x82e
   7383     field public static final int NO_HYBRID_HDR_SERVICE = 2209; // 0x8a1
   7384     field public static final int NO_PDP_CONTEXT_ACTIVATED = 2107; // 0x83b
   7385     field public static final int NO_RESPONSE_FROM_BASE_STATION = 2081; // 0x821
   7386     field public static final int NO_SERVICE = 2216; // 0x8a8
   7387     field public static final int NO_SERVICE_ON_GATEWAY = 2093; // 0x82d
   7388     field public static final int NSAPI_IN_USE = 35; // 0x23
   7389     field public static final int NULL_APN_DISALLOWED = 2061; // 0x80d
   7390     field public static final int OEM_DCFAILCAUSE_1 = 4097; // 0x1001
   7391     field public static final int OEM_DCFAILCAUSE_10 = 4106; // 0x100a
   7392     field public static final int OEM_DCFAILCAUSE_11 = 4107; // 0x100b
   7393     field public static final int OEM_DCFAILCAUSE_12 = 4108; // 0x100c
   7394     field public static final int OEM_DCFAILCAUSE_13 = 4109; // 0x100d
   7395     field public static final int OEM_DCFAILCAUSE_14 = 4110; // 0x100e
   7396     field public static final int OEM_DCFAILCAUSE_15 = 4111; // 0x100f
   7397     field public static final int OEM_DCFAILCAUSE_2 = 4098; // 0x1002
   7398     field public static final int OEM_DCFAILCAUSE_3 = 4099; // 0x1003
   7399     field public static final int OEM_DCFAILCAUSE_4 = 4100; // 0x1004
   7400     field public static final int OEM_DCFAILCAUSE_5 = 4101; // 0x1005
   7401     field public static final int OEM_DCFAILCAUSE_6 = 4102; // 0x1006
   7402     field public static final int OEM_DCFAILCAUSE_7 = 4103; // 0x1007
   7403     field public static final int OEM_DCFAILCAUSE_8 = 4104; // 0x1008
   7404     field public static final int OEM_DCFAILCAUSE_9 = 4105; // 0x1009
   7405     field public static final int ONLY_IPV4V6_ALLOWED = 57; // 0x39
   7406     field public static final int ONLY_IPV4_ALLOWED = 50; // 0x32
   7407     field public static final int ONLY_IPV6_ALLOWED = 51; // 0x33
   7408     field public static final int ONLY_NON_IP_ALLOWED = 58; // 0x3a
   7409     field public static final int ONLY_SINGLE_BEARER_ALLOWED = 52; // 0x34
   7410     field public static final int OPERATOR_BARRED = 8; // 0x8
   7411     field public static final int OTASP_COMMIT_IN_PROGRESS = 2208; // 0x8a0
   7412     field public static final int PDN_CONN_DOES_NOT_EXIST = 54; // 0x36
   7413     field public static final int PDN_INACTIVITY_TIMER_EXPIRED = 2051; // 0x803
   7414     field public static final int PDN_IPV4_CALL_DISALLOWED = 2033; // 0x7f1
   7415     field public static final int PDN_IPV4_CALL_THROTTLED = 2034; // 0x7f2
   7416     field public static final int PDN_IPV6_CALL_DISALLOWED = 2035; // 0x7f3
   7417     field public static final int PDN_IPV6_CALL_THROTTLED = 2036; // 0x7f4
   7418     field public static final int PDN_NON_IP_CALL_DISALLOWED = 2071; // 0x817
   7419     field public static final int PDN_NON_IP_CALL_THROTTLED = 2070; // 0x816
   7420     field public static final int PDP_ACTIVATE_MAX_RETRY_FAILED = 2109; // 0x83d
   7421     field public static final int PDP_DUPLICATE = 2104; // 0x838
   7422     field public static final int PDP_ESTABLISH_TIMEOUT_EXPIRED = 2161; // 0x871
   7423     field public static final int PDP_INACTIVE_TIMEOUT_EXPIRED = 2163; // 0x873
   7424     field public static final int PDP_LOWERLAYER_ERROR = 2164; // 0x874
   7425     field public static final int PDP_MODIFY_COLLISION = 2165; // 0x875
   7426     field public static final int PDP_MODIFY_TIMEOUT_EXPIRED = 2162; // 0x872
   7427     field public static final int PDP_PPP_NOT_SUPPORTED = 2038; // 0x7f6
   7428     field public static final int PDP_WITHOUT_ACTIVE_TFT = 46; // 0x2e
   7429     field public static final int PHONE_IN_USE = 2222; // 0x8ae
   7430     field public static final int PHYSICAL_LINK_CLOSE_IN_PROGRESS = 2040; // 0x7f8
   7431     field public static final int PLMN_NOT_ALLOWED = 2101; // 0x835
   7432     field public static final int PPP_AUTH_FAILURE = 2229; // 0x8b5
   7433     field public static final int PPP_CHAP_FAILURE = 2232; // 0x8b8
   7434     field public static final int PPP_CLOSE_IN_PROGRESS = 2233; // 0x8b9
   7435     field public static final int PPP_OPTION_MISMATCH = 2230; // 0x8b6
   7436     field public static final int PPP_PAP_FAILURE = 2231; // 0x8b7
   7437     field public static final int PPP_TIMEOUT = 2228; // 0x8b4
   7438     field public static final int PREF_RADIO_TECH_CHANGED = -4; // 0xfffffffc
   7439     field public static final int PROFILE_BEARER_INCOMPATIBLE = 2042; // 0x7fa
   7440     field public static final int PROTOCOL_ERRORS = 111; // 0x6f
   7441     field public static final int QOS_NOT_ACCEPTED = 37; // 0x25
   7442     field public static final int RADIO_ACCESS_BEARER_FAILURE = 2110; // 0x83e
   7443     field public static final int RADIO_ACCESS_BEARER_SETUP_FAILURE = 2160; // 0x870
   7444     field public static final int RADIO_NOT_AVAILABLE = 65537; // 0x10001
   7445     field public static final int RADIO_POWER_OFF = -5; // 0xfffffffb
   7446     field public static final int REDIRECTION_OR_HANDOFF_IN_PROGRESS = 2220; // 0x8ac
   7447     field public static final int REGISTRATION_FAIL = -1; // 0xffffffff
   7448     field public static final int REGULAR_DEACTIVATION = 36; // 0x24
   7449     field public static final int REJECTED_BY_BASE_STATION = 2082; // 0x822
   7450     field public static final int RRC_CONNECTION_ABORTED_AFTER_HANDOVER = 2173; // 0x87d
   7451     field public static final int RRC_CONNECTION_ABORTED_AFTER_IRAT_CELL_CHANGE = 2174; // 0x87e
   7452     field public static final int RRC_CONNECTION_ABORTED_DUE_TO_IRAT_CHANGE = 2171; // 0x87b
   7453     field public static final int RRC_CONNECTION_ABORTED_DURING_IRAT_CELL_CHANGE = 2175; // 0x87f
   7454     field public static final int RRC_CONNECTION_ABORT_REQUEST = 2151; // 0x867
   7455     field public static final int RRC_CONNECTION_ACCESS_BARRED = 2139; // 0x85b
   7456     field public static final int RRC_CONNECTION_ACCESS_STRATUM_FAILURE = 2137; // 0x859
   7457     field public static final int RRC_CONNECTION_ANOTHER_PROCEDURE_IN_PROGRESS = 2138; // 0x85a
   7458     field public static final int RRC_CONNECTION_CELL_NOT_CAMPED = 2144; // 0x860
   7459     field public static final int RRC_CONNECTION_CELL_RESELECTION = 2140; // 0x85c
   7460     field public static final int RRC_CONNECTION_CONFIG_FAILURE = 2141; // 0x85d
   7461     field public static final int RRC_CONNECTION_INVALID_REQUEST = 2168; // 0x878
   7462     field public static final int RRC_CONNECTION_LINK_FAILURE = 2143; // 0x85f
   7463     field public static final int RRC_CONNECTION_NORMAL_RELEASE = 2147; // 0x863
   7464     field public static final int RRC_CONNECTION_OUT_OF_SERVICE_DURING_CELL_REGISTER = 2150; // 0x866
   7465     field public static final int RRC_CONNECTION_RADIO_LINK_FAILURE = 2148; // 0x864
   7466     field public static final int RRC_CONNECTION_REESTABLISHMENT_FAILURE = 2149; // 0x865
   7467     field public static final int RRC_CONNECTION_REJECT_BY_NETWORK = 2146; // 0x862
   7468     field public static final int RRC_CONNECTION_RELEASED_SECURITY_NOT_ACTIVE = 2172; // 0x87c
   7469     field public static final int RRC_CONNECTION_RF_UNAVAILABLE = 2170; // 0x87a
   7470     field public static final int RRC_CONNECTION_SYSTEM_INFORMATION_BLOCK_READ_ERROR = 2152; // 0x868
   7471     field public static final int RRC_CONNECTION_SYSTEM_INTERVAL_FAILURE = 2145; // 0x861
   7472     field public static final int RRC_CONNECTION_TIMER_EXPIRED = 2142; // 0x85e
   7473     field public static final int RRC_CONNECTION_TRACKING_AREA_ID_CHANGED = 2169; // 0x879
   7474     field public static final int RRC_UPLINK_CONNECTION_RELEASE = 2134; // 0x856
   7475     field public static final int RRC_UPLINK_DATA_TRANSMISSION_FAILURE = 2132; // 0x854
   7476     field public static final int RRC_UPLINK_DELIVERY_FAILED_DUE_TO_HANDOVER = 2133; // 0x855
   7477     field public static final int RRC_UPLINK_ERROR_REQUEST_FROM_NAS = 2136; // 0x858
   7478     field public static final int RRC_UPLINK_RADIO_LINK_FAILURE = 2135; // 0x857
   7479     field public static final int RUIM_NOT_PRESENT = 2085; // 0x825
   7480     field public static final int SECURITY_MODE_REJECTED = 2186; // 0x88a
   7481     field public static final int SERVICE_NOT_ALLOWED_ON_PLMN = 2129; // 0x851
   7482     field public static final int SERVICE_OPTION_NOT_SUBSCRIBED = 33; // 0x21
   7483     field public static final int SERVICE_OPTION_NOT_SUPPORTED = 32; // 0x20
   7484     field public static final int SERVICE_OPTION_OUT_OF_ORDER = 34; // 0x22
   7485     field public static final int SIGNAL_LOST = -3; // 0xfffffffd
   7486     field public static final int SIM_CARD_CHANGED = 2043; // 0x7fb
   7487     field public static final int SYNCHRONIZATION_FAILURE = 2184; // 0x888
   7488     field public static final int TEST_LOOPBACK_REGULAR_DEACTIVATION = 2196; // 0x894
   7489     field public static final int TETHERED_CALL_ACTIVE = -6; // 0xfffffffa
   7490     field public static final int TFT_SEMANTIC_ERROR = 41; // 0x29
   7491     field public static final int TFT_SYTAX_ERROR = 42; // 0x2a
   7492     field public static final int THERMAL_EMERGENCY = 2090; // 0x82a
   7493     field public static final int THERMAL_MITIGATION = 2062; // 0x80e
   7494     field public static final int TRAT_SWAP_FAILED = 2048; // 0x800
   7495     field public static final int UE_INITIATED_DETACH_OR_DISCONNECT = 128; // 0x80
   7496     field public static final int UE_IS_ENTERING_POWERSAVE_MODE = 2226; // 0x8b2
   7497     field public static final int UE_RAT_CHANGE = 2105; // 0x839
   7498     field public static final int UE_SECURITY_CAPABILITIES_MISMATCH = 2185; // 0x889
   7499     field public static final int UMTS_HANDOVER_TO_IWLAN = 2199; // 0x897
   7500     field public static final int UMTS_REACTIVATION_REQ = 39; // 0x27
   7501     field public static final int UNACCEPTABLE_NON_EPS_AUTHENTICATION = 2187; // 0x88b
   7502     field public static final int UNKNOWN = 65536; // 0x10000
   7503     field public static final int UNKNOWN_INFO_ELEMENT = 99; // 0x63
   7504     field public static final int UNKNOWN_PDP_ADDRESS_TYPE = 28; // 0x1c
   7505     field public static final int UNKNOWN_PDP_CONTEXT = 43; // 0x2b
   7506     field public static final int UNPREFERRED_RAT = 2039; // 0x7f7
   7507     field public static final int UNSUPPORTED_1X_PREV = 2214; // 0x8a6
   7508     field public static final int UNSUPPORTED_APN_IN_CURRENT_PLMN = 66; // 0x42
   7509     field public static final int UNSUPPORTED_QCI_VALUE = 59; // 0x3b
   7510     field public static final int USER_AUTHENTICATION = 29; // 0x1d
   7511     field public static final int VSNCP_ADMINISTRATIVELY_PROHIBITED = 2245; // 0x8c5
   7512     field public static final int VSNCP_APN_UNATHORIZED = 2238; // 0x8be
   7513     field public static final int VSNCP_GEN_ERROR = 2237; // 0x8bd
   7514     field public static final int VSNCP_INSUFFICIENT_PARAMETERS = 2243; // 0x8c3
   7515     field public static final int VSNCP_NO_PDN_GATEWAY_ADDRESS = 2240; // 0x8c0
   7516     field public static final int VSNCP_PDN_EXISTS_FOR_THIS_APN = 2248; // 0x8c8
   7517     field public static final int VSNCP_PDN_GATEWAY_REJECT = 2242; // 0x8c2
   7518     field public static final int VSNCP_PDN_GATEWAY_UNREACHABLE = 2241; // 0x8c1
   7519     field public static final int VSNCP_PDN_ID_IN_USE = 2246; // 0x8c6
   7520     field public static final int VSNCP_PDN_LIMIT_EXCEEDED = 2239; // 0x8bf
   7521     field public static final int VSNCP_RECONNECT_NOT_ALLOWED = 2249; // 0x8c9
   7522     field public static final int VSNCP_RESOURCE_UNAVAILABLE = 2244; // 0x8c4
   7523     field public static final int VSNCP_SUBSCRIBER_LIMITATION = 2247; // 0x8c7
   7524     field public static final int VSNCP_TIMEOUT = 2236; // 0x8bc
   7525   }
   7526 
   7527   public final class DataSpecificRegistrationInfo implements android.os.Parcelable {
   7528     method public int describeContents();
   7529     method @NonNull public android.telephony.LteVopsSupportInfo getLteVopsSupportInfo();
   7530     method public void writeToParcel(android.os.Parcel, int);
   7531     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.DataSpecificRegistrationInfo> CREATOR;
   7532   }
   7533 
   7534   public final class DisconnectCause {
   7535     field public static final int ALREADY_DIALING = 72; // 0x48
   7536     field public static final int ANSWERED_ELSEWHERE = 52; // 0x34
   7537     field public static final int BUSY = 4; // 0x4
   7538     field public static final int CALLING_DISABLED = 74; // 0x4a
   7539     field public static final int CALL_BARRED = 20; // 0x14
   7540     field public static final int CALL_PULLED = 51; // 0x33
   7541     field public static final int CANT_CALL_WHILE_RINGING = 73; // 0x49
   7542     field public static final int CDMA_ACCESS_BLOCKED = 35; // 0x23
   7543     field public static final int CDMA_ACCESS_FAILURE = 32; // 0x20
   7544     field public static final int CDMA_ALREADY_ACTIVATED = 49; // 0x31
   7545     field public static final int CDMA_DROP = 27; // 0x1b
   7546     field public static final int CDMA_INTERCEPT = 28; // 0x1c
   7547     field public static final int CDMA_LOCKED_UNTIL_POWER_CYCLE = 26; // 0x1a
   7548     field public static final int CDMA_NOT_EMERGENCY = 34; // 0x22
   7549     field public static final int CDMA_PREEMPTED = 33; // 0x21
   7550     field public static final int CDMA_REORDER = 29; // 0x1d
   7551     field public static final int CDMA_RETRY_ORDER = 31; // 0x1f
   7552     field public static final int CDMA_SO_REJECT = 30; // 0x1e
   7553     field public static final int CONGESTION = 5; // 0x5
   7554     field public static final int CS_RESTRICTED = 22; // 0x16
   7555     field public static final int CS_RESTRICTED_EMERGENCY = 24; // 0x18
   7556     field public static final int CS_RESTRICTED_NORMAL = 23; // 0x17
   7557     field public static final int DATA_DISABLED = 54; // 0x36
   7558     field public static final int DATA_LIMIT_REACHED = 55; // 0x37
   7559     field public static final int DIALED_CALL_FORWARDING_WHILE_ROAMING = 57; // 0x39
   7560     field public static final int DIALED_MMI = 39; // 0x27
   7561     field public static final int DIAL_LOW_BATTERY = 62; // 0x3e
   7562     field public static final int DIAL_MODIFIED_TO_DIAL = 48; // 0x30
   7563     field public static final int DIAL_MODIFIED_TO_DIAL_VIDEO = 66; // 0x42
   7564     field public static final int DIAL_MODIFIED_TO_SS = 47; // 0x2f
   7565     field public static final int DIAL_MODIFIED_TO_USSD = 46; // 0x2e
   7566     field public static final int DIAL_VIDEO_MODIFIED_TO_DIAL = 69; // 0x45
   7567     field public static final int DIAL_VIDEO_MODIFIED_TO_DIAL_VIDEO = 70; // 0x46
   7568     field public static final int DIAL_VIDEO_MODIFIED_TO_SS = 67; // 0x43
   7569     field public static final int DIAL_VIDEO_MODIFIED_TO_USSD = 68; // 0x44
   7570     field public static final int EMERGENCY_PERM_FAILURE = 64; // 0x40
   7571     field public static final int EMERGENCY_TEMP_FAILURE = 63; // 0x3f
   7572     field public static final int ERROR_UNSPECIFIED = 36; // 0x24
   7573     field public static final int FDN_BLOCKED = 21; // 0x15
   7574     field public static final int ICC_ERROR = 19; // 0x13
   7575     field public static final int IMEI_NOT_ACCEPTED = 58; // 0x3a
   7576     field public static final int IMS_ACCESS_BLOCKED = 60; // 0x3c
   7577     field public static final int IMS_MERGED_SUCCESSFULLY = 45; // 0x2d
   7578     field public static final int IMS_SIP_ALTERNATE_EMERGENCY_CALL = 71; // 0x47
   7579     field public static final int INCOMING_MISSED = 1; // 0x1
   7580     field public static final int INCOMING_REJECTED = 16; // 0x10
   7581     field public static final int INVALID_CREDENTIALS = 10; // 0xa
   7582     field public static final int INVALID_NUMBER = 7; // 0x7
   7583     field public static final int LIMIT_EXCEEDED = 15; // 0xf
   7584     field public static final int LOCAL = 3; // 0x3
   7585     field public static final int LOST_SIGNAL = 14; // 0xe
   7586     field public static final int LOW_BATTERY = 61; // 0x3d
   7587     field public static final int MAXIMUM_NUMBER_OF_CALLS_REACHED = 53; // 0x35
   7588     field public static final int MMI = 6; // 0x6
   7589     field public static final int NORMAL = 2; // 0x2
   7590     field public static final int NORMAL_UNSPECIFIED = 65; // 0x41
   7591     field public static final int NOT_DISCONNECTED = 0; // 0x0
   7592     field public static final int NOT_VALID = -1; // 0xffffffff
   7593     field public static final int NO_PHONE_NUMBER_SUPPLIED = 38; // 0x26
   7594     field public static final int NUMBER_UNREACHABLE = 8; // 0x8
   7595     field public static final int OTASP_PROVISIONING_IN_PROCESS = 76; // 0x4c
   7596     field public static final int OUTGOING_CANCELED = 44; // 0x2c
   7597     field public static final int OUTGOING_FAILURE = 43; // 0x2b
   7598     field public static final int OUT_OF_NETWORK = 11; // 0xb
   7599     field public static final int OUT_OF_SERVICE = 18; // 0x12
   7600     field public static final int POWER_OFF = 17; // 0x11
   7601     field public static final int SERVER_ERROR = 12; // 0xc
   7602     field public static final int SERVER_UNREACHABLE = 9; // 0x9
   7603     field public static final int TIMED_OUT = 13; // 0xd
   7604     field public static final int TOO_MANY_ONGOING_CALLS = 75; // 0x4b
   7605     field public static final int UNOBTAINABLE_NUMBER = 25; // 0x19
   7606     field public static final int VIDEO_CALL_NOT_ALLOWED_WHILE_TTY_ENABLED = 50; // 0x32
   7607     field public static final int VOICEMAIL_NUMBER_MISSING = 40; // 0x28
   7608     field public static final int WIFI_LOST = 59; // 0x3b
   7609   }
   7610 
   7611   public final class LteVopsSupportInfo implements android.os.Parcelable {
   7612     ctor public LteVopsSupportInfo(int, int);
   7613     method public int describeContents();
   7614     method public int getEmcBearerSupport();
   7615     method public int getVopsSupport();
   7616     method public void writeToParcel(android.os.Parcel, int);
   7617     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.LteVopsSupportInfo> CREATOR;
   7618     field public static final int LTE_STATUS_NOT_AVAILABLE = 1; // 0x1
   7619     field public static final int LTE_STATUS_NOT_SUPPORTED = 3; // 0x3
   7620     field public static final int LTE_STATUS_SUPPORTED = 2; // 0x2
   7621   }
   7622 
   7623   public class MbmsDownloadSession implements java.lang.AutoCloseable {
   7624     field public static final String MBMS_DOWNLOAD_SERVICE_ACTION = "android.telephony.action.EmbmsDownload";
   7625   }
   7626 
   7627   public class MbmsGroupCallSession implements java.lang.AutoCloseable {
   7628     field public static final String MBMS_GROUP_CALL_SERVICE_ACTION = "android.telephony.action.EmbmsGroupCall";
   7629   }
   7630 
   7631   public class MbmsStreamingSession implements java.lang.AutoCloseable {
   7632     field public static final String MBMS_STREAMING_SERVICE_ACTION = "android.telephony.action.EmbmsStreaming";
   7633   }
   7634 
   7635   public final class NetworkRegistrationInfo implements android.os.Parcelable {
   7636     method public int describeContents();
   7637     method public int getAccessNetworkTechnology();
   7638     method @NonNull public java.util.List<java.lang.Integer> getAvailableServices();
   7639     method @Nullable public android.telephony.CellIdentity getCellIdentity();
   7640     method @Nullable public android.telephony.DataSpecificRegistrationInfo getDataSpecificInfo();
   7641     method public int getDomain();
   7642     method public int getRegistrationState();
   7643     method public int getRejectCause();
   7644     method public int getRoamingType();
   7645     method public int getTransportType();
   7646     method public boolean isEmergencyEnabled();
   7647     method public boolean isRoaming();
   7648     method public void writeToParcel(android.os.Parcel, int);
   7649     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.NetworkRegistrationInfo> CREATOR;
   7650     field public static final int DOMAIN_CS = 1; // 0x1
   7651     field public static final int DOMAIN_PS = 2; // 0x2
   7652     field public static final int REGISTRATION_STATE_DENIED = 3; // 0x3
   7653     field public static final int REGISTRATION_STATE_HOME = 1; // 0x1
   7654     field public static final int REGISTRATION_STATE_NOT_REGISTERED_OR_SEARCHING = 0; // 0x0
   7655     field public static final int REGISTRATION_STATE_NOT_REGISTERED_SEARCHING = 2; // 0x2
   7656     field public static final int REGISTRATION_STATE_ROAMING = 5; // 0x5
   7657     field public static final int REGISTRATION_STATE_UNKNOWN = 4; // 0x4
   7658     field public static final int SERVICE_TYPE_DATA = 2; // 0x2
   7659     field public static final int SERVICE_TYPE_EMERGENCY = 5; // 0x5
   7660     field public static final int SERVICE_TYPE_SMS = 3; // 0x3
   7661     field public static final int SERVICE_TYPE_UNKNOWN = 0; // 0x0
   7662     field public static final int SERVICE_TYPE_VIDEO = 4; // 0x4
   7663     field public static final int SERVICE_TYPE_VOICE = 1; // 0x1
   7664   }
   7665 
   7666   public static final class NetworkRegistrationInfo.Builder {
   7667     ctor public NetworkRegistrationInfo.Builder();
   7668     method @NonNull public android.telephony.NetworkRegistrationInfo build();
   7669     method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setAccessNetworkTechnology(int);
   7670     method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setAvailableServices(@NonNull java.util.List<java.lang.Integer>);
   7671     method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setCellIdentity(@Nullable android.telephony.CellIdentity);
   7672     method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setDomain(int);
   7673     method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setEmergencyOnly(boolean);
   7674     method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setRegistrationState(int);
   7675     method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setRejectCause(int);
   7676     method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setTransportType(int);
   7677   }
   7678 
   7679   public abstract class NetworkService extends android.app.Service {
   7680     ctor public NetworkService();
   7681     method public android.os.IBinder onBind(android.content.Intent);
   7682     method @Nullable public abstract android.telephony.NetworkService.NetworkServiceProvider onCreateNetworkServiceProvider(int);
   7683     field public static final String SERVICE_INTERFACE = "android.telephony.NetworkService";
   7684   }
   7685 
   7686   public abstract class NetworkService.NetworkServiceProvider implements java.lang.AutoCloseable {
   7687     ctor public NetworkService.NetworkServiceProvider(int);
   7688     method public abstract void close();
   7689     method public final int getSlotIndex();
   7690     method public final void notifyNetworkRegistrationInfoChanged();
   7691     method public void requestNetworkRegistrationInfo(int, @NonNull android.telephony.NetworkServiceCallback);
   7692   }
   7693 
   7694   public class NetworkServiceCallback {
   7695     method public void onRequestNetworkRegistrationInfoComplete(int, @Nullable android.telephony.NetworkRegistrationInfo);
   7696     field public static final int RESULT_ERROR_BUSY = 3; // 0x3
   7697     field public static final int RESULT_ERROR_FAILED = 5; // 0x5
   7698     field public static final int RESULT_ERROR_ILLEGAL_STATE = 4; // 0x4
   7699     field public static final int RESULT_ERROR_INVALID_ARG = 2; // 0x2
   7700     field public static final int RESULT_ERROR_UNSUPPORTED = 1; // 0x1
   7701     field public static final int RESULT_SUCCESS = 0; // 0x0
   7702   }
   7703 
   7704   public interface NumberVerificationCallback {
   7705     method public default void onCallReceived(@NonNull String);
   7706     method public default void onVerificationFailed(int);
   7707     field public static final int REASON_CONCURRENT_REQUESTS = 4; // 0x4
   7708     field public static final int REASON_IN_ECBM = 5; // 0x5
   7709     field public static final int REASON_IN_EMERGENCY_CALL = 6; // 0x6
   7710     field public static final int REASON_NETWORK_NOT_AVAILABLE = 2; // 0x2
   7711     field public static final int REASON_TIMED_OUT = 1; // 0x1
   7712     field public static final int REASON_TOO_MANY_CALLS = 3; // 0x3
   7713     field public static final int REASON_UNSPECIFIED = 0; // 0x0
   7714   }
   7715 
   7716   public final class PhoneNumberRange implements android.os.Parcelable {
   7717     ctor public PhoneNumberRange(@NonNull String, @NonNull String, @NonNull String, @NonNull String);
   7718     method public int describeContents();
   7719     method public boolean matches(@NonNull String);
   7720     method public void writeToParcel(android.os.Parcel, int);
   7721     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.PhoneNumberRange> CREATOR;
   7722   }
   7723 
   7724   public class PhoneStateListener {
   7725     method public void onCallAttributesChanged(@NonNull android.telephony.CallAttributes);
   7726     method @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public void onCallDisconnectCauseChanged(int, int);
   7727     method @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public void onImsCallDisconnectCauseChanged(@NonNull android.telephony.ims.ImsReasonInfo);
   7728     method @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public void onPreciseCallStateChanged(@NonNull android.telephony.PreciseCallState);
   7729     method @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public void onPreciseDataConnectionStateChanged(@NonNull android.telephony.PreciseDataConnectionState);
   7730     method public void onRadioPowerStateChanged(int);
   7731     method public void onSrvccStateChanged(int);
   7732     method public void onVoiceActivationStateChanged(int);
   7733     field public static final int LISTEN_CALL_ATTRIBUTES_CHANGED = 67108864; // 0x4000000
   7734     field @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public static final int LISTEN_CALL_DISCONNECT_CAUSES = 33554432; // 0x2000000
   7735     field @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public static final int LISTEN_IMS_CALL_DISCONNECT_CAUSES = 134217728; // 0x8000000
   7736     field @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public static final int LISTEN_PRECISE_CALL_STATE = 2048; // 0x800
   7737     field @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public static final int LISTEN_PRECISE_DATA_CONNECTION_STATE = 4096; // 0x1000
   7738     field public static final int LISTEN_RADIO_POWER_STATE_CHANGED = 8388608; // 0x800000
   7739     field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int LISTEN_SRVCC_STATE_CHANGED = 16384; // 0x4000
   7740     field public static final int LISTEN_VOICE_ACTIVATION_STATE = 131072; // 0x20000
   7741   }
   7742 
   7743   public final class PreciseCallState implements android.os.Parcelable {
   7744     method public int describeContents();
   7745     method public int getBackgroundCallState();
   7746     method public int getForegroundCallState();
   7747     method public int getRingingCallState();
   7748     method public void writeToParcel(android.os.Parcel, int);
   7749     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.PreciseCallState> CREATOR;
   7750     field public static final int PRECISE_CALL_STATE_ACTIVE = 1; // 0x1
   7751     field public static final int PRECISE_CALL_STATE_ALERTING = 4; // 0x4
   7752     field public static final int PRECISE_CALL_STATE_DIALING = 3; // 0x3
   7753     field public static final int PRECISE_CALL_STATE_DISCONNECTED = 7; // 0x7
   7754     field public static final int PRECISE_CALL_STATE_DISCONNECTING = 8; // 0x8
   7755     field public static final int PRECISE_CALL_STATE_HOLDING = 2; // 0x2
   7756     field public static final int PRECISE_CALL_STATE_IDLE = 0; // 0x0
   7757     field public static final int PRECISE_CALL_STATE_INCOMING = 5; // 0x5
   7758     field public static final int PRECISE_CALL_STATE_NOT_VALID = -1; // 0xffffffff
   7759     field public static final int PRECISE_CALL_STATE_WAITING = 6; // 0x6
   7760   }
   7761 
   7762   public final class PreciseDataConnectionState implements android.os.Parcelable {
   7763     method public int describeContents();
   7764     method @Nullable public String getDataConnectionApn();
   7765     method public int getDataConnectionApnTypeBitMask();
   7766     method public int getDataConnectionFailCause();
   7767     method public int getDataConnectionState();
   7768     method public void writeToParcel(android.os.Parcel, int);
   7769     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.PreciseDataConnectionState> CREATOR;
   7770   }
   7771 
   7772   public final class PreciseDisconnectCause {
   7773     field public static final int ACCESS_CLASS_BLOCKED = 260; // 0x104
   7774     field public static final int ACCESS_INFORMATION_DISCARDED = 43; // 0x2b
   7775     field public static final int ACM_LIMIT_EXCEEDED = 68; // 0x44
   7776     field public static final int BEARER_CAPABILITY_NOT_AUTHORIZED = 57; // 0x39
   7777     field public static final int BEARER_NOT_AVAIL = 58; // 0x3a
   7778     field public static final int BEARER_SERVICE_NOT_IMPLEMENTED = 65; // 0x41
   7779     field public static final int BUSY = 17; // 0x11
   7780     field public static final int CALL_BARRED = 240; // 0xf0
   7781     field public static final int CALL_REJECTED = 21; // 0x15
   7782     field public static final int CDMA_ACCESS_BLOCKED = 1009; // 0x3f1
   7783     field public static final int CDMA_ACCESS_FAILURE = 1006; // 0x3ee
   7784     field public static final int CDMA_DROP = 1001; // 0x3e9
   7785     field public static final int CDMA_INTERCEPT = 1002; // 0x3ea
   7786     field public static final int CDMA_LOCKED_UNTIL_POWER_CYCLE = 1000; // 0x3e8
   7787     field public static final int CDMA_NOT_EMERGENCY = 1008; // 0x3f0
   7788     field public static final int CDMA_PREEMPTED = 1007; // 0x3ef
   7789     field public static final int CDMA_REORDER = 1003; // 0x3eb
   7790     field public static final int CDMA_RETRY_ORDER = 1005; // 0x3ed
   7791     field public static final int CDMA_SO_REJECT = 1004; // 0x3ec
   7792     field public static final int CHANNEL_NOT_AVAIL = 44; // 0x2c
   7793     field public static final int CHANNEL_UNACCEPTABLE = 6; // 0x6
   7794     field public static final int CONDITIONAL_IE_ERROR = 100; // 0x64
   7795     field public static final int DESTINATION_OUT_OF_ORDER = 27; // 0x1b
   7796     field public static final int ERROR_UNSPECIFIED = 65535; // 0xffff
   7797     field public static final int FACILITY_REJECTED = 29; // 0x1d
   7798     field public static final int FDN_BLOCKED = 241; // 0xf1
   7799     field public static final int IMEI_NOT_ACCEPTED = 243; // 0xf3
   7800     field public static final int IMSI_UNKNOWN_IN_VLR = 242; // 0xf2
   7801     field public static final int INCOMING_CALLS_BARRED_WITHIN_CUG = 55; // 0x37
   7802     field public static final int INCOMPATIBLE_DESTINATION = 88; // 0x58
   7803     field public static final int INFORMATION_ELEMENT_NON_EXISTENT = 99; // 0x63
   7804     field public static final int INTERWORKING_UNSPECIFIED = 127; // 0x7f
   7805     field public static final int INVALID_MANDATORY_INFORMATION = 96; // 0x60
   7806     field public static final int INVALID_NUMBER_FORMAT = 28; // 0x1c
   7807     field public static final int INVALID_TRANSACTION_IDENTIFIER = 81; // 0x51
   7808     field public static final int MESSAGE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE = 101; // 0x65
   7809     field public static final int MESSAGE_TYPE_NON_IMPLEMENTED = 97; // 0x61
   7810     field public static final int MESSAGE_TYPE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE = 98; // 0x62
   7811     field public static final int NETWORK_DETACH = 261; // 0x105
   7812     field public static final int NETWORK_OUT_OF_ORDER = 38; // 0x26
   7813     field public static final int NETWORK_REJECT = 252; // 0xfc
   7814     field public static final int NETWORK_RESP_TIMEOUT = 251; // 0xfb
   7815     field public static final int NORMAL = 16; // 0x10
   7816     field public static final int NORMAL_UNSPECIFIED = 31; // 0x1f
   7817     field public static final int NOT_VALID = -1; // 0xffffffff
   7818     field public static final int NO_ANSWER_FROM_USER = 19; // 0x13
   7819     field public static final int NO_CIRCUIT_AVAIL = 34; // 0x22
   7820     field public static final int NO_DISCONNECT_CAUSE_AVAILABLE = 0; // 0x0
   7821     field public static final int NO_ROUTE_TO_DESTINATION = 3; // 0x3
   7822     field public static final int NO_USER_RESPONDING = 18; // 0x12
   7823     field public static final int NO_VALID_SIM = 249; // 0xf9
   7824     field public static final int NUMBER_CHANGED = 22; // 0x16
   7825     field public static final int OEM_CAUSE_1 = 61441; // 0xf001
   7826     field public static final int OEM_CAUSE_10 = 61450; // 0xf00a
   7827     field public static final int OEM_CAUSE_11 = 61451; // 0xf00b
   7828     field public static final int OEM_CAUSE_12 = 61452; // 0xf00c
   7829     field public static final int OEM_CAUSE_13 = 61453; // 0xf00d
   7830     field public static final int OEM_CAUSE_14 = 61454; // 0xf00e
   7831     field public static final int OEM_CAUSE_15 = 61455; // 0xf00f
   7832     field public static final int OEM_CAUSE_2 = 61442; // 0xf002
   7833     field public static final int OEM_CAUSE_3 = 61443; // 0xf003
   7834     field public static final int OEM_CAUSE_4 = 61444; // 0xf004
   7835     field public static final int OEM_CAUSE_5 = 61445; // 0xf005
   7836     field public static final int OEM_CAUSE_6 = 61446; // 0xf006
   7837     field public static final int OEM_CAUSE_7 = 61447; // 0xf007
   7838     field public static final int OEM_CAUSE_8 = 61448; // 0xf008
   7839     field public static final int OEM_CAUSE_9 = 61449; // 0xf009
   7840     field public static final int ONLY_DIGITAL_INFORMATION_BEARER_AVAILABLE = 70; // 0x46
   7841     field public static final int OPERATOR_DETERMINED_BARRING = 8; // 0x8
   7842     field public static final int OUT_OF_SRV = 248; // 0xf8
   7843     field public static final int PREEMPTION = 25; // 0x19
   7844     field public static final int PROTOCOL_ERROR_UNSPECIFIED = 111; // 0x6f
   7845     field public static final int QOS_NOT_AVAIL = 49; // 0x31
   7846     field public static final int RADIO_ACCESS_FAILURE = 253; // 0xfd
   7847     field public static final int RADIO_INTERNAL_ERROR = 250; // 0xfa
   7848     field public static final int RADIO_LINK_FAILURE = 254; // 0xfe
   7849     field public static final int RADIO_LINK_LOST = 255; // 0xff
   7850     field public static final int RADIO_OFF = 247; // 0xf7
   7851     field public static final int RADIO_RELEASE_ABNORMAL = 259; // 0x103
   7852     field public static final int RADIO_RELEASE_NORMAL = 258; // 0x102
   7853     field public static final int RADIO_SETUP_FAILURE = 257; // 0x101
   7854     field public static final int RADIO_UPLINK_FAILURE = 256; // 0x100
   7855     field public static final int RECOVERY_ON_TIMER_EXPIRED = 102; // 0x66
   7856     field public static final int REQUESTED_FACILITY_NOT_IMPLEMENTED = 69; // 0x45
   7857     field public static final int REQUESTED_FACILITY_NOT_SUBSCRIBED = 50; // 0x32
   7858     field public static final int RESOURCES_UNAVAILABLE_OR_UNSPECIFIED = 47; // 0x2f
   7859     field public static final int SEMANTICALLY_INCORRECT_MESSAGE = 95; // 0x5f
   7860     field public static final int SERVICE_OPTION_NOT_AVAILABLE = 63; // 0x3f
   7861     field public static final int SERVICE_OR_OPTION_NOT_IMPLEMENTED = 79; // 0x4f
   7862     field public static final int STATUS_ENQUIRY = 30; // 0x1e
   7863     field public static final int SWITCHING_CONGESTION = 42; // 0x2a
   7864     field public static final int TEMPORARY_FAILURE = 41; // 0x29
   7865     field public static final int UNOBTAINABLE_NUMBER = 1; // 0x1
   7866     field public static final int USER_NOT_MEMBER_OF_CUG = 87; // 0x57
   7867   }
   7868 
   7869   public class ServiceState implements android.os.Parcelable {
   7870     method @Nullable public android.telephony.NetworkRegistrationInfo getNetworkRegistrationInfo(int, int);
   7871     method @NonNull public java.util.List<android.telephony.NetworkRegistrationInfo> getNetworkRegistrationInfoList();
   7872     method @NonNull public java.util.List<android.telephony.NetworkRegistrationInfo> getNetworkRegistrationInfoListForDomain(int);
   7873     method @NonNull public java.util.List<android.telephony.NetworkRegistrationInfo> getNetworkRegistrationInfoListForTransportType(int);
   7874     field public static final int ROAMING_TYPE_DOMESTIC = 2; // 0x2
   7875     field public static final int ROAMING_TYPE_INTERNATIONAL = 3; // 0x3
   7876     field public static final int ROAMING_TYPE_NOT_ROAMING = 0; // 0x0
   7877     field public static final int ROAMING_TYPE_UNKNOWN = 1; // 0x1
   7878   }
   7879 
   7880   public final class SmsManager {
   7881     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>);
   7882     field public static final int RESULT_CANCELLED = 23; // 0x17
   7883     field public static final int RESULT_ENCODING_ERROR = 18; // 0x12
   7884     field public static final int RESULT_ERROR_FDN_CHECK_FAILURE = 6; // 0x6
   7885     field public static final int RESULT_ERROR_NONE = 0; // 0x0
   7886     field public static final int RESULT_INTERNAL_ERROR = 21; // 0x15
   7887     field public static final int RESULT_INVALID_ARGUMENTS = 11; // 0xb
   7888     field public static final int RESULT_INVALID_SMSC_ADDRESS = 19; // 0x13
   7889     field public static final int RESULT_INVALID_SMS_FORMAT = 14; // 0xe
   7890     field public static final int RESULT_INVALID_STATE = 12; // 0xc
   7891     field public static final int RESULT_MODEM_ERROR = 16; // 0x10
   7892     field public static final int RESULT_NETWORK_ERROR = 17; // 0x11
   7893     field public static final int RESULT_NETWORK_REJECT = 10; // 0xa
   7894     field public static final int RESULT_NO_MEMORY = 13; // 0xd
   7895     field public static final int RESULT_NO_RESOURCES = 22; // 0x16
   7896     field public static final int RESULT_OPERATION_NOT_ALLOWED = 20; // 0x14
   7897     field public static final int RESULT_RADIO_NOT_AVAILABLE = 9; // 0x9
   7898     field public static final int RESULT_REQUEST_NOT_SUPPORTED = 24; // 0x18
   7899     field public static final int RESULT_SYSTEM_ERROR = 15; // 0xf
   7900   }
   7901 
   7902   public class SubscriptionInfo implements android.os.Parcelable {
   7903     method @Nullable public java.util.List<android.telephony.UiccAccessRule> getAccessRules();
   7904     method public int getProfileClass();
   7905   }
   7906 
   7907   public class SubscriptionManager {
   7908     method public java.util.List<android.telephony.SubscriptionInfo> getAvailableSubscriptionInfoList();
   7909     method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getEnabledSubscriptionId(int);
   7910     method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isSubscriptionEnabled(int);
   7911     method public void requestEmbeddedSubscriptionInfoListRefresh();
   7912     method public void requestEmbeddedSubscriptionInfoListRefresh(int);
   7913     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDefaultDataSubId(int);
   7914     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDefaultSmsSubId(int);
   7915     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>);
   7916     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setSubscriptionEnabled(int, boolean);
   7917     field @NonNull public static final android.net.Uri ADVANCED_CALLING_ENABLED_CONTENT_URI;
   7918     field public static final int PROFILE_CLASS_DEFAULT = -1; // 0xffffffff
   7919     field public static final int PROFILE_CLASS_OPERATIONAL = 2; // 0x2
   7920     field public static final int PROFILE_CLASS_PROVISIONING = 1; // 0x1
   7921     field public static final int PROFILE_CLASS_TESTING = 0; // 0x0
   7922     field public static final int PROFILE_CLASS_UNSET = -1; // 0xffffffff
   7923     field @NonNull public static final android.net.Uri VT_ENABLED_CONTENT_URI;
   7924     field @NonNull public static final android.net.Uri WFC_ENABLED_CONTENT_URI;
   7925     field @NonNull public static final android.net.Uri WFC_MODE_CONTENT_URI;
   7926     field @NonNull public static final android.net.Uri WFC_ROAMING_ENABLED_CONTENT_URI;
   7927     field @NonNull public static final android.net.Uri WFC_ROAMING_MODE_CONTENT_URI;
   7928   }
   7929 
   7930   public static class SubscriptionPlan.Builder {
   7931     method @Deprecated public static android.telephony.SubscriptionPlan.Builder createRecurringDaily(java.time.ZonedDateTime);
   7932     method @Deprecated public static android.telephony.SubscriptionPlan.Builder createRecurringMonthly(java.time.ZonedDateTime);
   7933     method @Deprecated public static android.telephony.SubscriptionPlan.Builder createRecurringWeekly(java.time.ZonedDateTime);
   7934   }
   7935 
   7936   public final class TelephonyHistogram implements android.os.Parcelable {
   7937     ctor public TelephonyHistogram(int, int, int);
   7938     ctor public TelephonyHistogram(android.telephony.TelephonyHistogram);
   7939     ctor public TelephonyHistogram(android.os.Parcel);
   7940     method public void addTimeTaken(int);
   7941     method public int describeContents();
   7942     method public int getAverageTime();
   7943     method public int getBucketCount();
   7944     method public int[] getBucketCounters();
   7945     method public int[] getBucketEndPoints();
   7946     method public int getCategory();
   7947     method public int getId();
   7948     method public int getMaxTime();
   7949     method public int getMinTime();
   7950     method public int getSampleCount();
   7951     method public void writeToParcel(android.os.Parcel, int);
   7952     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.TelephonyHistogram> CREATOR;
   7953     field public static final int TELEPHONY_CATEGORY_RIL = 1; // 0x1
   7954   }
   7955 
   7956   public class TelephonyManager {
   7957     method @Deprecated @RequiresPermission(android.Manifest.permission.CALL_PHONE) public void call(String, String);
   7958     method public int checkCarrierPrivilegesForPackage(String);
   7959     method public int checkCarrierPrivilegesForPackageAnyPhone(String);
   7960     method public void dial(String);
   7961     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean disableDataConnectivity();
   7962     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean enableDataConnectivity();
   7963     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean enableModemForSlot(int, boolean);
   7964     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void enableVideoCalling(boolean);
   7965     method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getAidForAppType(int);
   7966     method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.List<android.service.carrier.CarrierIdentifier> getAllowedCarriers(int);
   7967     method public java.util.List<java.lang.String> getCarrierPackageNamesForIntent(android.content.Intent);
   7968     method public java.util.List<java.lang.String> getCarrierPackageNamesForIntentAndPhone(android.content.Intent, int);
   7969     method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public android.telephony.CarrierRestrictionRules getCarrierRestrictionRules();
   7970     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String getCdmaMdn();
   7971     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String getCdmaMdn(int);
   7972     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String getCdmaMin();
   7973     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String getCdmaMin(int);
   7974     method public String getCdmaPrlVersion();
   7975     method public int getCurrentPhoneType();
   7976     method public int getCurrentPhoneType(int);
   7977     method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getDataActivationState();
   7978     method @Deprecated public boolean getDataEnabled();
   7979     method @Deprecated public boolean getDataEnabled(int);
   7980     method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean getEmergencyCallbackMode();
   7981     method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getIsimDomain();
   7982     method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getIsimIst();
   7983     method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.Map<java.lang.Integer,java.lang.Integer> getLogicalToPhysicalSlotMapping();
   7984     method public static long getMaxNumberVerificationTimeoutMillis();
   7985     method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public long getPreferredNetworkTypeBitmask();
   7986     method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public int getRadioPowerState();
   7987     method public int getSimApplicationState();
   7988     method public int getSimCardState();
   7989     method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.Locale getSimLocale();
   7990     method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public long getSupportedRadioAccessFamily();
   7991     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public java.util.List<android.telephony.TelephonyHistogram> getTelephonyHistograms();
   7992     method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public android.telephony.UiccSlotInfo[] getUiccSlotsInfo();
   7993     method @Nullable public android.os.Bundle getVisualVoicemailSettings();
   7994     method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getVoiceActivationState();
   7995     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean handlePinMmi(String);
   7996     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean handlePinMmiForSubscriber(int, String);
   7997     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean iccCloseLogicalChannelBySlot(int, int);
   7998     method @Nullable @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.telephony.IccOpenLogicalChannelResponse iccOpenLogicalChannelBySlot(int, @Nullable String, int);
   7999     method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String iccTransmitApduBasicChannelBySlot(int, int, int, int, int, int, @Nullable String);
   8000     method @Nullable @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String iccTransmitApduLogicalChannelBySlot(int, int, int, int, int, int, int, @Nullable String);
   8001     method public boolean isDataConnectivityPossible();
   8002     method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isEmergencyAssistanceEnabled();
   8003     method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isIdle();
   8004     method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isOffhook();
   8005     method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isPotentialEmergencyNumber(@NonNull String);
   8006     method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isRadioOn();
   8007     method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isRinging();
   8008     method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isVideoCallingEnabled();
   8009     method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public boolean isVisualVoicemailEnabled(android.telecom.PhoneAccountHandle);
   8010     method public boolean needsOtaServiceProvisioning();
   8011     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean rebootRadio();
   8012     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);
   8013     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);
   8014     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean resetRadioConfig();
   8015     method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int setAllowedCarriers(int, java.util.List<android.service.carrier.CarrierIdentifier>);
   8016     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setCarrierDataEnabled(boolean);
   8017     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int setCarrierRestrictionRules(@NonNull android.telephony.CarrierRestrictionRules);
   8018     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataActivationState(int);
   8019     method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataEnabled(int, boolean);
   8020     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataRoamingEnabled(boolean);
   8021     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setMultiSimCarrierRestriction(boolean);
   8022     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setPreferredNetworkTypeBitmask(long);
   8023     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setRadio(boolean);
   8024     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setRadioPower(boolean);
   8025     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setSimPowerState(int);
   8026     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setSimPowerStateForSlot(int, int);
   8027     method @Deprecated public void setVisualVoicemailEnabled(android.telecom.PhoneAccountHandle, boolean);
   8028     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoiceActivationState(int);
   8029     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean supplyPin(String);
   8030     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int[] supplyPinReportResult(String);
   8031     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean supplyPuk(String, String);
   8032     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int[] supplyPukReportResult(String, String);
   8033     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean switchSlots(int[]);
   8034     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void toggleRadioOnOff();
   8035     method public void updateServiceLocation();
   8036     field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final String ACTION_ANOMALY_REPORTED = "android.telephony.action.ANOMALY_REPORTED";
   8037     field public static final String ACTION_SIM_APPLICATION_STATE_CHANGED = "android.telephony.action.SIM_APPLICATION_STATE_CHANGED";
   8038     field public static final String ACTION_SIM_CARD_STATE_CHANGED = "android.telephony.action.SIM_CARD_STATE_CHANGED";
   8039     field public static final String ACTION_SIM_SLOT_STATUS_CHANGED = "android.telephony.action.SIM_SLOT_STATUS_CHANGED";
   8040     field public static final int CARRIER_PRIVILEGE_STATUS_ERROR_LOADING_RULES = -2; // 0xfffffffe
   8041     field public static final int CARRIER_PRIVILEGE_STATUS_HAS_ACCESS = 1; // 0x1
   8042     field public static final int CARRIER_PRIVILEGE_STATUS_NO_ACCESS = 0; // 0x0
   8043     field public static final int CARRIER_PRIVILEGE_STATUS_RULES_NOT_LOADED = -1; // 0xffffffff
   8044     field public static final String EXTRA_ANOMALY_DESCRIPTION = "android.telephony.extra.ANOMALY_DESCRIPTION";
   8045     field public static final String EXTRA_ANOMALY_ID = "android.telephony.extra.ANOMALY_ID";
   8046     field public static final String EXTRA_SIM_STATE = "android.telephony.extra.SIM_STATE";
   8047     field public static final String EXTRA_VISUAL_VOICEMAIL_ENABLED_BY_USER_BOOL = "android.telephony.extra.VISUAL_VOICEMAIL_ENABLED_BY_USER_BOOL";
   8048     field public static final String EXTRA_VOICEMAIL_SCRAMBLED_PIN_STRING = "android.telephony.extra.VOICEMAIL_SCRAMBLED_PIN_STRING";
   8049     field public static final long NETWORK_TYPE_BITMASK_1xRTT = 64L; // 0x40L
   8050     field public static final long NETWORK_TYPE_BITMASK_CDMA = 8L; // 0x8L
   8051     field public static final long NETWORK_TYPE_BITMASK_EDGE = 2L; // 0x2L
   8052     field public static final long NETWORK_TYPE_BITMASK_EHRPD = 8192L; // 0x2000L
   8053     field public static final long NETWORK_TYPE_BITMASK_EVDO_0 = 16L; // 0x10L
   8054     field public static final long NETWORK_TYPE_BITMASK_EVDO_A = 32L; // 0x20L
   8055     field public static final long NETWORK_TYPE_BITMASK_EVDO_B = 2048L; // 0x800L
   8056     field public static final long NETWORK_TYPE_BITMASK_GPRS = 1L; // 0x1L
   8057     field public static final long NETWORK_TYPE_BITMASK_GSM = 32768L; // 0x8000L
   8058     field public static final long NETWORK_TYPE_BITMASK_HSDPA = 128L; // 0x80L
   8059     field public static final long NETWORK_TYPE_BITMASK_HSPA = 512L; // 0x200L
   8060     field public static final long NETWORK_TYPE_BITMASK_HSPAP = 16384L; // 0x4000L
   8061     field public static final long NETWORK_TYPE_BITMASK_HSUPA = 256L; // 0x100L
   8062     field public static final long NETWORK_TYPE_BITMASK_IWLAN = 131072L; // 0x20000L
   8063     field public static final long NETWORK_TYPE_BITMASK_LTE = 4096L; // 0x1000L
   8064     field public static final long NETWORK_TYPE_BITMASK_LTE_CA = 262144L; // 0x40000L
   8065     field public static final long NETWORK_TYPE_BITMASK_NR = 524288L; // 0x80000L
   8066     field public static final long NETWORK_TYPE_BITMASK_TD_SCDMA = 65536L; // 0x10000L
   8067     field public static final long NETWORK_TYPE_BITMASK_UMTS = 4L; // 0x4L
   8068     field public static final long NETWORK_TYPE_BITMASK_UNKNOWN = 0L; // 0x0L
   8069     field public static final int RADIO_POWER_OFF = 0; // 0x0
   8070     field public static final int RADIO_POWER_ON = 1; // 0x1
   8071     field public static final int RADIO_POWER_UNAVAILABLE = 2; // 0x2
   8072     field public static final int SET_CARRIER_RESTRICTION_ERROR = 2; // 0x2
   8073     field public static final int SET_CARRIER_RESTRICTION_NOT_SUPPORTED = 1; // 0x1
   8074     field public static final int SET_CARRIER_RESTRICTION_SUCCESS = 0; // 0x0
   8075     field public static final int SIM_ACTIVATION_STATE_ACTIVATED = 2; // 0x2
   8076     field public static final int SIM_ACTIVATION_STATE_ACTIVATING = 1; // 0x1
   8077     field public static final int SIM_ACTIVATION_STATE_DEACTIVATED = 3; // 0x3
   8078     field public static final int SIM_ACTIVATION_STATE_RESTRICTED = 4; // 0x4
   8079     field public static final int SIM_ACTIVATION_STATE_UNKNOWN = 0; // 0x0
   8080     field public static final int SIM_STATE_LOADED = 10; // 0xa
   8081     field public static final int SIM_STATE_PRESENT = 11; // 0xb
   8082     field public static final int SRVCC_STATE_HANDOVER_CANCELED = 3; // 0x3
   8083     field public static final int SRVCC_STATE_HANDOVER_COMPLETED = 1; // 0x1
   8084     field public static final int SRVCC_STATE_HANDOVER_FAILED = 2; // 0x2
   8085     field public static final int SRVCC_STATE_HANDOVER_NONE = -1; // 0xffffffff
   8086     field public static final int SRVCC_STATE_HANDOVER_STARTED = 0; // 0x0
   8087   }
   8088 
   8089   public final class UiccAccessRule implements android.os.Parcelable {
   8090     ctor public UiccAccessRule(byte[], @Nullable String, long);
   8091     method public int describeContents();
   8092     method public int getCarrierPrivilegeStatus(android.content.pm.PackageInfo);
   8093     method public int getCarrierPrivilegeStatus(android.content.pm.Signature, String);
   8094     method public String getCertificateHexString();
   8095     method @Nullable public String getPackageName();
   8096     method public void writeToParcel(android.os.Parcel, int);
   8097     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.UiccAccessRule> CREATOR;
   8098   }
   8099 
   8100   public class UiccSlotInfo implements android.os.Parcelable {
   8101     ctor @Deprecated public UiccSlotInfo(boolean, boolean, String, int, int, boolean);
   8102     method public int describeContents();
   8103     method public String getCardId();
   8104     method public int getCardStateInfo();
   8105     method public boolean getIsActive();
   8106     method public boolean getIsEuicc();
   8107     method public boolean getIsExtendedApduSupported();
   8108     method public int getLogicalSlotIdx();
   8109     method public boolean isRemovable();
   8110     method public void writeToParcel(android.os.Parcel, int);
   8111     field public static final int CARD_STATE_INFO_ABSENT = 1; // 0x1
   8112     field public static final int CARD_STATE_INFO_ERROR = 3; // 0x3
   8113     field public static final int CARD_STATE_INFO_PRESENT = 2; // 0x2
   8114     field public static final int CARD_STATE_INFO_RESTRICTED = 4; // 0x4
   8115     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.UiccSlotInfo> CREATOR;
   8116   }
   8117 
   8118   public abstract class VisualVoicemailService extends android.app.Service {
   8119     method public static final void sendVisualVoicemailSms(android.content.Context, android.telecom.PhoneAccountHandle, String, short, String, android.app.PendingIntent);
   8120     method public static final void setSmsFilterSettings(android.content.Context, android.telecom.PhoneAccountHandle, android.telephony.VisualVoicemailSmsFilterSettings);
   8121   }
   8122 
   8123 }
   8124 
   8125 package android.telephony.data {
   8126 
   8127   public final class DataCallResponse implements android.os.Parcelable {
   8128     method public int describeContents();
   8129     method @NonNull public java.util.List<android.net.LinkAddress> getAddresses();
   8130     method public int getCause();
   8131     method @NonNull public java.util.List<java.net.InetAddress> getDnsAddresses();
   8132     method @NonNull public java.util.List<java.net.InetAddress> getGatewayAddresses();
   8133     method public int getId();
   8134     method @NonNull public String getInterfaceName();
   8135     method public int getLinkStatus();
   8136     method public int getMtu();
   8137     method @NonNull public java.util.List<java.net.InetAddress> getPcscfAddresses();
   8138     method public int getProtocolType();
   8139     method public int getSuggestedRetryTime();
   8140     method public void writeToParcel(android.os.Parcel, int);
   8141     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.data.DataCallResponse> CREATOR;
   8142     field public static final int LINK_STATUS_ACTIVE = 2; // 0x2
   8143     field public static final int LINK_STATUS_DORMANT = 1; // 0x1
   8144     field public static final int LINK_STATUS_INACTIVE = 0; // 0x0
   8145     field public static final int LINK_STATUS_UNKNOWN = -1; // 0xffffffff
   8146   }
   8147 
   8148   public static final class DataCallResponse.Builder {
   8149     ctor public DataCallResponse.Builder();
   8150     method @NonNull public android.telephony.data.DataCallResponse build();
   8151     method @NonNull public android.telephony.data.DataCallResponse.Builder setAddresses(@NonNull java.util.List<android.net.LinkAddress>);
   8152     method @NonNull public android.telephony.data.DataCallResponse.Builder setCause(int);
   8153     method @NonNull public android.telephony.data.DataCallResponse.Builder setDnsAddresses(@NonNull java.util.List<java.net.InetAddress>);
   8154     method @NonNull public android.telephony.data.DataCallResponse.Builder setGatewayAddresses(@NonNull java.util.List<java.net.InetAddress>);
   8155     method @NonNull public android.telephony.data.DataCallResponse.Builder setId(int);
   8156     method @NonNull public android.telephony.data.DataCallResponse.Builder setInterfaceName(@NonNull String);
   8157     method @NonNull public android.telephony.data.DataCallResponse.Builder setLinkStatus(int);
   8158     method @NonNull public android.telephony.data.DataCallResponse.Builder setMtu(int);
   8159     method @NonNull public android.telephony.data.DataCallResponse.Builder setPcscfAddresses(@NonNull java.util.List<java.net.InetAddress>);
   8160     method @NonNull public android.telephony.data.DataCallResponse.Builder setProtocolType(int);
   8161     method @NonNull public android.telephony.data.DataCallResponse.Builder setSuggestedRetryTime(int);
   8162   }
   8163 
   8164   public final class DataProfile implements android.os.Parcelable {
   8165     method public int describeContents();
   8166     method @NonNull public String getApn();
   8167     method public int getAuthType();
   8168     method public int getBearerBitmask();
   8169     method public int getMtu();
   8170     method @Nullable public String getPassword();
   8171     method public int getProfileId();
   8172     method public int getProtocolType();
   8173     method public int getRoamingProtocolType();
   8174     method public int getSupportedApnTypesBitmask();
   8175     method public int getType();
   8176     method @Nullable public String getUserName();
   8177     method public boolean isEnabled();
   8178     method public boolean isPersistent();
   8179     method public boolean isPreferred();
   8180     method public void writeToParcel(android.os.Parcel, int);
   8181     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.data.DataProfile> CREATOR;
   8182     field public static final int TYPE_3GPP = 1; // 0x1
   8183     field public static final int TYPE_3GPP2 = 2; // 0x2
   8184     field public static final int TYPE_COMMON = 0; // 0x0
   8185   }
   8186 
   8187   public static final class DataProfile.Builder {
   8188     ctor public DataProfile.Builder();
   8189     method @NonNull public android.telephony.data.DataProfile build();
   8190     method @NonNull public android.telephony.data.DataProfile.Builder enable(boolean);
   8191     method @NonNull public android.telephony.data.DataProfile.Builder setApn(@NonNull String);
   8192     method @NonNull public android.telephony.data.DataProfile.Builder setAuthType(int);
   8193     method @NonNull public android.telephony.data.DataProfile.Builder setBearerBitmask(int);
   8194     method @NonNull public android.telephony.data.DataProfile.Builder setMtu(int);
   8195     method @NonNull public android.telephony.data.DataProfile.Builder setPassword(@NonNull String);
   8196     method @NonNull public android.telephony.data.DataProfile.Builder setPersistent(boolean);
   8197     method @NonNull public android.telephony.data.DataProfile.Builder setPreferred(boolean);
   8198     method @NonNull public android.telephony.data.DataProfile.Builder setProfileId(int);
   8199     method @NonNull public android.telephony.data.DataProfile.Builder setProtocolType(int);
   8200     method @NonNull public android.telephony.data.DataProfile.Builder setRoamingProtocolType(int);
   8201     method @NonNull public android.telephony.data.DataProfile.Builder setSupportedApnTypesBitmask(int);
   8202     method @NonNull public android.telephony.data.DataProfile.Builder setType(int);
   8203     method @NonNull public android.telephony.data.DataProfile.Builder setUserName(@NonNull String);
   8204   }
   8205 
   8206   public abstract class DataService extends android.app.Service {
   8207     ctor public DataService();
   8208     method public android.os.IBinder onBind(android.content.Intent);
   8209     method @Nullable public abstract android.telephony.data.DataService.DataServiceProvider onCreateDataServiceProvider(int);
   8210     field public static final int REQUEST_REASON_HANDOVER = 3; // 0x3
   8211     field public static final int REQUEST_REASON_NORMAL = 1; // 0x1
   8212     field public static final int REQUEST_REASON_SHUTDOWN = 2; // 0x2
   8213     field public static final int REQUEST_REASON_UNKNOWN = 0; // 0x0
   8214     field public static final String SERVICE_INTERFACE = "android.telephony.data.DataService";
   8215   }
   8216 
   8217   public abstract class DataService.DataServiceProvider implements java.lang.AutoCloseable {
   8218     ctor public DataService.DataServiceProvider(int);
   8219     method public abstract void close();
   8220     method public void deactivateDataCall(int, int, @Nullable android.telephony.data.DataServiceCallback);
   8221     method public final int getSlotIndex();
   8222     method public final void notifyDataCallListChanged(java.util.List<android.telephony.data.DataCallResponse>);
   8223     method public void requestDataCallList(@NonNull android.telephony.data.DataServiceCallback);
   8224     method public void setDataProfile(@NonNull java.util.List<android.telephony.data.DataProfile>, boolean, @NonNull android.telephony.data.DataServiceCallback);
   8225     method public void setInitialAttachApn(@NonNull android.telephony.data.DataProfile, boolean, @NonNull android.telephony.data.DataServiceCallback);
   8226     method public void setupDataCall(int, @NonNull android.telephony.data.DataProfile, boolean, boolean, int, @Nullable android.net.LinkProperties, @NonNull android.telephony.data.DataServiceCallback);
   8227   }
   8228 
   8229   public class DataServiceCallback {
   8230     method public void onDataCallListChanged(@NonNull java.util.List<android.telephony.data.DataCallResponse>);
   8231     method public void onDeactivateDataCallComplete(int);
   8232     method public void onRequestDataCallListComplete(int, @NonNull java.util.List<android.telephony.data.DataCallResponse>);
   8233     method public void onSetDataProfileComplete(int);
   8234     method public void onSetInitialAttachApnComplete(int);
   8235     method public void onSetupDataCallComplete(int, @Nullable android.telephony.data.DataCallResponse);
   8236     field public static final int RESULT_ERROR_BUSY = 3; // 0x3
   8237     field public static final int RESULT_ERROR_ILLEGAL_STATE = 4; // 0x4
   8238     field public static final int RESULT_ERROR_INVALID_ARG = 2; // 0x2
   8239     field public static final int RESULT_ERROR_UNSUPPORTED = 1; // 0x1
   8240     field public static final int RESULT_SUCCESS = 0; // 0x0
   8241   }
   8242 
   8243   public abstract class QualifiedNetworksService extends android.app.Service {
   8244     ctor public QualifiedNetworksService();
   8245     method @NonNull public abstract android.telephony.data.QualifiedNetworksService.NetworkAvailabilityProvider onCreateNetworkAvailabilityProvider(int);
   8246     field public static final String QUALIFIED_NETWORKS_SERVICE_INTERFACE = "android.telephony.data.QualifiedNetworksService";
   8247   }
   8248 
   8249   public abstract class QualifiedNetworksService.NetworkAvailabilityProvider implements java.lang.AutoCloseable {
   8250     ctor public QualifiedNetworksService.NetworkAvailabilityProvider(int);
   8251     method public abstract void close();
   8252     method public final int getSlotIndex();
   8253     method public final void updateQualifiedNetworkTypes(int, @NonNull java.util.List<java.lang.Integer>);
   8254   }
   8255 
   8256 }
   8257 
   8258 package android.telephony.euicc {
   8259 
   8260   public final class DownloadableSubscription implements android.os.Parcelable {
   8261     method public java.util.List<android.telephony.UiccAccessRule> getAccessRules();
   8262     method @Nullable public String getCarrierName();
   8263   }
   8264 
   8265   public static final class DownloadableSubscription.Builder {
   8266     ctor public DownloadableSubscription.Builder();
   8267     ctor public DownloadableSubscription.Builder(android.telephony.euicc.DownloadableSubscription);
   8268     method public android.telephony.euicc.DownloadableSubscription build();
   8269     method public android.telephony.euicc.DownloadableSubscription.Builder setAccessRules(java.util.List<android.telephony.UiccAccessRule>);
   8270     method public android.telephony.euicc.DownloadableSubscription.Builder setCarrierName(String);
   8271     method public android.telephony.euicc.DownloadableSubscription.Builder setConfirmationCode(String);
   8272     method public android.telephony.euicc.DownloadableSubscription.Builder setEncodedActivationCode(String);
   8273   }
   8274 
   8275   public class EuiccCardManager {
   8276     method public void authenticateServer(String, String, byte[], byte[], byte[], byte[], java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
   8277     method public void cancelSession(String, byte[], @android.telephony.euicc.EuiccCardManager.CancelReason int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
   8278     method public void deleteProfile(String, String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
   8279     method public void disableProfile(String, String, boolean, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
   8280     method public void listNotifications(String, @android.telephony.euicc.EuiccNotification.Event int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.telephony.euicc.EuiccNotification[]>);
   8281     method public void loadBoundProfilePackage(String, byte[], java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
   8282     method public void prepareDownload(String, @Nullable byte[], byte[], byte[], byte[], java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
   8283     method public void removeNotificationFromList(String, int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
   8284     method public void requestAllProfiles(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.service.euicc.EuiccProfileInfo[]>);
   8285     method public void requestDefaultSmdpAddress(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.String>);
   8286     method public void requestEuiccChallenge(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
   8287     method public void requestEuiccInfo1(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
   8288     method public void requestEuiccInfo2(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
   8289     method public void requestProfile(String, String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.service.euicc.EuiccProfileInfo>);
   8290     method public void requestRulesAuthTable(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.telephony.euicc.EuiccRulesAuthTable>);
   8291     method public void requestSmdsAddress(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.String>);
   8292     method public void resetMemory(String, @android.telephony.euicc.EuiccCardManager.ResetOption int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
   8293     method public void retrieveNotification(String, int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.telephony.euicc.EuiccNotification>);
   8294     method public void retrieveNotificationList(String, @android.telephony.euicc.EuiccNotification.Event int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.telephony.euicc.EuiccNotification[]>);
   8295     method public void setDefaultSmdpAddress(String, String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
   8296     method public void setNickname(String, String, String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
   8297     method public void switchToProfile(String, String, boolean, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.service.euicc.EuiccProfileInfo>);
   8298     field public static final int CANCEL_REASON_END_USER_REJECTED = 0; // 0x0
   8299     field public static final int CANCEL_REASON_POSTPONED = 1; // 0x1
   8300     field public static final int CANCEL_REASON_PPR_NOT_ALLOWED = 3; // 0x3
   8301     field public static final int CANCEL_REASON_TIMEOUT = 2; // 0x2
   8302     field public static final int RESET_OPTION_DELETE_FIELD_LOADED_TEST_PROFILES = 2; // 0x2
   8303     field public static final int RESET_OPTION_DELETE_OPERATIONAL_PROFILES = 1; // 0x1
   8304     field public static final int RESET_OPTION_RESET_DEFAULT_SMDP_ADDRESS = 4; // 0x4
   8305     field public static final int RESULT_CALLER_NOT_ALLOWED = -3; // 0xfffffffd
   8306     field public static final int RESULT_EUICC_NOT_FOUND = -2; // 0xfffffffe
   8307     field public static final int RESULT_OK = 0; // 0x0
   8308     field public static final int RESULT_UNKNOWN_ERROR = -1; // 0xffffffff
   8309   }
   8310 
   8311   @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 {
   8312   }
   8313 
   8314   @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 {
   8315   }
   8316 
   8317   public static interface EuiccCardManager.ResultCallback<T> {
   8318     method public void onComplete(int, T);
   8319   }
   8320 
   8321   public class EuiccManager {
   8322     method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void continueOperation(android.content.Intent, android.os.Bundle);
   8323     method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void eraseSubscriptions(android.app.PendingIntent);
   8324     method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void getDefaultDownloadableSubscriptionList(android.app.PendingIntent);
   8325     method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void getDownloadableSubscriptionMetadata(android.telephony.euicc.DownloadableSubscription, android.app.PendingIntent);
   8326     method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public int getOtaStatus();
   8327     field public static final String ACTION_DELETE_SUBSCRIPTION_PRIVILEGED = "android.telephony.euicc.action.DELETE_SUBSCRIPTION_PRIVILEGED";
   8328     field @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public static final String ACTION_OTA_STATUS_CHANGED = "android.telephony.euicc.action.OTA_STATUS_CHANGED";
   8329     field public static final String ACTION_PROVISION_EMBEDDED_SUBSCRIPTION = "android.telephony.euicc.action.PROVISION_EMBEDDED_SUBSCRIPTION";
   8330     field public static final String ACTION_RENAME_SUBSCRIPTION_PRIVILEGED = "android.telephony.euicc.action.RENAME_SUBSCRIPTION_PRIVILEGED";
   8331     field public static final String ACTION_TOGGLE_SUBSCRIPTION_PRIVILEGED = "android.telephony.euicc.action.TOGGLE_SUBSCRIPTION_PRIVILEGED";
   8332     field public static final int EUICC_ACTIVATION_TYPE_ACCOUNT_REQUIRED = 4; // 0x4
   8333     field public static final int EUICC_ACTIVATION_TYPE_BACKUP = 2; // 0x2
   8334     field public static final int EUICC_ACTIVATION_TYPE_DEFAULT = 1; // 0x1
   8335     field public static final int EUICC_ACTIVATION_TYPE_TRANSFER = 3; // 0x3
   8336     field public static final int EUICC_OTA_FAILED = 2; // 0x2
   8337     field public static final int EUICC_OTA_IN_PROGRESS = 1; // 0x1
   8338     field public static final int EUICC_OTA_NOT_NEEDED = 4; // 0x4
   8339     field public static final int EUICC_OTA_STATUS_UNAVAILABLE = 5; // 0x5
   8340     field public static final int EUICC_OTA_SUCCEEDED = 3; // 0x3
   8341     field public static final String EXTRA_ACTIVATION_TYPE = "android.telephony.euicc.extra.ACTIVATION_TYPE";
   8342     field public static final String EXTRA_EMBEDDED_SUBSCRIPTION_DOWNLOADABLE_SUBSCRIPTIONS = "android.telephony.euicc.extra.EMBEDDED_SUBSCRIPTION_DOWNLOADABLE_SUBSCRIPTIONS";
   8343     field public static final String EXTRA_ENABLE_SUBSCRIPTION = "android.telephony.euicc.extra.ENABLE_SUBSCRIPTION";
   8344     field public static final String EXTRA_FORCE_PROVISION = "android.telephony.euicc.extra.FORCE_PROVISION";
   8345     field public static final String EXTRA_FROM_SUBSCRIPTION_ID = "android.telephony.euicc.extra.FROM_SUBSCRIPTION_ID";
   8346     field public static final String EXTRA_SUBSCRIPTION_ID = "android.telephony.euicc.extra.SUBSCRIPTION_ID";
   8347     field public static final String EXTRA_SUBSCRIPTION_NICKNAME = "android.telephony.euicc.extra.SUBSCRIPTION_NICKNAME";
   8348   }
   8349 
   8350   @IntDef(prefix={"EUICC_OTA_"}, value={android.telephony.euicc.EuiccManager.EUICC_OTA_IN_PROGRESS, android.telephony.euicc.EuiccManager.EUICC_OTA_FAILED, android.telephony.euicc.EuiccManager.EUICC_OTA_SUCCEEDED, android.telephony.euicc.EuiccManager.EUICC_OTA_NOT_NEEDED, android.telephony.euicc.EuiccManager.EUICC_OTA_STATUS_UNAVAILABLE}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface EuiccManager.OtaStatus {
   8351   }
   8352 
   8353   public final class EuiccNotification implements android.os.Parcelable {
   8354     ctor public EuiccNotification(int, String, @android.telephony.euicc.EuiccNotification.Event int, @Nullable byte[]);
   8355     method public int describeContents();
   8356     method @Nullable public byte[] getData();
   8357     method @android.telephony.euicc.EuiccNotification.Event public int getEvent();
   8358     method public int getSeq();
   8359     method public String getTargetAddr();
   8360     method public void writeToParcel(android.os.Parcel, int);
   8361     field @android.telephony.euicc.EuiccNotification.Event public static final int ALL_EVENTS = 15; // 0xf
   8362     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.euicc.EuiccNotification> CREATOR;
   8363     field public static final int EVENT_DELETE = 8; // 0x8
   8364     field public static final int EVENT_DISABLE = 4; // 0x4
   8365     field public static final int EVENT_ENABLE = 2; // 0x2
   8366     field public static final int EVENT_INSTALL = 1; // 0x1
   8367   }
   8368 
   8369   @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 {
   8370   }
   8371 
   8372   public final class EuiccRulesAuthTable implements android.os.Parcelable {
   8373     method public int describeContents();
   8374     method public int findIndex(@android.service.euicc.EuiccProfileInfo.PolicyRule int, android.service.carrier.CarrierIdentifier);
   8375     method public boolean hasPolicyRuleFlag(int, @android.telephony.euicc.EuiccRulesAuthTable.PolicyRuleFlag int);
   8376     method public void writeToParcel(android.os.Parcel, int);
   8377     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.euicc.EuiccRulesAuthTable> CREATOR;
   8378     field public static final int POLICY_RULE_FLAG_CONSENT_REQUIRED = 1; // 0x1
   8379   }
   8380 
   8381   public static final class EuiccRulesAuthTable.Builder {
   8382     ctor public EuiccRulesAuthTable.Builder(int);
   8383     method public android.telephony.euicc.EuiccRulesAuthTable.Builder add(int, java.util.List<android.service.carrier.CarrierIdentifier>, int);
   8384     method public android.telephony.euicc.EuiccRulesAuthTable build();
   8385   }
   8386 
   8387   @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 {
   8388   }
   8389 
   8390 }
   8391 
   8392 package android.telephony.ims {
   8393 
   8394   public final class ImsCallForwardInfo implements android.os.Parcelable {
   8395     ctor public ImsCallForwardInfo(int, int, int, int, @NonNull String, int);
   8396     method public int describeContents();
   8397     method public int getCondition();
   8398     method public String getNumber();
   8399     method public int getServiceClass();
   8400     method public int getStatus();
   8401     method public int getTimeSeconds();
   8402     method public int getToA();
   8403     method public void writeToParcel(android.os.Parcel, int);
   8404     field public static final int CDIV_CF_REASON_ALL = 4; // 0x4
   8405     field public static final int CDIV_CF_REASON_ALL_CONDITIONAL = 5; // 0x5
   8406     field public static final int CDIV_CF_REASON_BUSY = 1; // 0x1
   8407     field public static final int CDIV_CF_REASON_NOT_LOGGED_IN = 6; // 0x6
   8408     field public static final int CDIV_CF_REASON_NOT_REACHABLE = 3; // 0x3
   8409     field public static final int CDIV_CF_REASON_NO_REPLY = 2; // 0x2
   8410     field public static final int CDIV_CF_REASON_UNCONDITIONAL = 0; // 0x0
   8411     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsCallForwardInfo> CREATOR;
   8412     field public static final int STATUS_ACTIVE = 1; // 0x1
   8413     field public static final int STATUS_NOT_ACTIVE = 0; // 0x0
   8414     field public static final int TYPE_OF_ADDRESS_INTERNATIONAL = 145; // 0x91
   8415     field public static final int TYPE_OF_ADDRESS_UNKNOWN = 129; // 0x81
   8416   }
   8417 
   8418   public final class ImsCallProfile implements android.os.Parcelable {
   8419     ctor public ImsCallProfile();
   8420     ctor public ImsCallProfile(int, int);
   8421     ctor public ImsCallProfile(int, int, android.os.Bundle, android.telephony.ims.ImsStreamMediaProfile);
   8422     method public int describeContents();
   8423     method public String getCallExtra(String);
   8424     method public String getCallExtra(String, String);
   8425     method public boolean getCallExtraBoolean(String);
   8426     method public boolean getCallExtraBoolean(String, boolean);
   8427     method public int getCallExtraInt(String);
   8428     method public int getCallExtraInt(String, int);
   8429     method public android.os.Bundle getCallExtras();
   8430     method public int getCallType();
   8431     method public static int getCallTypeFromVideoState(int);
   8432     method public int getEmergencyCallRouting();
   8433     method public int getEmergencyServiceCategories();
   8434     method @NonNull public java.util.List<java.lang.String> getEmergencyUrns();
   8435     method public android.telephony.ims.ImsStreamMediaProfile getMediaProfile();
   8436     method public int getRestrictCause();
   8437     method public int getServiceType();
   8438     method public static int getVideoStateFromCallType(int);
   8439     method public static int getVideoStateFromImsCallProfile(android.telephony.ims.ImsCallProfile);
   8440     method public boolean hasKnownUserIntentEmergency();
   8441     method public boolean isEmergencyCallTesting();
   8442     method public boolean isVideoCall();
   8443     method public boolean isVideoPaused();
   8444     method public static int presentationToOir(int);
   8445     method public void setCallExtra(String, String);
   8446     method public void setCallExtraBoolean(String, boolean);
   8447     method public void setCallExtraInt(String, int);
   8448     method public void setCallRestrictCause(int);
   8449     method public void setEmergencyCallRouting(int);
   8450     method public void setEmergencyCallTesting(boolean);
   8451     method public void setEmergencyServiceCategories(int);
   8452     method public void setEmergencyUrns(@NonNull java.util.List<java.lang.String>);
   8453     method public void setHasKnownUserIntentEmergency(boolean);
   8454     method public void updateCallExtras(android.telephony.ims.ImsCallProfile);
   8455     method public void updateCallType(android.telephony.ims.ImsCallProfile);
   8456     method public void updateMediaProfile(android.telephony.ims.ImsCallProfile);
   8457     method public void writeToParcel(android.os.Parcel, int);
   8458     field public static final int CALL_RESTRICT_CAUSE_DISABLED = 2; // 0x2
   8459     field public static final int CALL_RESTRICT_CAUSE_HD = 3; // 0x3
   8460     field public static final int CALL_RESTRICT_CAUSE_NONE = 0; // 0x0
   8461     field public static final int CALL_RESTRICT_CAUSE_RAT = 1; // 0x1
   8462     field public static final int CALL_TYPE_VIDEO_N_VOICE = 3; // 0x3
   8463     field public static final int CALL_TYPE_VOICE = 2; // 0x2
   8464     field public static final int CALL_TYPE_VOICE_N_VIDEO = 1; // 0x1
   8465     field public static final int CALL_TYPE_VS = 8; // 0x8
   8466     field public static final int CALL_TYPE_VS_RX = 10; // 0xa
   8467     field public static final int CALL_TYPE_VS_TX = 9; // 0x9
   8468     field public static final int CALL_TYPE_VT = 4; // 0x4
   8469     field public static final int CALL_TYPE_VT_NODIR = 7; // 0x7
   8470     field public static final int CALL_TYPE_VT_RX = 6; // 0x6
   8471     field public static final int CALL_TYPE_VT_TX = 5; // 0x5
   8472     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsCallProfile> CREATOR;
   8473     field public static final int DIALSTRING_NORMAL = 0; // 0x0
   8474     field public static final int DIALSTRING_SS_CONF = 1; // 0x1
   8475     field public static final int DIALSTRING_USSD = 2; // 0x2
   8476     field public static final String EXTRA_ADDITIONAL_CALL_INFO = "AdditionalCallInfo";
   8477     field public static final String EXTRA_ADDITIONAL_SIP_INVITE_FIELDS = "android.telephony.ims.extra.ADDITIONAL_SIP_INVITE_FIELDS";
   8478     field public static final String EXTRA_CALL_RAT_TYPE = "CallRadioTech";
   8479     field public static final String EXTRA_CHILD_NUMBER = "ChildNum";
   8480     field public static final String EXTRA_CNA = "cna";
   8481     field public static final String EXTRA_CNAP = "cnap";
   8482     field public static final String EXTRA_CODEC = "Codec";
   8483     field public static final String EXTRA_DIALSTRING = "dialstring";
   8484     field public static final String EXTRA_DISPLAY_TEXT = "DisplayText";
   8485     field public static final String EXTRA_EMERGENCY_CALL = "e_call";
   8486     field public static final String EXTRA_IS_CALL_PULL = "CallPull";
   8487     field public static final String EXTRA_OI = "oi";
   8488     field public static final String EXTRA_OIR = "oir";
   8489     field public static final String EXTRA_REMOTE_URI = "remote_uri";
   8490     field public static final String EXTRA_USSD = "ussd";
   8491     field public static final int OIR_DEFAULT = 0; // 0x0
   8492     field public static final int OIR_PRESENTATION_NOT_RESTRICTED = 2; // 0x2
   8493     field public static final int OIR_PRESENTATION_PAYPHONE = 4; // 0x4
   8494     field public static final int OIR_PRESENTATION_RESTRICTED = 1; // 0x1
   8495     field public static final int OIR_PRESENTATION_UNKNOWN = 3; // 0x3
   8496     field public static final int SERVICE_TYPE_EMERGENCY = 2; // 0x2
   8497     field public static final int SERVICE_TYPE_NONE = 0; // 0x0
   8498     field public static final int SERVICE_TYPE_NORMAL = 1; // 0x1
   8499   }
   8500 
   8501   public class ImsCallSessionListener {
   8502     method public void callQualityChanged(@NonNull android.telephony.CallQuality);
   8503     method public void callSessionConferenceExtendFailed(android.telephony.ims.ImsReasonInfo);
   8504     method public void callSessionConferenceExtendReceived(android.telephony.ims.stub.ImsCallSessionImplBase, android.telephony.ims.ImsCallProfile);
   8505     method public void callSessionConferenceExtended(android.telephony.ims.stub.ImsCallSessionImplBase, android.telephony.ims.ImsCallProfile);
   8506     method public void callSessionConferenceStateUpdated(android.telephony.ims.ImsConferenceState);
   8507     method public void callSessionHandover(int, int, android.telephony.ims.ImsReasonInfo);
   8508     method public void callSessionHandoverFailed(int, int, android.telephony.ims.ImsReasonInfo);
   8509     method public void callSessionHeld(android.telephony.ims.ImsCallProfile);
   8510     method public void callSessionHoldFailed(android.telephony.ims.ImsReasonInfo);
   8511     method public void callSessionHoldReceived(android.telephony.ims.ImsCallProfile);
   8512     method public void callSessionInitiated(android.telephony.ims.ImsCallProfile);
   8513     method public void callSessionInitiatedFailed(android.telephony.ims.ImsReasonInfo);
   8514     method public void callSessionInviteParticipantsRequestDelivered();
   8515     method public void callSessionInviteParticipantsRequestFailed(android.telephony.ims.ImsReasonInfo);
   8516     method public void callSessionMayHandover(int, int);
   8517     method public void callSessionMergeComplete(android.telephony.ims.stub.ImsCallSessionImplBase);
   8518     method public void callSessionMergeFailed(android.telephony.ims.ImsReasonInfo);
   8519     method public void callSessionMergeStarted(android.telephony.ims.stub.ImsCallSessionImplBase, android.telephony.ims.ImsCallProfile);
   8520     method public void callSessionMultipartyStateChanged(boolean);
   8521     method public void callSessionProgressing(android.telephony.ims.ImsStreamMediaProfile);
   8522     method public void callSessionRemoveParticipantsRequestDelivered();
   8523     method public void callSessionRemoveParticipantsRequestFailed(android.telephony.ims.ImsReasonInfo);
   8524     method public void callSessionResumeFailed(android.telephony.ims.ImsReasonInfo);
   8525     method public void callSessionResumeReceived(android.telephony.ims.ImsCallProfile);
   8526     method public void callSessionResumed(android.telephony.ims.ImsCallProfile);
   8527     method public void callSessionRttAudioIndicatorChanged(@NonNull android.telephony.ims.ImsStreamMediaProfile);
   8528     method public void callSessionRttMessageReceived(String);
   8529     method public void callSessionRttModifyRequestReceived(android.telephony.ims.ImsCallProfile);
   8530     method public void callSessionRttModifyResponseReceived(int);
   8531     method public void callSessionSuppServiceReceived(android.telephony.ims.ImsSuppServiceNotification);
   8532     method public void callSessionTerminated(android.telephony.ims.ImsReasonInfo);
   8533     method public void callSessionTtyModeReceived(int);
   8534     method public void callSessionUpdateFailed(android.telephony.ims.ImsReasonInfo);
   8535     method public void callSessionUpdateReceived(android.telephony.ims.ImsCallProfile);
   8536     method public void callSessionUpdated(android.telephony.ims.ImsCallProfile);
   8537     method public void callSessionUssdMessageReceived(int, String);
   8538   }
   8539 
   8540   public final class ImsConferenceState implements android.os.Parcelable {
   8541     method public int describeContents();
   8542     method public static int getConnectionStateForStatus(String);
   8543     method public void writeToParcel(android.os.Parcel, int);
   8544     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsConferenceState> CREATOR;
   8545     field public static final String DISPLAY_TEXT = "display-text";
   8546     field public static final String ENDPOINT = "endpoint";
   8547     field public static final String SIP_STATUS_CODE = "sipstatuscode";
   8548     field public static final String STATUS = "status";
   8549     field public static final String STATUS_ALERTING = "alerting";
   8550     field public static final String STATUS_CONNECTED = "connected";
   8551     field public static final String STATUS_CONNECT_FAIL = "connect-fail";
   8552     field public static final String STATUS_DIALING_IN = "dialing-in";
   8553     field public static final String STATUS_DIALING_OUT = "dialing-out";
   8554     field public static final String STATUS_DISCONNECTED = "disconnected";
   8555     field public static final String STATUS_DISCONNECTING = "disconnecting";
   8556     field public static final String STATUS_MUTED_VIA_FOCUS = "muted-via-focus";
   8557     field public static final String STATUS_ON_HOLD = "on-hold";
   8558     field public static final String STATUS_PENDING = "pending";
   8559     field public static final String STATUS_SEND_ONLY = "sendonly";
   8560     field public static final String STATUS_SEND_RECV = "sendrecv";
   8561     field public static final String USER = "user";
   8562     field public final java.util.HashMap<java.lang.String,android.os.Bundle> mParticipants;
   8563   }
   8564 
   8565   public final class ImsException extends java.lang.Exception {
   8566     ctor public ImsException(@Nullable String);
   8567     ctor public ImsException(@Nullable String, int);
   8568     ctor public ImsException(@Nullable String, int, @Nullable Throwable);
   8569     method public int getCode();
   8570     field public static final int CODE_ERROR_SERVICE_UNAVAILABLE = 1; // 0x1
   8571     field public static final int CODE_ERROR_UNSPECIFIED = 0; // 0x0
   8572     field public static final int CODE_ERROR_UNSUPPORTED_OPERATION = 2; // 0x2
   8573   }
   8574 
   8575   public final class ImsExternalCallState implements android.os.Parcelable {
   8576     ctor public ImsExternalCallState(@NonNull String, @NonNull android.net.Uri, @Nullable android.net.Uri, boolean, int, int, boolean);
   8577     method public int describeContents();
   8578     method @NonNull public android.net.Uri getAddress();
   8579     method public int getCallId();
   8580     method public int getCallState();
   8581     method public int getCallType();
   8582     method @Nullable public android.net.Uri getLocalAddress();
   8583     method public boolean isCallHeld();
   8584     method public boolean isCallPullable();
   8585     method public void writeToParcel(android.os.Parcel, int);
   8586     field public static final int CALL_STATE_CONFIRMED = 1; // 0x1
   8587     field public static final int CALL_STATE_TERMINATED = 2; // 0x2
   8588     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsExternalCallState> CREATOR;
   8589   }
   8590 
   8591   public class ImsMmTelManager {
   8592     method @NonNull public static android.telephony.ims.ImsMmTelManager createForSubscriptionId(int);
   8593     method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getVoWiFiModeSetting();
   8594     method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getVoWiFiRoamingModeSetting();
   8595     method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isAdvancedCallingSettingEnabled();
   8596     method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isAvailable(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int, int);
   8597     method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isCapable(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int, int);
   8598     method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isVoWiFiRoamingSettingEnabled();
   8599     method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isVoWiFiSettingEnabled();
   8600     method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isVtSettingEnabled();
   8601     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;
   8602     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;
   8603     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setAdvancedCallingSettingEnabled(boolean);
   8604     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setRttCapabilitySetting(boolean);
   8605     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiModeSetting(int);
   8606     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiNonPersistent(boolean, int);
   8607     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiRoamingModeSetting(int);
   8608     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiRoamingSettingEnabled(boolean);
   8609     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiSettingEnabled(boolean);
   8610     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVtSettingEnabled(boolean);
   8611     method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void unregisterImsRegistrationCallback(@NonNull android.telephony.ims.ImsMmTelManager.RegistrationCallback);
   8612     method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void unregisterMmTelCapabilityCallback(@NonNull android.telephony.ims.ImsMmTelManager.CapabilityCallback);
   8613     field public static final int WIFI_MODE_CELLULAR_PREFERRED = 1; // 0x1
   8614     field public static final int WIFI_MODE_WIFI_ONLY = 0; // 0x0
   8615     field public static final int WIFI_MODE_WIFI_PREFERRED = 2; // 0x2
   8616   }
   8617 
   8618   public static class ImsMmTelManager.CapabilityCallback {
   8619     ctor public ImsMmTelManager.CapabilityCallback();
   8620     method public void onCapabilitiesStatusChanged(@NonNull android.telephony.ims.feature.MmTelFeature.MmTelCapabilities);
   8621   }
   8622 
   8623   public static class ImsMmTelManager.RegistrationCallback {
   8624     ctor public ImsMmTelManager.RegistrationCallback();
   8625     method public void onRegistered(int);
   8626     method public void onRegistering(int);
   8627     method public void onTechnologyChangeFailed(int, @Nullable android.telephony.ims.ImsReasonInfo);
   8628     method public void onUnregistered(@Nullable android.telephony.ims.ImsReasonInfo);
   8629   }
   8630 
   8631   public final class ImsReasonInfo implements android.os.Parcelable {
   8632     ctor public ImsReasonInfo(int, int, String);
   8633     method public int describeContents();
   8634     method public int getCode();
   8635     method public int getExtraCode();
   8636     method public String getExtraMessage();
   8637     method public void writeToParcel(android.os.Parcel, int);
   8638     field public static final int CODE_ACCESS_CLASS_BLOCKED = 1512; // 0x5e8
   8639     field public static final int CODE_ANSWERED_ELSEWHERE = 1014; // 0x3f6
   8640     field public static final int CODE_BLACKLISTED_CALL_ID = 506; // 0x1fa
   8641     field public static final int CODE_CALL_BARRED = 240; // 0xf0
   8642     field public static final int CODE_CALL_DROP_IWLAN_TO_LTE_UNAVAILABLE = 1100; // 0x44c
   8643     field public static final int CODE_CALL_END_CAUSE_CALL_PULL = 1016; // 0x3f8
   8644     field public static final int CODE_CALL_PULL_OUT_OF_SYNC = 1015; // 0x3f7
   8645     field public static final int CODE_DATA_DISABLED = 1406; // 0x57e
   8646     field public static final int CODE_DATA_LIMIT_REACHED = 1405; // 0x57d
   8647     field public static final int CODE_DIAL_MODIFIED_TO_DIAL = 246; // 0xf6
   8648     field public static final int CODE_DIAL_MODIFIED_TO_DIAL_VIDEO = 247; // 0xf7
   8649     field public static final int CODE_DIAL_MODIFIED_TO_SS = 245; // 0xf5
   8650     field public static final int CODE_DIAL_MODIFIED_TO_USSD = 244; // 0xf4
   8651     field public static final int CODE_DIAL_VIDEO_MODIFIED_TO_DIAL = 248; // 0xf8
   8652     field public static final int CODE_DIAL_VIDEO_MODIFIED_TO_DIAL_VIDEO = 249; // 0xf9
   8653     field public static final int CODE_DIAL_VIDEO_MODIFIED_TO_SS = 250; // 0xfa
   8654     field public static final int CODE_DIAL_VIDEO_MODIFIED_TO_USSD = 251; // 0xfb
   8655     field public static final int CODE_ECBM_NOT_SUPPORTED = 901; // 0x385
   8656     field public static final int CODE_EMERGENCY_PERM_FAILURE = 364; // 0x16c
   8657     field public static final int CODE_EMERGENCY_TEMP_FAILURE = 363; // 0x16b
   8658     field public static final int CODE_EPDG_TUNNEL_ESTABLISH_FAILURE = 1400; // 0x578
   8659     field public static final int CODE_EPDG_TUNNEL_LOST_CONNECTION = 1402; // 0x57a
   8660     field public static final int CODE_EPDG_TUNNEL_REKEY_FAILURE = 1401; // 0x579
   8661     field public static final int CODE_FDN_BLOCKED = 241; // 0xf1
   8662     field public static final int CODE_IKEV2_AUTH_FAILURE = 1408; // 0x580
   8663     field public static final int CODE_IMEI_NOT_ACCEPTED = 243; // 0xf3
   8664     field public static final int CODE_IWLAN_DPD_FAILURE = 1300; // 0x514
   8665     field public static final int CODE_LOCAL_CALL_BUSY = 142; // 0x8e
   8666     field public static final int CODE_LOCAL_CALL_CS_RETRY_REQUIRED = 146; // 0x92
   8667     field public static final int CODE_LOCAL_CALL_DECLINE = 143; // 0x8f
   8668     field public static final int CODE_LOCAL_CALL_EXCEEDED = 141; // 0x8d
   8669     field public static final int CODE_LOCAL_CALL_RESOURCE_RESERVATION_FAILED = 145; // 0x91
   8670     field public static final int CODE_LOCAL_CALL_TERMINATED = 148; // 0x94
   8671     field public static final int CODE_LOCAL_CALL_VCC_ON_PROGRESSING = 144; // 0x90
   8672     field public static final int CODE_LOCAL_CALL_VOLTE_RETRY_REQUIRED = 147; // 0x93
   8673     field public static final int CODE_LOCAL_ENDED_BY_CONFERENCE_MERGE = 108; // 0x6c
   8674     field public static final int CODE_LOCAL_HO_NOT_FEASIBLE = 149; // 0x95
   8675     field public static final int CODE_LOCAL_ILLEGAL_ARGUMENT = 101; // 0x65
   8676     field public static final int CODE_LOCAL_ILLEGAL_STATE = 102; // 0x66
   8677     field public static final int CODE_LOCAL_IMS_SERVICE_DOWN = 106; // 0x6a
   8678     field public static final int CODE_LOCAL_INTERNAL_ERROR = 103; // 0x67
   8679     field public static final int CODE_LOCAL_LOW_BATTERY = 112; // 0x70
   8680     field public static final int CODE_LOCAL_NETWORK_IP_CHANGED = 124; // 0x7c
   8681     field public static final int CODE_LOCAL_NETWORK_NO_LTE_COVERAGE = 122; // 0x7a
   8682     field public static final int CODE_LOCAL_NETWORK_NO_SERVICE = 121; // 0x79
   8683     field public static final int CODE_LOCAL_NETWORK_ROAMING = 123; // 0x7b
   8684     field public static final int CODE_LOCAL_NOT_REGISTERED = 132; // 0x84
   8685     field public static final int CODE_LOCAL_NO_PENDING_CALL = 107; // 0x6b
   8686     field public static final int CODE_LOCAL_POWER_OFF = 111; // 0x6f
   8687     field public static final int CODE_LOCAL_SERVICE_UNAVAILABLE = 131; // 0x83
   8688     field public static final int CODE_LOW_BATTERY = 505; // 0x1f9
   8689     field public static final int CODE_MAXIMUM_NUMBER_OF_CALLS_REACHED = 1403; // 0x57b
   8690     field public static final int CODE_MEDIA_INIT_FAILED = 401; // 0x191
   8691     field public static final int CODE_MEDIA_NOT_ACCEPTABLE = 403; // 0x193
   8692     field public static final int CODE_MEDIA_NO_DATA = 402; // 0x192
   8693     field public static final int CODE_MEDIA_UNSPECIFIED = 404; // 0x194
   8694     field public static final int CODE_MULTIENDPOINT_NOT_SUPPORTED = 902; // 0x386
   8695     field public static final int CODE_NETWORK_DETACH = 1513; // 0x5e9
   8696     field public static final int CODE_NETWORK_REJECT = 1504; // 0x5e0
   8697     field public static final int CODE_NETWORK_RESP_TIMEOUT = 1503; // 0x5df
   8698     field public static final int CODE_NO_CSFB_IN_CS_ROAM = 1516; // 0x5ec
   8699     field public static final int CODE_NO_VALID_SIM = 1501; // 0x5dd
   8700     field public static final int CODE_OEM_CAUSE_1 = 61441; // 0xf001
   8701     field public static final int CODE_OEM_CAUSE_10 = 61450; // 0xf00a
   8702     field public static final int CODE_OEM_CAUSE_11 = 61451; // 0xf00b
   8703     field public static final int CODE_OEM_CAUSE_12 = 61452; // 0xf00c
   8704     field public static final int CODE_OEM_CAUSE_13 = 61453; // 0xf00d
   8705     field public static final int CODE_OEM_CAUSE_14 = 61454; // 0xf00e
   8706     field public static final int CODE_OEM_CAUSE_15 = 61455; // 0xf00f
   8707     field public static final int CODE_OEM_CAUSE_2 = 61442; // 0xf002
   8708     field public static final int CODE_OEM_CAUSE_3 = 61443; // 0xf003
   8709     field public static final int CODE_OEM_CAUSE_4 = 61444; // 0xf004
   8710     field public static final int CODE_OEM_CAUSE_5 = 61445; // 0xf005
   8711     field public static final int CODE_OEM_CAUSE_6 = 61446; // 0xf006
   8712     field public static final int CODE_OEM_CAUSE_7 = 61447; // 0xf007
   8713     field public static final int CODE_OEM_CAUSE_8 = 61448; // 0xf008
   8714     field public static final int CODE_OEM_CAUSE_9 = 61449; // 0xf009
   8715     field public static final int CODE_RADIO_ACCESS_FAILURE = 1505; // 0x5e1
   8716     field public static final int CODE_RADIO_INTERNAL_ERROR = 1502; // 0x5de
   8717     field public static final int CODE_RADIO_LINK_FAILURE = 1506; // 0x5e2
   8718     field public static final int CODE_RADIO_LINK_LOST = 1507; // 0x5e3
   8719     field public static final int CODE_RADIO_OFF = 1500; // 0x5dc
   8720     field public static final int CODE_RADIO_RELEASE_ABNORMAL = 1511; // 0x5e7
   8721     field public static final int CODE_RADIO_RELEASE_NORMAL = 1510; // 0x5e6
   8722     field public static final int CODE_RADIO_SETUP_FAILURE = 1509; // 0x5e5
   8723     field public static final int CODE_RADIO_UPLINK_FAILURE = 1508; // 0x5e4
   8724     field public static final int CODE_REGISTRATION_ERROR = 1000; // 0x3e8
   8725     field public static final int CODE_REJECTED_ELSEWHERE = 1017; // 0x3f9
   8726     field public static final int CODE_REJECT_1X_COLLISION = 1603; // 0x643
   8727     field public static final int CODE_REJECT_CALL_ON_OTHER_SUB = 1602; // 0x642
   8728     field public static final int CODE_REJECT_CALL_TYPE_NOT_ALLOWED = 1605; // 0x645
   8729     field public static final int CODE_REJECT_CONFERENCE_TTY_NOT_ALLOWED = 1617; // 0x651
   8730     field public static final int CODE_REJECT_INTERNAL_ERROR = 1612; // 0x64c
   8731     field public static final int CODE_REJECT_MAX_CALL_LIMIT_REACHED = 1608; // 0x648
   8732     field public static final int CODE_REJECT_ONGOING_CALL_SETUP = 1607; // 0x647
   8733     field public static final int CODE_REJECT_ONGOING_CALL_TRANSFER = 1611; // 0x64b
   8734     field public static final int CODE_REJECT_ONGOING_CALL_UPGRADE = 1616; // 0x650
   8735     field public static final int CODE_REJECT_ONGOING_CALL_WAITING_DISABLED = 1601; // 0x641
   8736     field public static final int CODE_REJECT_ONGOING_CONFERENCE_CALL = 1618; // 0x652
   8737     field public static final int CODE_REJECT_ONGOING_CS_CALL = 1621; // 0x655
   8738     field public static final int CODE_REJECT_ONGOING_E911_CALL = 1606; // 0x646
   8739     field public static final int CODE_REJECT_ONGOING_ENCRYPTED_CALL = 1620; // 0x654
   8740     field public static final int CODE_REJECT_ONGOING_HANDOVER = 1614; // 0x64e
   8741     field public static final int CODE_REJECT_QOS_FAILURE = 1613; // 0x64d
   8742     field public static final int CODE_REJECT_SERVICE_NOT_REGISTERED = 1604; // 0x644
   8743     field public static final int CODE_REJECT_UNKNOWN = 1600; // 0x640
   8744     field public static final int CODE_REJECT_UNSUPPORTED_SDP_HEADERS = 1610; // 0x64a
   8745     field public static final int CODE_REJECT_UNSUPPORTED_SIP_HEADERS = 1609; // 0x649
   8746     field public static final int CODE_REJECT_VT_AVPF_NOT_ALLOWED = 1619; // 0x653
   8747     field public static final int CODE_REJECT_VT_TTY_NOT_ALLOWED = 1615; // 0x64f
   8748     field public static final int CODE_REMOTE_CALL_DECLINE = 1404; // 0x57c
   8749     field public static final int CODE_SESSION_MODIFICATION_FAILED = 1517; // 0x5ed
   8750     field public static final int CODE_SIP_ALTERNATE_EMERGENCY_CALL = 1514; // 0x5ea
   8751     field public static final int CODE_SIP_AMBIGUOUS = 376; // 0x178
   8752     field public static final int CODE_SIP_BAD_ADDRESS = 337; // 0x151
   8753     field public static final int CODE_SIP_BAD_REQUEST = 331; // 0x14b
   8754     field public static final int CODE_SIP_BUSY = 338; // 0x152
   8755     field public static final int CODE_SIP_CALL_OR_TRANS_DOES_NOT_EXIST = 372; // 0x174
   8756     field public static final int CODE_SIP_CLIENT_ERROR = 342; // 0x156
   8757     field public static final int CODE_SIP_EXTENSION_REQUIRED = 370; // 0x172
   8758     field public static final int CODE_SIP_FORBIDDEN = 332; // 0x14c
   8759     field public static final int CODE_SIP_GLOBAL_ERROR = 362; // 0x16a
   8760     field public static final int CODE_SIP_INTERVAL_TOO_BRIEF = 371; // 0x173
   8761     field public static final int CODE_SIP_LOOP_DETECTED = 373; // 0x175
   8762     field public static final int CODE_SIP_METHOD_NOT_ALLOWED = 366; // 0x16e
   8763     field public static final int CODE_SIP_NOT_ACCEPTABLE = 340; // 0x154
   8764     field public static final int CODE_SIP_NOT_FOUND = 333; // 0x14d
   8765     field public static final int CODE_SIP_NOT_REACHABLE = 341; // 0x155
   8766     field public static final int CODE_SIP_NOT_SUPPORTED = 334; // 0x14e
   8767     field public static final int CODE_SIP_PROXY_AUTHENTICATION_REQUIRED = 367; // 0x16f
   8768     field public static final int CODE_SIP_REDIRECTED = 321; // 0x141
   8769     field public static final int CODE_SIP_REQUEST_CANCELLED = 339; // 0x153
   8770     field public static final int CODE_SIP_REQUEST_ENTITY_TOO_LARGE = 368; // 0x170
   8771     field public static final int CODE_SIP_REQUEST_PENDING = 377; // 0x179
   8772     field public static final int CODE_SIP_REQUEST_TIMEOUT = 335; // 0x14f
   8773     field public static final int CODE_SIP_REQUEST_URI_TOO_LARGE = 369; // 0x171
   8774     field public static final int CODE_SIP_SERVER_ERROR = 354; // 0x162
   8775     field public static final int CODE_SIP_SERVER_INTERNAL_ERROR = 351; // 0x15f
   8776     field public static final int CODE_SIP_SERVER_TIMEOUT = 353; // 0x161
   8777     field public static final int CODE_SIP_SERVICE_UNAVAILABLE = 352; // 0x160
   8778     field public static final int CODE_SIP_TEMPRARILY_UNAVAILABLE = 336; // 0x150
   8779     field public static final int CODE_SIP_TOO_MANY_HOPS = 374; // 0x176
   8780     field public static final int CODE_SIP_TRANSACTION_DOES_NOT_EXIST = 343; // 0x157
   8781     field public static final int CODE_SIP_UNDECIPHERABLE = 378; // 0x17a
   8782     field public static final int CODE_SIP_USER_MARKED_UNWANTED = 365; // 0x16d
   8783     field public static final int CODE_SIP_USER_REJECTED = 361; // 0x169
   8784     field public static final int CODE_SUPP_SVC_CANCELLED = 1202; // 0x4b2
   8785     field public static final int CODE_SUPP_SVC_FAILED = 1201; // 0x4b1
   8786     field public static final int CODE_SUPP_SVC_REINVITE_COLLISION = 1203; // 0x4b3
   8787     field public static final int CODE_TIMEOUT_1XX_WAITING = 201; // 0xc9
   8788     field public static final int CODE_TIMEOUT_NO_ANSWER = 202; // 0xca
   8789     field public static final int CODE_TIMEOUT_NO_ANSWER_CALL_UPDATE = 203; // 0xcb
   8790     field public static final int CODE_UNSPECIFIED = 0; // 0x0
   8791     field public static final int CODE_USER_CANCELLED_SESSION_MODIFICATION = 512; // 0x200
   8792     field public static final int CODE_USER_DECLINE = 504; // 0x1f8
   8793     field public static final int CODE_USER_IGNORE = 503; // 0x1f7
   8794     field public static final int CODE_USER_NOANSWER = 502; // 0x1f6
   8795     field public static final int CODE_USER_REJECTED_SESSION_MODIFICATION = 511; // 0x1ff
   8796     field public static final int CODE_USER_TERMINATED = 501; // 0x1f5
   8797     field public static final int CODE_USER_TERMINATED_BY_REMOTE = 510; // 0x1fe
   8798     field public static final int CODE_UT_CB_PASSWORD_MISMATCH = 821; // 0x335
   8799     field public static final int CODE_UT_NETWORK_ERROR = 804; // 0x324
   8800     field public static final int CODE_UT_NOT_SUPPORTED = 801; // 0x321
   8801     field public static final int CODE_UT_OPERATION_NOT_ALLOWED = 803; // 0x323
   8802     field public static final int CODE_UT_SERVICE_UNAVAILABLE = 802; // 0x322
   8803     field public static final int CODE_UT_SS_MODIFIED_TO_DIAL = 822; // 0x336
   8804     field public static final int CODE_UT_SS_MODIFIED_TO_DIAL_VIDEO = 825; // 0x339
   8805     field public static final int CODE_UT_SS_MODIFIED_TO_SS = 824; // 0x338
   8806     field public static final int CODE_UT_SS_MODIFIED_TO_USSD = 823; // 0x337
   8807     field public static final int CODE_WIFI_LOST = 1407; // 0x57f
   8808     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsReasonInfo> CREATOR;
   8809     field public static final int EXTRA_CODE_CALL_RETRY_BY_SETTINGS = 3; // 0x3
   8810     field public static final int EXTRA_CODE_CALL_RETRY_NORMAL = 1; // 0x1
   8811     field public static final int EXTRA_CODE_CALL_RETRY_SILENT_REDIAL = 2; // 0x2
   8812     field public static final String EXTRA_MSG_SERVICE_NOT_AUTHORIZED = "Forbidden. Not Authorized for Service";
   8813   }
   8814 
   8815   public class ImsService extends android.app.Service {
   8816     ctor public ImsService();
   8817     method public android.telephony.ims.feature.MmTelFeature createMmTelFeature(int);
   8818     method public android.telephony.ims.feature.RcsFeature createRcsFeature(int);
   8819     method public void disableIms(int);
   8820     method public void enableIms(int);
   8821     method public android.telephony.ims.stub.ImsConfigImplBase getConfig(int);
   8822     method public android.telephony.ims.stub.ImsRegistrationImplBase getRegistration(int);
   8823     method public final void onUpdateSupportedImsFeatures(android.telephony.ims.stub.ImsFeatureConfiguration) throws android.os.RemoteException;
   8824     method public android.telephony.ims.stub.ImsFeatureConfiguration querySupportedImsFeatures();
   8825     method public void readyForFeatureCreation();
   8826   }
   8827 
   8828   public final class ImsSsData implements android.os.Parcelable {
   8829     ctor public ImsSsData(int, int, int, int, int);
   8830     method public int describeContents();
   8831     method @Nullable public java.util.List<android.telephony.ims.ImsCallForwardInfo> getCallForwardInfo();
   8832     method public int getRequestType();
   8833     method public int getResult();
   8834     method public int getServiceClass();
   8835     method public int getServiceType();
   8836     method @NonNull public java.util.List<android.telephony.ims.ImsSsInfo> getSuppServiceInfo();
   8837     method public int getTeleserviceType();
   8838     method public boolean isTypeBarring();
   8839     method public boolean isTypeCf();
   8840     method public boolean isTypeClip();
   8841     method public boolean isTypeClir();
   8842     method public boolean isTypeColp();
   8843     method public boolean isTypeColr();
   8844     method public boolean isTypeCw();
   8845     method public boolean isTypeIcb();
   8846     method public boolean isTypeInterrogation();
   8847     method public boolean isTypeUnConditional();
   8848     method public void writeToParcel(android.os.Parcel, int);
   8849     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsSsData> CREATOR;
   8850     field public static final int RESULT_SUCCESS = 0; // 0x0
   8851     field public static final int SERVICE_CLASS_DATA = 2; // 0x2
   8852     field public static final int SERVICE_CLASS_DATA_CIRCUIT_ASYNC = 32; // 0x20
   8853     field public static final int SERVICE_CLASS_DATA_CIRCUIT_SYNC = 16; // 0x10
   8854     field public static final int SERVICE_CLASS_DATA_PACKET_ACCESS = 64; // 0x40
   8855     field public static final int SERVICE_CLASS_DATA_PAD = 128; // 0x80
   8856     field public static final int SERVICE_CLASS_FAX = 4; // 0x4
   8857     field public static final int SERVICE_CLASS_NONE = 0; // 0x0
   8858     field public static final int SERVICE_CLASS_SMS = 8; // 0x8
   8859     field public static final int SERVICE_CLASS_VOICE = 1; // 0x1
   8860     field public static final int SS_ACTIVATION = 0; // 0x0
   8861     field public static final int SS_ALL_BARRING = 18; // 0x12
   8862     field public static final int SS_ALL_DATA_TELESERVICES = 3; // 0x3
   8863     field public static final int SS_ALL_TELESERVICES_EXCEPT_SMS = 5; // 0x5
   8864     field public static final int SS_ALL_TELESEVICES = 1; // 0x1
   8865     field public static final int SS_ALL_TELE_AND_BEARER_SERVICES = 0; // 0x0
   8866     field public static final int SS_BAIC = 16; // 0x10
   8867     field public static final int SS_BAIC_ROAMING = 17; // 0x11
   8868     field public static final int SS_BAOC = 13; // 0xd
   8869     field public static final int SS_BAOIC = 14; // 0xe
   8870     field public static final int SS_BAOIC_EXC_HOME = 15; // 0xf
   8871     field public static final int SS_CFU = 0; // 0x0
   8872     field public static final int SS_CFUT = 6; // 0x6
   8873     field public static final int SS_CF_ALL = 4; // 0x4
   8874     field public static final int SS_CF_ALL_CONDITIONAL = 5; // 0x5
   8875     field public static final int SS_CF_BUSY = 1; // 0x1
   8876     field public static final int SS_CF_NOT_REACHABLE = 3; // 0x3
   8877     field public static final int SS_CF_NO_REPLY = 2; // 0x2
   8878     field public static final int SS_CLIP = 7; // 0x7
   8879     field public static final int SS_CLIR = 8; // 0x8
   8880     field public static final int SS_CNAP = 11; // 0xb
   8881     field public static final int SS_COLP = 9; // 0x9
   8882     field public static final int SS_COLR = 10; // 0xa
   8883     field public static final int SS_DEACTIVATION = 1; // 0x1
   8884     field public static final int SS_ERASURE = 4; // 0x4
   8885     field public static final int SS_INCOMING_BARRING = 20; // 0x14
   8886     field public static final int SS_INCOMING_BARRING_ANONYMOUS = 22; // 0x16
   8887     field public static final int SS_INCOMING_BARRING_DN = 21; // 0x15
   8888     field public static final int SS_INTERROGATION = 2; // 0x2
   8889     field public static final int SS_OUTGOING_BARRING = 19; // 0x13
   8890     field public static final int SS_REGISTRATION = 3; // 0x3
   8891     field public static final int SS_SMS_SERVICES = 4; // 0x4
   8892     field public static final int SS_TELEPHONY = 2; // 0x2
   8893     field public static final int SS_WAIT = 12; // 0xc
   8894   }
   8895 
   8896   public static final class ImsSsData.Builder {
   8897     ctor public ImsSsData.Builder(int, int, int, int, int);
   8898     method @NonNull public android.telephony.ims.ImsSsData build();
   8899     method @NonNull public android.telephony.ims.ImsSsData.Builder setCallForwardingInfo(@NonNull java.util.List<android.telephony.ims.ImsCallForwardInfo>);
   8900     method @NonNull public android.telephony.ims.ImsSsData.Builder setSuppServiceInfo(@NonNull java.util.List<android.telephony.ims.ImsSsInfo>);
   8901   }
   8902 
   8903   public final class ImsSsInfo implements android.os.Parcelable {
   8904     ctor @Deprecated public ImsSsInfo(int, @Nullable String);
   8905     method public int describeContents();
   8906     method public int getClirInterrogationStatus();
   8907     method public int getClirOutgoingState();
   8908     method @Deprecated public String getIcbNum();
   8909     method @Nullable public String getIncomingCommunicationBarringNumber();
   8910     method public int getProvisionStatus();
   8911     method public int getStatus();
   8912     method public void writeToParcel(android.os.Parcel, int);
   8913     field public static final int CLIR_OUTGOING_DEFAULT = 0; // 0x0
   8914     field public static final int CLIR_OUTGOING_INVOCATION = 1; // 0x1
   8915     field public static final int CLIR_OUTGOING_SUPPRESSION = 2; // 0x2
   8916     field public static final int CLIR_STATUS_NOT_PROVISIONED = 0; // 0x0
   8917     field public static final int CLIR_STATUS_PROVISIONED_PERMANENT = 1; // 0x1
   8918     field public static final int CLIR_STATUS_TEMPORARILY_ALLOWED = 4; // 0x4
   8919     field public static final int CLIR_STATUS_TEMPORARILY_RESTRICTED = 3; // 0x3
   8920     field public static final int CLIR_STATUS_UNKNOWN = 2; // 0x2
   8921     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsSsInfo> CREATOR;
   8922     field public static final int DISABLED = 0; // 0x0
   8923     field public static final int ENABLED = 1; // 0x1
   8924     field public static final int NOT_REGISTERED = -1; // 0xffffffff
   8925     field public static final int SERVICE_NOT_PROVISIONED = 0; // 0x0
   8926     field public static final int SERVICE_PROVISIONED = 1; // 0x1
   8927     field public static final int SERVICE_PROVISIONING_UNKNOWN = -1; // 0xffffffff
   8928   }
   8929 
   8930   public static final class ImsSsInfo.Builder {
   8931     ctor public ImsSsInfo.Builder(int);
   8932     method @NonNull public android.telephony.ims.ImsSsInfo build();
   8933     method @NonNull public android.telephony.ims.ImsSsInfo.Builder setClirInterrogationStatus(int);
   8934     method @NonNull public android.telephony.ims.ImsSsInfo.Builder setClirOutgoingState(int);
   8935     method @NonNull public android.telephony.ims.ImsSsInfo.Builder setIncomingCommunicationBarringNumber(@NonNull String);
   8936     method @NonNull public android.telephony.ims.ImsSsInfo.Builder setProvisionStatus(int);
   8937   }
   8938 
   8939   public final class ImsStreamMediaProfile implements android.os.Parcelable {
   8940     ctor public ImsStreamMediaProfile(int, int, int, int, int);
   8941     method public void copyFrom(android.telephony.ims.ImsStreamMediaProfile);
   8942     method public int describeContents();
   8943     method public int getAudioDirection();
   8944     method public int getAudioQuality();
   8945     method public int getRttMode();
   8946     method public int getVideoDirection();
   8947     method public int getVideoQuality();
   8948     method public boolean isReceivingRttAudio();
   8949     method public boolean isRttCall();
   8950     method public void setReceivingRttAudio(boolean);
   8951     method public void setRttMode(int);
   8952     method public void writeToParcel(android.os.Parcel, int);
   8953     field public static final int AUDIO_QUALITY_AMR = 1; // 0x1
   8954     field public static final int AUDIO_QUALITY_AMR_WB = 2; // 0x2
   8955     field public static final int AUDIO_QUALITY_EVRC = 4; // 0x4
   8956     field public static final int AUDIO_QUALITY_EVRC_B = 5; // 0x5
   8957     field public static final int AUDIO_QUALITY_EVRC_NW = 7; // 0x7
   8958     field public static final int AUDIO_QUALITY_EVRC_WB = 6; // 0x6
   8959     field public static final int AUDIO_QUALITY_EVS_FB = 20; // 0x14
   8960     field public static final int AUDIO_QUALITY_EVS_NB = 17; // 0x11
   8961     field public static final int AUDIO_QUALITY_EVS_SWB = 19; // 0x13
   8962     field public static final int AUDIO_QUALITY_EVS_WB = 18; // 0x12
   8963     field public static final int AUDIO_QUALITY_G711A = 13; // 0xd
   8964     field public static final int AUDIO_QUALITY_G711AB = 15; // 0xf
   8965     field public static final int AUDIO_QUALITY_G711U = 11; // 0xb
   8966     field public static final int AUDIO_QUALITY_G722 = 14; // 0xe
   8967     field public static final int AUDIO_QUALITY_G723 = 12; // 0xc
   8968     field public static final int AUDIO_QUALITY_G729 = 16; // 0x10
   8969     field public static final int AUDIO_QUALITY_GSM_EFR = 8; // 0x8
   8970     field public static final int AUDIO_QUALITY_GSM_FR = 9; // 0x9
   8971     field public static final int AUDIO_QUALITY_GSM_HR = 10; // 0xa
   8972     field public static final int AUDIO_QUALITY_NONE = 0; // 0x0
   8973     field public static final int AUDIO_QUALITY_QCELP13K = 3; // 0x3
   8974     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsStreamMediaProfile> CREATOR;
   8975     field public static final int DIRECTION_INACTIVE = 0; // 0x0
   8976     field public static final int DIRECTION_INVALID = -1; // 0xffffffff
   8977     field public static final int DIRECTION_RECEIVE = 1; // 0x1
   8978     field public static final int DIRECTION_SEND = 2; // 0x2
   8979     field public static final int DIRECTION_SEND_RECEIVE = 3; // 0x3
   8980     field public static final int RTT_MODE_DISABLED = 0; // 0x0
   8981     field public static final int RTT_MODE_FULL = 1; // 0x1
   8982     field public static final int VIDEO_QUALITY_NONE = 0; // 0x0
   8983     field public static final int VIDEO_QUALITY_QCIF = 1; // 0x1
   8984     field public static final int VIDEO_QUALITY_QVGA_LANDSCAPE = 2; // 0x2
   8985     field public static final int VIDEO_QUALITY_QVGA_PORTRAIT = 4; // 0x4
   8986     field public static final int VIDEO_QUALITY_VGA_LANDSCAPE = 8; // 0x8
   8987     field public static final int VIDEO_QUALITY_VGA_PORTRAIT = 16; // 0x10
   8988   }
   8989 
   8990   public final class ImsSuppServiceNotification implements android.os.Parcelable {
   8991     ctor public ImsSuppServiceNotification(int, int, int, int, String, String[]);
   8992     method public int describeContents();
   8993     method public void writeToParcel(android.os.Parcel, int);
   8994     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsSuppServiceNotification> CREATOR;
   8995     field public final int code;
   8996     field public final String[] history;
   8997     field public final int index;
   8998     field public final int notificationType;
   8999     field public final String number;
   9000     field public final int type;
   9001   }
   9002 
   9003   public class ImsUtListener {
   9004     method public void onSupplementaryServiceIndication(android.telephony.ims.ImsSsData);
   9005     method public void onUtConfigurationCallBarringQueried(int, android.telephony.ims.ImsSsInfo[]);
   9006     method public void onUtConfigurationCallForwardQueried(int, android.telephony.ims.ImsCallForwardInfo[]);
   9007     method public void onUtConfigurationCallWaitingQueried(int, android.telephony.ims.ImsSsInfo[]);
   9008     method public void onUtConfigurationQueried(int, android.os.Bundle);
   9009     method public void onUtConfigurationQueryFailed(int, android.telephony.ims.ImsReasonInfo);
   9010     method public void onUtConfigurationUpdateFailed(int, android.telephony.ims.ImsReasonInfo);
   9011     method public void onUtConfigurationUpdated(int);
   9012   }
   9013 
   9014   public abstract class ImsVideoCallProvider {
   9015     ctor public ImsVideoCallProvider();
   9016     method public void changeCallDataUsage(long);
   9017     method public void changeCameraCapabilities(android.telecom.VideoProfile.CameraCapabilities);
   9018     method public void changePeerDimensions(int, int);
   9019     method public void changeVideoQuality(int);
   9020     method public void handleCallSessionEvent(int);
   9021     method public abstract void onRequestCallDataUsage();
   9022     method public abstract void onRequestCameraCapabilities();
   9023     method public abstract void onSendSessionModifyRequest(android.telecom.VideoProfile, android.telecom.VideoProfile);
   9024     method public abstract void onSendSessionModifyResponse(android.telecom.VideoProfile);
   9025     method public abstract void onSetCamera(String);
   9026     method public void onSetCamera(String, int);
   9027     method public abstract void onSetDeviceOrientation(int);
   9028     method public abstract void onSetDisplaySurface(android.view.Surface);
   9029     method public abstract void onSetPauseImage(android.net.Uri);
   9030     method public abstract void onSetPreviewSurface(android.view.Surface);
   9031     method public abstract void onSetZoom(float);
   9032     method public void receiveSessionModifyRequest(android.telecom.VideoProfile);
   9033     method public void receiveSessionModifyResponse(int, android.telecom.VideoProfile, android.telecom.VideoProfile);
   9034   }
   9035 
   9036   public class ProvisioningManager {
   9037     method @NonNull public static android.telephony.ims.ProvisioningManager createForSubscriptionId(int);
   9038     method @WorkerThread @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getProvisioningIntValue(int);
   9039     method @WorkerThread @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean getProvisioningStatusForCapability(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int, int);
   9040     method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @WorkerThread public String getProvisioningStringValue(int);
   9041     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;
   9042     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public int setProvisioningIntValue(int, int);
   9043     method @WorkerThread @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setProvisioningStatusForCapability(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int, int, boolean);
   9044     method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public int setProvisioningStringValue(int, @NonNull String);
   9045     method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void unregisterProvisioningChangedCallback(@NonNull android.telephony.ims.ProvisioningManager.Callback);
   9046     field public static final int KEY_VOICE_OVER_WIFI_MODE_OVERRIDE = 27; // 0x1b
   9047     field public static final int KEY_VOICE_OVER_WIFI_ROAMING_ENABLED_OVERRIDE = 26; // 0x1a
   9048     field public static final int PROVISIONING_VALUE_DISABLED = 0; // 0x0
   9049     field public static final int PROVISIONING_VALUE_ENABLED = 1; // 0x1
   9050     field public static final String STRING_QUERY_RESULT_ERROR_GENERIC = "STRING_QUERY_RESULT_ERROR_GENERIC";
   9051     field public static final String STRING_QUERY_RESULT_ERROR_NOT_READY = "STRING_QUERY_RESULT_ERROR_NOT_READY";
   9052   }
   9053 
   9054   public static class ProvisioningManager.Callback {
   9055     ctor public ProvisioningManager.Callback();
   9056     method public void onProvisioningIntChanged(int, int);
   9057     method public void onProvisioningStringChanged(int, @NonNull String);
   9058   }
   9059 
   9060 }
   9061 
   9062 package android.telephony.ims.feature {
   9063 
   9064   public final class CapabilityChangeRequest implements android.os.Parcelable {
   9065     method public void addCapabilitiesToDisableForTech(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int, int);
   9066     method public void addCapabilitiesToEnableForTech(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int, int);
   9067     method public int describeContents();
   9068     method public java.util.List<android.telephony.ims.feature.CapabilityChangeRequest.CapabilityPair> getCapabilitiesToDisable();
   9069     method public java.util.List<android.telephony.ims.feature.CapabilityChangeRequest.CapabilityPair> getCapabilitiesToEnable();
   9070     method public void writeToParcel(android.os.Parcel, int);
   9071     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.feature.CapabilityChangeRequest> CREATOR;
   9072   }
   9073 
   9074   public static class CapabilityChangeRequest.CapabilityPair {
   9075     ctor public CapabilityChangeRequest.CapabilityPair(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int, int);
   9076     method @android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability public int getCapability();
   9077     method public int getRadioTech();
   9078   }
   9079 
   9080   public abstract class ImsFeature {
   9081     ctor public ImsFeature();
   9082     method public abstract void changeEnabledCapabilities(android.telephony.ims.feature.CapabilityChangeRequest, android.telephony.ims.feature.ImsFeature.CapabilityCallbackProxy);
   9083     method public abstract void onFeatureReady();
   9084     method public abstract void onFeatureRemoved();
   9085     method public final void setFeatureState(int);
   9086     field public static final int CAPABILITY_ERROR_GENERIC = -1; // 0xffffffff
   9087     field public static final int CAPABILITY_SUCCESS = 0; // 0x0
   9088     field public static final int FEATURE_EMERGENCY_MMTEL = 0; // 0x0
   9089     field public static final int FEATURE_MMTEL = 1; // 0x1
   9090     field public static final int FEATURE_RCS = 2; // 0x2
   9091     field public static final int STATE_INITIALIZING = 1; // 0x1
   9092     field public static final int STATE_READY = 2; // 0x2
   9093     field public static final int STATE_UNAVAILABLE = 0; // 0x0
   9094   }
   9095 
   9096   @Deprecated public static class ImsFeature.Capabilities {
   9097     field @Deprecated protected int mCapabilities;
   9098   }
   9099 
   9100   protected static class ImsFeature.CapabilityCallbackProxy {
   9101     method public void onChangeCapabilityConfigurationError(int, int, int);
   9102   }
   9103 
   9104   public class MmTelFeature extends android.telephony.ims.feature.ImsFeature {
   9105     ctor public MmTelFeature();
   9106     method public void changeEnabledCapabilities(@NonNull android.telephony.ims.feature.CapabilityChangeRequest, @NonNull android.telephony.ims.feature.ImsFeature.CapabilityCallbackProxy);
   9107     method @Nullable public android.telephony.ims.ImsCallProfile createCallProfile(int, int);
   9108     method @Nullable public android.telephony.ims.stub.ImsCallSessionImplBase createCallSession(@NonNull android.telephony.ims.ImsCallProfile);
   9109     method @NonNull public android.telephony.ims.stub.ImsEcbmImplBase getEcbm();
   9110     method @NonNull public android.telephony.ims.stub.ImsMultiEndpointImplBase getMultiEndpoint();
   9111     method @NonNull public android.telephony.ims.stub.ImsSmsImplBase getSmsImplementation();
   9112     method @NonNull public android.telephony.ims.stub.ImsUtImplBase getUt();
   9113     method public final void notifyCapabilitiesStatusChanged(@NonNull android.telephony.ims.feature.MmTelFeature.MmTelCapabilities);
   9114     method public final void notifyIncomingCall(@NonNull android.telephony.ims.stub.ImsCallSessionImplBase, @NonNull android.os.Bundle);
   9115     method public final void notifyRejectedCall(@NonNull android.telephony.ims.ImsCallProfile, @NonNull android.telephony.ims.ImsReasonInfo);
   9116     method public final void notifyVoiceMessageCountUpdate(int);
   9117     method public void onFeatureReady();
   9118     method public void onFeatureRemoved();
   9119     method public boolean queryCapabilityConfiguration(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int, int);
   9120     method public final android.telephony.ims.feature.MmTelFeature.MmTelCapabilities queryCapabilityStatus();
   9121     method public void setUiTtyMode(int, @Nullable android.os.Message);
   9122     method @android.telephony.ims.feature.MmTelFeature.ProcessCallResult public int shouldProcessCall(@NonNull String[]);
   9123     field public static final int PROCESS_CALL_CSFB = 1; // 0x1
   9124     field public static final int PROCESS_CALL_IMS = 0; // 0x0
   9125   }
   9126 
   9127   public static class MmTelFeature.MmTelCapabilities extends android.telephony.ims.feature.ImsFeature.Capabilities {
   9128     ctor public MmTelFeature.MmTelCapabilities();
   9129     ctor @Deprecated public MmTelFeature.MmTelCapabilities(android.telephony.ims.feature.ImsFeature.Capabilities);
   9130     ctor public MmTelFeature.MmTelCapabilities(int);
   9131     method public final void addCapabilities(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int);
   9132     method public final boolean isCapable(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int);
   9133     method public final void removeCapabilities(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int);
   9134     field public static final int CAPABILITY_TYPE_SMS = 8; // 0x8
   9135     field public static final int CAPABILITY_TYPE_UT = 4; // 0x4
   9136     field public static final int CAPABILITY_TYPE_VIDEO = 2; // 0x2
   9137     field public static final int CAPABILITY_TYPE_VOICE = 1; // 0x1
   9138   }
   9139 
   9140   @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 {
   9141   }
   9142 
   9143   @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 {
   9144   }
   9145 
   9146   public class RcsFeature extends android.telephony.ims.feature.ImsFeature {
   9147     ctor public RcsFeature();
   9148     method public void changeEnabledCapabilities(android.telephony.ims.feature.CapabilityChangeRequest, android.telephony.ims.feature.ImsFeature.CapabilityCallbackProxy);
   9149     method public void onFeatureReady();
   9150     method public void onFeatureRemoved();
   9151   }
   9152 
   9153 }
   9154 
   9155 package android.telephony.ims.stub {
   9156 
   9157   public class ImsCallSessionImplBase implements java.lang.AutoCloseable {
   9158     ctor public ImsCallSessionImplBase();
   9159     method public void accept(int, android.telephony.ims.ImsStreamMediaProfile);
   9160     method public void close();
   9161     method public void deflect(String);
   9162     method public void extendToConference(String[]);
   9163     method public String getCallId();
   9164     method public android.telephony.ims.ImsCallProfile getCallProfile();
   9165     method public android.telephony.ims.ImsVideoCallProvider getImsVideoCallProvider();
   9166     method public android.telephony.ims.ImsCallProfile getLocalCallProfile();
   9167     method public String getProperty(String);
   9168     method public android.telephony.ims.ImsCallProfile getRemoteCallProfile();
   9169     method public int getState();
   9170     method public void hold(android.telephony.ims.ImsStreamMediaProfile);
   9171     method public void inviteParticipants(String[]);
   9172     method public boolean isInCall();
   9173     method public boolean isMultiparty();
   9174     method public void merge();
   9175     method public void reject(int);
   9176     method public void removeParticipants(String[]);
   9177     method public void resume(android.telephony.ims.ImsStreamMediaProfile);
   9178     method public void sendDtmf(char, android.os.Message);
   9179     method public void sendRttMessage(String);
   9180     method public void sendRttModifyRequest(android.telephony.ims.ImsCallProfile);
   9181     method public void sendRttModifyResponse(boolean);
   9182     method public void sendUssd(String);
   9183     method public void setListener(android.telephony.ims.ImsCallSessionListener);
   9184     method public void setMute(boolean);
   9185     method public void start(String, android.telephony.ims.ImsCallProfile);
   9186     method public void startConference(String[], android.telephony.ims.ImsCallProfile);
   9187     method public void startDtmf(char);
   9188     method public void stopDtmf();
   9189     method public void terminate(int);
   9190     method public void update(int, android.telephony.ims.ImsStreamMediaProfile);
   9191     field public static final int USSD_MODE_NOTIFY = 0; // 0x0
   9192     field public static final int USSD_MODE_REQUEST = 1; // 0x1
   9193   }
   9194 
   9195   public static class ImsCallSessionImplBase.State {
   9196     method public static String toString(int);
   9197     field public static final int ESTABLISHED = 4; // 0x4
   9198     field public static final int ESTABLISHING = 3; // 0x3
   9199     field public static final int IDLE = 0; // 0x0
   9200     field public static final int INITIATED = 1; // 0x1
   9201     field public static final int INVALID = -1; // 0xffffffff
   9202     field public static final int NEGOTIATING = 2; // 0x2
   9203     field public static final int REESTABLISHING = 6; // 0x6
   9204     field public static final int RENEGOTIATING = 5; // 0x5
   9205     field public static final int TERMINATED = 8; // 0x8
   9206     field public static final int TERMINATING = 7; // 0x7
   9207   }
   9208 
   9209   public class ImsConfigImplBase {
   9210     ctor public ImsConfigImplBase();
   9211     method public int getConfigInt(int);
   9212     method public String getConfigString(int);
   9213     method public final void notifyProvisionedValueChanged(int, int);
   9214     method public final void notifyProvisionedValueChanged(int, String);
   9215     method public int setConfig(int, int);
   9216     method public int setConfig(int, String);
   9217     field public static final int CONFIG_RESULT_FAILED = 1; // 0x1
   9218     field public static final int CONFIG_RESULT_SUCCESS = 0; // 0x0
   9219     field public static final int CONFIG_RESULT_UNKNOWN = -1; // 0xffffffff
   9220   }
   9221 
   9222   public class ImsEcbmImplBase {
   9223     ctor public ImsEcbmImplBase();
   9224     method public final void enteredEcbm();
   9225     method public void exitEmergencyCallbackMode();
   9226     method public final void exitedEcbm();
   9227   }
   9228 
   9229   public final class ImsFeatureConfiguration implements android.os.Parcelable {
   9230     method public int describeContents();
   9231     method public java.util.Set<android.telephony.ims.stub.ImsFeatureConfiguration.FeatureSlotPair> getServiceFeatures();
   9232     method public void writeToParcel(android.os.Parcel, int);
   9233     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.stub.ImsFeatureConfiguration> CREATOR;
   9234   }
   9235 
   9236   public static class ImsFeatureConfiguration.Builder {
   9237     ctor public ImsFeatureConfiguration.Builder();
   9238     method public android.telephony.ims.stub.ImsFeatureConfiguration.Builder addFeature(int, int);
   9239     method public android.telephony.ims.stub.ImsFeatureConfiguration build();
   9240   }
   9241 
   9242   public static final class ImsFeatureConfiguration.FeatureSlotPair {
   9243     ctor public ImsFeatureConfiguration.FeatureSlotPair(int, int);
   9244     field public final int featureType;
   9245     field public final int slotId;
   9246   }
   9247 
   9248   public class ImsMultiEndpointImplBase {
   9249     ctor public ImsMultiEndpointImplBase();
   9250     method public final void onImsExternalCallStateUpdate(java.util.List<android.telephony.ims.ImsExternalCallState>);
   9251     method public void requestImsExternalCallStateInfo();
   9252   }
   9253 
   9254   public class ImsRegistrationImplBase {
   9255     ctor public ImsRegistrationImplBase();
   9256     method public final void onDeregistered(android.telephony.ims.ImsReasonInfo);
   9257     method public final void onRegistered(int);
   9258     method public final void onRegistering(int);
   9259     method public final void onSubscriberAssociatedUriChanged(android.net.Uri[]);
   9260     method public final void onTechnologyChangeFailed(int, android.telephony.ims.ImsReasonInfo);
   9261     field public static final int REGISTRATION_TECH_IWLAN = 1; // 0x1
   9262     field public static final int REGISTRATION_TECH_LTE = 0; // 0x0
   9263     field public static final int REGISTRATION_TECH_NONE = -1; // 0xffffffff
   9264   }
   9265 
   9266   public class ImsSmsImplBase {
   9267     ctor public ImsSmsImplBase();
   9268     method public void acknowledgeSms(int, int, int);
   9269     method public void acknowledgeSmsReport(int, int, int);
   9270     method public String getSmsFormat();
   9271     method public void onReady();
   9272     method public final void onSendSmsResult(int, int, int, int) throws java.lang.RuntimeException;
   9273     method public final void onSmsReceived(int, String, byte[]) throws java.lang.RuntimeException;
   9274     method public final void onSmsStatusReportReceived(int, int, String, byte[]) throws java.lang.RuntimeException;
   9275     method public void sendSms(int, int, String, String, boolean, byte[]);
   9276     field public static final int DELIVER_STATUS_ERROR_GENERIC = 2; // 0x2
   9277     field public static final int DELIVER_STATUS_ERROR_NO_MEMORY = 3; // 0x3
   9278     field public static final int DELIVER_STATUS_ERROR_REQUEST_NOT_SUPPORTED = 4; // 0x4
   9279     field public static final int DELIVER_STATUS_OK = 1; // 0x1
   9280     field public static final int SEND_STATUS_ERROR = 2; // 0x2
   9281     field public static final int SEND_STATUS_ERROR_FALLBACK = 4; // 0x4
   9282     field public static final int SEND_STATUS_ERROR_RETRY = 3; // 0x3
   9283     field public static final int SEND_STATUS_OK = 1; // 0x1
   9284     field public static final int STATUS_REPORT_STATUS_ERROR = 2; // 0x2
   9285     field public static final int STATUS_REPORT_STATUS_OK = 1; // 0x1
   9286   }
   9287 
   9288   public class ImsUtImplBase {
   9289     ctor public ImsUtImplBase();
   9290     method public void close();
   9291     method public int queryCallBarring(int);
   9292     method public int queryCallBarringForServiceClass(int, int);
   9293     method public int queryCallForward(int, String);
   9294     method public int queryCallWaiting();
   9295     method public int queryClip();
   9296     method public int queryClir();
   9297     method public int queryColp();
   9298     method public int queryColr();
   9299     method public void setListener(android.telephony.ims.ImsUtListener);
   9300     method public int transact(android.os.Bundle);
   9301     method public int updateCallBarring(int, int, String[]);
   9302     method public int updateCallBarringForServiceClass(int, int, String[], int);
   9303     method public int updateCallForward(int, int, String, int, int);
   9304     method public int updateCallWaiting(boolean, int);
   9305     method public int updateClip(boolean);
   9306     method public int updateClir(int);
   9307     method public int updateColp(boolean);
   9308     method public int updateColr(int);
   9309   }
   9310 
   9311 }
   9312 
   9313 package android.telephony.mbms {
   9314 
   9315   public static class DownloadRequest.Builder {
   9316     method public android.telephony.mbms.DownloadRequest.Builder setServiceId(String);
   9317   }
   9318 
   9319   public final class FileInfo implements android.os.Parcelable {
   9320     ctor public FileInfo(android.net.Uri, String);
   9321   }
   9322 
   9323   public final class FileServiceInfo extends android.telephony.mbms.ServiceInfo implements android.os.Parcelable {
   9324     ctor public 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>);
   9325   }
   9326 
   9327   public class MbmsDownloadReceiver extends android.content.BroadcastReceiver {
   9328     field public static final int RESULT_APP_NOTIFICATION_ERROR = 6; // 0x6
   9329     field public static final int RESULT_BAD_TEMP_FILE_ROOT = 3; // 0x3
   9330     field public static final int RESULT_DOWNLOAD_FINALIZATION_ERROR = 4; // 0x4
   9331     field public static final int RESULT_INVALID_ACTION = 1; // 0x1
   9332     field public static final int RESULT_MALFORMED_INTENT = 2; // 0x2
   9333     field public static final int RESULT_OK = 0; // 0x0
   9334     field public static final int RESULT_TEMP_FILE_GENERATION_ERROR = 5; // 0x5
   9335   }
   9336 
   9337   public final class StreamingServiceInfo extends android.telephony.mbms.ServiceInfo implements android.os.Parcelable {
   9338     ctor public StreamingServiceInfo(java.util.Map<java.util.Locale,java.lang.String>, String, java.util.List<java.util.Locale>, String, java.util.Date, java.util.Date);
   9339   }
   9340 
   9341   public final class UriPathPair implements android.os.Parcelable {
   9342     method public int describeContents();
   9343     method public android.net.Uri getContentUri();
   9344     method public android.net.Uri getFilePathUri();
   9345     method public void writeToParcel(android.os.Parcel, int);
   9346     field @NonNull public static final android.os.Parcelable.Creator<android.telephony.mbms.UriPathPair> CREATOR;
   9347   }
   9348 
   9349 }
   9350 
   9351 package android.telephony.mbms.vendor {
   9352 
   9353   public class MbmsDownloadServiceBase extends android.os.Binder {
   9354     ctor public MbmsDownloadServiceBase();
   9355     method public int addProgressListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadProgressListener) throws android.os.RemoteException;
   9356     method public int addStatusListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStatusListener) throws android.os.RemoteException;
   9357     method public android.os.IBinder asBinder();
   9358     method public int cancelDownload(android.telephony.mbms.DownloadRequest) throws android.os.RemoteException;
   9359     method public void dispose(int) throws android.os.RemoteException;
   9360     method public int download(android.telephony.mbms.DownloadRequest) throws android.os.RemoteException;
   9361     method public int initialize(int, android.telephony.mbms.MbmsDownloadSessionCallback) throws android.os.RemoteException;
   9362     method @NonNull public java.util.List<android.telephony.mbms.DownloadRequest> listPendingDownloads(int) throws android.os.RemoteException;
   9363     method public void onAppCallbackDied(int, int);
   9364     method public boolean onTransact(int, android.os.Parcel, android.os.Parcel, int) throws android.os.RemoteException;
   9365     method public int removeProgressListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadProgressListener) throws android.os.RemoteException;
   9366     method public int removeStatusListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStatusListener) throws android.os.RemoteException;
   9367     method public int requestDownloadState(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo) throws android.os.RemoteException;
   9368     method public int requestUpdateFileServices(int, java.util.List<java.lang.String>) throws android.os.RemoteException;
   9369     method public int resetDownloadKnowledge(android.telephony.mbms.DownloadRequest) throws android.os.RemoteException;
   9370     method public int setTempFileRootDirectory(int, String) throws android.os.RemoteException;
   9371   }
   9372 
   9373   public class MbmsGroupCallServiceBase extends android.app.Service {
   9374     ctor public MbmsGroupCallServiceBase();
   9375     method public void dispose(int) throws android.os.RemoteException;
   9376     method public int initialize(@NonNull android.telephony.mbms.MbmsGroupCallSessionCallback, int) throws android.os.RemoteException;
   9377     method public void onAppCallbackDied(int, int);
   9378     method public android.os.IBinder onBind(android.content.Intent);
   9379     method public int startGroupCall(int, long, @NonNull java.util.List<java.lang.Integer>, @NonNull java.util.List<java.lang.Integer>, @NonNull android.telephony.mbms.GroupCallCallback);
   9380     method public void stopGroupCall(int, long);
   9381     method public void updateGroupCall(int, long, @NonNull java.util.List<java.lang.Integer>, @NonNull java.util.List<java.lang.Integer>);
   9382   }
   9383 
   9384   public class MbmsStreamingServiceBase extends android.os.Binder {
   9385     ctor public MbmsStreamingServiceBase();
   9386     method public android.os.IBinder asBinder();
   9387     method public void dispose(int) throws android.os.RemoteException;
   9388     method @Nullable public android.net.Uri getPlaybackUri(int, String) throws android.os.RemoteException;
   9389     method public int initialize(android.telephony.mbms.MbmsStreamingSessionCallback, int) throws android.os.RemoteException;
   9390     method public void onAppCallbackDied(int, int);
   9391     method public boolean onTransact(int, android.os.Parcel, android.os.Parcel, int) throws android.os.RemoteException;
   9392     method public int requestUpdateStreamingServices(int, java.util.List<java.lang.String>) throws android.os.RemoteException;
   9393     method public int startStreaming(int, String, android.telephony.mbms.StreamingServiceCallback) throws android.os.RemoteException;
   9394     method public void stopStreaming(int, String) throws android.os.RemoteException;
   9395   }
   9396 
   9397   public class VendorUtils {
   9398     ctor public VendorUtils();
   9399     method public static android.content.ComponentName getAppReceiverFromPackageName(android.content.Context, String);
   9400     field public static final String ACTION_CLEANUP = "android.telephony.mbms.action.CLEANUP";
   9401     field public static final String ACTION_DOWNLOAD_RESULT_INTERNAL = "android.telephony.mbms.action.DOWNLOAD_RESULT_INTERNAL";
   9402     field public static final String ACTION_FILE_DESCRIPTOR_REQUEST = "android.telephony.mbms.action.FILE_DESCRIPTOR_REQUEST";
   9403     field public static final String EXTRA_FD_COUNT = "android.telephony.mbms.extra.FD_COUNT";
   9404     field public static final String EXTRA_FINAL_URI = "android.telephony.mbms.extra.FINAL_URI";
   9405     field public static final String EXTRA_FREE_URI_LIST = "android.telephony.mbms.extra.FREE_URI_LIST";
   9406     field public static final String EXTRA_PAUSED_LIST = "android.telephony.mbms.extra.PAUSED_LIST";
   9407     field public static final String EXTRA_PAUSED_URI_LIST = "android.telephony.mbms.extra.PAUSED_URI_LIST";
   9408     field public static final String EXTRA_SERVICE_ID = "android.telephony.mbms.extra.SERVICE_ID";
   9409     field public static final String EXTRA_TEMP_FILES_IN_USE = "android.telephony.mbms.extra.TEMP_FILES_IN_USE";
   9410     field public static final String EXTRA_TEMP_FILE_ROOT = "android.telephony.mbms.extra.TEMP_FILE_ROOT";
   9411     field public static final String EXTRA_TEMP_LIST = "android.telephony.mbms.extra.TEMP_LIST";
   9412   }
   9413 
   9414 }
   9415 
   9416 package android.util {
   9417 
   9418   public class EventLog {
   9419     method public static void readEventsOnWrapping(int[], long, java.util.Collection<android.util.EventLog.Event>) throws java.io.IOException;
   9420   }
   9421 
   9422   public static final class EventLog.Event {
   9423     method public int getUid();
   9424   }
   9425 
   9426   public final class StatsLog {
   9427     method public static void writeRaw(@NonNull byte[], int);
   9428   }
   9429 
   9430 }
   9431 
   9432 package android.view {
   9433 
   9434   public abstract class Window {
   9435     method public void addSystemFlags(@android.view.WindowManager.LayoutParams.SystemFlags int);
   9436   }
   9437 
   9438   public interface WindowManager extends android.view.ViewManager {
   9439     method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public android.graphics.Region getCurrentImeTouchRegion();
   9440   }
   9441 
   9442   public static class WindowManager.LayoutParams extends android.view.ViewGroup.LayoutParams implements android.os.Parcelable {
   9443     method public final long getUserActivityTimeout();
   9444     method public final void setUserActivityTimeout(long);
   9445     field @RequiresPermission(android.Manifest.permission.HIDE_NON_SYSTEM_OVERLAY_WINDOWS) public static final int SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS = 524288; // 0x80000
   9446   }
   9447 
   9448   @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 {
   9449   }
   9450 
   9451 }
   9452 
   9453 package android.view.accessibility {
   9454 
   9455   public final class AccessibilityManager {
   9456     method public int getAccessibilityWindowId(@Nullable android.os.IBinder);
   9457     method @RequiresPermission(android.Manifest.permission.MANAGE_ACCESSIBILITY) public void performAccessibilityShortcut();
   9458   }
   9459 
   9460 }
   9461 
   9462 package android.view.autofill {
   9463 
   9464   public final class AutofillManager {
   9465     method public void setAugmentedAutofillWhitelist(@Nullable java.util.Set<java.lang.String>, @Nullable java.util.Set<android.content.ComponentName>);
   9466   }
   9467 
   9468 }
   9469 
   9470 package android.view.contentcapture {
   9471 
   9472   public final class ContentCaptureContext implements android.os.Parcelable {
   9473     method @Nullable public android.content.ComponentName getActivityComponent();
   9474     method public int getDisplayId();
   9475     method public int getFlags();
   9476     method @Nullable public android.view.contentcapture.ContentCaptureSessionId getParentSessionId();
   9477     method public int getTaskId();
   9478     field public static final int FLAG_DISABLED_BY_APP = 1; // 0x1
   9479     field public static final int FLAG_DISABLED_BY_FLAG_SECURE = 2; // 0x2
   9480     field public static final int FLAG_RECONNECTED = 4; // 0x4
   9481   }
   9482 
   9483   public final class ContentCaptureEvent implements android.os.Parcelable {
   9484     method public int describeContents();
   9485     method @Nullable public android.view.contentcapture.ContentCaptureContext getContentCaptureContext();
   9486     method public long getEventTime();
   9487     method @Nullable public android.view.autofill.AutofillId getId();
   9488     method @Nullable public java.util.List<android.view.autofill.AutofillId> getIds();
   9489     method @Nullable public CharSequence getText();
   9490     method public int getType();
   9491     method @Nullable public android.view.contentcapture.ViewNode getViewNode();
   9492     method public void writeToParcel(android.os.Parcel, int);
   9493     field @NonNull public static final android.os.Parcelable.Creator<android.view.contentcapture.ContentCaptureEvent> CREATOR;
   9494     field public static final int TYPE_CONTEXT_UPDATED = 6; // 0x6
   9495     field public static final int TYPE_SESSION_PAUSED = 8; // 0x8
   9496     field public static final int TYPE_SESSION_RESUMED = 7; // 0x7
   9497     field public static final int TYPE_VIEW_APPEARED = 1; // 0x1
   9498     field public static final int TYPE_VIEW_DISAPPEARED = 2; // 0x2
   9499     field public static final int TYPE_VIEW_TEXT_CHANGED = 3; // 0x3
   9500     field public static final int TYPE_VIEW_TREE_APPEARED = 5; // 0x5
   9501     field public static final int TYPE_VIEW_TREE_APPEARING = 4; // 0x4
   9502   }
   9503 
   9504   public final class ContentCaptureManager {
   9505     method public boolean isContentCaptureFeatureEnabled();
   9506   }
   9507 
   9508   public final class ViewNode extends android.app.assist.AssistStructure.ViewNode {
   9509     method @Nullable public android.view.autofill.AutofillId getParentAutofillId();
   9510   }
   9511 
   9512 }
   9513 
   9514 package android.webkit {
   9515 
   9516   public abstract class CookieManager {
   9517     method protected abstract boolean allowFileSchemeCookiesImpl();
   9518     method public abstract String getCookie(String, boolean);
   9519     method public String getCookie(android.net.WebAddress);
   9520     method public abstract boolean hasCookies(boolean);
   9521     method protected abstract void setAcceptFileSchemeCookiesImpl(boolean);
   9522   }
   9523 
   9524   public class FindActionModeCallback implements android.view.ActionMode.Callback android.text.TextWatcher android.view.View.OnClickListener android.webkit.WebView.FindListener {
   9525     ctor public FindActionModeCallback(android.content.Context);
   9526     method public void afterTextChanged(android.text.Editable);
   9527     method public void beforeTextChanged(CharSequence, int, int, int);
   9528     method public void findAll();
   9529     method public void finish();
   9530     method public int getActionModeGlobalBottom();
   9531     method public boolean onActionItemClicked(android.view.ActionMode, android.view.MenuItem);
   9532     method public void onClick(android.view.View);
   9533     method public boolean onCreateActionMode(android.view.ActionMode, android.view.Menu);
   9534     method public void onDestroyActionMode(android.view.ActionMode);
   9535     method public void onFindResultReceived(int, int, boolean);
   9536     method public boolean onPrepareActionMode(android.view.ActionMode, android.view.Menu);
   9537     method public void onTextChanged(CharSequence, int, int, int);
   9538     method public void setText(String);
   9539     method public void setWebView(@NonNull android.webkit.WebView);
   9540     method public void showSoftInput();
   9541     method public void updateMatchCount(int, int, boolean);
   9542   }
   9543 
   9544   public static class FindActionModeCallback.NoAction implements android.view.ActionMode.Callback {
   9545     ctor public FindActionModeCallback.NoAction();
   9546     method public boolean onActionItemClicked(android.view.ActionMode, android.view.MenuItem);
   9547     method public boolean onCreateActionMode(android.view.ActionMode, android.view.Menu);
   9548     method public void onDestroyActionMode(android.view.ActionMode);
   9549     method public boolean onPrepareActionMode(android.view.ActionMode, android.view.Menu);
   9550   }
   9551 
   9552   public class GeolocationPermissions {
   9553     ctor public GeolocationPermissions();
   9554   }
   9555 
   9556   public class HttpAuthHandler extends android.os.Handler {
   9557     ctor public HttpAuthHandler();
   9558   }
   9559 
   9560   public class JsDialogHelper {
   9561     ctor public JsDialogHelper(android.webkit.JsPromptResult, int, String, String, String);
   9562     ctor public JsDialogHelper(android.webkit.JsPromptResult, android.os.Message);
   9563     method public boolean invokeCallback(android.webkit.WebChromeClient, android.webkit.WebView);
   9564     method public void showDialog(android.content.Context);
   9565     field public static final int ALERT = 1; // 0x1
   9566     field public static final int CONFIRM = 2; // 0x2
   9567     field public static final int PROMPT = 3; // 0x3
   9568     field public static final int UNLOAD = 4; // 0x4
   9569   }
   9570 
   9571   public class JsPromptResult extends android.webkit.JsResult {
   9572     ctor public JsPromptResult(android.webkit.JsResult.ResultReceiver);
   9573     method public String getStringResult();
   9574   }
   9575 
   9576   public class JsResult {
   9577     ctor public JsResult(android.webkit.JsResult.ResultReceiver);
   9578     method public final boolean getResult();
   9579   }
   9580 
   9581   public static interface JsResult.ResultReceiver {
   9582     method public void onJsResultComplete(android.webkit.JsResult);
   9583   }
   9584 
   9585   public class SslErrorHandler extends android.os.Handler {
   9586     ctor public SslErrorHandler();
   9587   }
   9588 
   9589   @Deprecated public abstract class TokenBindingService {
   9590     ctor @Deprecated public TokenBindingService();
   9591   }
   9592 
   9593   public class WebChromeClient {
   9594     method @Deprecated public void openFileChooser(android.webkit.ValueCallback<android.net.Uri>, String, String);
   9595   }
   9596 
   9597   public abstract class WebHistoryItem implements java.lang.Cloneable {
   9598     method @Deprecated public abstract int getId();
   9599   }
   9600 
   9601   @Deprecated public abstract class WebIconDatabase {
   9602     method @Deprecated public abstract void bulkRequestIconForPageUrl(android.content.ContentResolver, String, android.webkit.WebIconDatabase.IconListener);
   9603   }
   9604 
   9605   public abstract class WebMessagePort {
   9606     ctor public WebMessagePort();
   9607   }
   9608 
   9609   public abstract class WebResourceError {
   9610     ctor public WebResourceError();
   9611   }
   9612 
   9613   public class WebResourceResponse {
   9614     ctor public WebResourceResponse(boolean, String, String, int, String, java.util.Map<java.lang.String,java.lang.String>, java.io.InputStream);
   9615   }
   9616 
   9617   public abstract class WebSettings {
   9618     method public abstract boolean getAcceptThirdPartyCookies();
   9619     method @Deprecated public abstract boolean getNavDump();
   9620     method @Deprecated public abstract boolean getPluginsEnabled();
   9621     method @Deprecated public abstract boolean getUseWebViewBackgroundForOverscrollBackground();
   9622     method @Deprecated public abstract int getUserAgent();
   9623     method public abstract boolean getVideoOverlayForEmbeddedEncryptedVideoEnabled();
   9624     method public abstract void setAcceptThirdPartyCookies(boolean);
   9625     method @Deprecated public abstract void setNavDump(boolean);
   9626     method @Deprecated public abstract void setPluginsEnabled(boolean);
   9627     method @Deprecated public abstract void setUseWebViewBackgroundForOverscrollBackground(boolean);
   9628     method @Deprecated public abstract void setUserAgent(int);
   9629     method public abstract void setVideoOverlayForEmbeddedEncryptedVideoEnabled(boolean);
   9630   }
   9631 
   9632   public class WebStorage {
   9633     ctor public WebStorage();
   9634   }
   9635 
   9636   public static class WebStorage.Origin {
   9637     ctor protected WebStorage.Origin(String, long, long);
   9638   }
   9639 
   9640   public class WebView extends android.widget.AbsoluteLayout implements android.view.ViewGroup.OnHierarchyChangeListener android.view.ViewTreeObserver.OnGlobalFocusChangeListener {
   9641     method public android.webkit.WebViewProvider getWebViewProvider();
   9642   }
   9643 
   9644   public static class WebView.HitTestResult {
   9645     ctor public WebView.HitTestResult();
   9646     method public void setExtra(String);
   9647     method public void setType(int);
   9648   }
   9649 
   9650   public class WebView.PrivateAccess {
   9651     ctor public WebView.PrivateAccess();
   9652     method public void awakenScrollBars(int);
   9653     method public void awakenScrollBars(int, boolean);
   9654     method public float getHorizontalScrollFactor();
   9655     method public int getHorizontalScrollbarHeight();
   9656     method public float getVerticalScrollFactor();
   9657     method public void onScrollChanged(int, int, int, int);
   9658     method public void overScrollBy(int, int, int, int, int, int, int, int, boolean);
   9659     method public void setMeasuredDimension(int, int);
   9660     method public void setScrollXRaw(int);
   9661     method public void setScrollYRaw(int);
   9662     method public void super_computeScroll();
   9663     method public boolean super_dispatchKeyEvent(android.view.KeyEvent);
   9664     method public int super_getScrollBarStyle();
   9665     method public void super_onDrawVerticalScrollBar(android.graphics.Canvas, android.graphics.drawable.Drawable, int, int, int, int);
   9666     method public boolean super_onGenericMotionEvent(android.view.MotionEvent);
   9667     method public boolean super_onHoverEvent(android.view.MotionEvent);
   9668     method public boolean super_performAccessibilityAction(int, android.os.Bundle);
   9669     method public boolean super_performLongClick();
   9670     method public boolean super_requestFocus(int, android.graphics.Rect);
   9671     method public void super_scrollTo(int, int);
   9672     method public boolean super_setFrame(int, int, int, int);
   9673     method public void super_setLayoutParams(android.view.ViewGroup.LayoutParams);
   9674     method public void super_startActivityForResult(android.content.Intent, int);
   9675   }
   9676 
   9677   public final class WebViewDelegate {
   9678     method public void addWebViewAssetPath(android.content.Context);
   9679     method @Deprecated public void callDrawGlFunction(android.graphics.Canvas, long);
   9680     method @Deprecated public void callDrawGlFunction(@NonNull android.graphics.Canvas, long, @Nullable Runnable);
   9681     method @Deprecated public boolean canInvokeDrawGlFunctor(android.view.View);
   9682     method @Deprecated public void detachDrawGlFunctor(android.view.View, long);
   9683     method public void drawWebViewFunctor(@NonNull android.graphics.Canvas, int);
   9684     method public android.app.Application getApplication();
   9685     method public String getDataDirectorySuffix();
   9686     method public String getErrorString(android.content.Context, int);
   9687     method public int getPackageId(android.content.res.Resources, String);
   9688     method @Deprecated public void invokeDrawGlFunctor(android.view.View, long, boolean);
   9689     method public boolean isMultiProcessEnabled();
   9690     method public boolean isTraceTagEnabled();
   9691     method public void setOnTraceEnabledChangeListener(android.webkit.WebViewDelegate.OnTraceEnabledChangeListener);
   9692   }
   9693 
   9694   public static interface WebViewDelegate.OnTraceEnabledChangeListener {
   9695     method public void onTraceEnabledChange(boolean);
   9696   }
   9697 
   9698   public final class WebViewFactory {
   9699     ctor public WebViewFactory();
   9700     method public static android.content.pm.PackageInfo getLoadedPackageInfo();
   9701     method public static int loadWebViewNativeLibraryFromPackage(String, ClassLoader);
   9702     method public static void prepareWebViewInZygote();
   9703     field public static final int LIBLOAD_ADDRESS_SPACE_NOT_RESERVED = 2; // 0x2
   9704     field public static final int LIBLOAD_FAILED_JNI_CALL = 7; // 0x7
   9705     field public static final int LIBLOAD_FAILED_LISTING_WEBVIEW_PACKAGES = 4; // 0x4
   9706     field public static final int LIBLOAD_FAILED_TO_FIND_NAMESPACE = 10; // 0xa
   9707     field public static final int LIBLOAD_FAILED_TO_LOAD_LIBRARY = 6; // 0x6
   9708     field public static final int LIBLOAD_FAILED_TO_OPEN_RELRO_FILE = 5; // 0x5
   9709     field public static final int LIBLOAD_FAILED_WAITING_FOR_RELRO = 3; // 0x3
   9710     field public static final int LIBLOAD_FAILED_WAITING_FOR_WEBVIEW_REASON_UNKNOWN = 8; // 0x8
   9711     field public static final int LIBLOAD_SUCCESS = 0; // 0x0
   9712     field public static final int LIBLOAD_WRONG_PACKAGE_NAME = 1; // 0x1
   9713   }
   9714 
   9715   public interface WebViewFactoryProvider {
   9716     method public android.webkit.WebViewProvider createWebView(android.webkit.WebView, android.webkit.WebView.PrivateAccess);
   9717     method public android.webkit.CookieManager getCookieManager();
   9718     method public android.webkit.GeolocationPermissions getGeolocationPermissions();
   9719     method public android.webkit.ServiceWorkerController getServiceWorkerController();
   9720     method public android.webkit.WebViewFactoryProvider.Statics getStatics();
   9721     method @Deprecated public android.webkit.TokenBindingService getTokenBindingService();
   9722     method public android.webkit.TracingController getTracingController();
   9723     method public android.webkit.WebIconDatabase getWebIconDatabase();
   9724     method public android.webkit.WebStorage getWebStorage();
   9725     method public ClassLoader getWebViewClassLoader();
   9726     method public android.webkit.WebViewDatabase getWebViewDatabase(android.content.Context);
   9727   }
   9728 
   9729   public static interface WebViewFactoryProvider.Statics {
   9730     method public void clearClientCertPreferences(Runnable);
   9731     method public void enableSlowWholeDocumentDraw();
   9732     method public String findAddress(String);
   9733     method public void freeMemoryForTests();
   9734     method public String getDefaultUserAgent(android.content.Context);
   9735     method @NonNull public android.net.Uri getSafeBrowsingPrivacyPolicyUrl();
   9736     method public void initSafeBrowsing(android.content.Context, android.webkit.ValueCallback<java.lang.Boolean>);
   9737     method public android.net.Uri[] parseFileChooserResult(int, android.content.Intent);
   9738     method public void setSafeBrowsingWhitelist(java.util.List<java.lang.String>, android.webkit.ValueCallback<java.lang.Boolean>);
   9739     method public void setWebContentsDebuggingEnabled(boolean);
   9740   }
   9741 
   9742   public interface WebViewProvider {
   9743     method public void addJavascriptInterface(Object, String);
   9744     method public boolean canGoBack();
   9745     method public boolean canGoBackOrForward(int);
   9746     method public boolean canGoForward();
   9747     method public boolean canZoomIn();
   9748     method public boolean canZoomOut();
   9749     method public android.graphics.Picture capturePicture();
   9750     method public void clearCache(boolean);
   9751     method public void clearFormData();
   9752     method public void clearHistory();
   9753     method public void clearMatches();
   9754     method public void clearSslPreferences();
   9755     method public void clearView();
   9756     method public android.webkit.WebBackForwardList copyBackForwardList();
   9757     method public android.print.PrintDocumentAdapter createPrintDocumentAdapter(String);
   9758     method public android.webkit.WebMessagePort[] createWebMessageChannel();
   9759     method public void destroy();
   9760     method public void documentHasImages(android.os.Message);
   9761     method public void dumpViewHierarchyWithProperties(java.io.BufferedWriter, int);
   9762     method public void evaluateJavaScript(String, android.webkit.ValueCallback<java.lang.String>);
   9763     method public int findAll(String);
   9764     method public void findAllAsync(String);
   9765     method public android.view.View findHierarchyView(String, int);
   9766     method public void findNext(boolean);
   9767     method public void flingScroll(int, int);
   9768     method public void freeMemory();
   9769     method public android.net.http.SslCertificate getCertificate();
   9770     method public int getContentHeight();
   9771     method public int getContentWidth();
   9772     method public android.graphics.Bitmap getFavicon();
   9773     method public android.webkit.WebView.HitTestResult getHitTestResult();
   9774     method public String[] getHttpAuthUsernamePassword(String, String);
   9775     method public String getOriginalUrl();
   9776     method public int getProgress();
   9777     method public boolean getRendererPriorityWaivedWhenNotVisible();
   9778     method public int getRendererRequestedPriority();
   9779     method public float getScale();
   9780     method public android.webkit.WebViewProvider.ScrollDelegate getScrollDelegate();
   9781     method public android.webkit.WebSettings getSettings();
   9782     method @NonNull public default android.view.textclassifier.TextClassifier getTextClassifier();
   9783     method public String getTitle();
   9784     method public String getTouchIconUrl();
   9785     method public String getUrl();
   9786     method public android.webkit.WebViewProvider.ViewDelegate getViewDelegate();
   9787     method public int getVisibleTitleHeight();
   9788     method public android.webkit.WebChromeClient getWebChromeClient();
   9789     method public android.webkit.WebViewClient getWebViewClient();
   9790     method @Nullable public android.webkit.WebViewRenderProcess getWebViewRenderProcess();
   9791     method @Nullable public android.webkit.WebViewRenderProcessClient getWebViewRenderProcessClient();
   9792     method public android.view.View getZoomControls();
   9793     method public void goBack();
   9794     method public void goBackOrForward(int);
   9795     method public void goForward();
   9796     method public void init(java.util.Map<java.lang.String,java.lang.Object>, boolean);
   9797     method public void insertVisualStateCallback(long, android.webkit.WebView.VisualStateCallback);
   9798     method public void invokeZoomPicker();
   9799     method public boolean isPaused();
   9800     method public boolean isPrivateBrowsingEnabled();
   9801     method public void loadData(String, String, String);
   9802     method public void loadDataWithBaseURL(String, String, String, String, String);
   9803     method public void loadUrl(String, java.util.Map<java.lang.String,java.lang.String>);
   9804     method public void loadUrl(String);
   9805     method public void notifyFindDialogDismissed();
   9806     method public void onPause();
   9807     method public void onResume();
   9808     method public boolean overlayHorizontalScrollbar();
   9809     method public boolean overlayVerticalScrollbar();
   9810     method public boolean pageDown(boolean);
   9811     method public boolean pageUp(boolean);
   9812     method public void pauseTimers();
   9813     method public void postMessageToMainFrame(android.webkit.WebMessage, android.net.Uri);
   9814     method public void postUrl(String, byte[]);
   9815     method public void reload();
   9816     method public void removeJavascriptInterface(String);
   9817     method public void requestFocusNodeHref(android.os.Message);
   9818     method public void requestImageRef(android.os.Message);
   9819     method public boolean restorePicture(android.os.Bundle, java.io.File);
   9820     method public android.webkit.WebBackForwardList restoreState(android.os.Bundle);
   9821     method public void resumeTimers();
   9822     method public void savePassword(String, String, String);
   9823     method public boolean savePicture(android.os.Bundle, java.io.File);
   9824     method public android.webkit.WebBackForwardList saveState(android.os.Bundle);
   9825     method public void saveWebArchive(String);
   9826     method public void saveWebArchive(String, boolean, android.webkit.ValueCallback<java.lang.String>);
   9827     method public void setCertificate(android.net.http.SslCertificate);
   9828     method public void setDownloadListener(android.webkit.DownloadListener);
   9829     method public void setFindListener(android.webkit.WebView.FindListener);
   9830     method public void setHorizontalScrollbarOverlay(boolean);
   9831     method public void setHttpAuthUsernamePassword(String, String, String, String);
   9832     method public void setInitialScale(int);
   9833     method public void setMapTrackballToArrowKeys(boolean);
   9834     method public void setNetworkAvailable(boolean);
   9835     method public void setPictureListener(android.webkit.WebView.PictureListener);
   9836     method public void setRendererPriorityPolicy(int, boolean);
   9837     method public default void setTextClassifier(@Nullable android.view.textclassifier.TextClassifier);
   9838     method public void setVerticalScrollbarOverlay(boolean);
   9839     method public void setWebChromeClient(android.webkit.WebChromeClient);
   9840     method public void setWebViewClient(android.webkit.WebViewClient);
   9841     method public void setWebViewRenderProcessClient(@Nullable java.util.concurrent.Executor, @Nullable android.webkit.WebViewRenderProcessClient);
   9842     method public boolean showFindDialog(String, boolean);
   9843     method public void stopLoading();
   9844     method public boolean zoomBy(float);
   9845     method public boolean zoomIn();
   9846     method public boolean zoomOut();
   9847   }
   9848 
   9849   public static interface WebViewProvider.ScrollDelegate {
   9850     method public int computeHorizontalScrollOffset();
   9851     method public int computeHorizontalScrollRange();
   9852     method public void computeScroll();
   9853     method public int computeVerticalScrollExtent();
   9854     method public int computeVerticalScrollOffset();
   9855     method public int computeVerticalScrollRange();
   9856   }
   9857 
   9858   public static interface WebViewProvider.ViewDelegate {
   9859     method public default void autofill(android.util.SparseArray<android.view.autofill.AutofillValue>);
   9860     method public boolean dispatchKeyEvent(android.view.KeyEvent);
   9861     method public android.view.View findFocus(android.view.View);
   9862     method public android.view.accessibility.AccessibilityNodeProvider getAccessibilityNodeProvider();
   9863     method public android.os.Handler getHandler(android.os.Handler);
   9864     method public default boolean isVisibleToUserForAutofill(int);
   9865     method public void onActivityResult(int, int, android.content.Intent);
   9866     method public void onAttachedToWindow();
   9867     method public default boolean onCheckIsTextEditor();
   9868     method public void onConfigurationChanged(android.content.res.Configuration);
   9869     method public android.view.inputmethod.InputConnection onCreateInputConnection(android.view.inputmethod.EditorInfo);
   9870     method public void onDetachedFromWindow();
   9871     method public boolean onDragEvent(android.view.DragEvent);
   9872     method public void onDraw(android.graphics.Canvas);
   9873     method public void onDrawVerticalScrollBar(android.graphics.Canvas, android.graphics.drawable.Drawable, int, int, int, int);
   9874     method public void onFinishTemporaryDetach();
   9875     method public void onFocusChanged(boolean, int, android.graphics.Rect);
   9876     method public boolean onGenericMotionEvent(android.view.MotionEvent);
   9877     method public boolean onHoverEvent(android.view.MotionEvent);
   9878     method public void onInitializeAccessibilityEvent(android.view.accessibility.AccessibilityEvent);
   9879     method public void onInitializeAccessibilityNodeInfo(android.view.accessibility.AccessibilityNodeInfo);
   9880     method public boolean onKeyDown(int, android.view.KeyEvent);
   9881     method public boolean onKeyMultiple(int, int, android.view.KeyEvent);
   9882     method public boolean onKeyUp(int, android.view.KeyEvent);
   9883     method public void onMeasure(int, int);
   9884     method public default void onMovedToDisplay(int, android.content.res.Configuration);
   9885     method public void onOverScrolled(int, int, boolean, boolean);
   9886     method public default void onProvideAutofillVirtualStructure(android.view.ViewStructure, int);
   9887     method public default void onProvideContentCaptureStructure(@NonNull android.view.ViewStructure, int);
   9888     method public void onProvideVirtualStructure(android.view.ViewStructure);
   9889     method public void onScrollChanged(int, int, int, int);
   9890     method public void onSizeChanged(int, int, int, int);
   9891     method public void onStartTemporaryDetach();
   9892     method public boolean onTouchEvent(android.view.MotionEvent);
   9893     method public boolean onTrackballEvent(android.view.MotionEvent);
   9894     method public void onVisibilityChanged(android.view.View, int);
   9895     method public void onWindowFocusChanged(boolean);
   9896     method public void onWindowVisibilityChanged(int);
   9897     method public boolean performAccessibilityAction(int, android.os.Bundle);
   9898     method public boolean performLongClick();
   9899     method public void preDispatchDraw(android.graphics.Canvas);
   9900     method public boolean requestChildRectangleOnScreen(android.view.View, android.graphics.Rect, boolean);
   9901     method public boolean requestFocus(int, android.graphics.Rect);
   9902     method public void setBackgroundColor(int);
   9903     method public boolean setFrame(int, int, int, int);
   9904     method public void setLayerType(int, android.graphics.Paint);
   9905     method public void setLayoutParams(android.view.ViewGroup.LayoutParams);
   9906     method public void setOverScrollMode(int);
   9907     method public void setScrollBarStyle(int);
   9908     method public boolean shouldDelayChildPressedState();
   9909   }
   9910 
   9911   public final class WebViewProviderInfo implements android.os.Parcelable {
   9912     ctor public WebViewProviderInfo(String, String, boolean, boolean, String[]);
   9913     method public int describeContents();
   9914     method public void writeToParcel(android.os.Parcel, int);
   9915     field @NonNull public static final android.os.Parcelable.Creator<android.webkit.WebViewProviderInfo> CREATOR;
   9916     field public final boolean availableByDefault;
   9917     field public final String description;
   9918     field public final boolean isFallback;
   9919     field public final String packageName;
   9920     field public final android.content.pm.Signature[] signatures;
   9921   }
   9922 
   9923   public final class WebViewUpdateService {
   9924     method public static android.webkit.WebViewProviderInfo[] getAllWebViewPackages();
   9925     method public static String getCurrentWebViewPackageName();
   9926     method public static android.webkit.WebViewProviderInfo[] getValidWebViewPackages();
   9927   }
   9928 
   9929 }
   9930 
   9931