xref: /aosp_15_r20/frameworks/base/core/api/system-current.txt (revision d57664e9bc4670b3ecf6748a746a57c557b6bc9e)
1// Signature format: 2.0
2package android {
3
4  public static final class Manifest.permission {
5    field public static final String ACCESS_AMBIENT_CONTEXT_EVENT = "android.permission.ACCESS_AMBIENT_CONTEXT_EVENT";
6    field public static final String ACCESS_AMBIENT_LIGHT_STATS = "android.permission.ACCESS_AMBIENT_LIGHT_STATS";
7    field public static final String ACCESS_BROADCAST_RADIO = "android.permission.ACCESS_BROADCAST_RADIO";
8    field public static final String ACCESS_BROADCAST_RESPONSE_STATS = "android.permission.ACCESS_BROADCAST_RESPONSE_STATS";
9    field public static final String ACCESS_CACHE_FILESYSTEM = "android.permission.ACCESS_CACHE_FILESYSTEM";
10    field @FlaggedApi("android.app.contextualsearch.flags.enable_service") public static final String ACCESS_CONTEXTUAL_SEARCH = "android.permission.ACCESS_CONTEXTUAL_SEARCH";
11    field public static final String ACCESS_CONTEXT_HUB = "android.permission.ACCESS_CONTEXT_HUB";
12    field public static final String ACCESS_DRM_CERTIFICATES = "android.permission.ACCESS_DRM_CERTIFICATES";
13    field @FlaggedApi("android.permission.flags.fine_power_monitor_permission") public static final String ACCESS_FINE_POWER_MONITORS = "android.permission.ACCESS_FINE_POWER_MONITORS";
14    field @Deprecated public static final String ACCESS_FM_RADIO = "android.permission.ACCESS_FM_RADIO";
15    field public static final String ACCESS_FPS_COUNTER = "android.permission.ACCESS_FPS_COUNTER";
16    field @FlaggedApi("android.multiuser.enable_permission_to_access_hidden_profiles") public static final String ACCESS_HIDDEN_PROFILES_FULL = "android.permission.ACCESS_HIDDEN_PROFILES_FULL";
17    field public static final String ACCESS_INSTANT_APPS = "android.permission.ACCESS_INSTANT_APPS";
18    field @FlaggedApi("com.android.server.telecom.flags.telecom_resolve_hidden_dependencies") public static final String ACCESS_LAST_KNOWN_CELL_ID = "android.permission.ACCESS_LAST_KNOWN_CELL_ID";
19    field public static final String ACCESS_LOCUS_ID_USAGE_STATS = "android.permission.ACCESS_LOCUS_ID_USAGE_STATS";
20    field public static final String ACCESS_MOCK_LOCATION = "android.permission.ACCESS_MOCK_LOCATION";
21    field public static final String ACCESS_MTP = "android.permission.ACCESS_MTP";
22    field public static final String ACCESS_NETWORK_CONDITIONS = "android.permission.ACCESS_NETWORK_CONDITIONS";
23    field public static final String ACCESS_NOTIFICATIONS = "android.permission.ACCESS_NOTIFICATIONS";
24    field public static final String ACCESS_PDB_STATE = "android.permission.ACCESS_PDB_STATE";
25    field public static final String ACCESS_RCS_USER_CAPABILITY_EXCHANGE = "android.permission.ACCESS_RCS_USER_CAPABILITY_EXCHANGE";
26    field public static final String ACCESS_SHARED_LIBRARIES = "android.permission.ACCESS_SHARED_LIBRARIES";
27    field public static final String ACCESS_SHORTCUTS = "android.permission.ACCESS_SHORTCUTS";
28    field @FlaggedApi("android.app.smartspace.flags.access_smartspace") public static final String ACCESS_SMARTSPACE = "android.permission.ACCESS_SMARTSPACE";
29    field public static final String ACCESS_SURFACE_FLINGER = "android.permission.ACCESS_SURFACE_FLINGER";
30    field @FlaggedApi("android.permission.flags.text_classifier_choice_api_enabled") public static final String ACCESS_TEXT_CLASSIFIER_BY_TYPE = "android.permission.ACCESS_TEXT_CLASSIFIER_BY_TYPE";
31    field public static final String ACCESS_TUNED_INFO = "android.permission.ACCESS_TUNED_INFO";
32    field public static final String ACCESS_TV_DESCRAMBLER = "android.permission.ACCESS_TV_DESCRAMBLER";
33    field public static final String ACCESS_TV_SHARED_FILTER = "android.permission.ACCESS_TV_SHARED_FILTER";
34    field public static final String ACCESS_TV_TUNER = "android.permission.ACCESS_TV_TUNER";
35    field public static final String ACCESS_ULTRASOUND = "android.permission.ACCESS_ULTRASOUND";
36    field public static final String ACCESS_VIBRATOR_STATE = "android.permission.ACCESS_VIBRATOR_STATE";
37    field public static final String ACTIVITY_EMBEDDING = "android.permission.ACTIVITY_EMBEDDING";
38    field public static final String ADD_ALWAYS_UNLOCKED_DISPLAY = "android.permission.ADD_ALWAYS_UNLOCKED_DISPLAY";
39    field @FlaggedApi("android.companion.virtualdevice.flags.enable_limited_vdm_role") public static final String ADD_MIRROR_DISPLAY = "android.permission.ADD_MIRROR_DISPLAY";
40    field public static final String ADD_TRUSTED_DISPLAY = "android.permission.ADD_TRUSTED_DISPLAY";
41    field public static final String ADJUST_RUNTIME_PERMISSIONS_POLICY = "android.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY";
42    field public static final String ALLOCATE_AGGRESSIVE = "android.permission.ALLOCATE_AGGRESSIVE";
43    field public static final String ALLOW_ANY_CODEC_FOR_PLAYBACK = "android.permission.ALLOW_ANY_CODEC_FOR_PLAYBACK";
44    field public static final String ALLOW_PLACE_IN_MULTI_PANE_SETTINGS = "android.permission.ALLOW_PLACE_IN_MULTI_PANE_SETTINGS";
45    field public static final String ALLOW_SLIPPERY_TOUCHES = "android.permission.ALLOW_SLIPPERY_TOUCHES";
46    field @FlaggedApi("com.android.window.flags.always_update_wallpaper_permission") public static final String ALWAYS_UPDATE_WALLPAPER = "android.permission.ALWAYS_UPDATE_WALLPAPER";
47    field public static final String AMBIENT_WALLPAPER = "android.permission.AMBIENT_WALLPAPER";
48    field public static final String APPROVE_INCIDENT_REPORTS = "android.permission.APPROVE_INCIDENT_REPORTS";
49    field public static final String ASSOCIATE_COMPANION_DEVICES = "android.permission.ASSOCIATE_COMPANION_DEVICES";
50    field public static final String BACKGROUND_CAMERA = "android.permission.BACKGROUND_CAMERA";
51    field public static final String BACKUP = "android.permission.BACKUP";
52    field @FlaggedApi("android.permission.flags.health_connect_backup_restore_permission_enabled") public static final String BACKUP_HEALTH_CONNECT_DATA_AND_SETTINGS = "android.permission.BACKUP_HEALTH_CONNECT_DATA_AND_SETTINGS";
53    field public static final String BATTERY_PREDICTION = "android.permission.BATTERY_PREDICTION";
54    field public static final String BIND_AMBIENT_CONTEXT_DETECTION_SERVICE = "android.permission.BIND_AMBIENT_CONTEXT_DETECTION_SERVICE";
55    field public static final String BIND_ATTENTION_SERVICE = "android.permission.BIND_ATTENTION_SERVICE";
56    field public static final String BIND_AUGMENTED_AUTOFILL_SERVICE = "android.permission.BIND_AUGMENTED_AUTOFILL_SERVICE";
57    field public static final String BIND_CALL_DIAGNOSTIC_SERVICE = "android.permission.BIND_CALL_DIAGNOSTIC_SERVICE";
58    field public static final String BIND_CALL_STREAMING_SERVICE = "android.permission.BIND_CALL_STREAMING_SERVICE";
59    field public static final String BIND_CELL_BROADCAST_SERVICE = "android.permission.BIND_CELL_BROADCAST_SERVICE";
60    field @Deprecated public static final String BIND_CONNECTION_SERVICE = "android.permission.BIND_CONNECTION_SERVICE";
61    field public static final String BIND_CONTENT_CAPTURE_SERVICE = "android.permission.BIND_CONTENT_CAPTURE_SERVICE";
62    field public static final String BIND_CONTENT_SUGGESTIONS_SERVICE = "android.permission.BIND_CONTENT_SUGGESTIONS_SERVICE";
63    field @FlaggedApi("android.content.pm.sdk_dependency_installer") public static final String BIND_DEPENDENCY_INSTALLER = "android.permission.BIND_DEPENDENCY_INSTALLER";
64    field public static final String BIND_DIRECTORY_SEARCH = "android.permission.BIND_DIRECTORY_SEARCH";
65    field public static final String BIND_DISPLAY_HASHING_SERVICE = "android.permission.BIND_DISPLAY_HASHING_SERVICE";
66    field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String BIND_DOMAIN_SELECTION_SERVICE = "android.permission.BIND_DOMAIN_SELECTION_SERVICE";
67    field public static final String BIND_DOMAIN_VERIFICATION_AGENT = "android.permission.BIND_DOMAIN_VERIFICATION_AGENT";
68    field public static final String BIND_EUICC_SERVICE = "android.permission.BIND_EUICC_SERVICE";
69    field @FlaggedApi("android.crashrecovery.flags.enable_crashrecovery") public static final String BIND_EXPLICIT_HEALTH_CHECK_SERVICE = "android.permission.BIND_EXPLICIT_HEALTH_CHECK_SERVICE";
70    field public static final String BIND_EXTERNAL_STORAGE_SERVICE = "android.permission.BIND_EXTERNAL_STORAGE_SERVICE";
71    field public static final String BIND_FIELD_CLASSIFICATION_SERVICE = "android.permission.BIND_FIELD_CLASSIFICATION_SERVICE";
72    field public static final String BIND_GBA_SERVICE = "android.permission.BIND_GBA_SERVICE";
73    field public static final String BIND_HOTWORD_DETECTION_SERVICE = "android.permission.BIND_HOTWORD_DETECTION_SERVICE";
74    field public static final String BIND_IMS_SERVICE = "android.permission.BIND_IMS_SERVICE";
75    field @FlaggedApi("android.security.afl_api") public static final String BIND_INTRUSION_DETECTION_EVENT_TRANSPORT_SERVICE = "android.permission.BIND_INTRUSION_DETECTION_EVENT_TRANSPORT_SERVICE";
76    field public static final String BIND_KEYGUARD_APPWIDGET = "android.permission.BIND_KEYGUARD_APPWIDGET";
77    field public static final String BIND_MUSIC_RECOGNITION_SERVICE = "android.permission.BIND_MUSIC_RECOGNITION_SERVICE";
78    field public static final String BIND_NETWORK_RECOMMENDATION_SERVICE = "android.permission.BIND_NETWORK_RECOMMENDATION_SERVICE";
79    field public static final String BIND_NOTIFICATION_ASSISTANT_SERVICE = "android.permission.BIND_NOTIFICATION_ASSISTANT_SERVICE";
80    field @FlaggedApi("android.app.ondeviceintelligence.flags.enable_on_device_intelligence") public static final String BIND_ON_DEVICE_INTELLIGENCE_SERVICE = "android.permission.BIND_ON_DEVICE_INTELLIGENCE_SERVICE";
81    field @FlaggedApi("android.app.ondeviceintelligence.flags.enable_on_device_intelligence") public static final String BIND_ON_DEVICE_SANDBOXED_INFERENCE_SERVICE = "android.permission.BIND_ON_DEVICE_SANDBOXED_INFERENCE_SERVICE";
82    field public static final String BIND_PHONE_ACCOUNT_SUGGESTION_SERVICE = "android.permission.BIND_PHONE_ACCOUNT_SUGGESTION_SERVICE";
83    field @FlaggedApi("android.location.flags.population_density_provider") public static final String BIND_POPULATION_DENSITY_PROVIDER_SERVICE = "android.permission.BIND_POPULATION_DENSITY_PROVIDER_SERVICE";
84    field public static final String BIND_PRINT_RECOMMENDATION_SERVICE = "android.permission.BIND_PRINT_RECOMMENDATION_SERVICE";
85    field public static final String BIND_REMOTE_LOCKSCREEN_VALIDATION_SERVICE = "android.permission.BIND_REMOTE_LOCKSCREEN_VALIDATION_SERVICE";
86    field public static final String BIND_RESOLVER_RANKER_SERVICE = "android.permission.BIND_RESOLVER_RANKER_SERVICE";
87    field public static final String BIND_RESUME_ON_REBOOT_SERVICE = "android.permission.BIND_RESUME_ON_REBOOT_SERVICE";
88    field public static final String BIND_ROTATION_RESOLVER_SERVICE = "android.permission.BIND_ROTATION_RESOLVER_SERVICE";
89    field public static final String BIND_RUNTIME_PERMISSION_PRESENTER_SERVICE = "android.permission.BIND_RUNTIME_PERMISSION_PRESENTER_SERVICE";
90    field public static final String BIND_SATELLITE_SERVICE = "android.permission.BIND_SATELLITE_SERVICE";
91    field public static final String BIND_SETTINGS_SUGGESTIONS_SERVICE = "android.permission.BIND_SETTINGS_SUGGESTIONS_SERVICE";
92    field public static final String BIND_SOUND_TRIGGER_DETECTION_SERVICE = "android.permission.BIND_SOUND_TRIGGER_DETECTION_SERVICE";
93    field public static final String BIND_TELEPHONY_DATA_SERVICE = "android.permission.BIND_TELEPHONY_DATA_SERVICE";
94    field public static final String BIND_TELEPHONY_NETWORK_SERVICE = "android.permission.BIND_TELEPHONY_NETWORK_SERVICE";
95    field public static final String BIND_TEXTCLASSIFIER_SERVICE = "android.permission.BIND_TEXTCLASSIFIER_SERVICE";
96    field public static final String BIND_TIME_ZONE_PROVIDER_SERVICE = "android.permission.BIND_TIME_ZONE_PROVIDER_SERVICE";
97    field public static final String BIND_TRACE_REPORT_SERVICE = "android.permission.BIND_TRACE_REPORT_SERVICE";
98    field public static final String BIND_TRANSLATION_SERVICE = "android.permission.BIND_TRANSLATION_SERVICE";
99    field public static final String BIND_TRUST_AGENT = "android.permission.BIND_TRUST_AGENT";
100    field public static final String BIND_TV_REMOTE_SERVICE = "android.permission.BIND_TV_REMOTE_SERVICE";
101    field public static final String BIND_VISUAL_QUERY_DETECTION_SERVICE = "android.permission.BIND_VISUAL_QUERY_DETECTION_SERVICE";
102    field public static final String BIND_WALLPAPER_EFFECTS_GENERATION_SERVICE = "android.permission.BIND_WALLPAPER_EFFECTS_GENERATION_SERVICE";
103    field public static final String BIND_WEARABLE_SENSING_SERVICE = "android.permission.BIND_WEARABLE_SENSING_SERVICE";
104    field public static final String BLUETOOTH_MAP = "android.permission.BLUETOOTH_MAP";
105    field public static final String BRICK = "android.permission.BRICK";
106    field public static final String BRIGHTNESS_SLIDER_USAGE = "android.permission.BRIGHTNESS_SLIDER_USAGE";
107    field public static final String BROADCAST_CLOSE_SYSTEM_DIALOGS = "android.permission.BROADCAST_CLOSE_SYSTEM_DIALOGS";
108    field @Deprecated public static final String BROADCAST_NETWORK_PRIVILEGED = "android.permission.BROADCAST_NETWORK_PRIVILEGED";
109    field @FlaggedApi("android.media.audio.concurrent_audio_record_bypass_permission") public static final String BYPASS_CONCURRENT_RECORD_AUDIO_RESTRICTION = "android.permission.BYPASS_CONCURRENT_RECORD_AUDIO_RESTRICTION";
110    field public static final String BYPASS_ROLE_QUALIFICATION = "android.permission.BYPASS_ROLE_QUALIFICATION";
111    field public static final String CALL_AUDIO_INTERCEPTION = "android.permission.CALL_AUDIO_INTERCEPTION";
112    field public static final String CAMERA_DISABLE_TRANSMIT_LED = "android.permission.CAMERA_DISABLE_TRANSMIT_LED";
113    field @FlaggedApi("com.android.internal.camera.flags.camera_hsum_permission") public static final String CAMERA_HEADLESS_SYSTEM_USER = "android.permission.CAMERA_HEADLESS_SYSTEM_USER";
114    field public static final String CAMERA_OPEN_CLOSE_LISTENER = "android.permission.CAMERA_OPEN_CLOSE_LISTENER";
115    field @FlaggedApi("com.android.internal.camera.flags.camera_privacy_allowlist") public static final String CAMERA_PRIVACY_ALLOWLIST = "android.permission.CAMERA_PRIVACY_ALLOWLIST";
116    field public static final String CAPTURE_AUDIO_HOTWORD = "android.permission.CAPTURE_AUDIO_HOTWORD";
117    field @FlaggedApi("android.os.allow_consentless_bugreport_delegated_consent") public static final String CAPTURE_CONSENTLESS_BUGREPORT_DELEGATED_CONSENT = "android.permission.CAPTURE_CONSENTLESS_BUGREPORT_DELEGATED_CONSENT";
118    field public static final String CAPTURE_CONSENTLESS_BUGREPORT_ON_USERDEBUG_BUILD = "android.permission.CAPTURE_CONSENTLESS_BUGREPORT_ON_USERDEBUG_BUILD";
119    field public static final String CAPTURE_MEDIA_OUTPUT = "android.permission.CAPTURE_MEDIA_OUTPUT";
120    field public static final String CAPTURE_TUNER_AUDIO_INPUT = "android.permission.CAPTURE_TUNER_AUDIO_INPUT";
121    field public static final String CAPTURE_TV_INPUT = "android.permission.CAPTURE_TV_INPUT";
122    field public static final String CAPTURE_VOICE_COMMUNICATION_OUTPUT = "android.permission.CAPTURE_VOICE_COMMUNICATION_OUTPUT";
123    field public static final String CHANGE_APP_IDLE_STATE = "android.permission.CHANGE_APP_IDLE_STATE";
124    field public static final String CHANGE_APP_LAUNCH_TIME_ESTIMATE = "android.permission.CHANGE_APP_LAUNCH_TIME_ESTIMATE";
125    field public static final String CHANGE_DEVICE_IDLE_TEMP_WHITELIST = "android.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST";
126    field public static final String CHECK_REMOTE_LOCKSCREEN = "android.permission.CHECK_REMOTE_LOCKSCREEN";
127    field public static final String CLEAR_APP_USER_DATA = "android.permission.CLEAR_APP_USER_DATA";
128    field public static final String COMPANION_APPROVE_WIFI_CONNECTIONS = "android.permission.COMPANION_APPROVE_WIFI_CONNECTIONS";
129    field public static final String CONFIGURE_DISPLAY_BRIGHTNESS = "android.permission.CONFIGURE_DISPLAY_BRIGHTNESS";
130    field @FlaggedApi("android.security.frp_enforcement") public static final String CONFIGURE_FACTORY_RESET_PROTECTION = "android.permission.CONFIGURE_FACTORY_RESET_PROTECTION";
131    field public static final String CONFIGURE_INTERACT_ACROSS_PROFILES = "android.permission.CONFIGURE_INTERACT_ACROSS_PROFILES";
132    field @Deprecated public static final String CONNECTIVITY_INTERNAL = "android.permission.CONNECTIVITY_INTERNAL";
133    field public static final String CONNECTIVITY_USE_RESTRICTED_NETWORKS = "android.permission.CONNECTIVITY_USE_RESTRICTED_NETWORKS";
134    field public static final String CONTROL_DEVICE_LIGHTS = "android.permission.CONTROL_DEVICE_LIGHTS";
135    field public static final String CONTROL_DISPLAY_COLOR_TRANSFORMS = "android.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS";
136    field public static final String CONTROL_DISPLAY_SATURATION = "android.permission.CONTROL_DISPLAY_SATURATION";
137    field public static final String CONTROL_INCALL_EXPERIENCE = "android.permission.CONTROL_INCALL_EXPERIENCE";
138    field public static final String CONTROL_KEYGUARD_SECURE_NOTIFICATIONS = "android.permission.CONTROL_KEYGUARD_SECURE_NOTIFICATIONS";
139    field public static final String CONTROL_OEM_PAID_NETWORK_PREFERENCE = "android.permission.CONTROL_OEM_PAID_NETWORK_PREFERENCE";
140    field public static final String CONTROL_VPN = "android.permission.CONTROL_VPN";
141    field @FlaggedApi("android.app.admin.flags.split_create_managed_profile_enabled") public static final String COPY_ACCOUNTS = "android.permission.COPY_ACCOUNTS";
142    field public static final String CREATE_USERS = "android.permission.CREATE_USERS";
143    field public static final String CREATE_VIRTUAL_DEVICE = "android.permission.CREATE_VIRTUAL_DEVICE";
144    field public static final String CRYPT_KEEPER = "android.permission.CRYPT_KEEPER";
145    field public static final String DEVICE_POWER = "android.permission.DEVICE_POWER";
146    field public static final String DISABLE_SYSTEM_SOUND_EFFECTS = "android.permission.DISABLE_SYSTEM_SOUND_EFFECTS";
147    field public static final String DISPATCH_PROVISIONING_MESSAGE = "android.permission.DISPATCH_PROVISIONING_MESSAGE";
148    field public static final String DOMAIN_VERIFICATION_AGENT = "android.permission.DOMAIN_VERIFICATION_AGENT";
149    field @FlaggedApi("com.android.art.flags.executable_method_file_offsets") public static final String DYNAMIC_INSTRUMENTATION = "android.permission.DYNAMIC_INSTRUMENTATION";
150    field @FlaggedApi("com.android.window.flags.untrusted_embedding_any_app_permission") public static final String EMBED_ANY_APP_IN_UNTRUSTED_MODE = "android.permission.EMBED_ANY_APP_IN_UNTRUSTED_MODE";
151    field @FlaggedApi("android.content.pm.emergency_install_permission") public static final String EMERGENCY_INSTALL_PACKAGES = "android.permission.EMERGENCY_INSTALL_PACKAGES";
152    field public static final String ENTER_CAR_MODE_PRIORITIZED = "android.permission.ENTER_CAR_MODE_PRIORITIZED";
153    field @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public static final String EXECUTE_APP_FUNCTIONS = "android.permission.EXECUTE_APP_FUNCTIONS";
154    field @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public static final String EXECUTE_APP_FUNCTIONS_TRUSTED = "android.permission.EXECUTE_APP_FUNCTIONS_TRUSTED";
155    field public static final String EXEMPT_FROM_AUDIO_RECORD_RESTRICTIONS = "android.permission.EXEMPT_FROM_AUDIO_RECORD_RESTRICTIONS";
156    field public static final String FORCE_BACK = "android.permission.FORCE_BACK";
157    field public static final String FORCE_STOP_PACKAGES = "android.permission.FORCE_STOP_PACKAGES";
158    field public static final String GET_APP_METADATA = "android.permission.GET_APP_METADATA";
159    field public static final String GET_APP_OPS_STATS = "android.permission.GET_APP_OPS_STATS";
160    field @FlaggedApi("android.app.bic_client") public static final String GET_BACKGROUND_INSTALLED_PACKAGES = "android.permission.GET_BACKGROUND_INSTALLED_PACKAGES";
161    field @FlaggedApi("android.app.get_binding_uid_importance") public static final String GET_BINDING_UID_IMPORTANCE = "android.permission.GET_BINDING_UID_IMPORTANCE";
162    field public static final String GET_HISTORICAL_APP_OPS_STATS = "android.permission.GET_HISTORICAL_APP_OPS_STATS";
163    field public static final String GET_PROCESS_STATE_AND_OOM_SCORE = "android.permission.GET_PROCESS_STATE_AND_OOM_SCORE";
164    field public static final String GET_RUNTIME_PERMISSIONS = "android.permission.GET_RUNTIME_PERMISSIONS";
165    field public static final String GET_TOP_ACTIVITY_INFO = "android.permission.GET_TOP_ACTIVITY_INFO";
166    field @Deprecated public static final String GRANT_PROFILE_OWNER_DEVICE_IDS_ACCESS = "android.permission.GRANT_PROFILE_OWNER_DEVICE_IDS_ACCESS";
167    field public static final String GRANT_RUNTIME_PERMISSIONS = "android.permission.GRANT_RUNTIME_PERMISSIONS";
168    field public static final String GRANT_RUNTIME_PERMISSIONS_TO_TELEPHONY_DEFAULTS = "android.permission.GRANT_RUNTIME_PERMISSIONS_TO_TELEPHONY_DEFAULTS";
169    field public static final String HANDLE_CAR_MODE_CHANGES = "android.permission.HANDLE_CAR_MODE_CHANGES";
170    field public static final String HARDWARE_TEST = "android.permission.HARDWARE_TEST";
171    field public static final String HDMI_CEC = "android.permission.HDMI_CEC";
172    field @Deprecated public static final String HIDE_NON_SYSTEM_OVERLAY_WINDOWS = "android.permission.HIDE_NON_SYSTEM_OVERLAY_WINDOWS";
173    field public static final String INJECT_EVENTS = "android.permission.INJECT_EVENTS";
174    field @FlaggedApi("android.content.pm.sdk_dependency_installer") public static final String INSTALL_DEPENDENCY_SHARED_LIBRARIES = "android.permission.INSTALL_DEPENDENCY_SHARED_LIBRARIES";
175    field public static final String INSTALL_DPC_PACKAGES = "android.permission.INSTALL_DPC_PACKAGES";
176    field public static final String INSTALL_DYNAMIC_SYSTEM = "android.permission.INSTALL_DYNAMIC_SYSTEM";
177    field public static final String INSTALL_EXISTING_PACKAGES = "com.android.permission.INSTALL_EXISTING_PACKAGES";
178    field public static final String INSTALL_GRANT_RUNTIME_PERMISSIONS = "android.permission.INSTALL_GRANT_RUNTIME_PERMISSIONS";
179    field public static final String INSTALL_LOCATION_TIME_ZONE_PROVIDER_SERVICE = "android.permission.INSTALL_LOCATION_TIME_ZONE_PROVIDER_SERVICE";
180    field public static final String INSTALL_PACKAGE_UPDATES = "android.permission.INSTALL_PACKAGE_UPDATES";
181    field public static final String INSTALL_SELF_UPDATES = "android.permission.INSTALL_SELF_UPDATES";
182    field public static final String INTENT_FILTER_VERIFICATION_AGENT = "android.permission.INTENT_FILTER_VERIFICATION_AGENT";
183    field public static final String INTERACT_ACROSS_USERS = "android.permission.INTERACT_ACROSS_USERS";
184    field public static final String INTERACT_ACROSS_USERS_FULL = "android.permission.INTERACT_ACROSS_USERS_FULL";
185    field public static final String INTERNAL_SYSTEM_WINDOW = "android.permission.INTERNAL_SYSTEM_WINDOW";
186    field public static final String INVOKE_CARRIER_SETUP = "android.permission.INVOKE_CARRIER_SETUP";
187    field public static final String KEYPHRASE_ENROLLMENT_APPLICATION = "android.permission.KEYPHRASE_ENROLLMENT_APPLICATION";
188    field public static final String KILL_ALL_BACKGROUND_PROCESSES = "android.permission.KILL_ALL_BACKGROUND_PROCESSES";
189    field public static final String KILL_UID = "android.permission.KILL_UID";
190    field public static final String LAUNCH_DEVICE_MANAGER_SETUP = "android.permission.LAUNCH_DEVICE_MANAGER_SETUP";
191    field public static final String LAUNCH_PERMISSION_SETTINGS = "android.permission.LAUNCH_PERMISSION_SETTINGS";
192    field public static final String LOCAL_MAC_ADDRESS = "android.permission.LOCAL_MAC_ADDRESS";
193    field public static final String LOCATION_BYPASS = "android.permission.LOCATION_BYPASS";
194    field public static final String LOCK_DEVICE = "android.permission.LOCK_DEVICE";
195    field public static final String LOG_FOREGROUND_RESOURCE_USE = "android.permission.LOG_FOREGROUND_RESOURCE_USE";
196    field public static final String LOOP_RADIO = "android.permission.LOOP_RADIO";
197    field public static final String MANAGE_ACCESSIBILITY = "android.permission.MANAGE_ACCESSIBILITY";
198    field @Deprecated public static final String MANAGE_ACTIVITY_STACKS = "android.permission.MANAGE_ACTIVITY_STACKS";
199    field public static final String MANAGE_ACTIVITY_TASKS = "android.permission.MANAGE_ACTIVITY_TASKS";
200    field @FlaggedApi("android.security.aapm_api") public static final String MANAGE_ADVANCED_PROTECTION_MODE = "android.permission.MANAGE_ADVANCED_PROTECTION_MODE";
201    field public static final String MANAGE_APP_HIBERNATION = "android.permission.MANAGE_APP_HIBERNATION";
202    field public static final String MANAGE_APP_OPS_RESTRICTIONS = "android.permission.MANAGE_APP_OPS_RESTRICTIONS";
203    field public static final String MANAGE_APP_PREDICTIONS = "android.permission.MANAGE_APP_PREDICTIONS";
204    field public static final String MANAGE_APP_TOKENS = "android.permission.MANAGE_APP_TOKENS";
205    field public static final String MANAGE_AUTO_FILL = "android.permission.MANAGE_AUTO_FILL";
206    field public static final String MANAGE_BLUETOOTH_WHEN_WIRELESS_CONSENT_REQUIRED = "android.permission.MANAGE_BLUETOOTH_WHEN_WIRELESS_CONSENT_REQUIRED";
207    field public static final String MANAGE_CARRIER_OEM_UNLOCK_STATE = "android.permission.MANAGE_CARRIER_OEM_UNLOCK_STATE";
208    field public static final String MANAGE_CA_CERTIFICATES = "android.permission.MANAGE_CA_CERTIFICATES";
209    field public static final String MANAGE_CLIPBOARD_ACCESS_NOTIFICATION = "android.permission.MANAGE_CLIPBOARD_ACCESS_NOTIFICATION";
210    field public static final String MANAGE_CLOUDSEARCH = "android.permission.MANAGE_CLOUDSEARCH";
211    field public static final String MANAGE_CONTENT_CAPTURE = "android.permission.MANAGE_CONTENT_CAPTURE";
212    field public static final String MANAGE_CONTENT_SUGGESTIONS = "android.permission.MANAGE_CONTENT_SUGGESTIONS";
213    field public static final String MANAGE_DEBUGGING = "android.permission.MANAGE_DEBUGGING";
214    field public static final String MANAGE_DEFAULT_APPLICATIONS = "android.permission.MANAGE_DEFAULT_APPLICATIONS";
215    field public static final String MANAGE_DEVICE_ADMINS = "android.permission.MANAGE_DEVICE_ADMINS";
216    field public static final String MANAGE_DEVICE_POLICY_APP_EXEMPTIONS = "android.permission.MANAGE_DEVICE_POLICY_APP_EXEMPTIONS";
217    field public static final String MANAGE_DEVICE_POLICY_AUDIT_LOGGING = "android.permission.MANAGE_DEVICE_POLICY_AUDIT_LOGGING";
218    field @FlaggedApi("android.permission.flags.enhanced_confirmation_mode_apis_enabled") public static final String MANAGE_ENHANCED_CONFIRMATION_STATES = "android.permission.MANAGE_ENHANCED_CONFIRMATION_STATES";
219    field public static final String MANAGE_ETHERNET_NETWORKS = "android.permission.MANAGE_ETHERNET_NETWORKS";
220    field public static final String MANAGE_FACTORY_RESET_PROTECTION = "android.permission.MANAGE_FACTORY_RESET_PROTECTION";
221    field public static final String MANAGE_GAME_ACTIVITY = "android.permission.MANAGE_GAME_ACTIVITY";
222    field public static final String MANAGE_GAME_MODE = "android.permission.MANAGE_GAME_MODE";
223    field @FlaggedApi("android.media.tv.flags.media_quality_fw") public static final String MANAGE_GLOBAL_PICTURE_QUALITY_SERVICE = "android.permission.MANAGE_GLOBAL_PICTURE_QUALITY_SERVICE";
224    field @FlaggedApi("android.media.tv.flags.media_quality_fw") public static final String MANAGE_GLOBAL_SOUND_QUALITY_SERVICE = "android.permission.MANAGE_GLOBAL_SOUND_QUALITY_SERVICE";
225    field public static final String MANAGE_HOTWORD_DETECTION = "android.permission.MANAGE_HOTWORD_DETECTION";
226    field @FlaggedApi("android.security.afl_api") public static final String MANAGE_INTRUSION_DETECTION_STATE = "android.permission.MANAGE_INTRUSION_DETECTION_STATE";
227    field public static final String MANAGE_IPSEC_TUNNELS = "android.permission.MANAGE_IPSEC_TUNNELS";
228    field public static final String MANAGE_LOW_POWER_STANDBY = "android.permission.MANAGE_LOW_POWER_STANDBY";
229    field public static final String MANAGE_MUSIC_RECOGNITION = "android.permission.MANAGE_MUSIC_RECOGNITION";
230    field public static final String MANAGE_NOTIFICATION_LISTENERS = "android.permission.MANAGE_NOTIFICATION_LISTENERS";
231    field public static final String MANAGE_ONE_TIME_PERMISSION_SESSIONS = "android.permission.MANAGE_ONE_TIME_PERMISSION_SESSIONS";
232    field public static final String MANAGE_PROFILE_AND_DEVICE_OWNERS = "android.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS";
233    field public static final String MANAGE_ROLE_HOLDERS = "android.permission.MANAGE_ROLE_HOLDERS";
234    field public static final String MANAGE_ROLLBACKS = "android.permission.MANAGE_ROLLBACKS";
235    field public static final String MANAGE_ROTATION_RESOLVER = "android.permission.MANAGE_ROTATION_RESOLVER";
236    field public static final String MANAGE_SAFETY_CENTER = "android.permission.MANAGE_SAFETY_CENTER";
237    field public static final String MANAGE_SEARCH_UI = "android.permission.MANAGE_SEARCH_UI";
238    field @FlaggedApi("android.security.secure_lockdown") public static final String MANAGE_SECURE_LOCK_DEVICE = "android.permission.MANAGE_SECURE_LOCK_DEVICE";
239    field public static final String MANAGE_SENSOR_PRIVACY = "android.permission.MANAGE_SENSOR_PRIVACY";
240    field public static final String MANAGE_SMARTSPACE = "android.permission.MANAGE_SMARTSPACE";
241    field public static final String MANAGE_SOUND_TRIGGER = "android.permission.MANAGE_SOUND_TRIGGER";
242    field public static final String MANAGE_SPEECH_RECOGNITION = "android.permission.MANAGE_SPEECH_RECOGNITION";
243    field public static final String MANAGE_SUBSCRIPTION_PLANS = "android.permission.MANAGE_SUBSCRIPTION_PLANS";
244    field public static final String MANAGE_SUBSCRIPTION_USER_ASSOCIATION = "android.permission.MANAGE_SUBSCRIPTION_USER_ASSOCIATION";
245    field public static final String MANAGE_TEST_NETWORKS = "android.permission.MANAGE_TEST_NETWORKS";
246    field public static final String MANAGE_TIME_AND_ZONE_DETECTION = "android.permission.MANAGE_TIME_AND_ZONE_DETECTION";
247    field public static final String MANAGE_UI_TRANSLATION = "android.permission.MANAGE_UI_TRANSLATION";
248    field public static final String MANAGE_USB = "android.permission.MANAGE_USB";
249    field public static final String MANAGE_USERS = "android.permission.MANAGE_USERS";
250    field public static final String MANAGE_USER_OEM_UNLOCK_STATE = "android.permission.MANAGE_USER_OEM_UNLOCK_STATE";
251    field public static final String MANAGE_VOICE_KEYPHRASES = "android.permission.MANAGE_VOICE_KEYPHRASES";
252    field public static final String MANAGE_WALLPAPER_EFFECTS_GENERATION = "android.permission.MANAGE_WALLPAPER_EFFECTS_GENERATION";
253    field public static final String MANAGE_WEAK_ESCROW_TOKEN = "android.permission.MANAGE_WEAK_ESCROW_TOKEN";
254    field public static final String MANAGE_WEARABLE_SENSING_SERVICE = "android.permission.MANAGE_WEARABLE_SENSING_SERVICE";
255    field public static final String MANAGE_WIFI_COUNTRY_CODE = "android.permission.MANAGE_WIFI_COUNTRY_CODE";
256    field public static final String MARK_DEVICE_ORGANIZATION_OWNED = "android.permission.MARK_DEVICE_ORGANIZATION_OWNED";
257    field public static final String MEDIA_RESOURCE_OVERRIDE_PID = "android.permission.MEDIA_RESOURCE_OVERRIDE_PID";
258    field public static final String MIGRATE_HEALTH_CONNECT_DATA = "android.permission.MIGRATE_HEALTH_CONNECT_DATA";
259    field public static final String MODIFY_APPWIDGET_BIND_PERMISSIONS = "android.permission.MODIFY_APPWIDGET_BIND_PERMISSIONS";
260    field public static final String MODIFY_AUDIO_ROUTING = "android.permission.MODIFY_AUDIO_ROUTING";
261    field public static final String MODIFY_AUDIO_SETTINGS_PRIVILEGED = "android.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED";
262    field public static final String MODIFY_CELL_BROADCASTS = "android.permission.MODIFY_CELL_BROADCASTS";
263    field public static final String MODIFY_DAY_NIGHT_MODE = "android.permission.MODIFY_DAY_NIGHT_MODE";
264    field @Deprecated public static final String MODIFY_NETWORK_ACCOUNTING = "android.permission.MODIFY_NETWORK_ACCOUNTING";
265    field public static final String MODIFY_PARENTAL_CONTROLS = "android.permission.MODIFY_PARENTAL_CONTROLS";
266    field public static final String MODIFY_QUIET_MODE = "android.permission.MODIFY_QUIET_MODE";
267    field public static final String MODIFY_SETTINGS_OVERRIDEABLE_BY_RESTORE = "android.permission.MODIFY_SETTINGS_OVERRIDEABLE_BY_RESTORE";
268    field public static final String MONITOR_DEVICE_CONFIG_ACCESS = "android.permission.MONITOR_DEVICE_CONFIG_ACCESS";
269    field public static final String MOVE_PACKAGE = "android.permission.MOVE_PACKAGE";
270    field public static final String NETWORK_AIRPLANE_MODE = "android.permission.NETWORK_AIRPLANE_MODE";
271    field public static final String NETWORK_CARRIER_PROVISIONING = "android.permission.NETWORK_CARRIER_PROVISIONING";
272    field public static final String NETWORK_FACTORY = "android.permission.NETWORK_FACTORY";
273    field public static final String NETWORK_MANAGED_PROVISIONING = "android.permission.NETWORK_MANAGED_PROVISIONING";
274    field public static final String NETWORK_SCAN = "android.permission.NETWORK_SCAN";
275    field public static final String NETWORK_SETTINGS = "android.permission.NETWORK_SETTINGS";
276    field public static final String NETWORK_SETUP_WIZARD = "android.permission.NETWORK_SETUP_WIZARD";
277    field public static final String NETWORK_SIGNAL_STRENGTH_WAKEUP = "android.permission.NETWORK_SIGNAL_STRENGTH_WAKEUP";
278    field public static final String NETWORK_STACK = "android.permission.NETWORK_STACK";
279    field public static final String NETWORK_STATS_PROVIDER = "android.permission.NETWORK_STATS_PROVIDER";
280    field public static final String NFC_SET_CONTROLLER_ALWAYS_ON = "android.permission.NFC_SET_CONTROLLER_ALWAYS_ON";
281    field public static final String NOTIFICATION_DURING_SETUP = "android.permission.NOTIFICATION_DURING_SETUP";
282    field public static final String NOTIFY_TV_INPUTS = "android.permission.NOTIFY_TV_INPUTS";
283    field public static final String OBSERVE_APP_USAGE = "android.permission.OBSERVE_APP_USAGE";
284    field public static final String OBSERVE_NETWORK_POLICY = "android.permission.OBSERVE_NETWORK_POLICY";
285    field public static final String OBSERVE_ROLE_HOLDERS = "android.permission.OBSERVE_ROLE_HOLDERS";
286    field public static final String OBSERVE_SENSOR_PRIVACY = "android.permission.OBSERVE_SENSOR_PRIVACY";
287    field public static final String OPEN_ACCESSIBILITY_DETAILS_SETTINGS = "android.permission.OPEN_ACCESSIBILITY_DETAILS_SETTINGS";
288    field public static final String OVERRIDE_COMPAT_CHANGE_CONFIG_ON_RELEASE_BUILD = "android.permission.OVERRIDE_COMPAT_CHANGE_CONFIG_ON_RELEASE_BUILD";
289    field @FlaggedApi("com.android.input.flags.override_key_behavior_permission_apis") public static final String OVERRIDE_SYSTEM_KEY_BEHAVIOR_IN_FOCUSED_WINDOW = "android.permission.OVERRIDE_SYSTEM_KEY_BEHAVIOR_IN_FOCUSED_WINDOW";
290    field public static final String PACKAGE_VERIFICATION_AGENT = "android.permission.PACKAGE_VERIFICATION_AGENT";
291    field public static final String PACKET_KEEPALIVE_OFFLOAD = "android.permission.PACKET_KEEPALIVE_OFFLOAD";
292    field public static final String PEERS_MAC_ADDRESS = "android.permission.PEERS_MAC_ADDRESS";
293    field public static final String PERFORM_CDMA_PROVISIONING = "android.permission.PERFORM_CDMA_PROVISIONING";
294    field public static final String PERFORM_IMS_SINGLE_REGISTRATION = "android.permission.PERFORM_IMS_SINGLE_REGISTRATION";
295    field public static final String PERFORM_SIM_ACTIVATION = "android.permission.PERFORM_SIM_ACTIVATION";
296    field public static final String POWER_SAVER = "android.permission.POWER_SAVER";
297    field @FlaggedApi("android.permission.flags.factory_reset_prep_permission_apis") public static final String PREPARE_FACTORY_RESET = "android.permission.PREPARE_FACTORY_RESET";
298    field public static final String PROVIDE_DEFAULT_ENABLED_CREDENTIAL_SERVICE = "android.permission.PROVIDE_DEFAULT_ENABLED_CREDENTIAL_SERVICE";
299    field public static final String PROVIDE_RESOLVER_RANKER_SERVICE = "android.permission.PROVIDE_RESOLVER_RANKER_SERVICE";
300    field public static final String PROVIDE_TRUST_AGENT = "android.permission.PROVIDE_TRUST_AGENT";
301    field public static final String PROVISION_DEMO_DEVICE = "android.permission.PROVISION_DEMO_DEVICE";
302    field @FlaggedApi("android.content.pm.quarantined_enabled") public static final String QUARANTINE_APPS = "android.permission.QUARANTINE_APPS";
303    field public static final String QUERY_ADMIN_POLICY = "android.permission.QUERY_ADMIN_POLICY";
304    field public static final String QUERY_CLONED_APPS = "android.permission.QUERY_CLONED_APPS";
305    field @FlaggedApi("android.app.admin.flags.device_theft_api_enabled") public static final String QUERY_DEVICE_STOLEN_STATE = "android.permission.QUERY_DEVICE_STOLEN_STATE";
306    field @Deprecated public static final String QUERY_TIME_ZONE_RULES = "android.permission.QUERY_TIME_ZONE_RULES";
307    field public static final String QUERY_USERS = "android.permission.QUERY_USERS";
308    field public static final String RADIO_SCAN_WITHOUT_LOCATION = "android.permission.RADIO_SCAN_WITHOUT_LOCATION";
309    field public static final String READ_ACTIVE_EMERGENCY_SESSION = "android.permission.READ_ACTIVE_EMERGENCY_SESSION";
310    field public static final String READ_APP_SPECIFIC_LOCALES = "android.permission.READ_APP_SPECIFIC_LOCALES";
311    field @FlaggedApi("com.android.server.telecom.flags.telecom_resolve_hidden_dependencies") public static final String READ_BLOCKED_NUMBERS = "android.permission.READ_BLOCKED_NUMBERS";
312    field public static final String READ_CARRIER_APP_INFO = "android.permission.READ_CARRIER_APP_INFO";
313    field public static final String READ_CELL_BROADCASTS = "android.permission.READ_CELL_BROADCASTS";
314    field public static final String READ_CLIPBOARD_IN_BACKGROUND = "android.permission.READ_CLIPBOARD_IN_BACKGROUND";
315    field public static final String READ_CONTENT_RATING_SYSTEMS = "android.permission.READ_CONTENT_RATING_SYSTEMS";
316    field public static final String READ_DEVICE_CONFIG = "android.permission.READ_DEVICE_CONFIG";
317    field public static final String READ_DREAM_STATE = "android.permission.READ_DREAM_STATE";
318    field public static final String READ_GLOBAL_APP_SEARCH_DATA = "android.permission.READ_GLOBAL_APP_SEARCH_DATA";
319    field @FlaggedApi("android.content.pm.get_resolved_apk_path") public static final String READ_INSTALLED_SESSION_PATHS = "android.permission.READ_INSTALLED_SESSION_PATHS";
320    field public static final String READ_INSTALL_SESSIONS = "android.permission.READ_INSTALL_SESSIONS";
321    field @FlaggedApi("android.security.afl_api") public static final String READ_INTRUSION_DETECTION_STATE = "android.permission.READ_INTRUSION_DETECTION_STATE";
322    field public static final String READ_NETWORK_USAGE_HISTORY = "android.permission.READ_NETWORK_USAGE_HISTORY";
323    field public static final String READ_OEM_UNLOCK_STATE = "android.permission.READ_OEM_UNLOCK_STATE";
324    field public static final String READ_PEOPLE_DATA = "android.permission.READ_PEOPLE_DATA";
325    field public static final String READ_PRINT_SERVICES = "android.permission.READ_PRINT_SERVICES";
326    field public static final String READ_PRINT_SERVICE_RECOMMENDATIONS = "android.permission.READ_PRINT_SERVICE_RECOMMENDATIONS";
327    field public static final String READ_PRIVILEGED_PHONE_STATE = "android.permission.READ_PRIVILEGED_PHONE_STATE";
328    field public static final String READ_PROJECTION_STATE = "android.permission.READ_PROJECTION_STATE";
329    field public static final String READ_RESTRICTED_STATS = "android.permission.READ_RESTRICTED_STATS";
330    field public static final String READ_RUNTIME_PROFILES = "android.permission.READ_RUNTIME_PROFILES";
331    field public static final String READ_SAFETY_CENTER_STATUS = "android.permission.READ_SAFETY_CENTER_STATUS";
332    field public static final String READ_SEARCH_INDEXABLES = "android.permission.READ_SEARCH_INDEXABLES";
333    field @FlaggedApi("com.android.internal.telephony.flags.subscription_plan_allow_status_and_end_date") public static final String READ_SUBSCRIPTION_PLANS = "android.permission.READ_SUBSCRIPTION_PLANS";
334    field @FlaggedApi("android.app.system_terms_of_address_enabled") public static final String READ_SYSTEM_GRAMMATICAL_GENDER = "android.permission.READ_SYSTEM_GRAMMATICAL_GENDER";
335    field public static final String READ_SYSTEM_UPDATE_INFO = "android.permission.READ_SYSTEM_UPDATE_INFO";
336    field public static final String READ_WALLPAPER_INTERNAL = "android.permission.READ_WALLPAPER_INTERNAL";
337    field public static final String READ_WIFI_CREDENTIAL = "android.permission.READ_WIFI_CREDENTIAL";
338    field public static final String READ_WRITE_SYNC_DISABLED_MODE_CONFIG = "android.permission.READ_WRITE_SYNC_DISABLED_MODE_CONFIG";
339    field public static final String REAL_GET_TASKS = "android.permission.REAL_GET_TASKS";
340    field public static final String RECEIVE_BLUETOOTH_MAP = "android.permission.RECEIVE_BLUETOOTH_MAP";
341    field public static final String RECEIVE_DATA_ACTIVITY_CHANGE = "android.permission.RECEIVE_DATA_ACTIVITY_CHANGE";
342    field public static final String RECEIVE_DEVICE_CUSTOMIZATION_READY = "android.permission.RECEIVE_DEVICE_CUSTOMIZATION_READY";
343    field public static final String RECEIVE_EMERGENCY_BROADCAST = "android.permission.RECEIVE_EMERGENCY_BROADCAST";
344    field @FlaggedApi("android.permission.flags.voice_activation_permission_apis") public static final String RECEIVE_SANDBOX_TRIGGER_AUDIO = "android.permission.RECEIVE_SANDBOX_TRIGGER_AUDIO";
345    field @FlaggedApi("android.view.flags.sensitive_content_app_protection_api") public static final String RECEIVE_SENSITIVE_NOTIFICATIONS = "android.permission.RECEIVE_SENSITIVE_NOTIFICATIONS";
346    field public static final String RECEIVE_WIFI_CREDENTIAL_CHANGE = "android.permission.RECEIVE_WIFI_CREDENTIAL_CHANGE";
347    field public static final String RECORD_BACKGROUND_AUDIO = "android.permission.RECORD_BACKGROUND_AUDIO";
348    field public static final String RECOVERY = "android.permission.RECOVERY";
349    field public static final String RECOVER_KEYSTORE = "android.permission.RECOVER_KEYSTORE";
350    field public static final String REGISTER_CALL_PROVIDER = "android.permission.REGISTER_CALL_PROVIDER";
351    field public static final String REGISTER_CONNECTION_MANAGER = "android.permission.REGISTER_CONNECTION_MANAGER";
352    field @FlaggedApi("android.net.platform.flags.register_nsd_offload_engine") public static final String REGISTER_NSD_OFFLOAD_ENGINE = "android.permission.REGISTER_NSD_OFFLOAD_ENGINE";
353    field public static final String REGISTER_SIM_SUBSCRIPTION = "android.permission.REGISTER_SIM_SUBSCRIPTION";
354    field public static final String REGISTER_STATS_PULL_ATOM = "android.permission.REGISTER_STATS_PULL_ATOM";
355    field public static final String REMOTE_DISPLAY_PROVIDER = "android.permission.REMOTE_DISPLAY_PROVIDER";
356    field @FlaggedApi("android.app.admin.flags.split_create_managed_profile_enabled") public static final String REMOVE_ACCOUNTS = "android.permission.REMOVE_ACCOUNTS";
357    field public static final String REMOVE_DRM_CERTIFICATES = "android.permission.REMOVE_DRM_CERTIFICATES";
358    field public static final String REMOVE_TASKS = "android.permission.REMOVE_TASKS";
359    field public static final String RENOUNCE_PERMISSIONS = "android.permission.RENOUNCE_PERMISSIONS";
360    field @FlaggedApi("android.app.usage.report_usage_stats_permission") public static final String REPORT_USAGE_STATS = "android.permission.REPORT_USAGE_STATS";
361    field @Deprecated public static final String REQUEST_NETWORK_SCORES = "android.permission.REQUEST_NETWORK_SCORES";
362    field public static final String REQUEST_NOTIFICATION_ASSISTANT_SERVICE = "android.permission.REQUEST_NOTIFICATION_ASSISTANT_SERVICE";
363    field public static final String RESET_PASSWORD = "android.permission.RESET_PASSWORD";
364    field public static final String RESTART_WIFI_SUBSYSTEM = "android.permission.RESTART_WIFI_SUBSYSTEM";
365    field @FlaggedApi("android.permission.flags.health_connect_backup_restore_permission_enabled") public static final String RESTORE_HEALTH_CONNECT_DATA_AND_SETTINGS = "android.permission.RESTORE_HEALTH_CONNECT_DATA_AND_SETTINGS";
366    field public static final String RESTORE_RUNTIME_PERMISSIONS = "android.permission.RESTORE_RUNTIME_PERMISSIONS";
367    field public static final String RESTRICTED_VR_ACCESS = "android.permission.RESTRICTED_VR_ACCESS";
368    field public static final String RETRIEVE_WINDOW_CONTENT = "android.permission.RETRIEVE_WINDOW_CONTENT";
369    field public static final String REVIEW_ACCESSIBILITY_SERVICES = "android.permission.REVIEW_ACCESSIBILITY_SERVICES";
370    field public static final String REVOKE_RUNTIME_PERMISSIONS = "android.permission.REVOKE_RUNTIME_PERMISSIONS";
371    field public static final String ROTATE_SURFACE_FLINGER = "android.permission.ROTATE_SURFACE_FLINGER";
372    field public static final String SATELLITE_COMMUNICATION = "android.permission.SATELLITE_COMMUNICATION";
373    field public static final String SCHEDULE_PRIORITIZED_ALARM = "android.permission.SCHEDULE_PRIORITIZED_ALARM";
374    field @Deprecated public static final String SCORE_NETWORKS = "android.permission.SCORE_NETWORKS";
375    field public static final String SECURE_ELEMENT_PRIVILEGED_OPERATION = "android.permission.SECURE_ELEMENT_PRIVILEGED_OPERATION";
376    field public static final String SEND_CATEGORY_CAR_NOTIFICATIONS = "android.permission.SEND_CATEGORY_CAR_NOTIFICATIONS";
377    field public static final String SEND_DEVICE_CUSTOMIZATION_READY = "android.permission.SEND_DEVICE_CUSTOMIZATION_READY";
378    field public static final String SEND_SAFETY_CENTER_UPDATE = "android.permission.SEND_SAFETY_CENTER_UPDATE";
379    field public static final String SEND_SHOW_SUSPENDED_APP_DETAILS = "android.permission.SEND_SHOW_SUSPENDED_APP_DETAILS";
380    field public static final String SEND_SMS_NO_CONFIRMATION = "android.permission.SEND_SMS_NO_CONFIRMATION";
381    field public static final String SERIAL_PORT = "android.permission.SERIAL_PORT";
382    field @FlaggedApi("android.security.fsverity_api") public static final String SETUP_FSVERITY = "android.permission.SETUP_FSVERITY";
383    field public static final String SET_ACTIVITY_WATCHER = "android.permission.SET_ACTIVITY_WATCHER";
384    field public static final String SET_CLIP_SOURCE = "android.permission.SET_CLIP_SOURCE";
385    field public static final String SET_DEFAULT_ACCOUNT_FOR_CONTACTS = "android.permission.SET_DEFAULT_ACCOUNT_FOR_CONTACTS";
386    field public static final String SET_HARMFUL_APP_WARNINGS = "android.permission.SET_HARMFUL_APP_WARNINGS";
387    field public static final String SET_LOW_POWER_STANDBY_PORTS = "android.permission.SET_LOW_POWER_STANDBY_PORTS";
388    field public static final String SET_MEDIA_KEY_LISTENER = "android.permission.SET_MEDIA_KEY_LISTENER";
389    field public static final String SET_ORIENTATION = "android.permission.SET_ORIENTATION";
390    field public static final String SET_POINTER_SPEED = "android.permission.SET_POINTER_SPEED";
391    field public static final String SET_SCREEN_COMPATIBILITY = "android.permission.SET_SCREEN_COMPATIBILITY";
392    field public static final String SET_SYSTEM_AUDIO_CAPTION = "android.permission.SET_SYSTEM_AUDIO_CAPTION";
393    field public static final String SET_UNRESTRICTED_KEEP_CLEAR_AREAS = "android.permission.SET_UNRESTRICTED_KEEP_CLEAR_AREAS";
394    field public static final String SET_VOLUME_KEY_LONG_PRESS_LISTENER = "android.permission.SET_VOLUME_KEY_LONG_PRESS_LISTENER";
395    field public static final String SET_WALLPAPER_COMPONENT = "android.permission.SET_WALLPAPER_COMPONENT";
396    field public static final String SET_WALLPAPER_DIM_AMOUNT = "android.permission.SET_WALLPAPER_DIM_AMOUNT";
397    field @FlaggedApi("android.nfc.enable_nfc_mainline") public static final String SHOW_CUSTOMIZED_RESOLVER = "android.permission.SHOW_CUSTOMIZED_RESOLVER";
398    field public static final String SHOW_KEYGUARD_MESSAGE = "android.permission.SHOW_KEYGUARD_MESSAGE";
399    field public static final String SHUTDOWN = "android.permission.SHUTDOWN";
400    field public static final String SIGNAL_REBOOT_READINESS = "android.permission.SIGNAL_REBOOT_READINESS";
401    field @FlaggedApi("android.media.tv.flags.kids_mode_tvdb_sharing") public static final String SINGLE_USER_TIS_ACCESS = "android.permission.SINGLE_USER_TIS_ACCESS";
402    field public static final String SOUND_TRIGGER_RUN_IN_BATTERY_SAVER = "android.permission.SOUND_TRIGGER_RUN_IN_BATTERY_SAVER";
403    field public static final String STAGE_HEALTH_CONNECT_REMOTE_DATA = "android.permission.STAGE_HEALTH_CONNECT_REMOTE_DATA";
404    field public static final String START_ACTIVITIES_FROM_BACKGROUND = "android.permission.START_ACTIVITIES_FROM_BACKGROUND";
405    field public static final String START_CROSS_PROFILE_ACTIVITIES = "android.permission.START_CROSS_PROFILE_ACTIVITIES";
406    field public static final String START_REVIEW_PERMISSION_DECISIONS = "android.permission.START_REVIEW_PERMISSION_DECISIONS";
407    field public static final String START_TASKS_FROM_RECENTS = "android.permission.START_TASKS_FROM_RECENTS";
408    field @FlaggedApi("android.os.vibrator.vendor_vibration_effects") public static final String START_VIBRATION_SESSIONS = "android.permission.START_VIBRATION_SESSIONS";
409    field public static final String STATUS_BAR_SERVICE = "android.permission.STATUS_BAR_SERVICE";
410    field public static final String STOP_APP_SWITCHES = "android.permission.STOP_APP_SWITCHES";
411    field public static final String SUBSTITUTE_NOTIFICATION_APP_NAME = "android.permission.SUBSTITUTE_NOTIFICATION_APP_NAME";
412    field public static final String SUBSTITUTE_SHARE_TARGET_APP_NAME_AND_ICON = "android.permission.SUBSTITUTE_SHARE_TARGET_APP_NAME_AND_ICON";
413    field public static final String SUGGEST_EXTERNAL_TIME = "android.permission.SUGGEST_EXTERNAL_TIME";
414    field public static final String SUSPEND_APPS = "android.permission.SUSPEND_APPS";
415    field public static final String SYSTEM_APPLICATION_OVERLAY = "android.permission.SYSTEM_APPLICATION_OVERLAY";
416    field public static final String SYSTEM_CAMERA = "android.permission.SYSTEM_CAMERA";
417    field public static final String TETHER_PRIVILEGED = "android.permission.TETHER_PRIVILEGED";
418    field @FlaggedApi("com.android.net.thread.platform.flags.thread_enabled_platform") public static final String THREAD_NETWORK_PRIVILEGED = "android.permission.THREAD_NETWORK_PRIVILEGED";
419    field public static final String TIS_EXTENSION_INTERFACE = "android.permission.TIS_EXTENSION_INTERFACE";
420    field public static final String TOGGLE_AUTOMOTIVE_PROJECTION = "android.permission.TOGGLE_AUTOMOTIVE_PROJECTION";
421    field public static final String TRIGGER_LOST_MODE = "android.permission.TRIGGER_LOST_MODE";
422    field public static final String TV_INPUT_HARDWARE = "android.permission.TV_INPUT_HARDWARE";
423    field public static final String TV_VIRTUAL_REMOTE_CONTROLLER = "android.permission.TV_VIRTUAL_REMOTE_CONTROLLER";
424    field public static final String UNLIMITED_SHORTCUTS_API_CALLS = "android.permission.UNLIMITED_SHORTCUTS_API_CALLS";
425    field public static final String UPDATE_APP_OPS_STATS = "android.permission.UPDATE_APP_OPS_STATS";
426    field public static final String UPDATE_DEVICE_MANAGEMENT_RESOURCES = "android.permission.UPDATE_DEVICE_MANAGEMENT_RESOURCES";
427    field public static final String UPDATE_DOMAIN_VERIFICATION_USER_SELECTION = "android.permission.UPDATE_DOMAIN_VERIFICATION_USER_SELECTION";
428    field public static final String UPDATE_FONTS = "android.permission.UPDATE_FONTS";
429    field public static final String UPDATE_LOCK = "android.permission.UPDATE_LOCK";
430    field @Deprecated public static final String UPDATE_TIME_ZONE_RULES = "android.permission.UPDATE_TIME_ZONE_RULES";
431    field public static final String UPGRADE_RUNTIME_PERMISSIONS = "android.permission.UPGRADE_RUNTIME_PERMISSIONS";
432    field public static final String USER_ACTIVITY = "android.permission.USER_ACTIVITY";
433    field public static final String USE_COLORIZED_NOTIFICATIONS = "android.permission.USE_COLORIZED_NOTIFICATIONS";
434    field @FlaggedApi("android.app.ondeviceintelligence.flags.enable_on_device_intelligence") public static final String USE_ON_DEVICE_INTELLIGENCE = "android.permission.USE_ON_DEVICE_INTELLIGENCE";
435    field public static final String USE_RESERVED_DISK = "android.permission.USE_RESERVED_DISK";
436    field public static final String UWB_PRIVILEGED = "android.permission.UWB_PRIVILEGED";
437    field @FlaggedApi("android.os.vibrator.vendor_vibration_effects") public static final String VIBRATE_VENDOR_EFFECTS = "android.permission.VIBRATE_VENDOR_EFFECTS";
438    field public static final String WHITELIST_AUTO_REVOKE_PERMISSIONS = "android.permission.WHITELIST_AUTO_REVOKE_PERMISSIONS";
439    field public static final String WHITELIST_RESTRICTED_PERMISSIONS = "android.permission.WHITELIST_RESTRICTED_PERMISSIONS";
440    field public static final String WIFI_ACCESS_COEX_UNSAFE_CHANNELS = "android.permission.WIFI_ACCESS_COEX_UNSAFE_CHANNELS";
441    field public static final String WIFI_SET_DEVICE_MOBILITY_STATE = "android.permission.WIFI_SET_DEVICE_MOBILITY_STATE";
442    field public static final String WIFI_UPDATE_COEX_UNSAFE_CHANNELS = "android.permission.WIFI_UPDATE_COEX_UNSAFE_CHANNELS";
443    field public static final String WIFI_UPDATE_USABILITY_STATS_SCORE = "android.permission.WIFI_UPDATE_USABILITY_STATS_SCORE";
444    field public static final String WRITE_ALLOWLISTED_DEVICE_CONFIG = "android.permission.WRITE_ALLOWLISTED_DEVICE_CONFIG";
445    field @FlaggedApi("com.android.server.telecom.flags.telecom_resolve_hidden_dependencies") public static final String WRITE_BLOCKED_NUMBERS = "android.permission.WRITE_BLOCKED_NUMBERS";
446    field public static final String WRITE_DEVICE_CONFIG = "android.permission.WRITE_DEVICE_CONFIG";
447    field public static final String WRITE_DREAM_STATE = "android.permission.WRITE_DREAM_STATE";
448    field public static final String WRITE_EMBEDDED_SUBSCRIPTIONS = "android.permission.WRITE_EMBEDDED_SUBSCRIPTIONS";
449    field @Deprecated public static final String WRITE_MEDIA_STORAGE = "android.permission.WRITE_MEDIA_STORAGE";
450    field public static final String WRITE_OBB = "android.permission.WRITE_OBB";
451    field public static final String WRITE_SECURITY_LOG = "android.permission.WRITE_SECURITY_LOG";
452    field public static final String WRITE_SMS = "android.permission.WRITE_SMS";
453    field @FlaggedApi("android.provider.user_keys") public static final String WRITE_VERIFICATION_STATE_E2EE_CONTACT_KEYS = "android.permission.WRITE_VERIFICATION_STATE_E2EE_CONTACT_KEYS";
454  }
455
456  public static final class Manifest.permission_group {
457    field public static final String UNDEFINED = "android.permission-group.UNDEFINED";
458  }
459
460  public static final class R.array {
461    field public static final int config_keySystemUuidMapping = 17235973; // 0x1070005
462    field public static final int config_optionalIpSecAlgorithms = 17235974; // 0x1070006
463  }
464
465  public static final class R.attr {
466    field public static final int allowClearUserDataOnFailedRestore = 16844288; // 0x1010600
467    field @FlaggedApi("android.permission.flags.replace_body_sensor_permission_enabled") public static final int backgroundPermission;
468    field @FlaggedApi("android.content.res.manifest_flagging") public static final int featureFlag = 16844428; // 0x101068c
469    field public static final int gameSessionService = 16844373; // 0x1010655
470    field public static final int hotwordDetectionService = 16844326; // 0x1010626
471    field @FlaggedApi("android.companion.virtual.flags.vdm_custom_ime") public static final int isVirtualDeviceOnly = 16844425; // 0x1010689
472    field public static final int isVrOnly = 16844152; // 0x1010578
473    field public static final int minExtensionVersion = 16844305; // 0x1010611
474    field public static final int playHomeTransitionSound = 16844358; // 0x1010646
475    field public static final int requiredSystemPropertyName = 16844133; // 0x1010565
476    field public static final int requiredSystemPropertyValue = 16844134; // 0x1010566
477    field public static final int sdkVersion = 16844304; // 0x1010610
478    field public static final int supportsAmbientMode = 16844173; // 0x101058d
479    field public static final int userRestriction = 16844164; // 0x1010584
480    field public static final int visualQueryDetectionService = 16844410; // 0x101067a
481  }
482
483  public static final class R.bool {
484    field public static final int config_enableDefaultNotes = 17891338; // 0x111000a
485    field public static final int config_enableDefaultNotesForWorkProfile = 17891339; // 0x111000b
486    field public static final int config_enableQrCodeScannerOnLockScreen = 17891336; // 0x1110008
487    field public static final int config_safetyProtectionEnabled = 17891337; // 0x1110009
488    field public static final int config_sendPackageName = 17891328; // 0x1110000
489    field public static final int config_showDefaultAssistant = 17891329; // 0x1110001
490    field public static final int config_showDefaultEmergency = 17891330; // 0x1110002
491    field public static final int config_showDefaultHome = 17891331; // 0x1110003
492  }
493
494  public static final class R.color {
495    field public static final int system_notification_accent_color = 17170460; // 0x106001c
496  }
497
498  public static final class R.dimen {
499    field public static final int config_restrictedIconSize = 17104903; // 0x1050007
500    field public static final int config_viewConfigurationHandwritingGestureLineMargin = 17104906; // 0x105000a
501  }
502
503  public static final class R.drawable {
504    field public static final int ic_info = 17301684; // 0x10800b4
505    field public static final int ic_safety_protection = 17301685; // 0x10800b5
506  }
507
508  public static final class R.raw {
509    field public static final int loaderror = 17825792; // 0x1100000
510    field public static final int nodomain = 17825793; // 0x1100001
511  }
512
513  public static final class R.string {
514    field public static final int config_customMediaKeyDispatcher = 17039404; // 0x104002c
515    field public static final int config_customMediaSessionPolicyProvider = 17039405; // 0x104002d
516    field public static final int config_defaultAssistant = 17039393; // 0x1040021
517    field public static final int config_defaultAutomotiveNavigation = 17039424; // 0x1040040
518    field public static final int config_defaultBrowser = 17039394; // 0x1040022
519    field public static final int config_defaultCallRedirection = 17039397; // 0x1040025
520    field public static final int config_defaultCallScreening = 17039398; // 0x1040026
521    field public static final int config_defaultDialer = 17039395; // 0x1040023
522    field public static final int config_defaultNotes = 17039429; // 0x1040045
523    field @FlaggedApi("android.permission.flags.cross_user_role_platform_api_enabled") public static final int config_defaultReservedForTestingProfileGroupExclusivity;
524    field @FlaggedApi("android.permission.flags.retail_demo_role_enabled") public static final int config_defaultRetailDemo = 17039432; // 0x1040048
525    field public static final int config_defaultSms = 17039396; // 0x1040024
526    field @FlaggedApi("android.permission.flags.wallet_role_enabled") public static final int config_defaultWallet = 17039433; // 0x1040049
527    field public static final int config_devicePolicyManagement = 17039421; // 0x104003d
528    field public static final int config_feedbackIntentExtraKey = 17039391; // 0x104001f
529    field public static final int config_feedbackIntentNameKey = 17039392; // 0x1040020
530    field public static final int config_helpIntentExtraKey = 17039389; // 0x104001d
531    field public static final int config_helpIntentNameKey = 17039390; // 0x104001e
532    field public static final int config_helpPackageNameKey = 17039387; // 0x104001b
533    field public static final int config_helpPackageNameValue = 17039388; // 0x104001c
534    field public static final int config_systemActivityRecognizer = 17039416; // 0x1040038
535    field public static final int config_systemAmbientAudioIntelligence = 17039411; // 0x1040033
536    field public static final int config_systemAppProtectionService = 17039422; // 0x104003e
537    field public static final int config_systemAudioIntelligence = 17039412; // 0x1040034
538    field public static final int config_systemAutomotiveCalendarSyncManager = 17039423; // 0x104003f
539    field public static final int config_systemAutomotiveCluster = 17039400; // 0x1040028
540    field public static final int config_systemAutomotiveProjection = 17039401; // 0x1040029
541    field public static final int config_systemCallStreaming = 17039431; // 0x1040047
542    field public static final int config_systemCompanionDeviceProvider = 17039417; // 0x1040039
543    field public static final int config_systemContacts = 17039403; // 0x104002b
544    field @FlaggedApi("android.content.pm.sdk_dependency_installer") public static final int config_systemDependencyInstaller;
545    field public static final int config_systemFinancedDeviceController = 17039430; // 0x1040046
546    field public static final int config_systemGallery = 17039399; // 0x1040027
547    field public static final int config_systemNotificationIntelligence = 17039413; // 0x1040035
548    field public static final int config_systemSettingsIntelligence = 17039426; // 0x1040042
549    field public static final int config_systemShell = 17039402; // 0x104002a
550    field public static final int config_systemSpeechRecognizer = 17039406; // 0x104002e
551    field public static final int config_systemSupervision = 17039420; // 0x104003c
552    field public static final int config_systemTelevisionNotificationHandler = 17039409; // 0x1040031
553    field public static final int config_systemTextIntelligence = 17039414; // 0x1040036
554    field public static final int config_systemUi = 17039418; // 0x104003a
555    field public static final int config_systemUiIntelligence = 17039410; // 0x1040032
556    field @FlaggedApi("android.permission.flags.system_vendor_intelligence_role_enabled") public static final int config_systemVendorIntelligence;
557    field public static final int config_systemVisualIntelligence = 17039415; // 0x1040037
558    field public static final int config_systemWearHealthService = 17039428; // 0x1040044
559    field public static final int config_systemWellbeing = 17039408; // 0x1040030
560    field public static final int config_systemWifiCoexManager = 17039407; // 0x104002f
561    field public static final int safety_protection_display_text = 17039425; // 0x1040041
562  }
563
564  public static final class R.style {
565    field public static final int Theme_DeviceDefault_DocumentsUI = 16974562; // 0x10302e2
566    field public static final int Theme_Leanback_FormWizard = 16974544; // 0x10302d0
567  }
568
569}
570
571package android.accessibilityservice {
572
573  public class AccessibilityServiceInfo implements android.os.Parcelable {
574    method public void setAccessibilityTool(boolean);
575  }
576
577}
578
579package android.accounts {
580
581  public class AccountManager {
582    method @FlaggedApi("android.app.admin.flags.split_create_managed_profile_enabled") @NonNull @RequiresPermission(anyOf={android.Manifest.permission.COPY_ACCOUNTS, android.Manifest.permission.INTERACT_ACROSS_USERS_FULL}) public android.accounts.AccountManagerFuture<java.lang.Boolean> copyAccountToUser(@NonNull android.accounts.Account, @NonNull android.os.UserHandle, @NonNull android.os.UserHandle, @Nullable android.accounts.AccountManagerCallback<java.lang.Boolean>, @Nullable android.os.Handler);
583    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);
584  }
585
586}
587
588package android.app {
589
590  @UiContext 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 {
591    method public void convertFromTranslucent();
592    method public boolean convertToTranslucent(android.app.Activity.TranslucentConversionListener, android.app.ActivityOptions);
593    method @Deprecated public boolean isBackgroundVisibleBehind();
594    method @Deprecated public void onBackgroundVisibleBehindChanged(boolean);
595    method @RequiresPermission(anyOf={android.Manifest.permission.INTERACT_ACROSS_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS_FULL}) public void startActivityForResultAsUser(@NonNull android.content.Intent, int, @NonNull android.os.UserHandle);
596    method @RequiresPermission(anyOf={android.Manifest.permission.INTERACT_ACROSS_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS_FULL}) public void startActivityForResultAsUser(@NonNull android.content.Intent, int, @Nullable android.os.Bundle, @NonNull android.os.UserHandle);
597    method @RequiresPermission(anyOf={android.Manifest.permission.INTERACT_ACROSS_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS_FULL}) public void startActivityForResultAsUser(@NonNull android.content.Intent, @NonNull String, int, @Nullable android.os.Bundle, @NonNull android.os.UserHandle);
598  }
599
600  public static interface Activity.TranslucentConversionListener {
601    method public void onTranslucentConversionComplete(boolean);
602  }
603
604  public class ActivityManager {
605    method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public void addOnUidImportanceListener(android.app.ActivityManager.OnUidImportanceListener, int);
606    method @FlaggedApi("android.app.uid_importance_listener_for_uids") @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public void addOnUidImportanceListener(@NonNull android.app.ActivityManager.OnUidImportanceListener, int, @NonNull int[]);
607    method @RequiresPermission(android.Manifest.permission.FORCE_STOP_PACKAGES) public void forceStopPackage(String);
608    method @FlaggedApi("android.app.get_binding_uid_importance") @RequiresPermission(android.Manifest.permission.GET_BINDING_UID_IMPORTANCE) public int getBindingUidImportance(int);
609    method @RequiresPermission(anyOf={"android.permission.INTERACT_ACROSS_USERS", "android.permission.INTERACT_ACROSS_USERS_FULL"}) public static int getCurrentUser();
610    method @FlaggedApi("android.app.app_start_info") @NonNull @RequiresPermission(android.Manifest.permission.DUMP) public java.util.List<android.app.ApplicationStartInfo> getExternalHistoricalProcessStartReasons(@NonNull String, @IntRange(from=0) int);
611    method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public int getPackageImportance(String);
612    method @NonNull public java.util.Collection<java.util.Locale> getSupportedLocales();
613    method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public int getUidImportance(int);
614    method @RequiresPermission(android.Manifest.permission.FORCE_STOP_PACKAGES) public void killProcessesWhenImperceptible(@NonNull int[], @NonNull String);
615    method @RequiresPermission(android.Manifest.permission.KILL_UID) public void killUid(int, String);
616    method @RequiresPermission(android.Manifest.permission.LOG_FOREGROUND_RESOURCE_USE) public void noteForegroundResourceUseBegin(int, int, int) throws java.lang.SecurityException;
617    method @RequiresPermission(android.Manifest.permission.LOG_FOREGROUND_RESOURCE_USE) public void noteForegroundResourceUseEnd(int, int, int) throws java.lang.SecurityException;
618    method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public void removeOnUidImportanceListener(android.app.ActivityManager.OnUidImportanceListener);
619    method public void setDeviceLocales(@NonNull android.os.LocaleList);
620    method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public static void setPersistentVrThread(int);
621    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS_FULL}) public boolean startProfile(@NonNull android.os.UserHandle);
622    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS_FULL}) public boolean stopProfile(@NonNull android.os.UserHandle);
623    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public boolean switchUser(@NonNull android.os.UserHandle);
624    field public static final int FOREGROUND_SERVICE_API_TYPE_AUDIO = 5; // 0x5
625    field public static final int FOREGROUND_SERVICE_API_TYPE_BLUETOOTH = 2; // 0x2
626    field public static final int FOREGROUND_SERVICE_API_TYPE_CAMERA = 1; // 0x1
627    field public static final int FOREGROUND_SERVICE_API_TYPE_CDM = 9; // 0x9
628    field public static final int FOREGROUND_SERVICE_API_TYPE_LOCATION = 3; // 0x3
629    field public static final int FOREGROUND_SERVICE_API_TYPE_MEDIA_PLAYBACK = 4; // 0x4
630    field public static final int FOREGROUND_SERVICE_API_TYPE_MICROPHONE = 6; // 0x6
631    field public static final int FOREGROUND_SERVICE_API_TYPE_PHONE_CALL = 7; // 0x7
632    field public static final int FOREGROUND_SERVICE_API_TYPE_USB = 8; // 0x8
633    field public static final int PROCESS_CAPABILITY_FOREGROUND_CAMERA = 2; // 0x2
634    field public static final int PROCESS_CAPABILITY_FOREGROUND_LOCATION = 1; // 0x1
635    field public static final int PROCESS_CAPABILITY_FOREGROUND_MICROPHONE = 4; // 0x4
636    field public static final int PROCESS_CAPABILITY_NONE = 0; // 0x0
637  }
638
639  public static interface ActivityManager.OnUidImportanceListener {
640    method public void onUidImportance(int, int);
641  }
642
643  public class ActivityOptions {
644    method public int getLaunchTaskId();
645    method @RequiresPermission(android.Manifest.permission.START_TASKS_FROM_RECENTS) public void setLaunchTaskId(int);
646  }
647
648  public class AlarmManager {
649    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void set(int, long, long, long, @NonNull android.app.PendingIntent, @Nullable android.os.WorkSource);
650    method @Deprecated @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void set(int, long, long, long, @NonNull android.app.AlarmManager.OnAlarmListener, @Nullable android.os.Handler, @Nullable android.os.WorkSource);
651    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void setExact(int, long, @Nullable String, @NonNull java.util.concurrent.Executor, @NonNull android.os.WorkSource, @NonNull android.app.AlarmManager.OnAlarmListener);
652    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void setExactAndAllowWhileIdle(int, long, @Nullable String, @NonNull java.util.concurrent.Executor, @Nullable android.os.WorkSource, @NonNull android.app.AlarmManager.OnAlarmListener);
653    method @RequiresPermission(android.Manifest.permission.SCHEDULE_PRIORITIZED_ALARM) public void setPrioritized(int, long, long, @Nullable String, @NonNull java.util.concurrent.Executor, @NonNull android.app.AlarmManager.OnAlarmListener);
654    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void setWindow(int, long, long, @Nullable String, @NonNull java.util.concurrent.Executor, @Nullable android.os.WorkSource, @NonNull android.app.AlarmManager.OnAlarmListener);
655  }
656
657  public class AppOpsManager {
658    method @Nullable @RequiresPermission(android.Manifest.permission.GET_APP_OPS_STATS) public android.app.RuntimeAppOpAccessMessage collectRuntimeAppOpAccessMessage();
659    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>);
660    method public static String[] getOpStrs();
661    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...);
662    method @NonNull @RequiresPermission(android.Manifest.permission.GET_APP_OPS_STATS) public java.util.List<android.app.AppOpsManager.PackageOps> getPackagesForOps(@Nullable String[]);
663    method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") @NonNull @RequiresPermission(android.Manifest.permission.GET_APP_OPS_STATS) public java.util.List<android.app.AppOpsManager.PackageOps> getPackagesForOps(@Nullable String[], @NonNull String);
664    method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") @NonNull @RequiresPermission(android.Manifest.permission.GET_APP_OPS_STATS) public java.util.List<android.permission.PermissionGroupUsage> getPermissionGroupUsageForPrivacyIndicator(boolean);
665    method public static int opToDefaultMode(@NonNull String);
666    method @Nullable public static String opToPermission(@NonNull String);
667    method @RequiresPermission("android.permission.MANAGE_APP_OPS_MODES") public void setMode(@NonNull String, int, @Nullable String, int);
668    method @RequiresPermission("android.permission.MANAGE_APP_OPS_MODES") public void setUidMode(@NonNull String, int, int);
669    method @RequiresPermission(value="android.permission.WATCH_APPOPS", conditional=true) public void startWatchingNoted(@NonNull String[], @NonNull android.app.AppOpsManager.OnOpNotedListener);
670    method @RequiresPermission(value="android.permission.WATCH_APPOPS", conditional=true) public void startWatchingNoted(@NonNull String[], @NonNull java.util.concurrent.Executor, @NonNull android.app.AppOpsManager.OnOpNotedListener);
671    method public void stopWatchingNoted(@NonNull android.app.AppOpsManager.OnOpNotedListener);
672    field public static final int HISTORY_FLAGS_ALL = 3; // 0x3
673    field public static final int HISTORY_FLAG_AGGREGATE = 1; // 0x1
674    field public static final int HISTORY_FLAG_DISCRETE = 2; // 0x2
675    field public static final int HISTORY_FLAG_GET_ATTRIBUTION_CHAINS = 4; // 0x4
676    field public static final String OPSTR_ACCEPT_HANDOVER = "android:accept_handover";
677    field public static final String OPSTR_ACCESS_ACCESSIBILITY = "android:access_accessibility";
678    field public static final String OPSTR_ACCESS_NOTIFICATIONS = "android:access_notifications";
679    field @FlaggedApi("android.permission.flags.enhanced_confirmation_mode_apis_enabled") public static final String OPSTR_ACCESS_RESTRICTED_SETTINGS = "android:access_restricted_settings";
680    field public static final String OPSTR_ACTIVATE_PLATFORM_VPN = "android:activate_platform_vpn";
681    field public static final String OPSTR_ACTIVATE_VPN = "android:activate_vpn";
682    field public static final String OPSTR_ASSIST_SCREENSHOT = "android:assist_screenshot";
683    field public static final String OPSTR_ASSIST_STRUCTURE = "android:assist_structure";
684    field public static final String OPSTR_AUDIO_ACCESSIBILITY_VOLUME = "android:audio_accessibility_volume";
685    field public static final String OPSTR_AUDIO_ALARM_VOLUME = "android:audio_alarm_volume";
686    field public static final String OPSTR_AUDIO_BLUETOOTH_VOLUME = "android:audio_bluetooth_volume";
687    field public static final String OPSTR_AUDIO_MASTER_VOLUME = "android:audio_master_volume";
688    field public static final String OPSTR_AUDIO_MEDIA_VOLUME = "android:audio_media_volume";
689    field public static final String OPSTR_AUDIO_NOTIFICATION_VOLUME = "android:audio_notification_volume";
690    field public static final String OPSTR_AUDIO_RING_VOLUME = "android:audio_ring_volume";
691    field public static final String OPSTR_AUDIO_VOICE_VOLUME = "android:audio_voice_volume";
692    field public static final String OPSTR_AUTO_REVOKE_MANAGED_BY_INSTALLER = "android:auto_revoke_managed_by_installer";
693    field public static final String OPSTR_AUTO_REVOKE_PERMISSIONS_IF_UNUSED = "android:auto_revoke_permissions_if_unused";
694    field public static final String OPSTR_BIND_ACCESSIBILITY_SERVICE = "android:bind_accessibility_service";
695    field public static final String OPSTR_CAPTURE_CONSENTLESS_BUGREPORT_ON_USERDEBUG_BUILD = "android:capture_consentless_bugreport_on_userdebug_build";
696    field public static final String OPSTR_CHANGE_WIFI_STATE = "android:change_wifi_state";
697    field @FlaggedApi("android.view.contentprotection.flags.create_accessibility_overlay_app_op_enabled") public static final String OPSTR_CREATE_ACCESSIBILITY_OVERLAY = "android:create_accessibility_overlay";
698    field @FlaggedApi("android.location.flags.location_bypass") public static final String OPSTR_EMERGENCY_LOCATION = "android:emergency_location";
699    field @FlaggedApi("android.permission.flags.op_enable_mobile_data_by_user") public static final String OPSTR_ENABLE_MOBILE_DATA_BY_USER = "android:enable_mobile_data_by_user";
700    field public static final String OPSTR_ESTABLISH_VPN_MANAGER = "android:establish_vpn_manager";
701    field public static final String OPSTR_ESTABLISH_VPN_SERVICE = "android:establish_vpn_service";
702    field public static final String OPSTR_GET_ACCOUNTS = "android:get_accounts";
703    field public static final String OPSTR_GPS = "android:gps";
704    field public static final String OPSTR_INSTANT_APP_START_FOREGROUND = "android:instant_app_start_foreground";
705    field public static final String OPSTR_INTERACT_ACROSS_PROFILES = "android:interact_across_profiles";
706    field public static final String OPSTR_LEGACY_STORAGE = "android:legacy_storage";
707    field public static final String OPSTR_LOADER_USAGE_STATS = "android:loader_usage_stats";
708    field public static final String OPSTR_MANAGE_EXTERNAL_STORAGE = "android:manage_external_storage";
709    field public static final String OPSTR_MANAGE_IPSEC_TUNNELS = "android:manage_ipsec_tunnels";
710    field public static final String OPSTR_MANAGE_ONGOING_CALLS = "android:manage_ongoing_calls";
711    field @FlaggedApi("com.android.media.flags.enable_privileged_routing_for_media_routing_control") public static final String OPSTR_MEDIA_ROUTING_CONTROL = "android:media_routing_control";
712    field public static final String OPSTR_MUTE_MICROPHONE = "android:mute_microphone";
713    field public static final String OPSTR_NEIGHBORING_CELLS = "android:neighboring_cells";
714    field public static final String OPSTR_PHONE_CALL_CAMERA = "android:phone_call_camera";
715    field public static final String OPSTR_PHONE_CALL_MICROPHONE = "android:phone_call_microphone";
716    field public static final String OPSTR_PLAY_AUDIO = "android:play_audio";
717    field public static final String OPSTR_POST_NOTIFICATION = "android:post_notification";
718    field public static final String OPSTR_PROJECT_MEDIA = "android:project_media";
719    field @FlaggedApi("android.permission.flags.ranging_permission_enabled") public static final String OPSTR_RANGING = "android:ranging";
720    field @FlaggedApi("android.view.contentprotection.flags.rapid_clear_notifications_by_listener_app_op_enabled") public static final String OPSTR_RAPID_CLEAR_NOTIFICATIONS_BY_LISTENER = "android:rapid_clear_notifications_by_listener";
721    field public static final String OPSTR_READ_CLIPBOARD = "android:read_clipboard";
722    field @FlaggedApi("android.permission.flags.replace_body_sensor_permission_enabled") public static final String OPSTR_READ_HEART_RATE = "android:read_heart_rate";
723    field public static final String OPSTR_READ_ICC_SMS = "android:read_icc_sms";
724    field public static final String OPSTR_READ_MEDIA_AUDIO = "android:read_media_audio";
725    field public static final String OPSTR_READ_MEDIA_IMAGES = "android:read_media_images";
726    field public static final String OPSTR_READ_MEDIA_VIDEO = "android:read_media_video";
727    field public static final String OPSTR_READ_MEDIA_VISUAL_USER_SELECTED = "android:read_media_visual_user_selected";
728    field @FlaggedApi("android.permission.flags.replace_body_sensor_permission_enabled") public static final String OPSTR_READ_OXYGEN_SATURATION = "android:read_oxygen_saturation";
729    field @FlaggedApi("android.permission.flags.replace_body_sensor_permission_enabled") public static final String OPSTR_READ_SKIN_TEMPERATURE = "android:read_skin_temperature";
730    field public static final String OPSTR_READ_WRITE_HEALTH_DATA = "android:read_write_health_data";
731    field public static final String OPSTR_RECEIVE_AMBIENT_TRIGGER_AUDIO = "android:receive_ambient_trigger_audio";
732    field public static final String OPSTR_RECEIVE_EMERGENCY_BROADCAST = "android:receive_emergency_broadcast";
733    field public static final String OPSTR_RECEIVE_EXPLICIT_USER_INTERACTION_AUDIO = "android:receive_explicit_user_interaction_audio";
734    field public static final String OPSTR_REQUEST_DELETE_PACKAGES = "android:request_delete_packages";
735    field public static final String OPSTR_REQUEST_INSTALL_PACKAGES = "android:request_install_packages";
736    field public static final String OPSTR_RUN_ANY_IN_BACKGROUND = "android:run_any_in_background";
737    field public static final String OPSTR_RUN_IN_BACKGROUND = "android:run_in_background";
738    field public static final String OPSTR_START_FOREGROUND = "android:start_foreground";
739    field public static final String OPSTR_SYSTEM_EXEMPT_FROM_HIBERNATION = "android:system_exempt_from_hibernation";
740    field public static final String OPSTR_TAKE_AUDIO_FOCUS = "android:take_audio_focus";
741    field public static final String OPSTR_TAKE_MEDIA_BUTTONS = "android:take_media_buttons";
742    field public static final String OPSTR_TOAST_WINDOW = "android:toast_window";
743    field public static final String OPSTR_TURN_SCREEN_ON = "android:turn_screen_on";
744    field public static final String OPSTR_VIBRATE = "android:vibrate";
745    field public static final String OPSTR_WAKE_LOCK = "android:wake_lock";
746    field public static final String OPSTR_WIFI_SCAN = "android:wifi_scan";
747    field public static final String OPSTR_WRITE_CLIPBOARD = "android:write_clipboard";
748    field public static final String OPSTR_WRITE_ICC_SMS = "android:write_icc_sms";
749    field public static final String OPSTR_WRITE_MEDIA_AUDIO = "android:write_media_audio";
750    field public static final String OPSTR_WRITE_MEDIA_IMAGES = "android:write_media_images";
751    field public static final String OPSTR_WRITE_MEDIA_VIDEO = "android:write_media_video";
752    field public static final String OPSTR_WRITE_SMS = "android:write_sms";
753    field public static final String OPSTR_WRITE_WALLPAPER = "android:write_wallpaper";
754    field public static final int OP_FLAGS_ALL = 31; // 0x1f
755    field public static final int OP_FLAGS_ALL_TRUSTED = 13; // 0xd
756    field public static final int OP_FLAG_SELF = 1; // 0x1
757    field public static final int OP_FLAG_TRUSTED_PROXIED = 8; // 0x8
758    field public static final int OP_FLAG_TRUSTED_PROXY = 2; // 0x2
759    field public static final int OP_FLAG_UNTRUSTED_PROXIED = 16; // 0x10
760    field public static final int OP_FLAG_UNTRUSTED_PROXY = 4; // 0x4
761    field public static final int UID_STATE_BACKGROUND = 600; // 0x258
762    field public static final int UID_STATE_CACHED = 700; // 0x2bc
763    field public static final int UID_STATE_FOREGROUND = 500; // 0x1f4
764    field public static final int UID_STATE_FOREGROUND_SERVICE = 400; // 0x190
765    field @Deprecated public static final int UID_STATE_FOREGROUND_SERVICE_LOCATION = 300; // 0x12c
766    field public static final int UID_STATE_PERSISTENT = 100; // 0x64
767    field public static final int UID_STATE_TOP = 200; // 0xc8
768  }
769
770  public static final class AppOpsManager.AttributedHistoricalOps implements android.os.Parcelable {
771    method public int describeContents();
772    method @Nullable public android.app.AppOpsManager.HistoricalOp getOp(@NonNull String);
773    method @NonNull public android.app.AppOpsManager.HistoricalOp getOpAt(@IntRange(from=0) int);
774    method @IntRange(from=0) public int getOpCount();
775    method @Nullable public String getTag();
776    method public void writeToParcel(@NonNull android.os.Parcel, int);
777    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.AttributedHistoricalOps> CREATOR;
778  }
779
780  public static final class AppOpsManager.AttributedOpEntry implements android.os.Parcelable {
781    method public int describeContents();
782    method public long getLastAccessBackgroundTime(int);
783    method public long getLastAccessForegroundTime(int);
784    method public long getLastAccessTime(int);
785    method public long getLastAccessTime(int, int, int);
786    method public long getLastBackgroundDuration(int);
787    method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastBackgroundProxyInfo(int);
788    method public long getLastDuration(int);
789    method public long getLastDuration(int, int, int);
790    method public long getLastForegroundDuration(int);
791    method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastForegroundProxyInfo(int);
792    method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastProxyInfo(int);
793    method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastProxyInfo(int, int, int);
794    method public long getLastRejectBackgroundTime(int);
795    method public long getLastRejectForegroundTime(int);
796    method public long getLastRejectTime(int);
797    method public long getLastRejectTime(int, int, int);
798    method public boolean isRunning();
799    method public void writeToParcel(@NonNull android.os.Parcel, int);
800    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.AttributedOpEntry> CREATOR;
801  }
802
803  public static final class AppOpsManager.HistoricalOp implements android.os.Parcelable {
804    method public int describeContents();
805    method public long getAccessCount(int, int, int);
806    method public long getAccessDuration(int, int, int);
807    method public long getBackgroundAccessCount(int);
808    method public long getBackgroundAccessDuration(int);
809    method @NonNull public java.util.List<android.app.AppOpsManager.AttributedOpEntry> getBackgroundDiscreteAccesses(int);
810    method public long getBackgroundRejectCount(int);
811    method @NonNull public android.app.AppOpsManager.AttributedOpEntry getDiscreteAccessAt(@IntRange(from=0) int);
812    method @IntRange(from=0) public int getDiscreteAccessCount();
813    method @NonNull public java.util.List<android.app.AppOpsManager.AttributedOpEntry> getDiscreteAccesses(int, int, int);
814    method public long getForegroundAccessCount(int);
815    method public long getForegroundAccessDuration(int);
816    method @NonNull public java.util.List<android.app.AppOpsManager.AttributedOpEntry> getForegroundDiscreteAccesses(int);
817    method public long getForegroundRejectCount(int);
818    method @NonNull public String getOpName();
819    method public long getRejectCount(int, int, int);
820    method public void writeToParcel(android.os.Parcel, int);
821    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.HistoricalOp> CREATOR;
822  }
823
824  public static final class AppOpsManager.HistoricalOps implements android.os.Parcelable {
825    method public int describeContents();
826    method public long getBeginTimeMillis();
827    method public long getEndTimeMillis();
828    method @IntRange(from=0) public int getUidCount();
829    method @Nullable public android.app.AppOpsManager.HistoricalUidOps getUidOps(int);
830    method @NonNull public android.app.AppOpsManager.HistoricalUidOps getUidOpsAt(@IntRange(from=0) int);
831    method public void writeToParcel(android.os.Parcel, int);
832    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.HistoricalOps> CREATOR;
833  }
834
835  public static final class AppOpsManager.HistoricalOpsRequest {
836  }
837
838  public static final class AppOpsManager.HistoricalOpsRequest.Builder {
839    ctor public AppOpsManager.HistoricalOpsRequest.Builder(long, long);
840    method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest build();
841    method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setAttributionTag(@Nullable String);
842    method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setFlags(int);
843    method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setHistoryFlags(int);
844    method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setOpNames(@Nullable java.util.List<java.lang.String>);
845    method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setPackageName(@Nullable String);
846    method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setUid(int);
847  }
848
849  public static final class AppOpsManager.HistoricalPackageOps implements android.os.Parcelable {
850    method public int describeContents();
851    method @Nullable public android.app.AppOpsManager.AttributedHistoricalOps getAttributedOps(@Nullable String);
852    method @NonNull public android.app.AppOpsManager.AttributedHistoricalOps getAttributedOpsAt(@IntRange(from=0) int);
853    method @IntRange(from=0) public int getAttributedOpsCount();
854    method @Nullable public android.app.AppOpsManager.HistoricalOp getOp(@NonNull String);
855    method @NonNull public android.app.AppOpsManager.HistoricalOp getOpAt(@IntRange(from=0) int);
856    method @IntRange(from=0) public int getOpCount();
857    method @NonNull public String getPackageName();
858    method public void writeToParcel(@NonNull android.os.Parcel, int);
859    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.HistoricalPackageOps> CREATOR;
860  }
861
862  public static final class AppOpsManager.HistoricalUidOps implements android.os.Parcelable {
863    method public int describeContents();
864    method @IntRange(from=0) public int getPackageCount();
865    method @Nullable public android.app.AppOpsManager.HistoricalPackageOps getPackageOps(@NonNull String);
866    method @NonNull public android.app.AppOpsManager.HistoricalPackageOps getPackageOpsAt(@IntRange(from=0) int);
867    method public int getUid();
868    method public void writeToParcel(android.os.Parcel, int);
869    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.HistoricalUidOps> CREATOR;
870  }
871
872  public static interface AppOpsManager.OnOpNotedListener {
873    method public void onOpNoted(@NonNull String, int, @NonNull String, @Nullable String, int, int);
874    method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") public default void onOpNoted(@NonNull String, int, @NonNull String, @Nullable String, int, int, int);
875  }
876
877  public static final class AppOpsManager.OpEntry implements android.os.Parcelable {
878    method public int describeContents();
879    method @NonNull public java.util.Map<java.lang.String,android.app.AppOpsManager.AttributedOpEntry> getAttributedOpEntries();
880    method @Deprecated public long getDuration();
881    method public long getLastAccessBackgroundTime(int);
882    method public long getLastAccessForegroundTime(int);
883    method public long getLastAccessTime(int);
884    method public long getLastAccessTime(int, int, int);
885    method public long getLastBackgroundDuration(int);
886    method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastBackgroundProxyInfo(int);
887    method public long getLastDuration(int);
888    method public long getLastDuration(int, int, int);
889    method public long getLastForegroundDuration(int);
890    method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastForegroundProxyInfo(int);
891    method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastProxyInfo(int);
892    method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastProxyInfo(int, int, int);
893    method public long getLastRejectBackgroundTime(int);
894    method public long getLastRejectForegroundTime(int);
895    method public long getLastRejectTime(int);
896    method public long getLastRejectTime(int, int, int);
897    method public int getMode();
898    method @NonNull public String getOpStr();
899    method @Deprecated @Nullable public String getProxyPackageName();
900    method @Deprecated @Nullable public String getProxyPackageName(int, int);
901    method @Deprecated public int getProxyUid();
902    method @Deprecated public int getProxyUid(int, int);
903    method public boolean isRunning();
904    method public void writeToParcel(android.os.Parcel, int);
905    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.OpEntry> CREATOR;
906  }
907
908  public static final class AppOpsManager.OpEventProxyInfo implements android.os.Parcelable {
909    method public int describeContents();
910    method @Nullable public String getAttributionTag();
911    method @FlaggedApi("android.permission.flags.device_id_in_op_proxy_info_enabled") @NonNull public String getDeviceId();
912    method @Nullable public String getPackageName();
913    method @IntRange(from=0) public int getUid();
914    method public void writeToParcel(@NonNull android.os.Parcel, int);
915    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.OpEventProxyInfo> CREATOR;
916  }
917
918  public static final class AppOpsManager.PackageOps implements android.os.Parcelable {
919    method public int describeContents();
920    method @NonNull public java.util.List<android.app.AppOpsManager.OpEntry> getOps();
921    method @NonNull public String getPackageName();
922    method public int getUid();
923    method public void writeToParcel(@NonNull android.os.Parcel, int);
924    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.PackageOps> CREATOR;
925  }
926
927  @FlaggedApi("android.app.bic_client") public final class BackgroundInstallControlManager {
928    method @FlaggedApi("android.app.bic_client") @NonNull @RequiresPermission(android.Manifest.permission.GET_BACKGROUND_INSTALLED_PACKAGES) public java.util.List<android.content.pm.PackageInfo> getBackgroundInstalledPackages(long);
929  }
930
931  public class BroadcastOptions {
932    method public void clearRequireCompatChange();
933    method public int getPendingIntentBackgroundActivityStartMode();
934    method @Deprecated public boolean isPendingIntentBackgroundActivityLaunchAllowed();
935    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RESPONSE_STATS) public void recordResponseEventWhileInBackground(@IntRange(from=0) long);
936    method @RequiresPermission(android.Manifest.permission.START_ACTIVITIES_FROM_BACKGROUND) public void setBackgroundActivityStartsAllowed(boolean);
937    method public void setDontSendToRestrictedApps(boolean);
938    method @Deprecated public void setPendingIntentBackgroundActivityLaunchAllowed(boolean);
939    method @NonNull public android.app.BroadcastOptions setPendingIntentBackgroundActivityStartMode(int);
940    method public void setRequireAllOfPermissions(@Nullable String[]);
941    method public void setRequireCompatChange(long, boolean);
942    method public void setRequireNoneOfPermissions(@Nullable String[]);
943    method @RequiresPermission(anyOf={android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST, android.Manifest.permission.START_ACTIVITIES_FROM_BACKGROUND, android.Manifest.permission.START_FOREGROUND_SERVICES_FROM_BACKGROUND}) public void setTemporaryAppAllowlist(long, int, int, @Nullable String);
944    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST, android.Manifest.permission.START_ACTIVITIES_FROM_BACKGROUND, android.Manifest.permission.START_FOREGROUND_SERVICES_FROM_BACKGROUND}) public void setTemporaryAppWhitelistDuration(long);
945  }
946
947  public class DownloadManager {
948    method @RequiresPermission(android.Manifest.permission.WRITE_MEDIA_STORAGE) public void onMediaStoreDownloadsDeleted(@NonNull android.util.LongSparseArray<java.lang.String>);
949    field public static final String ACTION_DOWNLOAD_COMPLETED = "android.intent.action.DOWNLOAD_COMPLETED";
950  }
951
952  public final class GameManager {
953    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_GAME_MODE) public android.app.GameModeInfo getGameModeInfo(@NonNull String);
954    method @RequiresPermission(android.Manifest.permission.MANAGE_GAME_MODE) public void setGameMode(@NonNull String, int);
955    method @RequiresPermission(android.Manifest.permission.MANAGE_GAME_MODE) public void updateCustomGameModeConfiguration(@NonNull String, @NonNull android.app.GameModeConfiguration);
956  }
957
958  public final class GameModeConfiguration implements android.os.Parcelable {
959    method public int describeContents();
960    method public int getFpsOverride();
961    method public float getScalingFactor();
962    method public void writeToParcel(@NonNull android.os.Parcel, int);
963    field @NonNull public static final android.os.Parcelable.Creator<android.app.GameModeConfiguration> CREATOR;
964    field public static final int FPS_OVERRIDE_NONE = 0; // 0x0
965  }
966
967  public static final class GameModeConfiguration.Builder {
968    ctor public GameModeConfiguration.Builder();
969    ctor public GameModeConfiguration.Builder(@NonNull android.app.GameModeConfiguration);
970    method @NonNull public android.app.GameModeConfiguration build();
971    method @NonNull public android.app.GameModeConfiguration.Builder setFpsOverride(int);
972    method @NonNull public android.app.GameModeConfiguration.Builder setScalingFactor(float);
973  }
974
975  public final class GameModeInfo implements android.os.Parcelable {
976    ctor @Deprecated public GameModeInfo(int, @NonNull int[]);
977    method public int describeContents();
978    method public int getActiveGameMode();
979    method @NonNull public int[] getAvailableGameModes();
980    method @Nullable public android.app.GameModeConfiguration getGameModeConfiguration(int);
981    method @NonNull public int[] getOverriddenGameModes();
982    method public boolean isDownscalingAllowed();
983    method public boolean isFpsOverrideAllowed();
984    method public void writeToParcel(@NonNull android.os.Parcel, int);
985    field @NonNull public static final android.os.Parcelable.Creator<android.app.GameModeInfo> CREATOR;
986  }
987
988  public static final class GameModeInfo.Builder {
989    ctor public GameModeInfo.Builder();
990    method @NonNull public android.app.GameModeInfo build();
991    method @NonNull public android.app.GameModeInfo.Builder setActiveGameMode(@NonNull int);
992    method @NonNull public android.app.GameModeInfo.Builder setAvailableGameModes(@NonNull int[]);
993    method @NonNull public android.app.GameModeInfo.Builder setDownscalingAllowed(boolean);
994    method @NonNull public android.app.GameModeInfo.Builder setFpsOverrideAllowed(boolean);
995    method @NonNull public android.app.GameModeInfo.Builder setGameModeConfiguration(int, @NonNull android.app.GameModeConfiguration);
996    method @NonNull public android.app.GameModeInfo.Builder setOverriddenGameModes(@NonNull int[]);
997  }
998
999  public abstract class InstantAppResolverService extends android.app.Service {
1000    ctor public InstantAppResolverService();
1001    method public final void attachBaseContext(android.content.Context);
1002    method public final android.os.IBinder onBind(android.content.Intent);
1003    method @Deprecated public void onGetInstantAppIntentFilter(@Nullable int[], @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
1004    method @Deprecated public void onGetInstantAppIntentFilter(@NonNull android.content.Intent, @Nullable int[], @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
1005    method @Deprecated public void onGetInstantAppIntentFilter(@NonNull android.content.Intent, @Nullable int[], @NonNull android.os.UserHandle, @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
1006    method @MainThread public void onGetInstantAppIntentFilter(@NonNull android.content.pm.InstantAppRequestInfo, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
1007    method @Deprecated public void onGetInstantAppResolveInfo(@Nullable int[], @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
1008    method @Deprecated public void onGetInstantAppResolveInfo(@NonNull android.content.Intent, @Nullable int[], @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
1009    method @Deprecated public void onGetInstantAppResolveInfo(@NonNull android.content.Intent, @Nullable int[], @NonNull android.os.UserHandle, @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
1010    method @MainThread public void onGetInstantAppResolveInfo(@NonNull android.content.pm.InstantAppRequestInfo, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
1011  }
1012
1013  public static final class InstantAppResolverService.InstantAppResolutionCallback {
1014    method public void onInstantAppResolveInfo(java.util.List<android.content.pm.InstantAppResolveInfo>);
1015  }
1016
1017  public class KeyguardManager {
1018    method @RequiresPermission(android.Manifest.permission.MANAGE_WEAK_ESCROW_TOKEN) public long addWeakEscrowToken(@NonNull byte[], @NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull android.app.KeyguardManager.WeakEscrowTokenActivatedListener);
1019    method @NonNull @RequiresPermission(android.Manifest.permission.CHECK_REMOTE_LOCKSCREEN) public android.content.Intent createConfirmDeviceCredentialForRemoteValidationIntent(@NonNull android.app.RemoteLockscreenValidationSession, @NonNull android.content.ComponentName, @Nullable CharSequence, @Nullable CharSequence, @Nullable CharSequence, @Nullable CharSequence);
1020    method public android.content.Intent createConfirmFactoryResetCredentialIntent(CharSequence, CharSequence, CharSequence);
1021    method @RequiresPermission("android.permission.SET_INITIAL_LOCK") public int getMinLockLength(boolean, int);
1022    method @RequiresPermission(android.Manifest.permission.CONTROL_KEYGUARD_SECURE_NOTIFICATIONS) public boolean getPrivateNotificationsAllowed();
1023    method @RequiresPermission("android.permission.SET_INITIAL_LOCK") public boolean isValidLockPasswordComplexity(int, @NonNull byte[], int);
1024    method @RequiresPermission(android.Manifest.permission.MANAGE_WEAK_ESCROW_TOKEN) public boolean isWeakEscrowTokenActive(long, @NonNull android.os.UserHandle);
1025    method @RequiresPermission(android.Manifest.permission.MANAGE_WEAK_ESCROW_TOKEN) public boolean isWeakEscrowTokenValid(long, @NonNull byte[], @NonNull android.os.UserHandle);
1026    method @RequiresPermission(android.Manifest.permission.MANAGE_WEAK_ESCROW_TOKEN) public boolean registerWeakEscrowTokenRemovedListener(@NonNull java.util.concurrent.Executor, @NonNull android.app.KeyguardManager.WeakEscrowTokenRemovedListener);
1027    method @RequiresPermission(android.Manifest.permission.MANAGE_WEAK_ESCROW_TOKEN) public boolean removeWeakEscrowToken(long, @NonNull android.os.UserHandle);
1028    method @RequiresPermission(android.Manifest.permission.SHOW_KEYGUARD_MESSAGE) public void requestDismissKeyguard(@NonNull android.app.Activity, @Nullable CharSequence, @Nullable android.app.KeyguardManager.KeyguardDismissCallback);
1029    method @RequiresPermission("android.permission.SET_INITIAL_LOCK") public boolean setLock(int, @NonNull byte[], int);
1030    method @RequiresPermission(android.Manifest.permission.CONTROL_KEYGUARD_SECURE_NOTIFICATIONS) public void setPrivateNotificationsAllowed(boolean);
1031    method @NonNull @RequiresPermission(android.Manifest.permission.CHECK_REMOTE_LOCKSCREEN) public android.app.RemoteLockscreenValidationSession startRemoteLockscreenValidation();
1032    method @RequiresPermission(android.Manifest.permission.MANAGE_WEAK_ESCROW_TOKEN) public boolean unregisterWeakEscrowTokenRemovedListener(@NonNull android.app.KeyguardManager.WeakEscrowTokenRemovedListener);
1033    method @NonNull @RequiresPermission(android.Manifest.permission.CHECK_REMOTE_LOCKSCREEN) public android.app.RemoteLockscreenValidationResult validateRemoteLockscreen(@NonNull byte[]);
1034    field public static final int PASSWORD = 0; // 0x0
1035    field public static final int PATTERN = 2; // 0x2
1036    field public static final int PIN = 1; // 0x1
1037  }
1038
1039  public static interface KeyguardManager.WeakEscrowTokenActivatedListener {
1040    method public void onWeakEscrowTokenActivated(long, @NonNull android.os.UserHandle);
1041  }
1042
1043  public static interface KeyguardManager.WeakEscrowTokenRemovedListener {
1044    method public void onWeakEscrowTokenRemoved(long, @NonNull android.os.UserHandle);
1045  }
1046
1047  public class LocaleManager {
1048    method @RequiresPermission(android.Manifest.permission.CHANGE_CONFIGURATION) public void setApplicationLocales(@NonNull String, @NonNull android.os.LocaleList);
1049  }
1050
1051  public class Notification implements android.os.Parcelable {
1052    field public static final String CATEGORY_CAR_EMERGENCY = "car_emergency";
1053    field public static final String CATEGORY_CAR_INFORMATION = "car_information";
1054    field public static final String CATEGORY_CAR_WARNING = "car_warning";
1055    field @RequiresPermission(android.Manifest.permission.NOTIFICATION_DURING_SETUP) public static final String EXTRA_ALLOW_DURING_SETUP = "android.allowDuringSetup";
1056    field @RequiresPermission(android.Manifest.permission.SUBSTITUTE_NOTIFICATION_APP_NAME) public static final String EXTRA_SUBSTITUTE_APP_NAME = "android.substName";
1057    field public static final int FLAG_AUTOGROUP_SUMMARY = 1024; // 0x400
1058  }
1059
1060  public static class Notification.Action implements android.os.Parcelable {
1061    field public static final int SEMANTIC_ACTION_CONVERSATION_IS_PHISHING = 12; // 0xc
1062    field public static final int SEMANTIC_ACTION_MARK_CONVERSATION_AS_PRIORITY = 11; // 0xb
1063  }
1064
1065  @FlaggedApi("android.app.api_tvextender") public static final class Notification.TvExtender implements android.app.Notification.Extender {
1066    method public boolean getSuppressShowOverApps();
1067    method public android.app.Notification.TvExtender setChannel(String);
1068  }
1069
1070  public final class NotificationChannel implements android.os.Parcelable {
1071    method public int getUserLockedFields();
1072    method public boolean isDeleted();
1073    method public void populateFromXml(org.xmlpull.v1.XmlPullParser);
1074    method @FlaggedApi("android.service.notification.notification_conversation_channel_management") public void setImportantConversation(boolean);
1075    method public org.json.JSONObject toJson() throws org.json.JSONException;
1076    method public void writeXml(org.xmlpull.v1.XmlSerializer) throws java.io.IOException;
1077    field public static final int USER_LOCKED_SOUND = 32; // 0x20
1078  }
1079
1080  public final class NotificationChannelGroup implements android.os.Parcelable {
1081    method public org.json.JSONObject toJson() throws org.json.JSONException;
1082  }
1083
1084  public class NotificationManager {
1085    method @NonNull public java.util.List<java.lang.String> getAllowedAssistantAdjustments();
1086    method @Nullable public android.content.ComponentName getAllowedNotificationAssistant();
1087    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_NOTIFICATION_LISTENERS) public java.util.List<android.content.ComponentName> getEnabledNotificationListeners();
1088    method public boolean isNotificationAssistantAccessGranted(@NonNull android.content.ComponentName);
1089    method @FlaggedApi("android.service.notification.callstyle_callback_api") @RequiresPermission(allOf={android.Manifest.permission.INTERACT_ACROSS_USERS, android.Manifest.permission.ACCESS_NOTIFICATIONS}) public void registerCallNotificationEventListener(@NonNull String, @NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull android.app.NotificationManager.CallNotificationEventListener);
1090    method public void setNotificationAssistantAccessGranted(@Nullable android.content.ComponentName, boolean);
1091    method @RequiresPermission(android.Manifest.permission.MANAGE_NOTIFICATION_LISTENERS) public void setNotificationListenerAccessGranted(@NonNull android.content.ComponentName, boolean, boolean);
1092    method @FlaggedApi("android.service.notification.callstyle_callback_api") @RequiresPermission(allOf={android.Manifest.permission.INTERACT_ACROSS_USERS, android.Manifest.permission.ACCESS_NOTIFICATIONS}) public void unregisterCallNotificationEventListener(@NonNull android.app.NotificationManager.CallNotificationEventListener);
1093    field @RequiresPermission(android.Manifest.permission.STATUS_BAR_SERVICE) public static final String ACTION_CLOSE_NOTIFICATION_HANDLER_PANEL = "android.app.action.CLOSE_NOTIFICATION_HANDLER_PANEL";
1094    field @RequiresPermission(android.Manifest.permission.STATUS_BAR_SERVICE) public static final String ACTION_OPEN_NOTIFICATION_HANDLER_PANEL = "android.app.action.OPEN_NOTIFICATION_HANDLER_PANEL";
1095    field @RequiresPermission(android.Manifest.permission.STATUS_BAR_SERVICE) public static final String ACTION_TOGGLE_NOTIFICATION_HANDLER_PANEL = "android.app.action.TOGGLE_NOTIFICATION_HANDLER_PANEL";
1096  }
1097
1098  @FlaggedApi("android.service.notification.callstyle_callback_api") public static interface NotificationManager.CallNotificationEventListener {
1099    method @FlaggedApi("android.service.notification.callstyle_callback_api") public void onCallNotificationPosted(@NonNull String, @NonNull android.os.UserHandle);
1100    method @FlaggedApi("android.service.notification.callstyle_callback_api") public void onCallNotificationRemoved(@NonNull String, @NonNull android.os.UserHandle);
1101  }
1102
1103  public final class RemoteLockscreenValidationResult implements android.os.Parcelable {
1104    method public int describeContents();
1105    method public int getResultCode();
1106    method public long getTimeoutMillis();
1107    method public void writeToParcel(@NonNull android.os.Parcel, int);
1108    field @NonNull public static final android.os.Parcelable.Creator<android.app.RemoteLockscreenValidationResult> CREATOR;
1109    field public static final int RESULT_GUESS_INVALID = 2; // 0x2
1110    field public static final int RESULT_GUESS_VALID = 1; // 0x1
1111    field public static final int RESULT_LOCKOUT = 3; // 0x3
1112    field public static final int RESULT_NO_REMAINING_ATTEMPTS = 4; // 0x4
1113    field public static final int RESULT_SESSION_EXPIRED = 5; // 0x5
1114  }
1115
1116  public static final class RemoteLockscreenValidationResult.Builder {
1117    ctor public RemoteLockscreenValidationResult.Builder();
1118    method @NonNull public android.app.RemoteLockscreenValidationResult build();
1119    method @NonNull public android.app.RemoteLockscreenValidationResult.Builder setResultCode(int);
1120    method @NonNull public android.app.RemoteLockscreenValidationResult.Builder setTimeoutMillis(long);
1121  }
1122
1123  public final class RemoteLockscreenValidationSession implements android.os.Parcelable {
1124    method public int describeContents();
1125    method public int getLockType();
1126    method public int getRemainingAttempts();
1127    method @NonNull public byte[] getSourcePublicKey();
1128    method public void writeToParcel(@NonNull android.os.Parcel, int);
1129    field @NonNull public static final android.os.Parcelable.Creator<android.app.RemoteLockscreenValidationSession> CREATOR;
1130  }
1131
1132  public static final class RemoteLockscreenValidationSession.Builder {
1133    ctor public RemoteLockscreenValidationSession.Builder();
1134    method @NonNull public android.app.RemoteLockscreenValidationSession build();
1135    method @NonNull public android.app.RemoteLockscreenValidationSession.Builder setLockType(int);
1136    method @NonNull public android.app.RemoteLockscreenValidationSession.Builder setRemainingAttempts(int);
1137    method @NonNull public android.app.RemoteLockscreenValidationSession.Builder setSourcePublicKey(@NonNull byte[]);
1138  }
1139
1140  public final class RuntimeAppOpAccessMessage implements android.os.Parcelable {
1141    ctor public RuntimeAppOpAccessMessage(@IntRange(from=0L) int, @IntRange(from=0L) int, @NonNull String, @Nullable String, @NonNull String, int);
1142    method public int describeContents();
1143    method @Nullable public String getAttributionTag();
1144    method @NonNull public String getMessage();
1145    method @NonNull public String getOp();
1146    method @NonNull public String getPackageName();
1147    method public int getSamplingStrategy();
1148    method @IntRange(from=0L) public int getUid();
1149    method public void writeToParcel(@NonNull android.os.Parcel, int);
1150    field @NonNull public static final android.os.Parcelable.Creator<android.app.RuntimeAppOpAccessMessage> CREATOR;
1151  }
1152
1153  public class SearchManager implements android.content.DialogInterface.OnCancelListener android.content.DialogInterface.OnDismissListener {
1154    method public void launchAssist(@Nullable android.os.Bundle);
1155  }
1156
1157  public class StatusBarManager {
1158    method @NonNull @RequiresPermission(android.Manifest.permission.STATUS_BAR) public android.app.StatusBarManager.DisableInfo getDisableInfo();
1159    method @RequiresPermission(android.Manifest.permission.STATUS_BAR) public int getNavBarMode();
1160    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void registerNearbyMediaDevicesProvider(@NonNull android.media.NearbyMediaDevicesProvider);
1161    method @RequiresPermission(android.Manifest.permission.STATUS_BAR) public void setDisabledForSetup(boolean);
1162    method @RequiresPermission(android.Manifest.permission.STATUS_BAR) public void setNavBarMode(int);
1163    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void unregisterNearbyMediaDevicesProvider(@NonNull android.media.NearbyMediaDevicesProvider);
1164    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void updateMediaTapToTransferReceiverDisplay(int, @NonNull android.media.MediaRoute2Info, @Nullable android.graphics.drawable.Icon, @Nullable CharSequence);
1165    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void updateMediaTapToTransferSenderDisplay(int, @NonNull android.media.MediaRoute2Info, @Nullable java.util.concurrent.Executor, @Nullable Runnable);
1166    field public static final int MEDIA_TRANSFER_RECEIVER_STATE_CLOSE_TO_SENDER = 0; // 0x0
1167    field public static final int MEDIA_TRANSFER_RECEIVER_STATE_FAR_FROM_SENDER = 1; // 0x1
1168    field public static final int MEDIA_TRANSFER_RECEIVER_STATE_TRANSFER_TO_RECEIVER_FAILED = 3; // 0x3
1169    field public static final int MEDIA_TRANSFER_RECEIVER_STATE_TRANSFER_TO_RECEIVER_SUCCEEDED = 2; // 0x2
1170    field public static final int MEDIA_TRANSFER_SENDER_STATE_ALMOST_CLOSE_TO_END_CAST = 1; // 0x1
1171    field public static final int MEDIA_TRANSFER_SENDER_STATE_ALMOST_CLOSE_TO_START_CAST = 0; // 0x0
1172    field public static final int MEDIA_TRANSFER_SENDER_STATE_FAR_FROM_RECEIVER = 8; // 0x8
1173    field public static final int MEDIA_TRANSFER_SENDER_STATE_TRANSFER_TO_RECEIVER_FAILED = 6; // 0x6
1174    field public static final int MEDIA_TRANSFER_SENDER_STATE_TRANSFER_TO_RECEIVER_SUCCEEDED = 4; // 0x4
1175    field public static final int MEDIA_TRANSFER_SENDER_STATE_TRANSFER_TO_RECEIVER_TRIGGERED = 2; // 0x2
1176    field public static final int MEDIA_TRANSFER_SENDER_STATE_TRANSFER_TO_THIS_DEVICE_FAILED = 7; // 0x7
1177    field public static final int MEDIA_TRANSFER_SENDER_STATE_TRANSFER_TO_THIS_DEVICE_SUCCEEDED = 5; // 0x5
1178    field public static final int MEDIA_TRANSFER_SENDER_STATE_TRANSFER_TO_THIS_DEVICE_TRIGGERED = 3; // 0x3
1179    field public static final int NAV_BAR_MODE_DEFAULT = 0; // 0x0
1180    field public static final int NAV_BAR_MODE_KIDS = 1; // 0x1
1181  }
1182
1183  public static final class StatusBarManager.DisableInfo {
1184    method public boolean areAllComponentsEnabled();
1185    method public boolean isNavigateToHomeDisabled();
1186    method public boolean isNotificationPeekingDisabled();
1187    method public boolean isRecentsDisabled();
1188    method public boolean isSearchDisabled();
1189    method public boolean isStatusBarExpansionDisabled();
1190  }
1191
1192  public final class SystemServiceRegistry {
1193    method public static <TServiceClass> void registerContextAwareService(@NonNull String, @NonNull Class<TServiceClass>, @NonNull android.app.SystemServiceRegistry.ContextAwareServiceProducerWithBinder<TServiceClass>);
1194    method public static <TServiceClass> void registerContextAwareService(@NonNull String, @NonNull Class<TServiceClass>, @NonNull android.app.SystemServiceRegistry.ContextAwareServiceProducerWithoutBinder<TServiceClass>);
1195    method public static <TServiceClass> void registerStaticService(@NonNull String, @NonNull Class<TServiceClass>, @NonNull android.app.SystemServiceRegistry.StaticServiceProducerWithBinder<TServiceClass>);
1196    method public static <TServiceClass> void registerStaticService(@NonNull String, @NonNull Class<TServiceClass>, @NonNull android.app.SystemServiceRegistry.StaticServiceProducerWithoutBinder<TServiceClass>);
1197  }
1198
1199  public static interface SystemServiceRegistry.ContextAwareServiceProducerWithBinder<TServiceClass> {
1200    method @NonNull public TServiceClass createService(@NonNull android.content.Context, @NonNull android.os.IBinder);
1201  }
1202
1203  public static interface SystemServiceRegistry.ContextAwareServiceProducerWithoutBinder<TServiceClass> {
1204    method @NonNull public TServiceClass createService(@NonNull android.content.Context);
1205  }
1206
1207  public static interface SystemServiceRegistry.StaticServiceProducerWithBinder<TServiceClass> {
1208    method @NonNull public TServiceClass createService(@NonNull android.os.IBinder);
1209  }
1210
1211  public static interface SystemServiceRegistry.StaticServiceProducerWithoutBinder<TServiceClass> {
1212    method @NonNull public TServiceClass createService();
1213  }
1214
1215  public class UiModeManager {
1216    method @RequiresPermission(android.Manifest.permission.READ_PROJECTION_STATE) public void addOnProjectionStateChangedListener(int, @NonNull java.util.concurrent.Executor, @NonNull android.app.UiModeManager.OnProjectionStateChangedListener);
1217    method @RequiresPermission(android.Manifest.permission.ENTER_CAR_MODE_PRIORITIZED) public void enableCarMode(@IntRange(from=0) int, int);
1218    method @RequiresPermission(android.Manifest.permission.READ_PROJECTION_STATE) public int getActiveProjectionTypes();
1219    method @RequiresPermission(android.Manifest.permission.MODIFY_DAY_NIGHT_MODE) public int getNightModeCustomType();
1220    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PROJECTION_STATE) public java.util.Set<java.lang.String> getProjectingPackages(int);
1221    method @RequiresPermission(value=android.Manifest.permission.TOGGLE_AUTOMOTIVE_PROJECTION, conditional=true) public boolean releaseProjection(int);
1222    method @RequiresPermission(android.Manifest.permission.READ_PROJECTION_STATE) public void removeOnProjectionStateChangedListener(@NonNull android.app.UiModeManager.OnProjectionStateChangedListener);
1223    method @RequiresPermission(value=android.Manifest.permission.TOGGLE_AUTOMOTIVE_PROJECTION, conditional=true) public boolean requestProjection(int);
1224    method @RequiresPermission(android.Manifest.permission.MODIFY_DAY_NIGHT_MODE) public boolean setNightModeActivatedForCustomMode(int, boolean);
1225    method @RequiresPermission(android.Manifest.permission.MODIFY_DAY_NIGHT_MODE) public void setNightModeCustomType(int);
1226    field public static final String ACTION_ENTER_CAR_MODE_PRIORITIZED = "android.app.action.ENTER_CAR_MODE_PRIORITIZED";
1227    field public static final String ACTION_EXIT_CAR_MODE_PRIORITIZED = "android.app.action.EXIT_CAR_MODE_PRIORITIZED";
1228    field public static final int DEFAULT_PRIORITY = 0; // 0x0
1229    field public static final String EXTRA_CALLING_PACKAGE = "android.app.extra.CALLING_PACKAGE";
1230    field public static final String EXTRA_PRIORITY = "android.app.extra.PRIORITY";
1231    field public static final int MODE_NIGHT_CUSTOM_TYPE_BEDTIME = 1; // 0x1
1232    field public static final int MODE_NIGHT_CUSTOM_TYPE_SCHEDULE = 0; // 0x0
1233    field public static final int MODE_NIGHT_CUSTOM_TYPE_UNKNOWN = -1; // 0xffffffff
1234    field public static final int PROJECTION_TYPE_ALL = -1; // 0xffffffff
1235    field public static final int PROJECTION_TYPE_AUTOMOTIVE = 1; // 0x1
1236    field public static final int PROJECTION_TYPE_NONE = 0; // 0x0
1237  }
1238
1239  public static interface UiModeManager.OnProjectionStateChangedListener {
1240    method public void onProjectionStateChanged(int, @NonNull java.util.Set<java.lang.String>);
1241  }
1242
1243  public final class Vr2dDisplayProperties implements android.os.Parcelable {
1244    ctor public Vr2dDisplayProperties(int, int, int);
1245    method public int describeContents();
1246    method public void dump(@NonNull java.io.PrintWriter, @NonNull String);
1247    method public int getAddedFlags();
1248    method public int getDpi();
1249    method public int getHeight();
1250    method public int getRemovedFlags();
1251    method public int getWidth();
1252    method public void writeToParcel(android.os.Parcel, int);
1253    field @NonNull public static final android.os.Parcelable.Creator<android.app.Vr2dDisplayProperties> CREATOR;
1254    field public static final int FLAG_VIRTUAL_DISPLAY_ENABLED = 1; // 0x1
1255  }
1256
1257  public static final class Vr2dDisplayProperties.Builder {
1258    ctor public Vr2dDisplayProperties.Builder();
1259    method @NonNull public android.app.Vr2dDisplayProperties.Builder addFlags(int);
1260    method @NonNull public android.app.Vr2dDisplayProperties build();
1261    method @NonNull public android.app.Vr2dDisplayProperties.Builder removeFlags(int);
1262    method @NonNull public android.app.Vr2dDisplayProperties.Builder setDimensions(int, int, int);
1263    method @NonNull public android.app.Vr2dDisplayProperties.Builder setEnabled(boolean);
1264  }
1265
1266  public class VrManager {
1267    method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public int getVr2dDisplayId();
1268    method @RequiresPermission(anyOf={android.Manifest.permission.RESTRICTED_VR_ACCESS, "android.permission.ACCESS_VR_STATE"}) public boolean isPersistentVrModeEnabled();
1269    method @RequiresPermission(anyOf={android.Manifest.permission.RESTRICTED_VR_ACCESS, "android.permission.ACCESS_VR_STATE"}) public boolean isVrModeEnabled();
1270    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);
1271    method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public void setAndBindVrCompositor(android.content.ComponentName);
1272    method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public void setPersistentVrModeEnabled(boolean);
1273    method @RequiresPermission("android.permission.ACCESS_VR_MANAGER") public void setStandbyEnabled(boolean);
1274    method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public void setVr2dDisplayProperties(@NonNull android.app.Vr2dDisplayProperties);
1275    method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public void setVrInputMethod(@Nullable android.content.ComponentName);
1276    method @RequiresPermission(anyOf={android.Manifest.permission.RESTRICTED_VR_ACCESS, "android.permission.ACCESS_VR_STATE"}) public void unregisterVrStateCallback(@NonNull android.app.VrStateCallback);
1277  }
1278
1279  public abstract class VrStateCallback {
1280    ctor public VrStateCallback();
1281    method public void onPersistentVrStateChanged(boolean);
1282    method public void onVrStateChanged(boolean);
1283  }
1284
1285  public final class WallpaperInfo implements android.os.Parcelable {
1286    method public boolean supportsAmbientMode();
1287  }
1288
1289  public class WallpaperManager {
1290    method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public void clearWallpaper(int, int);
1291    method @FlaggedApi("android.app.customization_packs_apis") @NonNull @RequiresPermission(android.Manifest.permission.READ_WALLPAPER_INTERNAL) public android.util.SparseArray<android.graphics.Rect> getBitmapCrops(int);
1292    method @FlaggedApi("android.app.customization_packs_apis") public static int getOrientation(@NonNull android.graphics.Point);
1293    method @FloatRange(from=0.0f, to=1.0f) @RequiresPermission(android.Manifest.permission.SET_WALLPAPER_DIM_AMOUNT) public float getWallpaperDimAmount();
1294    method @FlaggedApi("android.app.customization_packs_apis") @Nullable public android.os.ParcelFileDescriptor getWallpaperFile(int, boolean);
1295    method @FlaggedApi("android.app.live_wallpaper_content_handling") @Nullable @RequiresPermission(android.Manifest.permission.READ_WALLPAPER_INTERNAL) public android.app.wallpaper.WallpaperInstance getWallpaperInstance(int);
1296    method public void setDisplayOffset(android.os.IBinder, int, int);
1297    method @FlaggedApi("com.android.window.flags.multi_crop") @RequiresPermission(android.Manifest.permission.SET_WALLPAPER) public int setStreamWithCrops(@NonNull java.io.InputStream, @NonNull android.util.SparseArray<android.graphics.Rect>, boolean, int) throws java.io.IOException;
1298    method @FlaggedApi("android.app.live_wallpaper_content_handling") @RequiresPermission(android.Manifest.permission.SET_WALLPAPER) public int setStreamWithDescription(@NonNull java.io.InputStream, @NonNull android.app.wallpaper.WallpaperDescription, boolean, int) throws java.io.IOException;
1299    method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER_COMPONENT) public boolean setWallpaperComponent(android.content.ComponentName);
1300    method @FlaggedApi("android.app.live_wallpaper_content_handling") @RequiresPermission(allOf={android.Manifest.permission.SET_WALLPAPER_COMPONENT, android.Manifest.permission.INTERACT_ACROSS_USERS_FULL}, conditional=true) public boolean setWallpaperComponentWithDescription(@NonNull android.app.wallpaper.WallpaperDescription, int);
1301    method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER_COMPONENT) public boolean setWallpaperComponentWithFlags(@NonNull android.content.ComponentName, int);
1302    method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER_DIM_AMOUNT) public void setWallpaperDimAmount(@FloatRange(from=0.0f, to=1.0f) float);
1303    field @FlaggedApi("android.app.customization_packs_apis") public static final int ORIENTATION_LANDSCAPE = 1; // 0x1
1304    field @FlaggedApi("android.app.customization_packs_apis") public static final int ORIENTATION_PORTRAIT = 0; // 0x0
1305    field @FlaggedApi("android.app.customization_packs_apis") public static final int ORIENTATION_SQUARE_LANDSCAPE = 3; // 0x3
1306    field @FlaggedApi("android.app.customization_packs_apis") public static final int ORIENTATION_SQUARE_PORTRAIT = 2; // 0x2
1307  }
1308
1309}
1310
1311package android.app.admin {
1312
1313  public final class AccountTypePolicyKey extends android.app.admin.PolicyKey {
1314    method public int describeContents();
1315    method @NonNull public String getAccountType();
1316    method public void writeToParcel(@NonNull android.os.Parcel, int);
1317    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.AccountTypePolicyKey> CREATOR;
1318  }
1319
1320  public abstract class Authority implements android.os.Parcelable {
1321    method public int describeContents();
1322  }
1323
1324  public final class DeviceAdminAuthority extends android.app.admin.Authority {
1325    ctor public DeviceAdminAuthority();
1326    method public void writeToParcel(@NonNull android.os.Parcel, int);
1327    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.DeviceAdminAuthority> CREATOR;
1328  }
1329
1330  public final class DevicePolicyDrawableResource implements android.os.Parcelable {
1331    ctor public DevicePolicyDrawableResource(@NonNull android.content.Context, @NonNull String, @NonNull String, @NonNull String, @DrawableRes int);
1332    ctor public DevicePolicyDrawableResource(@NonNull android.content.Context, @NonNull String, @NonNull String, @DrawableRes int);
1333    method public int describeContents();
1334    method @NonNull public String getDrawableId();
1335    method @NonNull public String getDrawableSource();
1336    method @NonNull public String getDrawableStyle();
1337    method @DrawableRes public int getResourceIdInCallingPackage();
1338    method public void writeToParcel(@NonNull android.os.Parcel, int);
1339    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.DevicePolicyDrawableResource> CREATOR;
1340  }
1341
1342  public final class DevicePolicyIdentifiers {
1343    field public static final String AUDIT_LOGGING_POLICY = "auditLogging";
1344  }
1345
1346  public class DevicePolicyKeyguardService extends android.app.Service {
1347    ctor public DevicePolicyKeyguardService();
1348    method @Nullable public void dismiss();
1349    method @Nullable public final android.os.IBinder onBind(@Nullable android.content.Intent);
1350    method @Nullable public android.view.SurfaceControlViewHost.SurfacePackage onCreateKeyguardSurface(@NonNull android.os.IBinder);
1351  }
1352
1353  public class DevicePolicyManager {
1354    method @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public int checkProvisioningPrecondition(@NonNull String, @NonNull String);
1355    method @RequiresPermission(android.Manifest.permission.MANAGE_DEVICE_POLICY_AUDIT_LOGGING) public void clearAuditLogEventCallback();
1356    method @Deprecated @FlaggedApi("android.app.admin.flags.split_create_managed_profile_enabled") @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public android.os.UserHandle createAndProvisionManagedProfile(@NonNull android.app.admin.ManagedProfileProvisioningParams) throws android.app.admin.ProvisioningException;
1357    method @FlaggedApi("android.app.admin.flags.split_create_managed_profile_enabled") @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public android.os.UserHandle createManagedProfile(@NonNull android.app.admin.ManagedProfileProvisioningParams) throws android.app.admin.ProvisioningException;
1358    method @Nullable public android.content.Intent createProvisioningIntentFromNfcIntent(@NonNull android.content.Intent);
1359    method @FlaggedApi("android.app.admin.flags.split_create_managed_profile_enabled") @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public void finalizeCreateManagedProfile(@NonNull android.app.admin.ManagedProfileProvisioningParams, @NonNull android.os.UserHandle) throws android.app.admin.ProvisioningException;
1360    method @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public void finalizeWorkProfileProvisioning(@NonNull android.os.UserHandle, @Nullable android.accounts.Account);
1361    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_DEVICE_POLICY_APP_EXEMPTIONS) public java.util.Set<java.lang.Integer> getApplicationExemptions(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException;
1362    method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public boolean getBluetoothContactSharingDisabled(@NonNull android.os.UserHandle);
1363    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public String getDeviceOwner();
1364    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS}) public android.content.ComponentName getDeviceOwnerComponentOnAnyUser();
1365    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS}) public String getDeviceOwnerNameOnAnyUser();
1366    method @Nullable public CharSequence getDeviceOwnerOrganizationName();
1367    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public android.os.UserHandle getDeviceOwnerUser();
1368    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public android.app.admin.DevicePolicyState getDevicePolicyState();
1369    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public String getFinancedDeviceKioskRoleHolder();
1370    method @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public int getMaxPolicyStorageLimit();
1371    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.QUERY_ADMIN_POLICY}) public java.util.List<java.lang.String> getPermittedAccessibilityServices(int);
1372    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.QUERY_ADMIN_POLICY}) public java.util.List<java.lang.String> getPermittedInputMethodsForCurrentUser();
1373    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public java.util.List<android.os.UserHandle> getPolicyManagedProfiles(@NonNull android.os.UserHandle);
1374    method @Nullable public android.content.ComponentName getProfileOwner() throws java.lang.IllegalArgumentException;
1375    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS}) public String getProfileOwnerNameAsUser(int) throws java.lang.IllegalArgumentException;
1376    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS}) public int getUserProvisioningState();
1377    method @RequiresPermission(android.Manifest.permission.MANAGE_DEVICE_POLICY_AUDIT_LOGGING) public boolean isAuditLogEnabled();
1378    method public boolean isDeviceManaged();
1379    method @FlaggedApi("android.app.admin.flags.device_theft_api_enabled") @RequiresPermission(android.Manifest.permission.QUERY_DEVICE_STOLEN_STATE) public boolean isDevicePotentiallyStolen();
1380    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isDeviceProvisioned();
1381    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isDeviceProvisioningConfigApplied();
1382    method @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public boolean isDpcDownloaded();
1383    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS}) public boolean isManagedKiosk();
1384    method public boolean isSecondaryLockscreenEnabled(@NonNull android.os.UserHandle);
1385    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS}) public boolean isUnattendedManagedKiosk();
1386    method @RequiresPermission("android.permission.NOTIFY_PENDING_SYSTEM_UPDATE") public void notifyPendingSystemUpdate(long);
1387    method @RequiresPermission("android.permission.NOTIFY_PENDING_SYSTEM_UPDATE") public void notifyPendingSystemUpdate(long, boolean);
1388    method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public boolean packageHasActiveAdmins(String);
1389    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS, android.Manifest.permission.PROVISION_DEMO_DEVICE}) public void provisionFullyManagedDevice(@NonNull android.app.admin.FullyManagedDeviceProvisioningParams) throws android.app.admin.ProvisioningException;
1390    method @FlaggedApi("android.app.admin.flags.remove_managed_profile_enabled") @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public boolean removeManagedProfile();
1391    method @RequiresPermission(android.Manifest.permission.TRIGGER_LOST_MODE) public void sendLostModeLocationUpdate(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>);
1392    method @Deprecated @RequiresPermission(android.Manifest.permission.MANAGE_DEVICE_ADMINS) public boolean setActiveProfileOwner(@NonNull android.content.ComponentName, String) throws java.lang.IllegalArgumentException;
1393    method @RequiresPermission(android.Manifest.permission.MANAGE_DEVICE_POLICY_APP_EXEMPTIONS) public void setApplicationExemptions(@NonNull String, @NonNull java.util.Set<java.lang.Integer>) throws android.content.pm.PackageManager.NameNotFoundException;
1394    method @RequiresPermission(android.Manifest.permission.MANAGE_DEVICE_POLICY_AUDIT_LOGGING) public void setAuditLogEnabled(boolean);
1395    method @RequiresPermission(android.Manifest.permission.MANAGE_DEVICE_POLICY_AUDIT_LOGGING) public void setAuditLogEventCallback(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.util.List<android.app.admin.SecurityLog.SecurityEvent>>);
1396    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void setDeviceProvisioningConfigApplied();
1397    method @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public void setDpcDownloaded(boolean);
1398    method @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public void setMaxPolicyStorageLimit(int);
1399    method @Deprecated @RequiresPermission(value=android.Manifest.permission.GRANT_PROFILE_OWNER_DEVICE_IDS_ACCESS, conditional=true) public void setProfileOwnerCanAccessDeviceIds(@NonNull android.content.ComponentName);
1400    method @Deprecated @FlaggedApi("android.app.admin.flags.secondary_lockscreen_api_enabled") public void setSecondaryLockscreenEnabled(@NonNull android.content.ComponentName, boolean);
1401    method @FlaggedApi("android.app.admin.flags.secondary_lockscreen_api_enabled") public void setSecondaryLockscreenEnabled(boolean, @Nullable android.os.PersistableBundle);
1402    method @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public void setUserProvisioningState(int, @NonNull android.os.UserHandle);
1403    method @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public boolean shouldAllowBypassingDevicePolicyManagementRoleQualification();
1404    field public static final String ACCOUNT_FEATURE_DEVICE_OR_PROFILE_OWNER_ALLOWED = "android.account.DEVICE_OR_PROFILE_OWNER_ALLOWED";
1405    field public static final String ACCOUNT_FEATURE_DEVICE_OR_PROFILE_OWNER_DISALLOWED = "android.account.DEVICE_OR_PROFILE_OWNER_DISALLOWED";
1406    field public static final String ACTION_BIND_SECONDARY_LOCKSCREEN_SERVICE = "android.app.action.BIND_SECONDARY_LOCKSCREEN_SERVICE";
1407    field @RequiresPermission(android.Manifest.permission.DISPATCH_PROVISIONING_MESSAGE) public static final String ACTION_ESTABLISH_NETWORK_CONNECTION = "android.app.action.ESTABLISH_NETWORK_CONNECTION";
1408    field public static final String ACTION_LOST_MODE_LOCATION_UPDATE = "android.app.action.LOST_MODE_LOCATION_UPDATE";
1409    field public static final String ACTION_PROVISION_FINALIZATION = "android.app.action.PROVISION_FINALIZATION";
1410    field public static final String ACTION_PROVISION_FINANCED_DEVICE = "android.app.action.PROVISION_FINANCED_DEVICE";
1411    field public static final String ACTION_PROVISION_MANAGED_DEVICE_FROM_TRUSTED_SOURCE = "android.app.action.PROVISION_MANAGED_DEVICE_FROM_TRUSTED_SOURCE";
1412    field @RequiresPermission(android.Manifest.permission.MANAGE_FACTORY_RESET_PROTECTION) public static final String ACTION_RESET_PROTECTION_POLICY_CHANGED = "android.app.action.RESET_PROTECTION_POLICY_CHANGED";
1413    field @RequiresPermission(android.Manifest.permission.LAUNCH_DEVICE_MANAGER_SETUP) public static final String ACTION_ROLE_HOLDER_PROVISION_FINALIZATION = "android.app.action.ROLE_HOLDER_PROVISION_FINALIZATION";
1414    field @RequiresPermission(android.Manifest.permission.LAUNCH_DEVICE_MANAGER_SETUP) public static final String ACTION_ROLE_HOLDER_PROVISION_MANAGED_DEVICE_FROM_TRUSTED_SOURCE = "android.app.action.ROLE_HOLDER_PROVISION_MANAGED_DEVICE_FROM_TRUSTED_SOURCE";
1415    field @RequiresPermission(android.Manifest.permission.LAUNCH_DEVICE_MANAGER_SETUP) public static final String ACTION_ROLE_HOLDER_PROVISION_MANAGED_PROFILE = "android.app.action.ROLE_HOLDER_PROVISION_MANAGED_PROFILE";
1416    field public static final String ACTION_SET_PROFILE_OWNER = "android.app.action.SET_PROFILE_OWNER";
1417    field @Deprecated public static final String ACTION_STATE_USER_SETUP_COMPLETE = "android.app.action.STATE_USER_SETUP_COMPLETE";
1418    field @RequiresPermission(android.Manifest.permission.LAUNCH_DEVICE_MANAGER_SETUP) public static final String ACTION_UPDATE_DEVICE_POLICY_MANAGEMENT_ROLE_HOLDER = "android.app.action.UPDATE_DEVICE_POLICY_MANAGEMENT_ROLE_HOLDER";
1419    field public static final int EXEMPT_FROM_ACTIVITY_BG_START_RESTRICTION = 2; // 0x2
1420    field public static final int EXEMPT_FROM_DISMISSIBLE_NOTIFICATIONS = 1; // 0x1
1421    field public static final int EXEMPT_FROM_HIBERNATION = 3; // 0x3
1422    field public static final int EXEMPT_FROM_POWER_RESTRICTIONS = 4; // 0x4
1423    field public static final int EXEMPT_FROM_SUSPENSION = 0; // 0x0
1424    field public static final String EXTRA_FORCE_UPDATE_ROLE_HOLDER = "android.app.extra.FORCE_UPDATE_ROLE_HOLDER";
1425    field public static final String EXTRA_LOST_MODE_LOCATION = "android.app.extra.LOST_MODE_LOCATION";
1426    field public static final String EXTRA_PROFILE_OWNER_NAME = "android.app.extra.PROFILE_OWNER_NAME";
1427    field @Deprecated public static final String EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_ICON_URI = "android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_ICON_URI";
1428    field @Deprecated public static final String EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_LABEL = "android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_LABEL";
1429    field public static final String EXTRA_PROVISIONING_ORGANIZATION_NAME = "android.app.extra.PROVISIONING_ORGANIZATION_NAME";
1430    field public static final String EXTRA_PROVISIONING_RETURN_BEFORE_POLICY_COMPLIANCE = "android.app.extra.PROVISIONING_RETURN_BEFORE_POLICY_COMPLIANCE";
1431    field public static final String EXTRA_PROVISIONING_ROLE_HOLDER_CUSTOM_USER_CONSENT_INTENT = "android.app.extra.PROVISIONING_ROLE_HOLDER_CUSTOM_USER_CONSENT_INTENT";
1432    field public static final String EXTRA_PROVISIONING_ROLE_HOLDER_EXTRAS_BUNDLE = "android.app.extra.PROVISIONING_ROLE_HOLDER_EXTRAS_BUNDLE";
1433    field public static final String EXTRA_PROVISIONING_ROLE_HOLDER_PACKAGE_DOWNLOAD_COOKIE_HEADER = "android.app.extra.PROVISIONING_ROLE_HOLDER_PACKAGE_DOWNLOAD_COOKIE_HEADER";
1434    field public static final String EXTRA_PROVISIONING_ROLE_HOLDER_PACKAGE_DOWNLOAD_LOCATION = "android.app.extra.PROVISIONING_ROLE_HOLDER_PACKAGE_DOWNLOAD_LOCATION";
1435    field public static final String EXTRA_PROVISIONING_ROLE_HOLDER_SIGNATURE_CHECKSUM = "android.app.extra.PROVISIONING_ROLE_HOLDER_SIGNATURE_CHECKSUM";
1436    field public static final String EXTRA_PROVISIONING_SKIP_OWNERSHIP_DISCLAIMER = "android.app.extra.PROVISIONING_SKIP_OWNERSHIP_DISCLAIMER";
1437    field public static final String EXTRA_PROVISIONING_SUPPORTED_MODES = "android.app.extra.PROVISIONING_SUPPORTED_MODES";
1438    field public static final String EXTRA_PROVISIONING_SUPPORT_URL = "android.app.extra.PROVISIONING_SUPPORT_URL";
1439    field public static final String EXTRA_PROVISIONING_TRIGGER = "android.app.extra.PROVISIONING_TRIGGER";
1440    field public static final String EXTRA_RESTRICTION = "android.app.extra.RESTRICTION";
1441    field public static final String EXTRA_ROLE_HOLDER_PROVISIONING_INITIATOR_PACKAGE = "android.app.extra.ROLE_HOLDER_PROVISIONING_INITIATOR_PACKAGE";
1442    field public static final String EXTRA_ROLE_HOLDER_STATE = "android.app.extra.ROLE_HOLDER_STATE";
1443    field public static final String EXTRA_ROLE_HOLDER_UPDATE_RESULT_CODE = "android.app.extra.ROLE_HOLDER_UPDATE_RESULT_CODE";
1444    field public static final int FLAG_SUPPORTED_MODES_DEVICE_OWNER = 4; // 0x4
1445    field public static final int FLAG_SUPPORTED_MODES_ORGANIZATION_OWNED = 1; // 0x1
1446    field public static final int FLAG_SUPPORTED_MODES_PERSONALLY_OWNED = 2; // 0x2
1447    field public static final int PROVISIONING_TRIGGER_CLOUD_ENROLLMENT = 1; // 0x1
1448    field public static final int PROVISIONING_TRIGGER_MANAGED_ACCOUNT = 4; // 0x4
1449    field public static final int PROVISIONING_TRIGGER_NFC = 5; // 0x5
1450    field @Deprecated public static final int PROVISIONING_TRIGGER_PERSISTENT_DEVICE_OWNER = 3; // 0x3
1451    field public static final int PROVISIONING_TRIGGER_QR_CODE = 2; // 0x2
1452    field public static final int PROVISIONING_TRIGGER_UNSPECIFIED = 0; // 0x0
1453    field public static final String REQUIRED_APP_MANAGED_DEVICE = "android.app.REQUIRED_APP_MANAGED_DEVICE";
1454    field public static final String REQUIRED_APP_MANAGED_PROFILE = "android.app.REQUIRED_APP_MANAGED_PROFILE";
1455    field public static final String REQUIRED_APP_MANAGED_USER = "android.app.REQUIRED_APP_MANAGED_USER";
1456    field public static final int RESULT_DEVICE_OWNER_SET = 123; // 0x7b
1457    field public static final int RESULT_UPDATE_DEVICE_POLICY_MANAGEMENT_ROLE_HOLDER_PROVISIONING_DISABLED = 3; // 0x3
1458    field public static final int RESULT_UPDATE_DEVICE_POLICY_MANAGEMENT_ROLE_HOLDER_RECOVERABLE_ERROR = 1; // 0x1
1459    field public static final int RESULT_UPDATE_DEVICE_POLICY_MANAGEMENT_ROLE_HOLDER_UNRECOVERABLE_ERROR = 2; // 0x2
1460    field public static final int RESULT_UPDATE_ROLE_HOLDER = 2; // 0x2
1461    field public static final int RESULT_WORK_PROFILE_CREATED = 122; // 0x7a
1462    field public static final int STATE_USER_PROFILE_COMPLETE = 4; // 0x4
1463    field public static final int STATE_USER_PROFILE_FINALIZED = 5; // 0x5
1464    field public static final int STATE_USER_SETUP_COMPLETE = 2; // 0x2
1465    field public static final int STATE_USER_SETUP_FINALIZED = 3; // 0x3
1466    field public static final int STATE_USER_SETUP_INCOMPLETE = 1; // 0x1
1467    field public static final int STATE_USER_UNMANAGED = 0; // 0x0
1468    field public static final int STATUS_ACCOUNTS_NOT_EMPTY = 6; // 0x6
1469    field public static final int STATUS_CANNOT_ADD_MANAGED_PROFILE = 11; // 0xb
1470    field public static final int STATUS_DEVICE_ADMIN_NOT_SUPPORTED = 13; // 0xd
1471    field public static final int STATUS_HAS_DEVICE_OWNER = 1; // 0x1
1472    field public static final int STATUS_HAS_PAIRED = 8; // 0x8
1473    field public static final int STATUS_HEADLESS_ONLY_SYSTEM_USER = 17; // 0x11
1474    field public static final int STATUS_HEADLESS_SYSTEM_USER_MODE_NOT_SUPPORTED = 16; // 0x10
1475    field public static final int STATUS_MANAGED_USERS_NOT_SUPPORTED = 9; // 0x9
1476    field public static final int STATUS_NONSYSTEM_USER_EXISTS = 5; // 0x5
1477    field public static final int STATUS_NOT_SYSTEM_USER = 7; // 0x7
1478    field public static final int STATUS_OK = 0; // 0x0
1479    field public static final int STATUS_PROVISIONING_NOT_ALLOWED_FOR_NON_DEVELOPER_USERS = 15; // 0xf
1480    field public static final int STATUS_SYSTEM_USER = 10; // 0xa
1481    field public static final int STATUS_UNKNOWN_ERROR = -1; // 0xffffffff
1482    field public static final int STATUS_USER_HAS_PROFILE_OWNER = 2; // 0x2
1483    field public static final int STATUS_USER_NOT_RUNNING = 3; // 0x3
1484    field public static final int STATUS_USER_SETUP_COMPLETED = 4; // 0x4
1485  }
1486
1487  public static final class DevicePolicyResources.Strings {
1488  }
1489
1490  public static final class DevicePolicyResources.Strings.DefaultAppSettings {
1491    field public static final String HOME_MISSING_WORK_PROFILE_SUPPORT_MESSAGE = "DefaultAppSettings.HOME_MISSING_WORK_PROFILE_SUPPORT_MESSAGE";
1492    field public static final String WORK_PROFILE_DEFAULT_APPS_TITLE = "DefaultAppSettings.WORK_PROFILE_DEFAULT_APPS_TITLE";
1493  }
1494
1495  public static final class DevicePolicyResources.Strings.PermissionSettings {
1496    field public static final String BACKGROUND_ACCESS_DISABLED_BY_ADMIN_MESSAGE = "PermissionSettings.BACKGROUND_ACCESS_DISABLED_BY_ADMIN_MESSAGE";
1497    field public static final String BACKGROUND_ACCESS_ENABLED_BY_ADMIN_MESSAGE = "PermissionSettings.BACKGROUND_ACCESS_ENABLED_BY_ADMIN_MESSAGE";
1498    field public static final String FOREGROUND_ACCESS_ENABLED_BY_ADMIN_MESSAGE = "PermissionSettings.FOREGROUND_ACCESS_ENABLED_BY_ADMIN_MESSAGE";
1499    field public static final String LOCATION_AUTO_GRANTED_MESSAGE = "PermissionSettings.LOCATION_AUTO_GRANTED_MESSAGE";
1500  }
1501
1502  public class DevicePolicyResourcesManager {
1503    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_MANAGEMENT_RESOURCES) public void resetDrawables(@NonNull java.util.Set<java.lang.String>);
1504    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_MANAGEMENT_RESOURCES) public void resetStrings(@NonNull java.util.Set<java.lang.String>);
1505    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_MANAGEMENT_RESOURCES) public void setDrawables(@NonNull java.util.Set<android.app.admin.DevicePolicyDrawableResource>);
1506    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_MANAGEMENT_RESOURCES) public void setStrings(@NonNull java.util.Set<android.app.admin.DevicePolicyStringResource>);
1507  }
1508
1509  public final class DevicePolicyState implements android.os.Parcelable {
1510    method public int describeContents();
1511    method @NonNull public java.util.Map<android.os.UserHandle,java.util.Map<android.app.admin.PolicyKey,android.app.admin.PolicyState<?>>> getPoliciesForAllUsers();
1512    method @NonNull public java.util.Map<android.app.admin.PolicyKey,android.app.admin.PolicyState<?>> getPoliciesForUser(@NonNull android.os.UserHandle);
1513    method public void writeToParcel(@NonNull android.os.Parcel, int);
1514    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.DevicePolicyState> CREATOR;
1515  }
1516
1517  public final class DevicePolicyStringResource implements android.os.Parcelable {
1518    ctor public DevicePolicyStringResource(@NonNull android.content.Context, @NonNull String, @StringRes int);
1519    method public int describeContents();
1520    method public int getResourceIdInCallingPackage();
1521    method @NonNull public String getStringId();
1522    method public void writeToParcel(@NonNull android.os.Parcel, int);
1523    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.DevicePolicyStringResource> CREATOR;
1524  }
1525
1526  public final class DpcAuthority extends android.app.admin.Authority {
1527    ctor public DpcAuthority();
1528    method public void writeToParcel(@NonNull android.os.Parcel, int);
1529    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.DpcAuthority> CREATOR;
1530  }
1531
1532  public final class EnforcingAdmin implements android.os.Parcelable {
1533    ctor public EnforcingAdmin(@NonNull String, @NonNull android.app.admin.Authority, @NonNull android.os.UserHandle);
1534    method public int describeContents();
1535    method @NonNull public android.app.admin.Authority getAuthority();
1536    method @NonNull public String getPackageName();
1537    method @NonNull public android.os.UserHandle getUserHandle();
1538    method public void writeToParcel(@NonNull android.os.Parcel, int);
1539    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.EnforcingAdmin> CREATOR;
1540  }
1541
1542  public final class FullyManagedDeviceProvisioningParams implements android.os.Parcelable {
1543    method public boolean canDeviceOwnerGrantSensorsPermissions();
1544    method public int describeContents();
1545    method @NonNull public android.os.PersistableBundle getAdminExtras();
1546    method @NonNull public android.content.ComponentName getDeviceAdminComponentName();
1547    method public long getLocalTime();
1548    method @Nullable public java.util.Locale getLocale();
1549    method @NonNull public String getOwnerName();
1550    method @Nullable public String getTimeZone();
1551    method public boolean isDemoDevice();
1552    method public boolean isLeaveAllSystemAppsEnabled();
1553    method public void writeToParcel(@NonNull android.os.Parcel, @Nullable int);
1554    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.FullyManagedDeviceProvisioningParams> CREATOR;
1555  }
1556
1557  public static final class FullyManagedDeviceProvisioningParams.Builder {
1558    ctor public FullyManagedDeviceProvisioningParams.Builder(@NonNull android.content.ComponentName, @NonNull String);
1559    method @NonNull public android.app.admin.FullyManagedDeviceProvisioningParams build();
1560    method @NonNull public android.app.admin.FullyManagedDeviceProvisioningParams.Builder setAdminExtras(@NonNull android.os.PersistableBundle);
1561    method @NonNull public android.app.admin.FullyManagedDeviceProvisioningParams.Builder setCanDeviceOwnerGrantSensorsPermissions(boolean);
1562    method @NonNull public android.app.admin.FullyManagedDeviceProvisioningParams.Builder setDemoDevice(boolean);
1563    method @NonNull public android.app.admin.FullyManagedDeviceProvisioningParams.Builder setLeaveAllSystemAppsEnabled(boolean);
1564    method @NonNull public android.app.admin.FullyManagedDeviceProvisioningParams.Builder setLocalTime(long);
1565    method @NonNull public android.app.admin.FullyManagedDeviceProvisioningParams.Builder setLocale(@Nullable java.util.Locale);
1566    method @NonNull public android.app.admin.FullyManagedDeviceProvisioningParams.Builder setTimeZone(@Nullable String);
1567  }
1568
1569  public final class IntentFilterPolicyKey extends android.app.admin.PolicyKey {
1570    method public int describeContents();
1571    method @NonNull public android.content.IntentFilter getIntentFilter();
1572    method public void writeToParcel(@NonNull android.os.Parcel, int);
1573    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.IntentFilterPolicyKey> CREATOR;
1574  }
1575
1576  public final class LockTaskPolicy implements android.os.Parcelable {
1577    method public int describeContents();
1578    method public int getFlags();
1579    method @NonNull public java.util.Set<java.lang.String> getPackages();
1580    method public void writeToParcel(@NonNull android.os.Parcel, int);
1581    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.LockTaskPolicy> CREATOR;
1582  }
1583
1584  public final class ManagedProfileProvisioningParams implements android.os.Parcelable {
1585    method public int describeContents();
1586    method @Nullable public android.accounts.Account getAccountToMigrate();
1587    method @NonNull public android.os.PersistableBundle getAdminExtras();
1588    method @NonNull public String getOwnerName();
1589    method @NonNull public android.content.ComponentName getProfileAdminComponentName();
1590    method @Nullable public String getProfileName();
1591    method public boolean isKeepingAccountOnMigration();
1592    method public boolean isLeaveAllSystemAppsEnabled();
1593    method public boolean isOrganizationOwnedProvisioning();
1594    method public void writeToParcel(@NonNull android.os.Parcel, @Nullable int);
1595    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.ManagedProfileProvisioningParams> CREATOR;
1596  }
1597
1598  public static final class ManagedProfileProvisioningParams.Builder {
1599    ctor public ManagedProfileProvisioningParams.Builder(@NonNull android.content.ComponentName, @NonNull String);
1600    method @NonNull public android.app.admin.ManagedProfileProvisioningParams build();
1601    method @NonNull public android.app.admin.ManagedProfileProvisioningParams.Builder setAccountToMigrate(@Nullable android.accounts.Account);
1602    method @NonNull public android.app.admin.ManagedProfileProvisioningParams.Builder setAdminExtras(@NonNull android.os.PersistableBundle);
1603    method @NonNull public android.app.admin.ManagedProfileProvisioningParams.Builder setKeepingAccountOnMigration(boolean);
1604    method @NonNull public android.app.admin.ManagedProfileProvisioningParams.Builder setLeaveAllSystemAppsEnabled(boolean);
1605    method @NonNull public android.app.admin.ManagedProfileProvisioningParams.Builder setOrganizationOwnedProvisioning(boolean);
1606    method @NonNull public android.app.admin.ManagedProfileProvisioningParams.Builder setProfileName(@Nullable String);
1607  }
1608
1609  public final class NoArgsPolicyKey extends android.app.admin.PolicyKey {
1610    method public int describeContents();
1611    method public void writeToParcel(@NonNull android.os.Parcel, int);
1612    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.NoArgsPolicyKey> CREATOR;
1613  }
1614
1615  public final class PackagePermissionPolicyKey extends android.app.admin.PolicyKey {
1616    method public int describeContents();
1617    method @NonNull public String getPackageName();
1618    method @NonNull public String getPermissionName();
1619    method public void writeToParcel(@NonNull android.os.Parcel, int);
1620    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.PackagePermissionPolicyKey> CREATOR;
1621  }
1622
1623  public final class PackagePolicyKey extends android.app.admin.PolicyKey {
1624    method public int describeContents();
1625    method @NonNull public String getPackageName();
1626    method public void writeToParcel(@NonNull android.os.Parcel, int);
1627    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.PackagePolicyKey> CREATOR;
1628  }
1629
1630  public abstract class PolicyKey implements android.os.Parcelable {
1631    method @NonNull public String getIdentifier();
1632  }
1633
1634  public final class PolicyState<V> implements android.os.Parcelable {
1635    method public int describeContents();
1636    method @Nullable public V getCurrentResolvedPolicy();
1637    method @NonNull public java.util.LinkedHashMap<android.app.admin.EnforcingAdmin,V> getPoliciesSetByAdmins();
1638    method public void writeToParcel(@NonNull android.os.Parcel, int);
1639    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.PolicyState<?>> CREATOR;
1640  }
1641
1642  public class ProvisioningException extends android.util.AndroidException {
1643    ctor public ProvisioningException(@NonNull Exception, int);
1644    ctor public ProvisioningException(@NonNull Exception, int, @Nullable String);
1645    method public int getProvisioningError();
1646    field public static final int ERROR_ADMIN_PACKAGE_INSTALLATION_FAILED = 3; // 0x3
1647    field public static final int ERROR_PRE_CONDITION_FAILED = 1; // 0x1
1648    field public static final int ERROR_PROFILE_CREATION_FAILED = 2; // 0x2
1649    field public static final int ERROR_REMOVE_NON_REQUIRED_APPS_FAILED = 6; // 0x6
1650    field public static final int ERROR_SETTING_PROFILE_OWNER_FAILED = 4; // 0x4
1651    field public static final int ERROR_SET_DEVICE_OWNER_FAILED = 7; // 0x7
1652    field public static final int ERROR_STARTING_PROFILE_FAILED = 5; // 0x5
1653    field public static final int ERROR_UNKNOWN = 0; // 0x0
1654  }
1655
1656  public final class RoleAuthority extends android.app.admin.Authority {
1657    ctor public RoleAuthority(@NonNull java.util.Set<java.lang.String>);
1658    method @NonNull public java.util.Set<java.lang.String> getRoles();
1659    method public void writeToParcel(@NonNull android.os.Parcel, int);
1660    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.RoleAuthority> CREATOR;
1661  }
1662
1663  public class SecurityLog {
1664    method @RequiresPermission(android.Manifest.permission.WRITE_SECURITY_LOG) public static int writeEvent(int, @NonNull java.lang.Object...);
1665  }
1666
1667  public final class SystemUpdatePolicy implements android.os.Parcelable {
1668    method public android.app.admin.SystemUpdatePolicy.InstallationOption getInstallationOptionAt(long);
1669    field public static final int TYPE_PAUSE = 4; // 0x4
1670  }
1671
1672  public static class SystemUpdatePolicy.InstallationOption {
1673    method public long getEffectiveTime();
1674    method public int getType();
1675  }
1676
1677  public final class UnknownAuthority extends android.app.admin.Authority {
1678    ctor public UnknownAuthority();
1679    method public void writeToParcel(@NonNull android.os.Parcel, int);
1680    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.UnknownAuthority> CREATOR;
1681  }
1682
1683  public final class UserRestrictionPolicyKey extends android.app.admin.PolicyKey {
1684    method public int describeContents();
1685    method @NonNull public String getRestriction();
1686    method public void writeToParcel(@NonNull android.os.Parcel, int);
1687    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.UserRestrictionPolicyKey> CREATOR;
1688  }
1689
1690}
1691
1692package android.app.ambientcontext {
1693
1694  public final class AmbientContextEvent implements android.os.Parcelable {
1695    method public int describeContents();
1696    method public int getConfidenceLevel();
1697    method public int getDensityLevel();
1698    method @NonNull public java.time.Instant getEndTime();
1699    method public int getEventType();
1700    method @NonNull public java.time.Instant getStartTime();
1701    method @NonNull public android.os.PersistableBundle getVendorData();
1702    method public void writeToParcel(@NonNull android.os.Parcel, int);
1703    field @NonNull public static final android.os.Parcelable.Creator<android.app.ambientcontext.AmbientContextEvent> CREATOR;
1704    field public static final int EVENT_BACK_DOUBLE_TAP = 3; // 0x3
1705    field public static final int EVENT_COUGH = 1; // 0x1
1706    field public static final int EVENT_SNORE = 2; // 0x2
1707    field public static final int EVENT_UNKNOWN = 0; // 0x0
1708    field public static final int EVENT_VENDOR_WEARABLE_START = 100000; // 0x186a0
1709    field public static final String KEY_VENDOR_WEARABLE_EVENT_NAME = "wearable_event_name";
1710    field public static final int LEVEL_HIGH = 5; // 0x5
1711    field public static final int LEVEL_LOW = 1; // 0x1
1712    field public static final int LEVEL_MEDIUM = 3; // 0x3
1713    field public static final int LEVEL_MEDIUM_HIGH = 4; // 0x4
1714    field public static final int LEVEL_MEDIUM_LOW = 2; // 0x2
1715    field public static final int LEVEL_UNKNOWN = 0; // 0x0
1716  }
1717
1718  public static final class AmbientContextEvent.Builder {
1719    ctor public AmbientContextEvent.Builder();
1720    method @NonNull public android.app.ambientcontext.AmbientContextEvent build();
1721    method @NonNull public android.app.ambientcontext.AmbientContextEvent.Builder setConfidenceLevel(int);
1722    method @NonNull public android.app.ambientcontext.AmbientContextEvent.Builder setDensityLevel(int);
1723    method @NonNull public android.app.ambientcontext.AmbientContextEvent.Builder setEndTime(@NonNull java.time.Instant);
1724    method @NonNull public android.app.ambientcontext.AmbientContextEvent.Builder setEventType(int);
1725    method @NonNull public android.app.ambientcontext.AmbientContextEvent.Builder setStartTime(@NonNull java.time.Instant);
1726    method @NonNull public android.app.ambientcontext.AmbientContextEvent.Builder setVendorData(@NonNull android.os.PersistableBundle);
1727  }
1728
1729  public final class AmbientContextEventRequest implements android.os.Parcelable {
1730    method public int describeContents();
1731    method @NonNull public java.util.Set<java.lang.Integer> getEventTypes();
1732    method @NonNull public android.os.PersistableBundle getOptions();
1733    method public void writeToParcel(@NonNull android.os.Parcel, int);
1734    field @NonNull public static final android.os.Parcelable.Creator<android.app.ambientcontext.AmbientContextEventRequest> CREATOR;
1735  }
1736
1737  public static final class AmbientContextEventRequest.Builder {
1738    ctor public AmbientContextEventRequest.Builder();
1739    method @NonNull public android.app.ambientcontext.AmbientContextEventRequest.Builder addEventType(int);
1740    method @NonNull public android.app.ambientcontext.AmbientContextEventRequest build();
1741    method @NonNull public android.app.ambientcontext.AmbientContextEventRequest.Builder setOptions(@NonNull android.os.PersistableBundle);
1742  }
1743
1744  public final class AmbientContextManager {
1745    method @NonNull public static java.util.List<android.app.ambientcontext.AmbientContextEvent> getEventsFromIntent(@NonNull android.content.Intent);
1746    method @RequiresPermission(android.Manifest.permission.ACCESS_AMBIENT_CONTEXT_EVENT) public void queryAmbientContextServiceStatus(@NonNull java.util.Set<java.lang.Integer>, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
1747    method @RequiresPermission(android.Manifest.permission.ACCESS_AMBIENT_CONTEXT_EVENT) public void registerObserver(@NonNull android.app.ambientcontext.AmbientContextEventRequest, @NonNull android.app.PendingIntent, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
1748    method @RequiresPermission(android.Manifest.permission.ACCESS_AMBIENT_CONTEXT_EVENT) public void startConsentActivity(@NonNull java.util.Set<java.lang.Integer>);
1749    method @RequiresPermission(android.Manifest.permission.ACCESS_AMBIENT_CONTEXT_EVENT) public void unregisterObserver();
1750    field public static final String EXTRA_AMBIENT_CONTEXT_EVENTS = "android.app.ambientcontext.extra.AMBIENT_CONTEXT_EVENTS";
1751    field public static final int STATUS_ACCESS_DENIED = 5; // 0x5
1752    field public static final int STATUS_MICROPHONE_DISABLED = 4; // 0x4
1753    field public static final int STATUS_NOT_SUPPORTED = 2; // 0x2
1754    field public static final int STATUS_SERVICE_UNAVAILABLE = 3; // 0x3
1755    field public static final int STATUS_SUCCESS = 1; // 0x1
1756    field public static final int STATUS_UNKNOWN = 0; // 0x0
1757  }
1758
1759}
1760
1761package android.app.assist {
1762
1763  public final class ActivityId implements android.os.Parcelable {
1764    method public int describeContents();
1765    method public void writeToParcel(@NonNull android.os.Parcel, int);
1766    field @NonNull public static final android.os.Parcelable.Creator<android.app.assist.ActivityId> CREATOR;
1767  }
1768
1769  public static class AssistStructure.ViewNode {
1770    ctor public AssistStructure.ViewNode();
1771  }
1772
1773}
1774
1775package android.app.backup {
1776
1777  public class BackupDataInput {
1778    ctor public BackupDataInput(java.io.FileDescriptor);
1779  }
1780
1781  public class BackupDataOutput {
1782    ctor public BackupDataOutput(java.io.FileDescriptor);
1783    ctor public BackupDataOutput(java.io.FileDescriptor, long);
1784  }
1785
1786  public class BackupManager {
1787    method @RequiresPermission(android.Manifest.permission.BACKUP) public void backupNow();
1788    method @RequiresPermission(android.Manifest.permission.BACKUP) public android.app.backup.RestoreSession beginRestoreSession();
1789    method @RequiresPermission(android.Manifest.permission.BACKUP) public void cancelBackups();
1790    method @RequiresPermission(android.Manifest.permission.BACKUP) public void excludeKeysFromRestore(@NonNull String, @NonNull java.util.List<java.lang.String>);
1791    method @RequiresPermission(android.Manifest.permission.BACKUP) public long getAvailableRestoreToken(String);
1792    method @NonNull public android.app.backup.BackupRestoreEventLogger getBackupRestoreEventLogger(@NonNull android.app.backup.BackupAgent);
1793    method @RequiresPermission(android.Manifest.permission.BACKUP) public android.content.Intent getConfigurationIntent(String);
1794    method @RequiresPermission(android.Manifest.permission.BACKUP) public String getCurrentTransport();
1795    method @Nullable @RequiresPermission(android.Manifest.permission.BACKUP) public android.content.ComponentName getCurrentTransportComponent();
1796    method @RequiresPermission(android.Manifest.permission.BACKUP) public android.content.Intent getDataManagementIntent(String);
1797    method @Nullable @RequiresPermission(android.Manifest.permission.BACKUP) public CharSequence getDataManagementIntentLabel(@NonNull String);
1798    method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.BACKUP) public String getDataManagementLabel(@NonNull String);
1799    method @NonNull public android.app.backup.BackupRestoreEventLogger getDelayedRestoreLogger();
1800    method @RequiresPermission(android.Manifest.permission.BACKUP) public String getDestinationString(String);
1801    method @RequiresPermission(android.Manifest.permission.BACKUP) public boolean isAppEligibleForBackup(String);
1802    method @RequiresPermission(android.Manifest.permission.BACKUP) public boolean isBackupEnabled();
1803    method @RequiresPermission(android.Manifest.permission.BACKUP) public boolean isBackupServiceActive(android.os.UserHandle);
1804    method @RequiresPermission(android.Manifest.permission.BACKUP) public String[] listAllTransports();
1805    method public void reportDelayedRestoreResult(@NonNull android.app.backup.BackupRestoreEventLogger);
1806    method @RequiresPermission(android.Manifest.permission.BACKUP) public int requestBackup(String[], android.app.backup.BackupObserver);
1807    method @RequiresPermission(android.Manifest.permission.BACKUP) public int requestBackup(String[], android.app.backup.BackupObserver, android.app.backup.BackupManagerMonitor, int);
1808    method @Deprecated public int requestRestore(android.app.backup.RestoreObserver, android.app.backup.BackupManagerMonitor);
1809    method @Deprecated @RequiresPermission(android.Manifest.permission.BACKUP) public String selectBackupTransport(String);
1810    method @RequiresPermission(android.Manifest.permission.BACKUP) public void selectBackupTransport(android.content.ComponentName, android.app.backup.SelectBackupTransportCallback);
1811    method @RequiresPermission(android.Manifest.permission.BACKUP) public void setAncestralSerialNumber(long);
1812    method @RequiresPermission(android.Manifest.permission.BACKUP) public void setAutoRestore(boolean);
1813    method @RequiresPermission(android.Manifest.permission.BACKUP) public void setBackupEnabled(boolean);
1814    method @RequiresPermission(allOf={android.Manifest.permission.BACKUP, android.Manifest.permission.INTERACT_ACROSS_USERS_FULL}, conditional=true) public void setFrameworkSchedulingEnabled(boolean);
1815    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);
1816    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);
1817    field public static final int ERROR_AGENT_FAILURE = -1003; // 0xfffffc15
1818    field public static final int ERROR_BACKUP_CANCELLED = -2003; // 0xfffff82d
1819    field public static final int ERROR_BACKUP_NOT_ALLOWED = -2001; // 0xfffff82f
1820    field public static final int ERROR_PACKAGE_NOT_FOUND = -2002; // 0xfffff82e
1821    field public static final int ERROR_TRANSPORT_ABORTED = -1000; // 0xfffffc18
1822    field public static final int ERROR_TRANSPORT_INVALID = -2; // 0xfffffffe
1823    field public static final int ERROR_TRANSPORT_PACKAGE_REJECTED = -1002; // 0xfffffc16
1824    field public static final int ERROR_TRANSPORT_QUOTA_EXCEEDED = -1005; // 0xfffffc13
1825    field public static final int ERROR_TRANSPORT_UNAVAILABLE = -1; // 0xffffffff
1826    field public static final int FLAG_NON_INCREMENTAL_BACKUP = 1; // 0x1
1827    field public static final String PACKAGE_MANAGER_SENTINEL = "@pm@";
1828    field public static final int SUCCESS = 0; // 0x0
1829  }
1830
1831  public class BackupManagerMonitor {
1832    ctor public BackupManagerMonitor();
1833    method public void onEvent(android.os.Bundle);
1834    field public static final String EXTRA_LOG_AGENT_LOGGING_RESULTS = "android.app.backup.extra.LOG_AGENT_LOGGING_RESULTS";
1835    field public static final String EXTRA_LOG_CANCEL_ALL = "android.app.backup.extra.LOG_CANCEL_ALL";
1836    field public static final String EXTRA_LOG_EVENT_CATEGORY = "android.app.backup.extra.LOG_EVENT_CATEGORY";
1837    field public static final String EXTRA_LOG_EVENT_ID = "android.app.backup.extra.LOG_EVENT_ID";
1838    field public static final String EXTRA_LOG_EVENT_PACKAGE_LONG_VERSION = "android.app.backup.extra.LOG_EVENT_PACKAGE_FULL_VERSION";
1839    field public static final String EXTRA_LOG_EVENT_PACKAGE_NAME = "android.app.backup.extra.LOG_EVENT_PACKAGE_NAME";
1840    field @Deprecated public static final String EXTRA_LOG_EVENT_PACKAGE_VERSION = "android.app.backup.extra.LOG_EVENT_PACKAGE_VERSION";
1841    field public static final String EXTRA_LOG_EXCEPTION_FULL_BACKUP = "android.app.backup.extra.LOG_EXCEPTION_FULL_BACKUP";
1842    field public static final String EXTRA_LOG_ILLEGAL_KEY = "android.app.backup.extra.LOG_ILLEGAL_KEY";
1843    field public static final String EXTRA_LOG_MANIFEST_PACKAGE_NAME = "android.app.backup.extra.LOG_MANIFEST_PACKAGE_NAME";
1844    field public static final String EXTRA_LOG_OLD_VERSION = "android.app.backup.extra.LOG_OLD_VERSION";
1845    field public static final String EXTRA_LOG_POLICY_ALLOW_APKS = "android.app.backup.extra.LOG_POLICY_ALLOW_APKS";
1846    field public static final String EXTRA_LOG_PREFLIGHT_ERROR = "android.app.backup.extra.LOG_PREFLIGHT_ERROR";
1847    field public static final String EXTRA_LOG_RESTORE_ANYWAY = "android.app.backup.extra.LOG_RESTORE_ANYWAY";
1848    field public static final String EXTRA_LOG_RESTORE_VERSION = "android.app.backup.extra.LOG_RESTORE_VERSION";
1849    field public static final String EXTRA_LOG_WIDGET_PACKAGE_NAME = "android.app.backup.extra.LOG_WIDGET_PACKAGE_NAME";
1850    field public static final int LOG_EVENT_CATEGORY_AGENT = 2; // 0x2
1851    field public static final int LOG_EVENT_CATEGORY_BACKUP_MANAGER_POLICY = 3; // 0x3
1852    field public static final int LOG_EVENT_CATEGORY_TRANSPORT = 1; // 0x1
1853    field public static final int LOG_EVENT_ID_AGENT_LOGGING_RESULTS = 52; // 0x34
1854    field public static final int LOG_EVENT_ID_APK_NOT_INSTALLED = 40; // 0x28
1855    field public static final int LOG_EVENT_ID_APP_HAS_NO_AGENT = 28; // 0x1c
1856    field public static final int LOG_EVENT_ID_BACKUP_DISABLED = 13; // 0xd
1857    field public static final int LOG_EVENT_ID_CANNOT_RESTORE_WITHOUT_APK = 41; // 0x29
1858    field public static final int LOG_EVENT_ID_CANT_FIND_AGENT = 30; // 0x1e
1859    field public static final int LOG_EVENT_ID_CORRUPT_MANIFEST = 46; // 0x2e
1860    field public static final int LOG_EVENT_ID_DEVICE_NOT_PROVISIONED = 14; // 0xe
1861    field public static final int LOG_EVENT_ID_ERROR_PREFLIGHT = 16; // 0x10
1862    field public static final int LOG_EVENT_ID_EXCEPTION_FULL_BACKUP = 19; // 0x13
1863    field public static final int LOG_EVENT_ID_EXPECTED_DIFFERENT_PACKAGE = 43; // 0x2b
1864    field public static final int LOG_EVENT_ID_FULL_BACKUP_CANCEL = 4; // 0x4
1865    field public static final int LOG_EVENT_ID_FULL_RESTORE_ALLOW_BACKUP_FALSE = 39; // 0x27
1866    field public static final int LOG_EVENT_ID_FULL_RESTORE_SIGNATURE_MISMATCH = 37; // 0x25
1867    field public static final int LOG_EVENT_ID_FULL_RESTORE_TIMEOUT = 45; // 0x2d
1868    field public static final int LOG_EVENT_ID_ILLEGAL_KEY = 5; // 0x5
1869    field public static final int LOG_EVENT_ID_KEY_VALUE_BACKUP_CANCEL = 21; // 0x15
1870    field public static final int LOG_EVENT_ID_KEY_VALUE_RESTORE_TIMEOUT = 31; // 0x1f
1871    field public static final int LOG_EVENT_ID_LOST_TRANSPORT = 25; // 0x19
1872    field public static final int LOG_EVENT_ID_MISSING_SIGNATURE = 42; // 0x2a
1873    field public static final int LOG_EVENT_ID_NO_DATA_TO_SEND = 7; // 0x7
1874    field public static final int LOG_EVENT_ID_NO_PACKAGES = 49; // 0x31
1875    field public static final int LOG_EVENT_ID_NO_PM_METADATA_RECEIVED = 23; // 0x17
1876    field public static final int LOG_EVENT_ID_NO_RESTORE_METADATA_AVAILABLE = 22; // 0x16
1877    field public static final int LOG_EVENT_ID_PACKAGE_INELIGIBLE = 9; // 0x9
1878    field public static final int LOG_EVENT_ID_PACKAGE_KEY_VALUE_PARTICIPANT = 10; // 0xa
1879    field public static final int LOG_EVENT_ID_PACKAGE_NOT_FOUND = 12; // 0xc
1880    field public static final int LOG_EVENT_ID_PACKAGE_NOT_PRESENT = 26; // 0x1a
1881    field public static final int LOG_EVENT_ID_PACKAGE_STOPPED = 11; // 0xb
1882    field public static final int LOG_EVENT_ID_PACKAGE_TRANSPORT_NOT_PRESENT = 15; // 0xf
1883    field public static final int LOG_EVENT_ID_PM_AGENT_HAS_NO_METADATA = 24; // 0x18
1884    field public static final int LOG_EVENT_ID_QUOTA_HIT_PREFLIGHT = 18; // 0x12
1885    field public static final int LOG_EVENT_ID_RESTORE_ANY_VERSION = 34; // 0x22
1886    field public static final int LOG_EVENT_ID_RESTORE_VERSION_HIGHER = 27; // 0x1b
1887    field public static final int LOG_EVENT_ID_SIGNATURE_MISMATCH = 29; // 0x1d
1888    field public static final int LOG_EVENT_ID_SYSTEM_APP_NO_AGENT = 38; // 0x26
1889    field public static final int LOG_EVENT_ID_TRANSPORT_IS_NULL = 50; // 0x32
1890    field public static final int LOG_EVENT_ID_TRANSPORT_NON_INCREMENTAL_BACKUP_REQUIRED = 51; // 0x33
1891    field public static final int LOG_EVENT_ID_UNKNOWN_VERSION = 44; // 0x2c
1892    field public static final int LOG_EVENT_ID_VERSIONS_MATCH = 35; // 0x23
1893    field public static final int LOG_EVENT_ID_VERSION_OF_BACKUP_OLDER = 36; // 0x24
1894    field public static final int LOG_EVENT_ID_WIDGET_METADATA_MISMATCH = 47; // 0x2f
1895    field public static final int LOG_EVENT_ID_WIDGET_UNKNOWN_VERSION = 48; // 0x30
1896  }
1897
1898  public abstract class BackupObserver {
1899    ctor public BackupObserver();
1900    method public void backupFinished(int);
1901    method public void onResult(String, int);
1902    method public void onUpdate(String, android.app.backup.BackupProgress);
1903  }
1904
1905  public class BackupProgress implements android.os.Parcelable {
1906    ctor public BackupProgress(long, long);
1907    method public int describeContents();
1908    method public void writeToParcel(android.os.Parcel, int);
1909    field @NonNull public static final android.os.Parcelable.Creator<android.app.backup.BackupProgress> CREATOR;
1910    field public final long bytesExpected;
1911    field public final long bytesTransferred;
1912  }
1913
1914  public final class BackupRestoreEventLogger {
1915    method public void logBackupMetadata(@NonNull String, @NonNull String);
1916    method public void logItemsBackedUp(@NonNull String, int);
1917    method public void logItemsBackupFailed(@NonNull String, int, @Nullable String);
1918    method public void logItemsRestoreFailed(@NonNull String, int, @Nullable String);
1919    method public void logItemsRestored(@NonNull String, int);
1920    method public void logRestoreMetadata(@NonNull String, @NonNull String);
1921  }
1922
1923  public static final class BackupRestoreEventLogger.DataTypeResult implements android.os.Parcelable {
1924    ctor public BackupRestoreEventLogger.DataTypeResult(@NonNull String);
1925    method public int describeContents();
1926    method @NonNull public String getDataType();
1927    method @NonNull public java.util.Map<java.lang.String,java.lang.Integer> getErrors();
1928    method public int getFailCount();
1929    method @Nullable public byte[] getMetadataHash();
1930    method public int getSuccessCount();
1931    method public void writeToParcel(@NonNull android.os.Parcel, int);
1932    field @NonNull public static final android.os.Parcelable.Creator<android.app.backup.BackupRestoreEventLogger.DataTypeResult> CREATOR;
1933  }
1934
1935  public class BackupTransport {
1936    ctor public BackupTransport();
1937    method public int abortFullRestore();
1938    method public void cancelFullBackup();
1939    method public int checkFullBackupSize(long);
1940    method public int clearBackupData(android.content.pm.PackageInfo);
1941    method public android.content.Intent configurationIntent();
1942    method public String currentDestinationString();
1943    method public android.content.Intent dataManagementIntent();
1944    method @Nullable public CharSequence dataManagementIntentLabel();
1945    method @Deprecated @Nullable public String dataManagementLabel();
1946    method public int finishBackup();
1947    method public void finishRestore();
1948    method public android.app.backup.RestoreSet[] getAvailableRestoreSets();
1949    method @Nullable public android.app.backup.BackupManagerMonitor getBackupManagerMonitor();
1950    method public long getBackupQuota(String, boolean);
1951    method public android.os.IBinder getBinder();
1952    method public long getCurrentRestoreSet();
1953    method public int getNextFullRestoreDataChunk(android.os.ParcelFileDescriptor);
1954    method @FlaggedApi("com.android.server.backup.enable_restricted_mode_changes") @NonNull public java.util.List<java.lang.String> getPackagesThatShouldNotUseRestrictedMode(@NonNull java.util.List<java.lang.String>, int);
1955    method public int getRestoreData(android.os.ParcelFileDescriptor);
1956    method public int getTransportFlags();
1957    method public int initializeDevice();
1958    method public boolean isAppEligibleForBackup(android.content.pm.PackageInfo, boolean);
1959    method public String name();
1960    method public android.app.backup.RestoreDescription nextRestorePackage();
1961    method public int performBackup(android.content.pm.PackageInfo, android.os.ParcelFileDescriptor, int);
1962    method public int performBackup(android.content.pm.PackageInfo, android.os.ParcelFileDescriptor);
1963    method public int performFullBackup(android.content.pm.PackageInfo, android.os.ParcelFileDescriptor, int);
1964    method public int performFullBackup(android.content.pm.PackageInfo, android.os.ParcelFileDescriptor);
1965    method public long requestBackupTime();
1966    method public long requestFullBackupTime();
1967    method public int sendBackupData(int);
1968    method public int startRestore(long, android.content.pm.PackageInfo[]);
1969    method public String transportDirName();
1970    field public static final int AGENT_ERROR = -1003; // 0xfffffc15
1971    field public static final int AGENT_UNKNOWN = -1004; // 0xfffffc14
1972    field public static final String EXTRA_TRANSPORT_REGISTRATION = "android.app.backup.extra.TRANSPORT_REGISTRATION";
1973    field public static final int FLAG_DATA_NOT_CHANGED = 8; // 0x8
1974    field public static final int FLAG_INCREMENTAL = 2; // 0x2
1975    field public static final int FLAG_NON_INCREMENTAL = 4; // 0x4
1976    field public static final int FLAG_USER_INITIATED = 1; // 0x1
1977    field public static final int NO_MORE_DATA = -1; // 0xffffffff
1978    field public static final int TRANSPORT_ERROR = -1000; // 0xfffffc18
1979    field public static final int TRANSPORT_NON_INCREMENTAL_BACKUP_REQUIRED = -1006; // 0xfffffc12
1980    field public static final int TRANSPORT_NOT_INITIALIZED = -1001; // 0xfffffc17
1981    field public static final int TRANSPORT_OK = 0; // 0x0
1982    field public static final int TRANSPORT_PACKAGE_REJECTED = -1002; // 0xfffffc16
1983    field public static final int TRANSPORT_QUOTA_EXCEEDED = -1005; // 0xfffffc13
1984  }
1985
1986  public class RestoreDescription implements android.os.Parcelable {
1987    ctor public RestoreDescription(String, int);
1988    method public int describeContents();
1989    method public int getDataType();
1990    method public String getPackageName();
1991    method public void writeToParcel(android.os.Parcel, int);
1992    field @NonNull public static final android.os.Parcelable.Creator<android.app.backup.RestoreDescription> CREATOR;
1993    field public static final android.app.backup.RestoreDescription NO_MORE_PACKAGES;
1994    field public static final int TYPE_FULL_STREAM = 2; // 0x2
1995    field public static final int TYPE_KEY_VALUE = 1; // 0x1
1996  }
1997
1998  public abstract class RestoreObserver {
1999    method public void restoreSetsAvailable(android.app.backup.RestoreSet[]);
2000  }
2001
2002  public class RestoreSession {
2003    method public void endRestoreSession();
2004    method public int getAvailableRestoreSets(android.app.backup.RestoreObserver, android.app.backup.BackupManagerMonitor);
2005    method public int getAvailableRestoreSets(android.app.backup.RestoreObserver);
2006    method public int restoreAll(long, android.app.backup.RestoreObserver, android.app.backup.BackupManagerMonitor);
2007    method public int restoreAll(long, android.app.backup.RestoreObserver);
2008    method public int restorePackage(String, android.app.backup.RestoreObserver, android.app.backup.BackupManagerMonitor);
2009    method public int restorePackage(String, android.app.backup.RestoreObserver);
2010    method public int restorePackages(long, @Nullable android.app.backup.RestoreObserver, @NonNull java.util.Set<java.lang.String>, @Nullable android.app.backup.BackupManagerMonitor);
2011    method public int restorePackages(long, @Nullable android.app.backup.RestoreObserver, @NonNull java.util.Set<java.lang.String>);
2012  }
2013
2014  public class RestoreSet implements android.os.Parcelable {
2015    ctor public RestoreSet();
2016    ctor public RestoreSet(@Nullable String, @Nullable String, long);
2017    ctor public RestoreSet(@Nullable String, @Nullable String, long, int);
2018    method public int describeContents();
2019    method public void writeToParcel(android.os.Parcel, int);
2020    field @NonNull public static final android.os.Parcelable.Creator<android.app.backup.RestoreSet> CREATOR;
2021    field public final int backupTransportFlags;
2022    field @Nullable public String device;
2023    field @Nullable public String name;
2024    field public long token;
2025  }
2026
2027  public abstract class SelectBackupTransportCallback {
2028    ctor public SelectBackupTransportCallback();
2029    method public void onFailure(int);
2030    method public void onSuccess(String);
2031  }
2032
2033}
2034
2035package android.app.cloudsearch {
2036
2037  public class CloudSearchManager {
2038    method @RequiresPermission(android.Manifest.permission.MANAGE_CLOUDSEARCH) public void search(@NonNull android.app.cloudsearch.SearchRequest, @NonNull java.util.concurrent.Executor, @NonNull android.app.cloudsearch.CloudSearchManager.CallBack);
2039  }
2040
2041  public static interface CloudSearchManager.CallBack {
2042    method public void onSearchFailed(@NonNull android.app.cloudsearch.SearchRequest, @NonNull android.app.cloudsearch.SearchResponse);
2043    method public void onSearchSucceeded(@NonNull android.app.cloudsearch.SearchRequest, @NonNull android.app.cloudsearch.SearchResponse);
2044  }
2045
2046  public final class SearchRequest implements android.os.Parcelable {
2047    method public int describeContents();
2048    method @NonNull public String getCallerPackageName();
2049    method public float getMaxLatencyMillis();
2050    method @NonNull public String getQuery();
2051    method @NonNull public String getRequestId();
2052    method public int getResultNumber();
2053    method public int getResultOffset();
2054    method @NonNull public android.os.Bundle getSearchConstraints();
2055    method public void writeToParcel(@NonNull android.os.Parcel, int);
2056    field public static final String CONSTRAINT_IS_PRESUBMIT_SUGGESTION = "android.app.cloudsearch.IS_PRESUBMIT_SUGGESTION";
2057    field public static final String CONSTRAINT_SEARCH_PROVIDER_FILTER = "android.app.cloudsearch.SEARCH_PROVIDER_FILTER";
2058    field @NonNull public static final android.os.Parcelable.Creator<android.app.cloudsearch.SearchRequest> CREATOR;
2059  }
2060
2061  public static final class SearchRequest.Builder {
2062    ctor public SearchRequest.Builder(@NonNull String);
2063    method @NonNull public android.app.cloudsearch.SearchRequest build();
2064    method @NonNull public android.app.cloudsearch.SearchRequest.Builder setMaxLatencyMillis(float);
2065    method @NonNull public android.app.cloudsearch.SearchRequest.Builder setQuery(@NonNull String);
2066    method @NonNull public android.app.cloudsearch.SearchRequest.Builder setResultNumber(int);
2067    method @NonNull public android.app.cloudsearch.SearchRequest.Builder setResultOffset(int);
2068    method @NonNull public android.app.cloudsearch.SearchRequest.Builder setSearchConstraints(@Nullable android.os.Bundle);
2069  }
2070
2071  public final class SearchResponse implements android.os.Parcelable {
2072    method public int describeContents();
2073    method @NonNull public java.util.List<android.app.cloudsearch.SearchResult> getSearchResults();
2074    method @NonNull public String getSource();
2075    method public int getStatusCode();
2076    method public void writeToParcel(@NonNull android.os.Parcel, int);
2077    field @NonNull public static final android.os.Parcelable.Creator<android.app.cloudsearch.SearchResponse> CREATOR;
2078    field public static final int SEARCH_STATUS_NO_INTERNET = 2; // 0x2
2079    field public static final int SEARCH_STATUS_OK = 0; // 0x0
2080    field public static final int SEARCH_STATUS_TIME_OUT = 1; // 0x1
2081    field public static final int SEARCH_STATUS_UNKNOWN = -1; // 0xffffffff
2082  }
2083
2084  public static final class SearchResponse.Builder {
2085    ctor public SearchResponse.Builder(int);
2086    method @NonNull public android.app.cloudsearch.SearchResponse build();
2087    method @NonNull public android.app.cloudsearch.SearchResponse.Builder setSearchResults(@NonNull java.util.List<android.app.cloudsearch.SearchResult>);
2088    method @NonNull public android.app.cloudsearch.SearchResponse.Builder setStatusCode(int);
2089  }
2090
2091  public final class SearchResult implements android.os.Parcelable {
2092    method public int describeContents();
2093    method @NonNull public android.os.Bundle getExtraInfos();
2094    method public float getScore();
2095    method @NonNull public String getSnippet();
2096    method @NonNull public String getTitle();
2097    method public void writeToParcel(@NonNull android.os.Parcel, int);
2098    field @NonNull public static final android.os.Parcelable.Creator<android.app.cloudsearch.SearchResult> CREATOR;
2099    field public static final String EXTRAINFO_ACTION_APP_CARD = "android.app.cloudsearch.ACTION_APP_CARD";
2100    field public static final String EXTRAINFO_ACTION_BUTTON_IMAGE_PREREGISTERING = "android.app.cloudsearch.ACTION_BUTTON_IMAGE";
2101    field public static final String EXTRAINFO_ACTION_BUTTON_TEXT_PREREGISTERING = "android.app.cloudsearch.ACTION_BUTTON_TEXT";
2102    field public static final String EXTRAINFO_ACTION_INSTALL_BUTTON = "android.app.cloudsearch.ACTION_INSTALL_BUTTON";
2103    field public static final String EXTRAINFO_APP_BADGES = "android.app.cloudsearch.APP_BADGES";
2104    field public static final String EXTRAINFO_APP_CONTAINS_ADS_DISCLAIMER = "android.app.cloudsearch.APP_CONTAINS_ADS_DISCLAIMER";
2105    field public static final String EXTRAINFO_APP_CONTAINS_IAP_DISCLAIMER = "android.app.cloudsearch.APP_CONTAINS_IAP_DISCLAIMER";
2106    field public static final String EXTRAINFO_APP_DEVELOPER_NAME = "android.app.cloudsearch.APP_DEVELOPER_NAME";
2107    field public static final String EXTRAINFO_APP_DOMAIN_URL = "android.app.cloudsearch.APP_DOMAIN_URL";
2108    field public static final String EXTRAINFO_APP_IARC = "android.app.cloudsearch.APP_IARC";
2109    field public static final String EXTRAINFO_APP_ICON = "android.app.cloudsearch.APP_ICON";
2110    field public static final String EXTRAINFO_APP_INSTALL_COUNT = "android.app.cloudsearch.APP_INSTALL_COUNT";
2111    field public static final String EXTRAINFO_APP_PACKAGE_NAME = "android.app.cloudsearch.APP_PACKAGE_NAME";
2112    field public static final String EXTRAINFO_APP_REVIEW_COUNT = "android.app.cloudsearch.APP_REVIEW_COUNT";
2113    field public static final String EXTRAINFO_APP_SIZE_BYTES = "android.app.cloudsearch.APP_SIZE_BYTES";
2114    field public static final String EXTRAINFO_APP_STAR_RATING = "android.app.cloudsearch.APP_STAR_RATING";
2115    field public static final String EXTRAINFO_LONG_DESCRIPTION = "android.app.cloudsearch.LONG_DESCRIPTION";
2116    field public static final String EXTRAINFO_SCREENSHOTS = "android.app.cloudsearch.SCREENSHOTS";
2117    field public static final String EXTRAINFO_SHORT_DESCRIPTION = "android.app.cloudsearch.SHORT_DESCRIPTION";
2118    field public static final String EXTRAINFO_WEB_ICON = "android.app.cloudsearch.WEB_ICON";
2119    field public static final String EXTRAINFO_WEB_URL = "android.app.cloudsearch.WEB_URL";
2120  }
2121
2122  public static final class SearchResult.Builder {
2123    ctor public SearchResult.Builder(@NonNull String, @NonNull android.os.Bundle);
2124    method @NonNull public android.app.cloudsearch.SearchResult build();
2125    method @NonNull public android.app.cloudsearch.SearchResult.Builder setExtraInfos(@NonNull android.os.Bundle);
2126    method @NonNull public android.app.cloudsearch.SearchResult.Builder setScore(float);
2127    method @NonNull public android.app.cloudsearch.SearchResult.Builder setSnippet(@NonNull String);
2128    method @NonNull public android.app.cloudsearch.SearchResult.Builder setTitle(@NonNull String);
2129  }
2130
2131}
2132
2133package android.app.compat {
2134
2135  public final class CompatChanges {
2136    method public static boolean isChangeEnabled(long);
2137    method @RequiresPermission(allOf={"android.permission.READ_COMPAT_CHANGE_CONFIG", "android.permission.LOG_COMPAT_CHANGE"}) public static boolean isChangeEnabled(long, @NonNull String, @NonNull android.os.UserHandle);
2138    method @RequiresPermission(allOf={"android.permission.READ_COMPAT_CHANGE_CONFIG", "android.permission.LOG_COMPAT_CHANGE"}) public static boolean isChangeEnabled(long, int);
2139    method @RequiresPermission(android.Manifest.permission.OVERRIDE_COMPAT_CHANGE_CONFIG_ON_RELEASE_BUILD) public static void putAllPackageOverrides(@NonNull java.util.Map<java.lang.String,java.util.Map<java.lang.Long,android.app.compat.PackageOverride>>);
2140    method @RequiresPermission(android.Manifest.permission.OVERRIDE_COMPAT_CHANGE_CONFIG_ON_RELEASE_BUILD) public static void putPackageOverrides(@NonNull String, @NonNull java.util.Map<java.lang.Long,android.app.compat.PackageOverride>);
2141    method @RequiresPermission(android.Manifest.permission.OVERRIDE_COMPAT_CHANGE_CONFIG_ON_RELEASE_BUILD) public static void removeAllPackageOverrides(@NonNull java.util.Map<java.lang.String,java.util.Set<java.lang.Long>>);
2142    method @RequiresPermission(android.Manifest.permission.OVERRIDE_COMPAT_CHANGE_CONFIG_ON_RELEASE_BUILD) public static void removePackageOverrides(@NonNull String, @NonNull java.util.Set<java.lang.Long>);
2143  }
2144
2145  public final class PackageOverride {
2146    method public long getMaxVersionCode();
2147    method public long getMinVersionCode();
2148    method public boolean isEnabled();
2149  }
2150
2151  public static final class PackageOverride.Builder {
2152    ctor public PackageOverride.Builder();
2153    method @NonNull public android.app.compat.PackageOverride build();
2154    method @NonNull public android.app.compat.PackageOverride.Builder setEnabled(boolean);
2155    method @NonNull public android.app.compat.PackageOverride.Builder setMaxVersionCode(long);
2156    method @NonNull public android.app.compat.PackageOverride.Builder setMinVersionCode(long);
2157  }
2158
2159}
2160
2161package android.app.contentsuggestions {
2162
2163  public final class ClassificationsRequest implements android.os.Parcelable {
2164    method public int describeContents();
2165    method @NonNull public android.os.Bundle getExtras();
2166    method @NonNull public java.util.List<android.app.contentsuggestions.ContentSelection> getSelections();
2167    method public void writeToParcel(android.os.Parcel, int);
2168    field @NonNull public static final android.os.Parcelable.Creator<android.app.contentsuggestions.ClassificationsRequest> CREATOR;
2169  }
2170
2171  public static final class ClassificationsRequest.Builder {
2172    ctor public ClassificationsRequest.Builder(@NonNull java.util.List<android.app.contentsuggestions.ContentSelection>);
2173    method @NonNull public android.app.contentsuggestions.ClassificationsRequest build();
2174    method @NonNull public android.app.contentsuggestions.ClassificationsRequest.Builder setExtras(@NonNull android.os.Bundle);
2175  }
2176
2177  public final class ContentClassification implements android.os.Parcelable {
2178    ctor public ContentClassification(@NonNull String, @NonNull android.os.Bundle);
2179    method public int describeContents();
2180    method @NonNull public android.os.Bundle getExtras();
2181    method @NonNull public String getId();
2182    method public void writeToParcel(android.os.Parcel, int);
2183    field @NonNull public static final android.os.Parcelable.Creator<android.app.contentsuggestions.ContentClassification> CREATOR;
2184  }
2185
2186  public final class ContentSelection implements android.os.Parcelable {
2187    ctor public ContentSelection(@NonNull String, @NonNull android.os.Bundle);
2188    method public int describeContents();
2189    method @NonNull public android.os.Bundle getExtras();
2190    method @NonNull public String getId();
2191    method public void writeToParcel(android.os.Parcel, int);
2192    field @NonNull public static final android.os.Parcelable.Creator<android.app.contentsuggestions.ContentSelection> CREATOR;
2193  }
2194
2195  public final class ContentSuggestionsManager {
2196    method public void classifyContentSelections(@NonNull android.app.contentsuggestions.ClassificationsRequest, @NonNull java.util.concurrent.Executor, @NonNull android.app.contentsuggestions.ContentSuggestionsManager.ClassificationsCallback);
2197    method public boolean isEnabled();
2198    method public void notifyInteraction(@NonNull String, @NonNull android.os.Bundle);
2199    method public void provideContextImage(@NonNull android.graphics.Bitmap, @NonNull android.os.Bundle);
2200    method public void provideContextImage(int, @NonNull android.os.Bundle);
2201    method public void suggestContentSelections(@NonNull android.app.contentsuggestions.SelectionsRequest, @NonNull java.util.concurrent.Executor, @NonNull android.app.contentsuggestions.ContentSuggestionsManager.SelectionsCallback);
2202  }
2203
2204  public static interface ContentSuggestionsManager.ClassificationsCallback {
2205    method public void onContentClassificationsAvailable(int, @NonNull java.util.List<android.app.contentsuggestions.ContentClassification>);
2206  }
2207
2208  public static interface ContentSuggestionsManager.SelectionsCallback {
2209    method public void onContentSelectionsAvailable(int, @NonNull java.util.List<android.app.contentsuggestions.ContentSelection>);
2210  }
2211
2212  public final class SelectionsRequest implements android.os.Parcelable {
2213    method public int describeContents();
2214    method @NonNull public android.os.Bundle getExtras();
2215    method @Nullable public android.graphics.Point getInterestPoint();
2216    method public int getTaskId();
2217    method public void writeToParcel(android.os.Parcel, int);
2218    field @NonNull public static final android.os.Parcelable.Creator<android.app.contentsuggestions.SelectionsRequest> CREATOR;
2219  }
2220
2221  public static final class SelectionsRequest.Builder {
2222    ctor public SelectionsRequest.Builder(int);
2223    method @NonNull public android.app.contentsuggestions.SelectionsRequest build();
2224    method @NonNull public android.app.contentsuggestions.SelectionsRequest.Builder setExtras(@NonNull android.os.Bundle);
2225    method @NonNull public android.app.contentsuggestions.SelectionsRequest.Builder setInterestPoint(@NonNull android.graphics.Point);
2226  }
2227
2228}
2229
2230package android.app.contextualsearch {
2231
2232  @FlaggedApi("android.app.contextualsearch.flags.enable_service") public final class CallbackToken implements android.os.Parcelable {
2233    ctor public CallbackToken();
2234    method public int describeContents();
2235    method public void getContextualSearchState(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.app.contextualsearch.ContextualSearchState,java.lang.Throwable>);
2236    method public void writeToParcel(@NonNull android.os.Parcel, int);
2237    field @NonNull public static final android.os.Parcelable.Creator<android.app.contextualsearch.CallbackToken> CREATOR;
2238  }
2239
2240  @FlaggedApi("android.app.contextualsearch.flags.enable_service") public final class ContextualSearchManager {
2241    method @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXTUAL_SEARCH) public void startContextualSearch(int);
2242    field public static final String ACTION_LAUNCH_CONTEXTUAL_SEARCH = "android.app.contextualsearch.action.LAUNCH_CONTEXTUAL_SEARCH";
2243    field public static final int ENTRYPOINT_LONG_PRESS_HOME = 2; // 0x2
2244    field public static final int ENTRYPOINT_LONG_PRESS_META = 10; // 0xa
2245    field public static final int ENTRYPOINT_LONG_PRESS_NAV_HANDLE = 1; // 0x1
2246    field public static final int ENTRYPOINT_LONG_PRESS_OVERVIEW = 3; // 0x3
2247    field public static final int ENTRYPOINT_OVERVIEW_ACTION = 4; // 0x4
2248    field public static final int ENTRYPOINT_OVERVIEW_MENU = 5; // 0x5
2249    field public static final int ENTRYPOINT_SYSTEM_ACTION = 9; // 0x9
2250    field public static final String EXTRA_ENTRYPOINT = "android.app.contextualsearch.extra.ENTRYPOINT";
2251    field public static final String EXTRA_FLAG_SECURE_FOUND = "android.app.contextualsearch.extra.FLAG_SECURE_FOUND";
2252    field public static final String EXTRA_IS_MANAGED_PROFILE_VISIBLE = "android.app.contextualsearch.extra.IS_MANAGED_PROFILE_VISIBLE";
2253    field public static final String EXTRA_SCREENSHOT = "android.app.contextualsearch.extra.SCREENSHOT";
2254    field public static final String EXTRA_TOKEN = "android.app.contextualsearch.extra.TOKEN";
2255    field public static final String EXTRA_VISIBLE_PACKAGE_NAMES = "android.app.contextualsearch.extra.VISIBLE_PACKAGE_NAMES";
2256  }
2257
2258  @FlaggedApi("android.app.contextualsearch.flags.enable_service") public final class ContextualSearchState implements android.os.Parcelable {
2259    ctor public ContextualSearchState(@Nullable android.app.assist.AssistStructure, @Nullable android.app.assist.AssistContent, @NonNull android.os.Bundle);
2260    method public int describeContents();
2261    method @Nullable public android.app.assist.AssistContent getContent();
2262    method @NonNull public android.os.Bundle getExtras();
2263    method @Nullable public android.app.assist.AssistStructure getStructure();
2264    method public void writeToParcel(@NonNull android.os.Parcel, int);
2265    field @NonNull public static final android.os.Parcelable.Creator<android.app.contextualsearch.ContextualSearchState> CREATOR;
2266  }
2267
2268}
2269
2270package android.app.job {
2271
2272  public abstract class JobScheduler {
2273    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public abstract int scheduleAsPackage(@NonNull android.app.job.JobInfo, @NonNull String, int, String);
2274  }
2275
2276  public class JobSchedulerFrameworkInitializer {
2277    method public static void registerServiceWrappers();
2278  }
2279
2280}
2281
2282package android.app.people {
2283
2284  public final class PeopleManager {
2285    method @RequiresPermission(android.Manifest.permission.READ_PEOPLE_DATA) public boolean isConversation(@NonNull String, @NonNull String);
2286  }
2287
2288}
2289
2290package android.app.prediction {
2291
2292  public final class AppPredictionContext implements android.os.Parcelable {
2293    method public int describeContents();
2294    method @Nullable public android.os.Bundle getExtras();
2295    method @NonNull public String getPackageName();
2296    method @IntRange(from=0) public int getPredictedTargetCount();
2297    method @NonNull public String getUiSurface();
2298    method public void writeToParcel(@NonNull android.os.Parcel, int);
2299    field @NonNull public static final android.os.Parcelable.Creator<android.app.prediction.AppPredictionContext> CREATOR;
2300  }
2301
2302  public static final class AppPredictionContext.Builder {
2303    ctor public AppPredictionContext.Builder(@NonNull android.content.Context);
2304    method @NonNull public android.app.prediction.AppPredictionContext build();
2305    method @NonNull public android.app.prediction.AppPredictionContext.Builder setExtras(@Nullable android.os.Bundle);
2306    method @NonNull public android.app.prediction.AppPredictionContext.Builder setPredictedTargetCount(@IntRange(from=0) int);
2307    method @NonNull public android.app.prediction.AppPredictionContext.Builder setUiSurface(@NonNull String);
2308  }
2309
2310  public final class AppPredictionManager {
2311    method @NonNull public android.app.prediction.AppPredictor createAppPredictionSession(@NonNull android.app.prediction.AppPredictionContext);
2312  }
2313
2314  public final class AppPredictionSessionId implements android.os.Parcelable {
2315    method public int describeContents();
2316    method public void writeToParcel(android.os.Parcel, int);
2317    field @NonNull public static final android.os.Parcelable.Creator<android.app.prediction.AppPredictionSessionId> CREATOR;
2318  }
2319
2320  public final class AppPredictor {
2321    method public void destroy();
2322    method public void notifyAppTargetEvent(@NonNull android.app.prediction.AppTargetEvent);
2323    method public void notifyLaunchLocationShown(@NonNull String, @NonNull java.util.List<android.app.prediction.AppTargetId>);
2324    method public void registerPredictionUpdates(@NonNull java.util.concurrent.Executor, @NonNull android.app.prediction.AppPredictor.Callback);
2325    method public void requestPredictionUpdate();
2326    method @FlaggedApi("android.service.appprediction.flags.service_features_api") public void requestServiceFeatures(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.os.Bundle>);
2327    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>>);
2328    method public void unregisterPredictionUpdates(@NonNull android.app.prediction.AppPredictor.Callback);
2329  }
2330
2331  public static interface AppPredictor.Callback {
2332    method public void onTargetsAvailable(@NonNull java.util.List<android.app.prediction.AppTarget>);
2333  }
2334
2335  public final class AppTarget implements android.os.Parcelable {
2336    method public int describeContents();
2337    method @Nullable public String getClassName();
2338    method @NonNull public android.app.prediction.AppTargetId getId();
2339    method @NonNull public String getPackageName();
2340    method @IntRange(from=0) public int getRank();
2341    method @Nullable public android.content.pm.ShortcutInfo getShortcutInfo();
2342    method @NonNull public android.os.UserHandle getUser();
2343    method public void writeToParcel(android.os.Parcel, int);
2344    field @NonNull public static final android.os.Parcelable.Creator<android.app.prediction.AppTarget> CREATOR;
2345  }
2346
2347  public static final class AppTarget.Builder {
2348    ctor public AppTarget.Builder(@NonNull android.app.prediction.AppTargetId, @NonNull String, @NonNull android.os.UserHandle);
2349    ctor public AppTarget.Builder(@NonNull android.app.prediction.AppTargetId, @NonNull android.content.pm.ShortcutInfo);
2350    method @NonNull public android.app.prediction.AppTarget build();
2351    method @NonNull public android.app.prediction.AppTarget.Builder setClassName(@NonNull String);
2352    method @NonNull public android.app.prediction.AppTarget.Builder setRank(@IntRange(from=0) int);
2353  }
2354
2355  public final class AppTargetEvent implements android.os.Parcelable {
2356    method public int describeContents();
2357    method public int getAction();
2358    method @Nullable public String getLaunchLocation();
2359    method @Nullable public android.app.prediction.AppTarget getTarget();
2360    method public void writeToParcel(android.os.Parcel, int);
2361    field public static final int ACTION_DISMISS = 2; // 0x2
2362    field public static final int ACTION_LAUNCH = 1; // 0x1
2363    field public static final int ACTION_PIN = 3; // 0x3
2364    field public static final int ACTION_UNDISMISS = 5; // 0x5
2365    field public static final int ACTION_UNPIN = 4; // 0x4
2366    field @NonNull public static final android.os.Parcelable.Creator<android.app.prediction.AppTargetEvent> CREATOR;
2367  }
2368
2369  public static final class AppTargetEvent.Builder {
2370    ctor public AppTargetEvent.Builder(@Nullable android.app.prediction.AppTarget, int);
2371    method @NonNull public android.app.prediction.AppTargetEvent build();
2372    method @NonNull public android.app.prediction.AppTargetEvent.Builder setLaunchLocation(@Nullable String);
2373  }
2374
2375  public final class AppTargetId implements android.os.Parcelable {
2376    ctor public AppTargetId(@NonNull String);
2377    method public int describeContents();
2378    method public void writeToParcel(android.os.Parcel, int);
2379    field @NonNull public static final android.os.Parcelable.Creator<android.app.prediction.AppTargetId> CREATOR;
2380  }
2381
2382}
2383
2384package android.app.search {
2385
2386  public final class Query implements android.os.Parcelable {
2387    ctor public Query(@NonNull String, long, @NonNull android.os.Bundle);
2388    ctor public Query(@NonNull String, long);
2389    method public int describeContents();
2390    method @NonNull public android.os.Bundle getExtras();
2391    method @NonNull public String getInput();
2392    method public long getTimestampMillis();
2393    method public void writeToParcel(@NonNull android.os.Parcel, int);
2394    field @NonNull public static final android.os.Parcelable.Creator<android.app.search.Query> CREATOR;
2395    field public static final String EXTRA_IME_HEIGHT = "android.app.search.extra.IME_HEIGHT";
2396  }
2397
2398  public final class SearchAction implements android.os.Parcelable {
2399    method public int describeContents();
2400    method @Nullable public CharSequence getContentDescription();
2401    method @Nullable public android.os.Bundle getExtras();
2402    method @Nullable public android.graphics.drawable.Icon getIcon();
2403    method @NonNull public String getId();
2404    method @Nullable public android.content.Intent getIntent();
2405    method @Nullable public android.app.PendingIntent getPendingIntent();
2406    method @Nullable public CharSequence getSubtitle();
2407    method @NonNull public CharSequence getTitle();
2408    method @Nullable public android.os.UserHandle getUserHandle();
2409    method public void writeToParcel(@NonNull android.os.Parcel, int);
2410    field @NonNull public static final android.os.Parcelable.Creator<android.app.search.SearchAction> CREATOR;
2411  }
2412
2413  public static final class SearchAction.Builder {
2414    ctor public SearchAction.Builder(@NonNull String, @NonNull String);
2415    method @NonNull public android.app.search.SearchAction build();
2416    method @NonNull public android.app.search.SearchAction.Builder setContentDescription(@Nullable CharSequence);
2417    method @NonNull public android.app.search.SearchAction.Builder setExtras(@Nullable android.os.Bundle);
2418    method @NonNull public android.app.search.SearchAction.Builder setIcon(@Nullable android.graphics.drawable.Icon);
2419    method @NonNull public android.app.search.SearchAction.Builder setIntent(@Nullable android.content.Intent);
2420    method @NonNull public android.app.search.SearchAction.Builder setPendingIntent(@Nullable android.app.PendingIntent);
2421    method @NonNull public android.app.search.SearchAction.Builder setSubtitle(@Nullable CharSequence);
2422    method @NonNull public android.app.search.SearchAction.Builder setUserHandle(@Nullable android.os.UserHandle);
2423  }
2424
2425  public final class SearchContext implements android.os.Parcelable {
2426    ctor public SearchContext(int, int);
2427    ctor public SearchContext(int, int, @NonNull android.os.Bundle);
2428    method public int describeContents();
2429    method @NonNull public android.os.Bundle getExtras();
2430    method @Nullable public String getPackageName();
2431    method @NonNull public int getResultTypes();
2432    method @NonNull public int getTimeoutMillis();
2433    method public void writeToParcel(@NonNull android.os.Parcel, int);
2434    field @NonNull public static final android.os.Parcelable.Creator<android.app.search.SearchContext> CREATOR;
2435  }
2436
2437  public final class SearchSession implements java.lang.AutoCloseable {
2438    method public void close();
2439    method protected void finalize();
2440    method public void notifyEvent(@NonNull android.app.search.Query, @NonNull android.app.search.SearchTargetEvent);
2441    method @Nullable public void query(@NonNull android.app.search.Query, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.util.List<android.app.search.SearchTarget>>);
2442    method public void registerEmptyQueryResultUpdateCallback(@NonNull java.util.concurrent.Executor, @NonNull android.app.search.SearchSession.Callback);
2443    method public void unregisterEmptyQueryResultUpdateCallback(@NonNull android.app.search.SearchSession.Callback);
2444  }
2445
2446  public static interface SearchSession.Callback {
2447    method public void onTargetsAvailable(@NonNull java.util.List<android.app.search.SearchTarget>);
2448  }
2449
2450  public final class SearchSessionId implements android.os.Parcelable {
2451    method public int describeContents();
2452    method public void writeToParcel(@NonNull android.os.Parcel, int);
2453    field @NonNull public static final android.os.Parcelable.Creator<android.app.search.SearchSessionId> CREATOR;
2454  }
2455
2456  public final class SearchTarget implements android.os.Parcelable {
2457    method public int describeContents();
2458    method @Nullable public android.appwidget.AppWidgetProviderInfo getAppWidgetProviderInfo();
2459    method @NonNull public android.os.Bundle getExtras();
2460    method @NonNull public String getId();
2461    method @NonNull public String getLayoutType();
2462    method @NonNull public String getPackageName();
2463    method @NonNull public String getParentId();
2464    method public int getResultType();
2465    method public float getScore();
2466    method @Nullable public android.app.search.SearchAction getSearchAction();
2467    method @Nullable public android.content.pm.ShortcutInfo getShortcutInfo();
2468    method @Nullable public android.net.Uri getSliceUri();
2469    method @NonNull public android.os.UserHandle getUserHandle();
2470    method public boolean isHidden();
2471    method public void writeToParcel(@NonNull android.os.Parcel, int);
2472    field @NonNull public static final android.os.Parcelable.Creator<android.app.search.SearchTarget> CREATOR;
2473    field public static final String LAYOUT_TYPE_ICON = "icon";
2474    field public static final String LAYOUT_TYPE_ICON_ROW = "icon_row";
2475    field public static final String LAYOUT_TYPE_SHORT_ICON_ROW = "short_icon_row";
2476    field public static final int RESULT_TYPE_APPLICATION = 1; // 0x1
2477    field public static final int RESULT_TYPE_SHORTCUT = 2; // 0x2
2478    field public static final int RESULT_TYPE_SLICE = 4; // 0x4
2479    field public static final int RESULT_TYPE_WIDGETS = 8; // 0x8
2480  }
2481
2482  public static final class SearchTarget.Builder {
2483    ctor public SearchTarget.Builder(int, @NonNull String, @NonNull String);
2484    method @NonNull public android.app.search.SearchTarget build();
2485    method @NonNull public android.app.search.SearchTarget.Builder setAppWidgetProviderInfo(@NonNull android.appwidget.AppWidgetProviderInfo);
2486    method @NonNull public android.app.search.SearchTarget.Builder setExtras(@NonNull android.os.Bundle);
2487    method @NonNull public android.app.search.SearchTarget.Builder setHidden(boolean);
2488    method @NonNull public android.app.search.SearchTarget.Builder setPackageName(@NonNull String);
2489    method @NonNull public android.app.search.SearchTarget.Builder setParentId(@NonNull String);
2490    method @NonNull public android.app.search.SearchTarget.Builder setScore(@FloatRange(from=0.0f, to=1.0f) float);
2491    method @NonNull public android.app.search.SearchTarget.Builder setSearchAction(@Nullable android.app.search.SearchAction);
2492    method @NonNull public android.app.search.SearchTarget.Builder setShortcutInfo(@NonNull android.content.pm.ShortcutInfo);
2493    method @NonNull public android.app.search.SearchTarget.Builder setSliceUri(@NonNull android.net.Uri);
2494    method @NonNull public android.app.search.SearchTarget.Builder setUserHandle(@NonNull android.os.UserHandle);
2495  }
2496
2497  public final class SearchTargetEvent implements android.os.Parcelable {
2498    method public int describeContents();
2499    method public int getAction();
2500    method public int getFlags();
2501    method @Nullable public String getLaunchLocation();
2502    method @NonNull public String getTargetId();
2503    method @NonNull public java.util.List<java.lang.String> getTargetIds();
2504    method public void writeToParcel(@NonNull android.os.Parcel, int);
2505    field public static final int ACTION_DELETE = 9; // 0x9
2506    field public static final int ACTION_DISMISS = 10; // 0xa
2507    field public static final int ACTION_DRAGNDROP = 7; // 0x7
2508    field public static final int ACTION_LAUNCH_KEYBOARD_FOCUS = 6; // 0x6
2509    field public static final int ACTION_LAUNCH_TOUCH = 5; // 0x5
2510    field public static final int ACTION_LONGPRESS = 4; // 0x4
2511    field public static final int ACTION_SURFACE_INVISIBLE = 8; // 0x8
2512    field public static final int ACTION_SURFACE_VISIBLE = 1; // 0x1
2513    field public static final int ACTION_TAP = 3; // 0x3
2514    field @NonNull public static final android.os.Parcelable.Creator<android.app.search.SearchTargetEvent> CREATOR;
2515    field public static final int FLAG_IME_SHOWN = 1; // 0x1
2516  }
2517
2518  public static final class SearchTargetEvent.Builder {
2519    ctor public SearchTargetEvent.Builder(@NonNull String, int);
2520    ctor public SearchTargetEvent.Builder(@NonNull java.util.List<java.lang.String>, int);
2521    method @NonNull public android.app.search.SearchTargetEvent build();
2522    method @NonNull public android.app.search.SearchTargetEvent.Builder setFlags(int);
2523    method @NonNull public android.app.search.SearchTargetEvent.Builder setLaunchLocation(@Nullable String);
2524  }
2525
2526  public final class SearchUiManager {
2527    method @NonNull public android.app.search.SearchSession createSearchSession(@NonNull android.app.search.SearchContext);
2528  }
2529
2530}
2531
2532package android.app.smartspace {
2533
2534  public final class SmartspaceAction implements android.os.Parcelable {
2535    method public int describeContents();
2536    method @Nullable public CharSequence getContentDescription();
2537    method @Nullable public android.os.Bundle getExtras();
2538    method @Nullable public android.graphics.drawable.Icon getIcon();
2539    method @NonNull public String getId();
2540    method @Nullable public android.content.Intent getIntent();
2541    method @Nullable public android.app.PendingIntent getPendingIntent();
2542    method @Nullable public CharSequence getSubtitle();
2543    method @NonNull public CharSequence getTitle();
2544    method @Nullable public android.os.UserHandle getUserHandle();
2545    method public void writeToParcel(@NonNull android.os.Parcel, int);
2546    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.SmartspaceAction> CREATOR;
2547  }
2548
2549  public static final class SmartspaceAction.Builder {
2550    ctor public SmartspaceAction.Builder(@NonNull String, @NonNull String);
2551    method @NonNull public android.app.smartspace.SmartspaceAction build();
2552    method @NonNull public android.app.smartspace.SmartspaceAction.Builder setContentDescription(@Nullable CharSequence);
2553    method @NonNull public android.app.smartspace.SmartspaceAction.Builder setExtras(@Nullable android.os.Bundle);
2554    method @NonNull public android.app.smartspace.SmartspaceAction.Builder setIcon(@Nullable android.graphics.drawable.Icon);
2555    method @NonNull public android.app.smartspace.SmartspaceAction.Builder setIntent(@Nullable android.content.Intent);
2556    method @NonNull public android.app.smartspace.SmartspaceAction.Builder setPendingIntent(@Nullable android.app.PendingIntent);
2557    method @NonNull public android.app.smartspace.SmartspaceAction.Builder setSubtitle(@Nullable CharSequence);
2558    method @NonNull public android.app.smartspace.SmartspaceAction.Builder setUserHandle(@Nullable android.os.UserHandle);
2559  }
2560
2561  public final class SmartspaceConfig implements android.os.Parcelable {
2562    method public int describeContents();
2563    method @Nullable public android.os.Bundle getExtras();
2564    method @NonNull public String getPackageName();
2565    method @NonNull public int getSmartspaceTargetCount();
2566    method @NonNull public String getUiSurface();
2567    method public void writeToParcel(@NonNull android.os.Parcel, int);
2568    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.SmartspaceConfig> CREATOR;
2569  }
2570
2571  public static final class SmartspaceConfig.Builder {
2572    ctor public SmartspaceConfig.Builder(@NonNull android.content.Context, @NonNull String);
2573    method @NonNull public android.app.smartspace.SmartspaceConfig build();
2574    method @NonNull public android.app.smartspace.SmartspaceConfig.Builder setExtras(@NonNull android.os.Bundle);
2575    method @NonNull public android.app.smartspace.SmartspaceConfig.Builder setSmartspaceTargetCount(@IntRange(from=0, to=50) int);
2576  }
2577
2578  public final class SmartspaceManager {
2579    method @NonNull public android.app.smartspace.SmartspaceSession createSmartspaceSession(@NonNull android.app.smartspace.SmartspaceConfig);
2580  }
2581
2582  public final class SmartspaceSession implements java.lang.AutoCloseable {
2583    method public void addOnTargetsAvailableListener(@NonNull java.util.concurrent.Executor, @NonNull android.app.smartspace.SmartspaceSession.OnTargetsAvailableListener);
2584    method public void close();
2585    method protected void finalize();
2586    method public void notifySmartspaceEvent(@NonNull android.app.smartspace.SmartspaceTargetEvent);
2587    method public void removeOnTargetsAvailableListener(@NonNull android.app.smartspace.SmartspaceSession.OnTargetsAvailableListener);
2588    method public void requestSmartspaceUpdate();
2589  }
2590
2591  public static interface SmartspaceSession.OnTargetsAvailableListener {
2592    method public void onTargetsAvailable(@NonNull java.util.List<android.app.smartspace.SmartspaceTarget>);
2593  }
2594
2595  public final class SmartspaceSessionId implements android.os.Parcelable {
2596    method public int describeContents();
2597    method @Nullable public String getId();
2598    method @NonNull public android.os.UserHandle getUserHandle();
2599    method public void writeToParcel(@NonNull android.os.Parcel, int);
2600    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.SmartspaceSessionId> CREATOR;
2601  }
2602
2603  public final class SmartspaceTarget implements android.os.Parcelable {
2604    method public int describeContents();
2605    method @NonNull public java.util.List<android.app.smartspace.SmartspaceAction> getActionChips();
2606    method @Nullable public String getAssociatedSmartspaceTargetId();
2607    method @Nullable public android.app.smartspace.SmartspaceAction getBaseAction();
2608    method @NonNull public android.content.ComponentName getComponentName();
2609    method public long getCreationTimeMillis();
2610    method public long getExpiryTimeMillis();
2611    method public int getFeatureType();
2612    method @Nullable public android.app.smartspace.SmartspaceAction getHeaderAction();
2613    method @NonNull public java.util.List<android.app.smartspace.SmartspaceAction> getIconGrid();
2614    method @FlaggedApi("android.app.smartspace.flags.remote_views") @Nullable public android.widget.RemoteViews getRemoteViews();
2615    method public float getScore();
2616    method @Nullable public android.net.Uri getSliceUri();
2617    method @NonNull public String getSmartspaceTargetId();
2618    method @Nullable public String getSourceNotificationKey();
2619    method @Nullable public android.app.smartspace.uitemplatedata.BaseTemplateData getTemplateData();
2620    method @NonNull public android.os.UserHandle getUserHandle();
2621    method @Nullable public android.appwidget.AppWidgetProviderInfo getWidget();
2622    method public boolean isSensitive();
2623    method public boolean shouldShowExpanded();
2624    method public void writeToParcel(@NonNull android.os.Parcel, int);
2625    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.SmartspaceTarget> CREATOR;
2626    field public static final int FEATURE_ALARM = 7; // 0x7
2627    field public static final int FEATURE_BEDTIME_ROUTINE = 16; // 0x10
2628    field public static final int FEATURE_BLAZE_BUILD_PROGRESS = 40; // 0x28
2629    field public static final int FEATURE_CALENDAR = 2; // 0x2
2630    field public static final int FEATURE_COMMUTE_TIME = 3; // 0x3
2631    field public static final int FEATURE_CONSENT = 11; // 0xb
2632    field public static final int FEATURE_CROSS_DEVICE_TIMER = 32; // 0x20
2633    field public static final int FEATURE_DOORBELL = 30; // 0x1e
2634    field public static final int FEATURE_DRIVING_MODE = 26; // 0x1a
2635    field public static final int FEATURE_EARTHQUAKE_ALERT = 38; // 0x26
2636    field public static final int FEATURE_EARTHQUAKE_OCCURRED = 41; // 0x29
2637    field public static final int FEATURE_ETA_MONITORING = 18; // 0x12
2638    field public static final int FEATURE_FITNESS_TRACKING = 17; // 0x11
2639    field public static final int FEATURE_FLASHLIGHT = 28; // 0x1c
2640    field public static final int FEATURE_FLIGHT = 4; // 0x4
2641    field public static final int FEATURE_GAS_STATION_PAYMENT = 24; // 0x18
2642    field public static final int FEATURE_HOLIDAY_ALARM = 34; // 0x22
2643    field public static final int FEATURE_LOYALTY_CARD = 14; // 0xe
2644    field public static final int FEATURE_MEDIA = 15; // 0xf
2645    field public static final int FEATURE_MEDIA_HEADS_UP = 36; // 0x24
2646    field public static final int FEATURE_MEDIA_RESUME = 31; // 0x1f
2647    field public static final int FEATURE_MISSED_CALL = 19; // 0x13
2648    field public static final int FEATURE_ONBOARDING = 8; // 0x8
2649    field public static final int FEATURE_PACKAGE_TRACKING = 20; // 0x14
2650    field public static final int FEATURE_PAIRED_DEVICE_STATE = 25; // 0x19
2651    field public static final int FEATURE_REMINDER = 6; // 0x6
2652    field public static final int FEATURE_SAFETY_CHECK = 35; // 0x23
2653    field public static final int FEATURE_SEVERE_WEATHER_ALERT = 33; // 0x21
2654    field public static final int FEATURE_SHOPPING_LIST = 13; // 0xd
2655    field public static final int FEATURE_SLEEP_SUMMARY = 27; // 0x1b
2656    field public static final int FEATURE_SPORTS = 9; // 0x9
2657    field public static final int FEATURE_STEP_COUNTING = 37; // 0x25
2658    field public static final int FEATURE_STEP_DATE = 39; // 0x27
2659    field public static final int FEATURE_STOCK_PRICE_CHANGE = 12; // 0xc
2660    field public static final int FEATURE_STOPWATCH = 22; // 0x16
2661    field public static final int FEATURE_TIMER = 21; // 0x15
2662    field public static final int FEATURE_TIME_TO_LEAVE = 29; // 0x1d
2663    field public static final int FEATURE_TIPS = 5; // 0x5
2664    field public static final int FEATURE_UNDEFINED = 0; // 0x0
2665    field public static final int FEATURE_UPCOMING_ALARM = 23; // 0x17
2666    field public static final int FEATURE_WEATHER = 1; // 0x1
2667    field public static final int FEATURE_WEATHER_ALERT = 10; // 0xa
2668    field public static final int UI_TEMPLATE_CAROUSEL = 4; // 0x4
2669    field public static final int UI_TEMPLATE_COMBINED_CARDS = 6; // 0x6
2670    field public static final int UI_TEMPLATE_DEFAULT = 1; // 0x1
2671    field public static final int UI_TEMPLATE_HEAD_TO_HEAD = 5; // 0x5
2672    field public static final int UI_TEMPLATE_SUB_CARD = 7; // 0x7
2673    field public static final int UI_TEMPLATE_SUB_IMAGE = 2; // 0x2
2674    field public static final int UI_TEMPLATE_SUB_LIST = 3; // 0x3
2675    field public static final int UI_TEMPLATE_UNDEFINED = 0; // 0x0
2676  }
2677
2678  public static final class SmartspaceTarget.Builder {
2679    ctor public SmartspaceTarget.Builder(@NonNull String, @NonNull android.content.ComponentName, @NonNull android.os.UserHandle);
2680    method @NonNull public android.app.smartspace.SmartspaceTarget build();
2681    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setActionChips(@NonNull java.util.List<android.app.smartspace.SmartspaceAction>);
2682    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setAssociatedSmartspaceTargetId(@NonNull String);
2683    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setBaseAction(@NonNull android.app.smartspace.SmartspaceAction);
2684    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setCreationTimeMillis(long);
2685    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setExpiryTimeMillis(long);
2686    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setFeatureType(int);
2687    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setHeaderAction(@NonNull android.app.smartspace.SmartspaceAction);
2688    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setIconGrid(@NonNull java.util.List<android.app.smartspace.SmartspaceAction>);
2689    method @FlaggedApi("android.app.smartspace.flags.remote_views") @NonNull public android.app.smartspace.SmartspaceTarget.Builder setRemoteViews(@NonNull android.widget.RemoteViews);
2690    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setScore(float);
2691    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setSensitive(boolean);
2692    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setShouldShowExpanded(boolean);
2693    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setSliceUri(@NonNull android.net.Uri);
2694    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setSourceNotificationKey(@NonNull String);
2695    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setTemplateData(@Nullable android.app.smartspace.uitemplatedata.BaseTemplateData);
2696    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setWidget(@NonNull android.appwidget.AppWidgetProviderInfo);
2697  }
2698
2699  public final class SmartspaceTargetEvent implements android.os.Parcelable {
2700    method public int describeContents();
2701    method @NonNull public int getEventType();
2702    method @Nullable public String getSmartspaceActionId();
2703    method @Nullable public android.app.smartspace.SmartspaceTarget getSmartspaceTarget();
2704    method public void writeToParcel(@NonNull android.os.Parcel, int);
2705    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.SmartspaceTargetEvent> CREATOR;
2706    field public static final int EVENT_TARGET_BLOCK = 5; // 0x5
2707    field public static final int EVENT_TARGET_DISMISS = 4; // 0x4
2708    field public static final int EVENT_TARGET_HIDDEN = 3; // 0x3
2709    field public static final int EVENT_TARGET_INTERACTION = 1; // 0x1
2710    field public static final int EVENT_TARGET_SHOWN = 2; // 0x2
2711    field public static final int EVENT_UI_SURFACE_HIDDEN = 7; // 0x7
2712    field public static final int EVENT_UI_SURFACE_SHOWN = 6; // 0x6
2713  }
2714
2715  public static final class SmartspaceTargetEvent.Builder {
2716    ctor public SmartspaceTargetEvent.Builder(int);
2717    method @NonNull public android.app.smartspace.SmartspaceTargetEvent build();
2718    method @NonNull public android.app.smartspace.SmartspaceTargetEvent.Builder setSmartspaceActionId(@NonNull String);
2719    method @NonNull public android.app.smartspace.SmartspaceTargetEvent.Builder setSmartspaceTarget(@NonNull android.app.smartspace.SmartspaceTarget);
2720  }
2721
2722}
2723
2724package android.app.smartspace.uitemplatedata {
2725
2726  public class BaseTemplateData implements android.os.Parcelable {
2727    method public int describeContents();
2728    method public int getLayoutWeight();
2729    method @Nullable public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo getPrimaryItem();
2730    method @Nullable public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo getSubtitleItem();
2731    method @Nullable public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo getSubtitleSupplementalItem();
2732    method @Nullable public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo getSupplementalAlarmItem();
2733    method @Nullable public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo getSupplementalLineItem();
2734    method public int getTemplateType();
2735    method public void writeToParcel(@NonNull android.os.Parcel, int);
2736    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.BaseTemplateData> CREATOR;
2737  }
2738
2739  public static class BaseTemplateData.Builder {
2740    ctor public BaseTemplateData.Builder(int);
2741    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData build();
2742    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.Builder setLayoutWeight(int);
2743    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.Builder setPrimaryItem(@NonNull android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo);
2744    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.Builder setSubtitleItem(@NonNull android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo);
2745    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.Builder setSubtitleSupplementalItem(@NonNull android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo);
2746    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.Builder setSupplementalAlarmItem(@NonNull android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo);
2747    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.Builder setSupplementalLineItem(@NonNull android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo);
2748  }
2749
2750  public static final class BaseTemplateData.SubItemInfo implements android.os.Parcelable {
2751    method public int describeContents();
2752    method @Nullable public android.app.smartspace.uitemplatedata.Icon getIcon();
2753    method @Nullable public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemLoggingInfo getLoggingInfo();
2754    method @Nullable public android.app.smartspace.uitemplatedata.TapAction getTapAction();
2755    method @Nullable public android.app.smartspace.uitemplatedata.Text getText();
2756    method public void writeToParcel(@NonNull android.os.Parcel, int);
2757    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo> CREATOR;
2758  }
2759
2760  public static final class BaseTemplateData.SubItemInfo.Builder {
2761    ctor public BaseTemplateData.SubItemInfo.Builder();
2762    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo build();
2763    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo.Builder setIcon(@NonNull android.app.smartspace.uitemplatedata.Icon);
2764    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo.Builder setLoggingInfo(@NonNull android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemLoggingInfo);
2765    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo.Builder setTapAction(@NonNull android.app.smartspace.uitemplatedata.TapAction);
2766    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo.Builder setText(@NonNull android.app.smartspace.uitemplatedata.Text);
2767  }
2768
2769  public static final class BaseTemplateData.SubItemLoggingInfo implements android.os.Parcelable {
2770    method public int describeContents();
2771    method public int getFeatureType();
2772    method public int getInstanceId();
2773    method @Nullable public CharSequence getPackageName();
2774    method public void writeToParcel(@NonNull android.os.Parcel, int);
2775    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemLoggingInfo> CREATOR;
2776  }
2777
2778  public static final class BaseTemplateData.SubItemLoggingInfo.Builder {
2779    ctor public BaseTemplateData.SubItemLoggingInfo.Builder(int, int);
2780    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemLoggingInfo build();
2781    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemLoggingInfo.Builder setPackageName(@NonNull CharSequence);
2782  }
2783
2784  public final class CarouselTemplateData extends android.app.smartspace.uitemplatedata.BaseTemplateData {
2785    method @Nullable public android.app.smartspace.uitemplatedata.TapAction getCarouselAction();
2786    method @NonNull public java.util.List<android.app.smartspace.uitemplatedata.CarouselTemplateData.CarouselItem> getCarouselItems();
2787    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.CarouselTemplateData> CREATOR;
2788  }
2789
2790  public static final class CarouselTemplateData.Builder extends android.app.smartspace.uitemplatedata.BaseTemplateData.Builder {
2791    ctor public CarouselTemplateData.Builder(@NonNull java.util.List<android.app.smartspace.uitemplatedata.CarouselTemplateData.CarouselItem>);
2792    method @NonNull public android.app.smartspace.uitemplatedata.CarouselTemplateData build();
2793    method @NonNull public android.app.smartspace.uitemplatedata.CarouselTemplateData.Builder setCarouselAction(@NonNull android.app.smartspace.uitemplatedata.TapAction);
2794  }
2795
2796  public static final class CarouselTemplateData.CarouselItem implements android.os.Parcelable {
2797    method public int describeContents();
2798    method @Nullable public android.app.smartspace.uitemplatedata.Icon getImage();
2799    method @Nullable public android.app.smartspace.uitemplatedata.Text getLowerText();
2800    method @Nullable public android.app.smartspace.uitemplatedata.TapAction getTapAction();
2801    method @Nullable public android.app.smartspace.uitemplatedata.Text getUpperText();
2802    method public void writeToParcel(@NonNull android.os.Parcel, int);
2803    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.CarouselTemplateData.CarouselItem> CREATOR;
2804  }
2805
2806  public static final class CarouselTemplateData.CarouselItem.Builder {
2807    ctor public CarouselTemplateData.CarouselItem.Builder();
2808    method @NonNull public android.app.smartspace.uitemplatedata.CarouselTemplateData.CarouselItem build();
2809    method @NonNull public android.app.smartspace.uitemplatedata.CarouselTemplateData.CarouselItem.Builder setImage(@Nullable android.app.smartspace.uitemplatedata.Icon);
2810    method @NonNull public android.app.smartspace.uitemplatedata.CarouselTemplateData.CarouselItem.Builder setLowerText(@Nullable android.app.smartspace.uitemplatedata.Text);
2811    method @NonNull public android.app.smartspace.uitemplatedata.CarouselTemplateData.CarouselItem.Builder setTapAction(@Nullable android.app.smartspace.uitemplatedata.TapAction);
2812    method @NonNull public android.app.smartspace.uitemplatedata.CarouselTemplateData.CarouselItem.Builder setUpperText(@Nullable android.app.smartspace.uitemplatedata.Text);
2813  }
2814
2815  public final class CombinedCardsTemplateData extends android.app.smartspace.uitemplatedata.BaseTemplateData {
2816    method @NonNull public java.util.List<android.app.smartspace.uitemplatedata.BaseTemplateData> getCombinedCardDataList();
2817    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.CombinedCardsTemplateData> CREATOR;
2818  }
2819
2820  public static final class CombinedCardsTemplateData.Builder extends android.app.smartspace.uitemplatedata.BaseTemplateData.Builder {
2821    ctor public CombinedCardsTemplateData.Builder(@NonNull java.util.List<android.app.smartspace.uitemplatedata.BaseTemplateData>);
2822    method @NonNull public android.app.smartspace.uitemplatedata.CombinedCardsTemplateData build();
2823  }
2824
2825  public final class HeadToHeadTemplateData extends android.app.smartspace.uitemplatedata.BaseTemplateData {
2826    method @Nullable public android.app.smartspace.uitemplatedata.TapAction getHeadToHeadAction();
2827    method @Nullable public android.app.smartspace.uitemplatedata.Icon getHeadToHeadFirstCompetitorIcon();
2828    method @Nullable public android.app.smartspace.uitemplatedata.Text getHeadToHeadFirstCompetitorText();
2829    method @Nullable public android.app.smartspace.uitemplatedata.Icon getHeadToHeadSecondCompetitorIcon();
2830    method @Nullable public android.app.smartspace.uitemplatedata.Text getHeadToHeadSecondCompetitorText();
2831    method @Nullable public android.app.smartspace.uitemplatedata.Text getHeadToHeadTitle();
2832    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.HeadToHeadTemplateData> CREATOR;
2833  }
2834
2835  public static final class HeadToHeadTemplateData.Builder extends android.app.smartspace.uitemplatedata.BaseTemplateData.Builder {
2836    ctor public HeadToHeadTemplateData.Builder();
2837    method @NonNull public android.app.smartspace.uitemplatedata.HeadToHeadTemplateData build();
2838    method @NonNull public android.app.smartspace.uitemplatedata.HeadToHeadTemplateData.Builder setHeadToHeadAction(@Nullable android.app.smartspace.uitemplatedata.TapAction);
2839    method @NonNull public android.app.smartspace.uitemplatedata.HeadToHeadTemplateData.Builder setHeadToHeadFirstCompetitorIcon(@Nullable android.app.smartspace.uitemplatedata.Icon);
2840    method @NonNull public android.app.smartspace.uitemplatedata.HeadToHeadTemplateData.Builder setHeadToHeadFirstCompetitorText(@Nullable android.app.smartspace.uitemplatedata.Text);
2841    method @NonNull public android.app.smartspace.uitemplatedata.HeadToHeadTemplateData.Builder setHeadToHeadSecondCompetitorIcon(@Nullable android.app.smartspace.uitemplatedata.Icon);
2842    method @NonNull public android.app.smartspace.uitemplatedata.HeadToHeadTemplateData.Builder setHeadToHeadSecondCompetitorText(@Nullable android.app.smartspace.uitemplatedata.Text);
2843    method @NonNull public android.app.smartspace.uitemplatedata.HeadToHeadTemplateData.Builder setHeadToHeadTitle(@Nullable android.app.smartspace.uitemplatedata.Text);
2844  }
2845
2846  public final class Icon implements android.os.Parcelable {
2847    method public int describeContents();
2848    method @Nullable public CharSequence getContentDescription();
2849    method @NonNull public android.graphics.drawable.Icon getIcon();
2850    method public boolean shouldTint();
2851    method public void writeToParcel(@NonNull android.os.Parcel, int);
2852    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.Icon> CREATOR;
2853  }
2854
2855  public static final class Icon.Builder {
2856    ctor public Icon.Builder(@NonNull android.graphics.drawable.Icon);
2857    method @NonNull public android.app.smartspace.uitemplatedata.Icon build();
2858    method @NonNull public android.app.smartspace.uitemplatedata.Icon.Builder setContentDescription(@NonNull CharSequence);
2859    method @NonNull public android.app.smartspace.uitemplatedata.Icon.Builder setShouldTint(boolean);
2860  }
2861
2862  public final class SubCardTemplateData extends android.app.smartspace.uitemplatedata.BaseTemplateData {
2863    method @Nullable public android.app.smartspace.uitemplatedata.TapAction getSubCardAction();
2864    method @NonNull public android.app.smartspace.uitemplatedata.Icon getSubCardIcon();
2865    method @Nullable public android.app.smartspace.uitemplatedata.Text getSubCardText();
2866    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.SubCardTemplateData> CREATOR;
2867  }
2868
2869  public static final class SubCardTemplateData.Builder extends android.app.smartspace.uitemplatedata.BaseTemplateData.Builder {
2870    ctor public SubCardTemplateData.Builder(@NonNull android.app.smartspace.uitemplatedata.Icon);
2871    method @NonNull public android.app.smartspace.uitemplatedata.SubCardTemplateData build();
2872    method @NonNull public android.app.smartspace.uitemplatedata.SubCardTemplateData.Builder setSubCardAction(@NonNull android.app.smartspace.uitemplatedata.TapAction);
2873    method @NonNull public android.app.smartspace.uitemplatedata.SubCardTemplateData.Builder setSubCardText(@NonNull android.app.smartspace.uitemplatedata.Text);
2874  }
2875
2876  public final class SubImageTemplateData extends android.app.smartspace.uitemplatedata.BaseTemplateData {
2877    method @Nullable public android.app.smartspace.uitemplatedata.TapAction getSubImageAction();
2878    method @NonNull public java.util.List<android.app.smartspace.uitemplatedata.Text> getSubImageTexts();
2879    method @NonNull public java.util.List<android.app.smartspace.uitemplatedata.Icon> getSubImages();
2880    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.SubImageTemplateData> CREATOR;
2881  }
2882
2883  public static final class SubImageTemplateData.Builder extends android.app.smartspace.uitemplatedata.BaseTemplateData.Builder {
2884    ctor public SubImageTemplateData.Builder(@NonNull java.util.List<android.app.smartspace.uitemplatedata.Text>, @NonNull java.util.List<android.app.smartspace.uitemplatedata.Icon>);
2885    method @NonNull public android.app.smartspace.uitemplatedata.SubImageTemplateData build();
2886    method @NonNull public android.app.smartspace.uitemplatedata.SubImageTemplateData.Builder setSubImageAction(@NonNull android.app.smartspace.uitemplatedata.TapAction);
2887  }
2888
2889  public final class SubListTemplateData extends android.app.smartspace.uitemplatedata.BaseTemplateData {
2890    method @Nullable public android.app.smartspace.uitemplatedata.TapAction getSubListAction();
2891    method @Nullable public android.app.smartspace.uitemplatedata.Icon getSubListIcon();
2892    method @NonNull public java.util.List<android.app.smartspace.uitemplatedata.Text> getSubListTexts();
2893    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.SubListTemplateData> CREATOR;
2894  }
2895
2896  public static final class SubListTemplateData.Builder extends android.app.smartspace.uitemplatedata.BaseTemplateData.Builder {
2897    ctor public SubListTemplateData.Builder(@NonNull java.util.List<android.app.smartspace.uitemplatedata.Text>);
2898    method @NonNull public android.app.smartspace.uitemplatedata.SubListTemplateData build();
2899    method @NonNull public android.app.smartspace.uitemplatedata.SubListTemplateData.Builder setSubListAction(@NonNull android.app.smartspace.uitemplatedata.TapAction);
2900    method @NonNull public android.app.smartspace.uitemplatedata.SubListTemplateData.Builder setSubListIcon(@NonNull android.app.smartspace.uitemplatedata.Icon);
2901  }
2902
2903  public final class TapAction implements android.os.Parcelable {
2904    method public int describeContents();
2905    method @Nullable public android.os.Bundle getExtras();
2906    method @Nullable public CharSequence getId();
2907    method @Nullable public android.content.Intent getIntent();
2908    method @Nullable public android.app.PendingIntent getPendingIntent();
2909    method @Nullable public android.os.UserHandle getUserHandle();
2910    method public boolean shouldShowOnLockscreen();
2911    method public void writeToParcel(@NonNull android.os.Parcel, int);
2912    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.TapAction> CREATOR;
2913  }
2914
2915  public static final class TapAction.Builder {
2916    ctor public TapAction.Builder(@NonNull CharSequence);
2917    method @NonNull public android.app.smartspace.uitemplatedata.TapAction build();
2918    method @NonNull public android.app.smartspace.uitemplatedata.TapAction.Builder setExtras(@NonNull android.os.Bundle);
2919    method @NonNull public android.app.smartspace.uitemplatedata.TapAction.Builder setIntent(@NonNull android.content.Intent);
2920    method @NonNull public android.app.smartspace.uitemplatedata.TapAction.Builder setPendingIntent(@NonNull android.app.PendingIntent);
2921    method @NonNull public android.app.smartspace.uitemplatedata.TapAction.Builder setShouldShowOnLockscreen(@NonNull boolean);
2922    method @NonNull public android.app.smartspace.uitemplatedata.TapAction.Builder setUserHandle(@Nullable android.os.UserHandle);
2923  }
2924
2925  public final class Text implements android.os.Parcelable {
2926    method public int describeContents();
2927    method public int getMaxLines();
2928    method @NonNull public CharSequence getText();
2929    method @NonNull public android.text.TextUtils.TruncateAt getTruncateAtType();
2930    method public void writeToParcel(@NonNull android.os.Parcel, int);
2931    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.Text> CREATOR;
2932  }
2933
2934  public static final class Text.Builder {
2935    ctor public Text.Builder(@NonNull CharSequence);
2936    method @NonNull public android.app.smartspace.uitemplatedata.Text build();
2937    method @NonNull public android.app.smartspace.uitemplatedata.Text.Builder setMaxLines(int);
2938    method @NonNull public android.app.smartspace.uitemplatedata.Text.Builder setTruncateAtType(@NonNull android.text.TextUtils.TruncateAt);
2939  }
2940
2941}
2942
2943package android.app.time {
2944
2945  public final class Capabilities {
2946    field public static final int CAPABILITY_NOT_ALLOWED = 20; // 0x14
2947    field public static final int CAPABILITY_NOT_APPLICABLE = 30; // 0x1e
2948    field public static final int CAPABILITY_NOT_SUPPORTED = 10; // 0xa
2949    field public static final int CAPABILITY_POSSESSED = 40; // 0x28
2950  }
2951
2952  public final class ExternalTimeSuggestion implements android.os.Parcelable {
2953    ctor public ExternalTimeSuggestion(long, long);
2954    method public void addDebugInfo(@NonNull java.lang.String...);
2955    method public int describeContents();
2956    method @NonNull public java.util.List<java.lang.String> getDebugInfo();
2957    method public void writeToParcel(@NonNull android.os.Parcel, int);
2958    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.ExternalTimeSuggestion> CREATOR;
2959  }
2960
2961  public final class TimeCapabilities implements android.os.Parcelable {
2962    method public int describeContents();
2963    method public int getConfigureAutoDetectionEnabledCapability();
2964    method public int getSetManualTimeCapability();
2965    method public void writeToParcel(@NonNull android.os.Parcel, int);
2966    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.TimeCapabilities> CREATOR;
2967  }
2968
2969  public final class TimeCapabilitiesAndConfig implements android.os.Parcelable {
2970    method public int describeContents();
2971    method @NonNull public android.app.time.TimeCapabilities getCapabilities();
2972    method @NonNull public android.app.time.TimeConfiguration getConfiguration();
2973    method public void writeToParcel(@NonNull android.os.Parcel, int);
2974    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.TimeCapabilitiesAndConfig> CREATOR;
2975  }
2976
2977  public final class TimeConfiguration implements android.os.Parcelable {
2978    method public int describeContents();
2979    method public boolean isAutoDetectionEnabled();
2980    method public void writeToParcel(@NonNull android.os.Parcel, int);
2981    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.TimeConfiguration> CREATOR;
2982  }
2983
2984  public static final class TimeConfiguration.Builder {
2985    ctor public TimeConfiguration.Builder();
2986    ctor public TimeConfiguration.Builder(@NonNull android.app.time.TimeConfiguration);
2987    method @NonNull public android.app.time.TimeConfiguration build();
2988    method @NonNull public android.app.time.TimeConfiguration.Builder setAutoDetectionEnabled(boolean);
2989  }
2990
2991  public final class TimeManager {
2992    method @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public void addTimeZoneDetectorListener(@NonNull java.util.concurrent.Executor, @NonNull android.app.time.TimeManager.TimeZoneDetectorListener);
2993    method @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public boolean confirmTime(@NonNull android.app.time.UnixEpochTime);
2994    method @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public boolean confirmTimeZone(@NonNull String);
2995    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public android.app.time.TimeCapabilitiesAndConfig getTimeCapabilitiesAndConfig();
2996    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public android.app.time.TimeState getTimeState();
2997    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public android.app.time.TimeZoneCapabilitiesAndConfig getTimeZoneCapabilitiesAndConfig();
2998    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public android.app.time.TimeZoneState getTimeZoneState();
2999    method @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public void removeTimeZoneDetectorListener(@NonNull android.app.time.TimeManager.TimeZoneDetectorListener);
3000    method @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public boolean setManualTime(@NonNull android.app.time.UnixEpochTime);
3001    method @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public boolean setManualTimeZone(@NonNull String);
3002    method @RequiresPermission(android.Manifest.permission.SUGGEST_EXTERNAL_TIME) public void suggestExternalTime(@NonNull android.app.time.ExternalTimeSuggestion);
3003    method @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public boolean updateTimeConfiguration(@NonNull android.app.time.TimeConfiguration);
3004    method @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public boolean updateTimeZoneConfiguration(@NonNull android.app.time.TimeZoneConfiguration);
3005  }
3006
3007  @java.lang.FunctionalInterface public static interface TimeManager.TimeZoneDetectorListener {
3008    method public void onChange();
3009  }
3010
3011  public final class TimeState implements android.os.Parcelable {
3012    method public int describeContents();
3013    method @NonNull public android.app.time.UnixEpochTime getUnixEpochTime();
3014    method public boolean getUserShouldConfirmTime();
3015    method public void writeToParcel(@NonNull android.os.Parcel, int);
3016    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.TimeState> CREATOR;
3017  }
3018
3019  public final class TimeZoneCapabilities implements android.os.Parcelable {
3020    method public int describeContents();
3021    method public int getConfigureAutoDetectionEnabledCapability();
3022    method public int getConfigureGeoDetectionEnabledCapability();
3023    method public int getSetManualTimeZoneCapability();
3024    method public void writeToParcel(@NonNull android.os.Parcel, int);
3025    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.TimeZoneCapabilities> CREATOR;
3026  }
3027
3028  public final class TimeZoneCapabilitiesAndConfig implements android.os.Parcelable {
3029    method public int describeContents();
3030    method @NonNull public android.app.time.TimeZoneCapabilities getCapabilities();
3031    method @NonNull public android.app.time.TimeZoneConfiguration getConfiguration();
3032    method public void writeToParcel(@NonNull android.os.Parcel, int);
3033    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.TimeZoneCapabilitiesAndConfig> CREATOR;
3034  }
3035
3036  public final class TimeZoneConfiguration implements android.os.Parcelable {
3037    method public int describeContents();
3038    method public boolean isAutoDetectionEnabled();
3039    method public boolean isGeoDetectionEnabled();
3040    method public void writeToParcel(@NonNull android.os.Parcel, int);
3041    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.TimeZoneConfiguration> CREATOR;
3042  }
3043
3044  public static final class TimeZoneConfiguration.Builder {
3045    ctor public TimeZoneConfiguration.Builder();
3046    ctor public TimeZoneConfiguration.Builder(@NonNull android.app.time.TimeZoneConfiguration);
3047    method @NonNull public android.app.time.TimeZoneConfiguration build();
3048    method @NonNull public android.app.time.TimeZoneConfiguration.Builder setAutoDetectionEnabled(boolean);
3049    method @NonNull public android.app.time.TimeZoneConfiguration.Builder setGeoDetectionEnabled(boolean);
3050  }
3051
3052  public final class TimeZoneState implements android.os.Parcelable {
3053    method public int describeContents();
3054    method @NonNull public String getId();
3055    method public boolean getUserShouldConfirmId();
3056    method public void writeToParcel(@NonNull android.os.Parcel, int);
3057    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.TimeZoneState> CREATOR;
3058  }
3059
3060  public final class UnixEpochTime implements android.os.Parcelable {
3061    ctor public UnixEpochTime(long, long);
3062    method @NonNull public android.app.time.UnixEpochTime at(long);
3063    method public int describeContents();
3064    method public long getElapsedRealtimeMillis();
3065    method public long getUnixEpochTimeMillis();
3066    method public void writeToParcel(@NonNull android.os.Parcel, int);
3067    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.UnixEpochTime> CREATOR;
3068  }
3069
3070}
3071
3072package android.app.usage {
3073
3074  public final class BroadcastResponseStats implements android.os.Parcelable {
3075    ctor public BroadcastResponseStats(@NonNull String, @IntRange(from=1) long);
3076    method public int describeContents();
3077    method @IntRange(from=0) public int getBroadcastsDispatchedCount();
3078    method @IntRange(from=1) public long getId();
3079    method @IntRange(from=0) public int getNotificationsCancelledCount();
3080    method @IntRange(from=0) public int getNotificationsPostedCount();
3081    method @IntRange(from=0) public int getNotificationsUpdatedCount();
3082    method @NonNull public String getPackageName();
3083    method public void writeToParcel(@NonNull android.os.Parcel, int);
3084    field @NonNull public static final android.os.Parcelable.Creator<android.app.usage.BroadcastResponseStats> CREATOR;
3085  }
3086
3087  public final class CacheQuotaHint implements android.os.Parcelable {
3088    ctor public CacheQuotaHint(@NonNull android.app.usage.CacheQuotaHint.Builder);
3089    method public int describeContents();
3090    method public long getQuota();
3091    method public int getUid();
3092    method @Nullable public android.app.usage.UsageStats getUsageStats();
3093    method @Nullable public String getVolumeUuid();
3094    method public void writeToParcel(@NonNull android.os.Parcel, int);
3095    field @NonNull public static final android.os.Parcelable.Creator<android.app.usage.CacheQuotaHint> CREATOR;
3096    field public static final long QUOTA_NOT_SET = -1L; // 0xffffffffffffffffL
3097  }
3098
3099  public static final class CacheQuotaHint.Builder {
3100    ctor public CacheQuotaHint.Builder();
3101    ctor public CacheQuotaHint.Builder(@NonNull android.app.usage.CacheQuotaHint);
3102    method @NonNull public android.app.usage.CacheQuotaHint build();
3103    method @NonNull public android.app.usage.CacheQuotaHint.Builder setQuota(long);
3104    method @NonNull public android.app.usage.CacheQuotaHint.Builder setUid(int);
3105    method @NonNull public android.app.usage.CacheQuotaHint.Builder setUsageStats(@Nullable android.app.usage.UsageStats);
3106    method @NonNull public android.app.usage.CacheQuotaHint.Builder setVolumeUuid(@Nullable String);
3107  }
3108
3109  public abstract class CacheQuotaService extends android.app.Service {
3110    ctor public CacheQuotaService();
3111    method public android.os.IBinder onBind(android.content.Intent);
3112    method public abstract java.util.List<android.app.usage.CacheQuotaHint> onComputeCacheQuotaHints(java.util.List<android.app.usage.CacheQuotaHint>);
3113    field public static final String SERVICE_INTERFACE = "android.app.usage.CacheQuotaService";
3114  }
3115
3116  public static final class UsageEvents.Event {
3117    method public int getInstanceId();
3118    method @Nullable public String getNotificationChannelId();
3119    method @Nullable public String getTaskRootClassName();
3120    method @Nullable public String getTaskRootPackageName();
3121    method public boolean isInstantApp();
3122    field public static final int NOTIFICATION_INTERRUPTION = 12; // 0xc
3123    field public static final int NOTIFICATION_SEEN = 10; // 0xa
3124    field public static final int SLICE_PINNED = 14; // 0xe
3125    field public static final int SLICE_PINNED_PRIV = 13; // 0xd
3126    field public static final int SYSTEM_INTERACTION = 6; // 0x6
3127  }
3128
3129  public final class UsageStats implements android.os.Parcelable {
3130    method public int getAppLaunchCount();
3131    method public long getLastTimeAnyComponentUsed();
3132  }
3133
3134  public final class UsageStatsManager {
3135    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RESPONSE_STATS) public void clearBroadcastResponseStats(@Nullable String, @IntRange(from=0) long);
3136    method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public int getAppStandbyBucket(String);
3137    method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public java.util.Map<java.lang.String,java.lang.Integer> getAppStandbyBuckets();
3138    method @RequiresPermission(allOf={android.Manifest.permission.INTERACT_ACROSS_USERS, android.Manifest.permission.PACKAGE_USAGE_STATS}) public long getLastTimeAnyComponentUsed(@NonNull String);
3139    method public int getUsageSource();
3140    method @RequiresPermission(android.Manifest.permission.BIND_CARRIER_SERVICES) public void onCarrierPrivilegedAppsChanged();
3141    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RESPONSE_STATS) public java.util.List<android.app.usage.BroadcastResponseStats> queryBroadcastResponseStats(@Nullable String, @IntRange(from=0) long);
3142    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);
3143    method @RequiresPermission(android.Manifest.permission.OBSERVE_APP_USAGE) public void registerAppUsageObserver(int, @NonNull String[], long, @NonNull java.util.concurrent.TimeUnit, @NonNull android.app.PendingIntent);
3144    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);
3145    method public void reportUsageStart(@NonNull android.app.Activity, @NonNull String);
3146    method public void reportUsageStart(@NonNull android.app.Activity, @NonNull String, long);
3147    method public void reportUsageStop(@NonNull android.app.Activity, @NonNull String);
3148    method @RequiresPermission(android.Manifest.permission.CHANGE_APP_IDLE_STATE) public void setAppStandbyBucket(String, int);
3149    method @RequiresPermission(android.Manifest.permission.CHANGE_APP_IDLE_STATE) public void setAppStandbyBuckets(java.util.Map<java.lang.String,java.lang.Integer>);
3150    method @RequiresPermission(android.Manifest.permission.CHANGE_APP_LAUNCH_TIME_ESTIMATE) public void setEstimatedLaunchTimeMillis(@NonNull String, long);
3151    method @RequiresPermission(android.Manifest.permission.CHANGE_APP_LAUNCH_TIME_ESTIMATE) public void setEstimatedLaunchTimesMillis(@NonNull java.util.Map<java.lang.String,java.lang.Long>);
3152    method @RequiresPermission(allOf={android.Manifest.permission.SUSPEND_APPS, android.Manifest.permission.OBSERVE_APP_USAGE}) public void unregisterAppUsageLimitObserver(int);
3153    method @RequiresPermission(android.Manifest.permission.OBSERVE_APP_USAGE) public void unregisterAppUsageObserver(int);
3154    method @RequiresPermission(android.Manifest.permission.OBSERVE_APP_USAGE) public void unregisterUsageSessionObserver(int);
3155    method @Deprecated @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public void whitelistAppTemporarily(String, long, android.os.UserHandle);
3156    field public static final String EXTRA_OBSERVER_ID = "android.app.usage.extra.OBSERVER_ID";
3157    field public static final String EXTRA_TIME_LIMIT = "android.app.usage.extra.TIME_LIMIT";
3158    field public static final String EXTRA_TIME_USED = "android.app.usage.extra.TIME_USED";
3159    field public static final int STANDBY_BUCKET_EXEMPTED = 5; // 0x5
3160    field public static final int STANDBY_BUCKET_NEVER = 50; // 0x32
3161    field public static final int USAGE_SOURCE_CURRENT_ACTIVITY = 2; // 0x2
3162    field public static final int USAGE_SOURCE_TASK_ROOT_ACTIVITY = 1; // 0x1
3163  }
3164
3165}
3166
3167package android.app.wallpaper {
3168
3169  @FlaggedApi("android.app.live_wallpaper_content_handling") public final class WallpaperDescription implements android.os.Parcelable {
3170    method @NonNull public android.util.SparseArray<android.graphics.Rect> getCropHints();
3171  }
3172
3173}
3174
3175package android.app.wallpapereffectsgeneration {
3176
3177  public final class CameraAttributes implements android.os.Parcelable {
3178    method public int describeContents();
3179    method @NonNull public float[] getAnchorPointInOutputUvSpace();
3180    method @NonNull public float[] getAnchorPointInWorldSpace();
3181    method @FloatRange(from=-90.0F, to=90.0f) public float getCameraOrbitPitchDegrees();
3182    method @FloatRange(from=-180.0F, to=180.0f) public float getCameraOrbitYawDegrees();
3183    method public float getDollyDistanceInWorldSpace();
3184    method @FloatRange(from=0.0f) public float getFrustumFarInWorldSpace();
3185    method @FloatRange(from=0.0f) public float getFrustumNearInWorldSpace();
3186    method @FloatRange(from=0.0f, to=180.0f, fromInclusive=false) public float getVerticalFovDegrees();
3187    method public void writeToParcel(@NonNull android.os.Parcel, int);
3188    field @NonNull public static final android.os.Parcelable.Creator<android.app.wallpapereffectsgeneration.CameraAttributes> CREATOR;
3189  }
3190
3191  public static final class CameraAttributes.Builder {
3192    ctor public CameraAttributes.Builder(@NonNull @Size(3) float[], @NonNull @Size(2) float[]);
3193    method @NonNull public android.app.wallpapereffectsgeneration.CameraAttributes build();
3194    method @NonNull public android.app.wallpapereffectsgeneration.CameraAttributes.Builder setCameraOrbitPitchDegrees(@FloatRange(from=-90.0F, to=90.0f) float);
3195    method @NonNull public android.app.wallpapereffectsgeneration.CameraAttributes.Builder setCameraOrbitYawDegrees(@FloatRange(from=-180.0F, to=180.0f) float);
3196    method @NonNull public android.app.wallpapereffectsgeneration.CameraAttributes.Builder setDollyDistanceInWorldSpace(float);
3197    method @NonNull public android.app.wallpapereffectsgeneration.CameraAttributes.Builder setFrustumFarInWorldSpace(@FloatRange(from=0.0f) float);
3198    method @NonNull public android.app.wallpapereffectsgeneration.CameraAttributes.Builder setFrustumNearInWorldSpace(@FloatRange(from=0.0f) float);
3199    method @NonNull public android.app.wallpapereffectsgeneration.CameraAttributes.Builder setVerticalFovDegrees(@FloatRange(from=0.0f, to=180.0f, fromInclusive=false) float);
3200  }
3201
3202  public final class CinematicEffectRequest implements android.os.Parcelable {
3203    ctor public CinematicEffectRequest(@NonNull String, @NonNull android.graphics.Bitmap);
3204    method public int describeContents();
3205    method @NonNull public android.graphics.Bitmap getBitmap();
3206    method @NonNull public String getTaskId();
3207    method public void writeToParcel(@NonNull android.os.Parcel, int);
3208    field @NonNull public static final android.os.Parcelable.Creator<android.app.wallpapereffectsgeneration.CinematicEffectRequest> CREATOR;
3209  }
3210
3211  public final class CinematicEffectResponse implements android.os.Parcelable {
3212    method public int describeContents();
3213    method @Nullable public android.app.wallpapereffectsgeneration.CameraAttributes getEndKeyFrame();
3214    method public int getImageContentType();
3215    method @Nullable public android.app.wallpapereffectsgeneration.CameraAttributes getStartKeyFrame();
3216    method public int getStatusCode();
3217    method @NonNull public String getTaskId();
3218    method @NonNull public java.util.List<android.app.wallpapereffectsgeneration.TexturedMesh> getTexturedMeshes();
3219    method public void writeToParcel(@NonNull android.os.Parcel, int);
3220    field public static final int CINEMATIC_EFFECT_STATUS_ANIMATION_FAILURE = 10; // 0xa
3221    field public static final int CINEMATIC_EFFECT_STATUS_CONTENT_TARGET_ERROR = 8; // 0x8
3222    field public static final int CINEMATIC_EFFECT_STATUS_CONTENT_TOO_FLAT = 9; // 0x9
3223    field public static final int CINEMATIC_EFFECT_STATUS_CONTENT_UNSUPPORTED = 7; // 0x7
3224    field public static final int CINEMATIC_EFFECT_STATUS_ERROR = 0; // 0x0
3225    field public static final int CINEMATIC_EFFECT_STATUS_FEATURE_DISABLED = 5; // 0x5
3226    field public static final int CINEMATIC_EFFECT_STATUS_IMAGE_FORMAT_NOT_SUITABLE = 6; // 0x6
3227    field public static final int CINEMATIC_EFFECT_STATUS_NOT_READY = 2; // 0x2
3228    field public static final int CINEMATIC_EFFECT_STATUS_OK = 1; // 0x1
3229    field public static final int CINEMATIC_EFFECT_STATUS_PENDING = 3; // 0x3
3230    field public static final int CINEMATIC_EFFECT_STATUS_TOO_MANY_REQUESTS = 4; // 0x4
3231    field @NonNull public static final android.os.Parcelable.Creator<android.app.wallpapereffectsgeneration.CinematicEffectResponse> CREATOR;
3232    field public static final int IMAGE_CONTENT_TYPE_LANDSCAPE = 2; // 0x2
3233    field public static final int IMAGE_CONTENT_TYPE_OTHER = 3; // 0x3
3234    field public static final int IMAGE_CONTENT_TYPE_PEOPLE_PORTRAIT = 1; // 0x1
3235    field public static final int IMAGE_CONTENT_TYPE_UNKNOWN = 0; // 0x0
3236  }
3237
3238  public static final class CinematicEffectResponse.Builder {
3239    ctor public CinematicEffectResponse.Builder(int, @NonNull String);
3240    method @NonNull public android.app.wallpapereffectsgeneration.CinematicEffectResponse build();
3241    method @NonNull public android.app.wallpapereffectsgeneration.CinematicEffectResponse.Builder setEndKeyFrame(@Nullable android.app.wallpapereffectsgeneration.CameraAttributes);
3242    method @NonNull public android.app.wallpapereffectsgeneration.CinematicEffectResponse.Builder setImageContentType(int);
3243    method @NonNull public android.app.wallpapereffectsgeneration.CinematicEffectResponse.Builder setStartKeyFrame(@Nullable android.app.wallpapereffectsgeneration.CameraAttributes);
3244    method @NonNull public android.app.wallpapereffectsgeneration.CinematicEffectResponse.Builder setTexturedMeshes(@NonNull java.util.List<android.app.wallpapereffectsgeneration.TexturedMesh>);
3245  }
3246
3247  public final class TexturedMesh implements android.os.Parcelable {
3248    method public int describeContents();
3249    method @NonNull public android.graphics.Bitmap getBitmap();
3250    method @NonNull public int[] getIndices();
3251    method @NonNull public int getIndicesLayoutType();
3252    method @NonNull public float[] getVertices();
3253    method @NonNull public int getVerticesLayoutType();
3254    method public void writeToParcel(@NonNull android.os.Parcel, int);
3255    field @NonNull public static final android.os.Parcelable.Creator<android.app.wallpapereffectsgeneration.TexturedMesh> CREATOR;
3256    field public static final int INDICES_LAYOUT_TRIANGLES = 1; // 0x1
3257    field public static final int INDICES_LAYOUT_UNDEFINED = 0; // 0x0
3258    field public static final int VERTICES_LAYOUT_POSITION3_UV2 = 1; // 0x1
3259    field public static final int VERTICES_LAYOUT_UNDEFINED = 0; // 0x0
3260  }
3261
3262  public static final class TexturedMesh.Builder {
3263    ctor public TexturedMesh.Builder(@NonNull android.graphics.Bitmap);
3264    method @NonNull public android.app.wallpapereffectsgeneration.TexturedMesh build();
3265    method @NonNull public android.app.wallpapereffectsgeneration.TexturedMesh.Builder setIndices(@NonNull int[]);
3266    method @NonNull public android.app.wallpapereffectsgeneration.TexturedMesh.Builder setIndicesLayoutType(int);
3267    method @NonNull public android.app.wallpapereffectsgeneration.TexturedMesh.Builder setVertices(@NonNull float[]);
3268    method @NonNull public android.app.wallpapereffectsgeneration.TexturedMesh.Builder setVerticesLayoutType(int);
3269  }
3270
3271  public final class WallpaperEffectsGenerationManager {
3272    method @RequiresPermission(android.Manifest.permission.MANAGE_WALLPAPER_EFFECTS_GENERATION) public void generateCinematicEffect(@NonNull android.app.wallpapereffectsgeneration.CinematicEffectRequest, @NonNull java.util.concurrent.Executor, @NonNull android.app.wallpapereffectsgeneration.WallpaperEffectsGenerationManager.CinematicEffectListener);
3273  }
3274
3275  public static interface WallpaperEffectsGenerationManager.CinematicEffectListener {
3276    method public void onCinematicEffectGenerated(@NonNull android.app.wallpapereffectsgeneration.CinematicEffectResponse);
3277  }
3278
3279}
3280
3281package android.app.wearable {
3282
3283  @FlaggedApi("android.app.wearable.enable_concurrent_wearable_connections") public interface WearableConnection {
3284    method @NonNull public android.os.ParcelFileDescriptor getConnection();
3285    method @NonNull public android.os.PersistableBundle getMetadata();
3286    method public void onConnectionAccepted();
3287    method public void onError(int);
3288  }
3289
3290  public final class WearableSensingDataRequest implements android.os.Parcelable {
3291    method public int describeContents();
3292    method public int getDataSize();
3293    method public int getDataType();
3294    method public static int getMaxRequestSize();
3295    method public static int getRateLimit();
3296    method @NonNull public static java.time.Duration getRateLimitWindowSize();
3297    method @NonNull public android.os.PersistableBundle getRequestDetails();
3298    method public void writeToParcel(@NonNull android.os.Parcel, int);
3299    field @NonNull public static final android.os.Parcelable.Creator<android.app.wearable.WearableSensingDataRequest> CREATOR;
3300  }
3301
3302  public static final class WearableSensingDataRequest.Builder {
3303    ctor public WearableSensingDataRequest.Builder(int);
3304    method @NonNull public android.app.wearable.WearableSensingDataRequest build();
3305    method @NonNull public android.app.wearable.WearableSensingDataRequest.Builder setRequestDetails(@NonNull android.os.PersistableBundle);
3306  }
3307
3308  public class WearableSensingManager {
3309    method @FlaggedApi("android.app.wearable.enable_concurrent_wearable_connections") @RequiresPermission(android.Manifest.permission.MANAGE_WEARABLE_SENSING_SERVICE) public int getAvailableConnectionCount();
3310    method @Nullable public static android.app.wearable.WearableSensingDataRequest getDataRequestFromIntent(@NonNull android.content.Intent);
3311    method @Deprecated @FlaggedApi("android.app.wearable.enable_concurrent_wearable_connections") @RequiresPermission(android.Manifest.permission.MANAGE_WEARABLE_SENSING_SERVICE) public void provideConnection(@NonNull android.os.ParcelFileDescriptor, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
3312    method @FlaggedApi("android.app.wearable.enable_concurrent_wearable_connections") @RequiresPermission(android.Manifest.permission.MANAGE_WEARABLE_SENSING_SERVICE) public void provideConnection(@NonNull android.app.wearable.WearableConnection, @NonNull java.util.concurrent.Executor);
3313    method @RequiresPermission(android.Manifest.permission.MANAGE_WEARABLE_SENSING_SERVICE) public void provideData(@NonNull android.os.PersistableBundle, @Nullable android.os.SharedMemory, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
3314    method @Deprecated @RequiresPermission(android.Manifest.permission.MANAGE_WEARABLE_SENSING_SERVICE) public void provideDataStream(@NonNull android.os.ParcelFileDescriptor, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
3315    method @FlaggedApi("android.app.wearable.enable_provide_read_only_pfd") @RequiresPermission(android.Manifest.permission.MANAGE_WEARABLE_SENSING_SERVICE) public void provideReadOnlyParcelFileDescriptor(@NonNull android.os.ParcelFileDescriptor, @NonNull android.os.PersistableBundle, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
3316    method @RequiresPermission(android.Manifest.permission.MANAGE_WEARABLE_SENSING_SERVICE) public void registerDataRequestObserver(int, @NonNull android.app.PendingIntent, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
3317    method @FlaggedApi("android.app.wearable.enable_concurrent_wearable_connections") @RequiresPermission(android.Manifest.permission.MANAGE_WEARABLE_SENSING_SERVICE) public void removeAllConnections();
3318    method @FlaggedApi("android.app.wearable.enable_concurrent_wearable_connections") @RequiresPermission(android.Manifest.permission.MANAGE_WEARABLE_SENSING_SERVICE) public void removeConnection(@NonNull android.app.wearable.WearableConnection);
3319    method @FlaggedApi("android.app.wearable.enable_hotword_wearable_sensing_api") @RequiresPermission(android.Manifest.permission.MANAGE_WEARABLE_SENSING_SERVICE) public void startHotwordRecognition(@Nullable android.content.ComponentName, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
3320    method @FlaggedApi("android.app.wearable.enable_hotword_wearable_sensing_api") @RequiresPermission(android.Manifest.permission.MANAGE_WEARABLE_SENSING_SERVICE) public void stopHotwordRecognition(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
3321    method @RequiresPermission(android.Manifest.permission.MANAGE_WEARABLE_SENSING_SERVICE) public void unregisterDataRequestObserver(int, @NonNull android.app.PendingIntent, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
3322    field public static final int STATUS_ACCESS_DENIED = 5; // 0x5
3323    field public static final int STATUS_CHANNEL_ERROR = 7; // 0x7
3324    field @FlaggedApi("android.app.wearable.enable_concurrent_wearable_connections") public static final int STATUS_MAX_CONCURRENT_CONNECTIONS_EXCEEDED = 9; // 0x9
3325    field public static final int STATUS_SERVICE_UNAVAILABLE = 3; // 0x3
3326    field public static final int STATUS_SUCCESS = 1; // 0x1
3327    field public static final int STATUS_UNKNOWN = 0; // 0x0
3328    field @Deprecated public static final int STATUS_UNSUPPORTED = 2; // 0x2
3329    field public static final int STATUS_UNSUPPORTED_DATA_TYPE = 8; // 0x8
3330    field public static final int STATUS_UNSUPPORTED_OPERATION = 6; // 0x6
3331    field public static final int STATUS_WEARABLE_UNAVAILABLE = 4; // 0x4
3332  }
3333
3334}
3335
3336package android.apphibernation {
3337
3338  public class AppHibernationManager {
3339    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public java.util.List<java.lang.String> getHibernatingPackagesForUser();
3340    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public java.util.Map<java.lang.String,android.apphibernation.HibernationStats> getHibernationStatsForUser(@NonNull java.util.Set<java.lang.String>);
3341    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public java.util.Map<java.lang.String,android.apphibernation.HibernationStats> getHibernationStatsForUser();
3342    method @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public boolean isHibernatingForUser(@NonNull String);
3343    method @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public boolean isHibernatingGlobally(@NonNull String);
3344    method @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public boolean isOatArtifactDeletionEnabled();
3345    method @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public void setHibernatingForUser(@NonNull String, boolean);
3346    method @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public void setHibernatingGlobally(@NonNull String, boolean);
3347  }
3348
3349  public final class HibernationStats implements android.os.Parcelable {
3350    method public int describeContents();
3351    method public long getDiskBytesSaved();
3352    method public void writeToParcel(@NonNull android.os.Parcel, int);
3353    field @NonNull public static final android.os.Parcelable.Creator<android.apphibernation.HibernationStats> CREATOR;
3354  }
3355
3356}
3357
3358package android.companion {
3359
3360  public final class AssociationInfo implements android.os.Parcelable {
3361    method @NonNull public String getPackageName();
3362  }
3363
3364  public final class CompanionDeviceManager {
3365    method @RequiresPermission("android.permission.MANAGE_COMPANION_DEVICES") public void addOnAssociationsChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.companion.CompanionDeviceManager.OnAssociationsChangedListener);
3366    method @RequiresPermission(android.Manifest.permission.ASSOCIATE_COMPANION_DEVICES) public void associate(@NonNull String, @NonNull android.net.MacAddress, @NonNull byte[]);
3367    method @RequiresPermission("android.permission.MANAGE_COMPANION_DEVICES") public boolean canPairWithoutPrompt(@NonNull String, @NonNull String, @NonNull android.os.UserHandle);
3368    method @NonNull @RequiresPermission("android.permission.MANAGE_COMPANION_DEVICES") public java.util.List<android.companion.AssociationInfo> getAllAssociations();
3369    method @RequiresPermission("android.permission.MANAGE_COMPANION_DEVICES") public boolean isDeviceAssociatedForWifiConnection(@NonNull String, @NonNull android.net.MacAddress, @NonNull android.os.UserHandle);
3370    method @RequiresPermission(android.Manifest.permission.REQUEST_COMPANION_SELF_MANAGED) public void notifyDeviceAppeared(int);
3371    method @RequiresPermission(android.Manifest.permission.REQUEST_COMPANION_SELF_MANAGED) public void notifyDeviceDisappeared(int);
3372    method @RequiresPermission("android.permission.MANAGE_COMPANION_DEVICES") public void removeOnAssociationsChangedListener(@NonNull android.companion.CompanionDeviceManager.OnAssociationsChangedListener);
3373  }
3374
3375  public static interface CompanionDeviceManager.OnAssociationsChangedListener {
3376    method public void onAssociationsChanged(@NonNull java.util.List<android.companion.AssociationInfo>);
3377  }
3378
3379}
3380
3381package android.companion.virtual {
3382
3383  @FlaggedApi("android.companion.virtualdevice.flags.activity_control_api") public final class ActivityPolicyExemption implements android.os.Parcelable {
3384    method public int describeContents();
3385    method @Nullable public android.content.ComponentName getComponentName();
3386    method public int getDisplayId();
3387    method @Nullable public String getPackageName();
3388    method public void writeToParcel(@NonNull android.os.Parcel, int);
3389    field @NonNull public static final android.os.Parcelable.Creator<android.companion.virtual.ActivityPolicyExemption> CREATOR;
3390  }
3391
3392  @FlaggedApi("android.companion.virtualdevice.flags.activity_control_api") public static final class ActivityPolicyExemption.Builder {
3393    ctor public ActivityPolicyExemption.Builder();
3394    method @NonNull public android.companion.virtual.ActivityPolicyExemption build();
3395    method @NonNull public android.companion.virtual.ActivityPolicyExemption.Builder setComponentName(@NonNull android.content.ComponentName);
3396    method @NonNull public android.companion.virtual.ActivityPolicyExemption.Builder setDisplayId(int);
3397    method @NonNull public android.companion.virtual.ActivityPolicyExemption.Builder setPackageName(@NonNull String);
3398  }
3399
3400  public final class VirtualDevice implements android.os.Parcelable {
3401    method @FlaggedApi("android.companion.virtual.flags.vdm_public_apis") public boolean hasCustomAudioInputSupport();
3402    method @FlaggedApi("android.companion.virtual.flags.vdm_public_apis") public boolean hasCustomCameraSupport();
3403  }
3404
3405  public final class VirtualDeviceManager {
3406    method @NonNull @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public android.companion.virtual.VirtualDeviceManager.VirtualDevice createVirtualDevice(int, @NonNull android.companion.virtual.VirtualDeviceParams);
3407    method @FlaggedApi("android.companion.virtual.flags.persistent_device_id_api") @NonNull public java.util.Set<java.lang.String> getAllPersistentDeviceIds();
3408    method @FlaggedApi("android.companion.virtual.flags.persistent_device_id_api") @Nullable public CharSequence getDisplayNameForPersistentDeviceId(@NonNull String);
3409    field public static final int LAUNCH_FAILURE_NO_ACTIVITY = 2; // 0x2
3410    field public static final int LAUNCH_FAILURE_PENDING_INTENT_CANCELED = 1; // 0x1
3411    field public static final int LAUNCH_SUCCESS = 0; // 0x0
3412    field @FlaggedApi("android.companion.virtual.flags.persistent_device_id_api") public static final String PERSISTENT_DEVICE_ID_DEFAULT = "default:0";
3413  }
3414
3415  public static interface VirtualDeviceManager.ActivityListener {
3416    method @FlaggedApi("android.companion.virtualdevice.flags.activity_control_api") public default void onActivityLaunchBlocked(int, @NonNull android.content.ComponentName, @NonNull android.os.UserHandle, @Nullable android.content.IntentSender);
3417    method public void onDisplayEmpty(int);
3418    method @FlaggedApi("android.companion.virtualdevice.flags.activity_control_api") public default void onSecureWindowHidden(int);
3419    method @FlaggedApi("android.companion.virtualdevice.flags.activity_control_api") public default void onSecureWindowShown(int, @NonNull android.content.ComponentName, @NonNull android.os.UserHandle);
3420    method @Deprecated public void onTopActivityChanged(int, @NonNull android.content.ComponentName);
3421    method public default void onTopActivityChanged(int, @NonNull android.content.ComponentName, int);
3422  }
3423
3424  public static interface VirtualDeviceManager.IntentInterceptorCallback {
3425    method public void onIntentIntercepted(@NonNull android.content.Intent);
3426  }
3427
3428  public static interface VirtualDeviceManager.SoundEffectListener {
3429    method public void onPlaySoundEffect(int);
3430  }
3431
3432  public static class VirtualDeviceManager.VirtualDevice implements java.lang.AutoCloseable {
3433    method public void addActivityListener(@NonNull java.util.concurrent.Executor, @NonNull android.companion.virtual.VirtualDeviceManager.ActivityListener);
3434    method @FlaggedApi("android.companion.virtual.flags.dynamic_policy") public void addActivityPolicyExemption(@NonNull android.content.ComponentName);
3435    method @FlaggedApi("android.companion.virtualdevice.flags.activity_control_api") public void addActivityPolicyExemption(@NonNull android.companion.virtual.ActivityPolicyExemption);
3436    method public void addSoundEffectListener(@NonNull java.util.concurrent.Executor, @NonNull android.companion.virtual.VirtualDeviceManager.SoundEffectListener);
3437    method public void close();
3438    method @NonNull public android.content.Context createContext();
3439    method @NonNull public android.companion.virtual.audio.VirtualAudioDevice createVirtualAudioDevice(@NonNull android.hardware.display.VirtualDisplay, @Nullable java.util.concurrent.Executor, @Nullable android.companion.virtual.audio.VirtualAudioDevice.AudioConfigurationChangeCallback);
3440    method @FlaggedApi("android.companion.virtual.flags.virtual_camera") @NonNull public android.companion.virtual.camera.VirtualCamera createVirtualCamera(@NonNull android.companion.virtual.camera.VirtualCameraConfig);
3441    method @Deprecated @Nullable public android.hardware.display.VirtualDisplay createVirtualDisplay(@IntRange(from=1) int, @IntRange(from=1) int, @IntRange(from=1) int, @Nullable android.view.Surface, int, @Nullable java.util.concurrent.Executor, @Nullable android.hardware.display.VirtualDisplay.Callback);
3442    method @Nullable public android.hardware.display.VirtualDisplay createVirtualDisplay(@NonNull android.hardware.display.VirtualDisplayConfig, @Nullable java.util.concurrent.Executor, @Nullable android.hardware.display.VirtualDisplay.Callback);
3443    method @NonNull public android.hardware.input.VirtualDpad createVirtualDpad(@NonNull android.hardware.input.VirtualDpadConfig);
3444    method @NonNull public android.hardware.input.VirtualKeyboard createVirtualKeyboard(@NonNull android.hardware.input.VirtualKeyboardConfig);
3445    method @Deprecated @NonNull public android.hardware.input.VirtualKeyboard createVirtualKeyboard(@NonNull android.hardware.display.VirtualDisplay, @NonNull String, int, int);
3446    method @NonNull public android.hardware.input.VirtualMouse createVirtualMouse(@NonNull android.hardware.input.VirtualMouseConfig);
3447    method @Deprecated @NonNull public android.hardware.input.VirtualMouse createVirtualMouse(@NonNull android.hardware.display.VirtualDisplay, @NonNull String, int, int);
3448    method @NonNull public android.hardware.input.VirtualNavigationTouchpad createVirtualNavigationTouchpad(@NonNull android.hardware.input.VirtualNavigationTouchpadConfig);
3449    method @FlaggedApi("android.companion.virtualdevice.flags.virtual_rotary") @NonNull public android.hardware.input.VirtualRotaryEncoder createVirtualRotaryEncoder(@NonNull android.hardware.input.VirtualRotaryEncoderConfig);
3450    method @FlaggedApi("android.companion.virtual.flags.virtual_stylus") @NonNull public android.hardware.input.VirtualStylus createVirtualStylus(@NonNull android.hardware.input.VirtualStylusConfig);
3451    method @NonNull public android.hardware.input.VirtualTouchscreen createVirtualTouchscreen(@NonNull android.hardware.input.VirtualTouchscreenConfig);
3452    method @Deprecated @NonNull public android.hardware.input.VirtualTouchscreen createVirtualTouchscreen(@NonNull android.hardware.display.VirtualDisplay, @NonNull String, int, int);
3453    method public int getDeviceId();
3454    method @FlaggedApi("android.companion.virtual.flags.vdm_public_apis") @Nullable public String getPersistentDeviceId();
3455    method @NonNull public java.util.List<android.companion.virtual.sensor.VirtualSensor> getVirtualSensorList();
3456    method @FlaggedApi("android.companion.virtualdevice.flags.device_aware_display_power") public void goToSleep();
3457    method public void launchPendingIntent(int, @NonNull android.app.PendingIntent, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.IntConsumer);
3458    method public void registerIntentInterceptor(@NonNull android.content.IntentFilter, @NonNull java.util.concurrent.Executor, @NonNull android.companion.virtual.VirtualDeviceManager.IntentInterceptorCallback);
3459    method public void removeActivityListener(@NonNull android.companion.virtual.VirtualDeviceManager.ActivityListener);
3460    method @FlaggedApi("android.companion.virtual.flags.dynamic_policy") public void removeActivityPolicyExemption(@NonNull android.content.ComponentName);
3461    method @FlaggedApi("android.companion.virtualdevice.flags.activity_control_api") public void removeActivityPolicyExemption(@NonNull android.companion.virtual.ActivityPolicyExemption);
3462    method public void removeSoundEffectListener(@NonNull android.companion.virtual.VirtualDeviceManager.SoundEffectListener);
3463    method @FlaggedApi("android.companion.virtual.flags.dynamic_policy") public void setDevicePolicy(int, int);
3464    method @FlaggedApi("android.companion.virtualdevice.flags.activity_control_api") public void setDevicePolicy(int, int, int);
3465    method @FlaggedApi("android.companion.virtual.flags.vdm_custom_ime") public void setDisplayImePolicy(int, int);
3466    method public void setShowPointerIcon(boolean);
3467    method public void unregisterIntentInterceptor(@NonNull android.companion.virtual.VirtualDeviceManager.IntentInterceptorCallback);
3468    method @FlaggedApi("android.companion.virtualdevice.flags.device_aware_display_power") public void wakeUp();
3469  }
3470
3471  public final class VirtualDeviceParams implements android.os.Parcelable {
3472    method public int describeContents();
3473    method @Deprecated @NonNull public java.util.Set<android.content.ComponentName> getAllowedActivities();
3474    method @Deprecated @NonNull public java.util.Set<android.content.ComponentName> getAllowedCrossTaskNavigations();
3475    method public int getAudioPlaybackSessionId();
3476    method public int getAudioRecordingSessionId();
3477    method @Deprecated @NonNull public java.util.Set<android.content.ComponentName> getBlockedActivities();
3478    method @Deprecated @NonNull public java.util.Set<android.content.ComponentName> getBlockedCrossTaskNavigations();
3479    method @Deprecated public int getDefaultActivityPolicy();
3480    method @Deprecated public int getDefaultNavigationPolicy();
3481    method public int getDevicePolicy(int);
3482    method @FlaggedApi("android.companion.virtualdevice.flags.device_aware_display_power") @NonNull public java.time.Duration getDimDuration();
3483    method @FlaggedApi("android.companion.virtual.flags.vdm_custom_home") @Nullable public android.content.ComponentName getHomeComponent();
3484    method @FlaggedApi("android.companion.virtual.flags.vdm_custom_ime") @Nullable public android.content.ComponentName getInputMethodComponent();
3485    method public int getLockState();
3486    method @Nullable public String getName();
3487    method @FlaggedApi("android.companion.virtualdevice.flags.device_aware_display_power") @NonNull public java.time.Duration getScreenOffTimeout();
3488    method @NonNull public java.util.Set<android.os.UserHandle> getUsersWithMatchingAccounts();
3489    method @NonNull public java.util.List<android.companion.virtual.sensor.VirtualSensorConfig> getVirtualSensorConfigs();
3490    method public void writeToParcel(@NonNull android.os.Parcel, int);
3491    field @Deprecated public static final int ACTIVITY_POLICY_DEFAULT_ALLOWED = 0; // 0x0
3492    field @Deprecated public static final int ACTIVITY_POLICY_DEFAULT_BLOCKED = 1; // 0x1
3493    field @NonNull public static final android.os.Parcelable.Creator<android.companion.virtual.VirtualDeviceParams> CREATOR;
3494    field public static final int DEVICE_POLICY_CUSTOM = 1; // 0x1
3495    field public static final int DEVICE_POLICY_DEFAULT = 0; // 0x0
3496    field public static final int LOCK_STATE_ALWAYS_UNLOCKED = 1; // 0x1
3497    field public static final int LOCK_STATE_DEFAULT = 0; // 0x0
3498    field @Deprecated public static final int NAVIGATION_POLICY_DEFAULT_ALLOWED = 0; // 0x0
3499    field @Deprecated public static final int NAVIGATION_POLICY_DEFAULT_BLOCKED = 1; // 0x1
3500    field @FlaggedApi("android.companion.virtual.flags.dynamic_policy") public static final int POLICY_TYPE_ACTIVITY = 3; // 0x3
3501    field public static final int POLICY_TYPE_AUDIO = 1; // 0x1
3502    field @FlaggedApi("android.companion.virtualdevice.flags.activity_control_api") public static final int POLICY_TYPE_BLOCKED_ACTIVITY = 6; // 0x6
3503    field @FlaggedApi("android.companion.virtual.flags.virtual_camera") public static final int POLICY_TYPE_CAMERA = 5; // 0x5
3504    field @FlaggedApi("android.companion.virtual.flags.cross_device_clipboard") public static final int POLICY_TYPE_CLIPBOARD = 4; // 0x4
3505    field @FlaggedApi("android.companion.virtualdevice.flags.default_device_camera_access_policy") public static final int POLICY_TYPE_DEFAULT_DEVICE_CAMERA_ACCESS = 7; // 0x7
3506    field public static final int POLICY_TYPE_RECENTS = 2; // 0x2
3507    field public static final int POLICY_TYPE_SENSORS = 0; // 0x0
3508  }
3509
3510  public static final class VirtualDeviceParams.Builder {
3511    ctor public VirtualDeviceParams.Builder();
3512    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder addVirtualSensorConfig(@NonNull android.companion.virtual.sensor.VirtualSensorConfig);
3513    method @NonNull public android.companion.virtual.VirtualDeviceParams build();
3514    method @Deprecated @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setAllowedActivities(@NonNull java.util.Set<android.content.ComponentName>);
3515    method @Deprecated @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setAllowedCrossTaskNavigations(@NonNull java.util.Set<android.content.ComponentName>);
3516    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setAudioPlaybackSessionId(int);
3517    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setAudioRecordingSessionId(int);
3518    method @Deprecated @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setBlockedActivities(@NonNull java.util.Set<android.content.ComponentName>);
3519    method @Deprecated @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setBlockedCrossTaskNavigations(@NonNull java.util.Set<android.content.ComponentName>);
3520    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setDevicePolicy(int, int);
3521    method @FlaggedApi("android.companion.virtualdevice.flags.device_aware_display_power") @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setDimDuration(@NonNull java.time.Duration);
3522    method @FlaggedApi("android.companion.virtual.flags.vdm_custom_home") @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setHomeComponent(@Nullable android.content.ComponentName);
3523    method @FlaggedApi("android.companion.virtual.flags.vdm_custom_ime") @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setInputMethodComponent(@Nullable android.content.ComponentName);
3524    method @NonNull @RequiresPermission(value=android.Manifest.permission.ADD_ALWAYS_UNLOCKED_DISPLAY, conditional=true) public android.companion.virtual.VirtualDeviceParams.Builder setLockState(int);
3525    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setName(@NonNull String);
3526    method @FlaggedApi("android.companion.virtualdevice.flags.device_aware_display_power") @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setScreenOffTimeout(@NonNull java.time.Duration);
3527    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setUsersWithMatchingAccounts(@NonNull java.util.Set<android.os.UserHandle>);
3528    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setVirtualSensorCallback(@NonNull java.util.concurrent.Executor, @NonNull android.companion.virtual.sensor.VirtualSensorCallback);
3529    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setVirtualSensorDirectChannelCallback(@NonNull java.util.concurrent.Executor, @NonNull android.companion.virtual.sensor.VirtualSensorDirectChannelCallback);
3530  }
3531
3532}
3533
3534package android.companion.virtual.audio {
3535
3536  public final class AudioCapture {
3537    method @NonNull public android.media.AudioFormat getFormat();
3538    method public int getRecordingState();
3539    method public int read(@NonNull byte[], int, int);
3540    method public int read(@NonNull byte[], int, int, int);
3541    method public int read(@NonNull java.nio.ByteBuffer, int);
3542    method public int read(@NonNull java.nio.ByteBuffer, int, int);
3543    method public int read(@NonNull float[], int, int, int);
3544    method public int read(@NonNull short[], int, int);
3545    method public int read(@NonNull short[], int, int, int);
3546    method public void startRecording();
3547    method public void stop();
3548  }
3549
3550  public final class AudioInjection {
3551    method @NonNull public android.media.AudioFormat getFormat();
3552    method public int getPlayState();
3553    method public void play();
3554    method public void stop();
3555    method public int write(@NonNull byte[], int, int);
3556    method public int write(@NonNull byte[], int, int, int);
3557    method public int write(@NonNull java.nio.ByteBuffer, int, int);
3558    method public int write(@NonNull java.nio.ByteBuffer, int, int, long);
3559    method public int write(@NonNull float[], int, int, int);
3560    method public int write(@NonNull short[], int, int);
3561    method public int write(@NonNull short[], int, int, int);
3562  }
3563
3564  public final class VirtualAudioDevice implements java.io.Closeable {
3565    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void close();
3566    method @Nullable public android.companion.virtual.audio.AudioCapture getAudioCapture();
3567    method @Nullable public android.companion.virtual.audio.AudioInjection getAudioInjection();
3568    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public android.companion.virtual.audio.AudioCapture startAudioCapture(@NonNull android.media.AudioFormat);
3569    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public android.companion.virtual.audio.AudioInjection startAudioInjection(@NonNull android.media.AudioFormat);
3570  }
3571
3572  public static interface VirtualAudioDevice.AudioConfigurationChangeCallback {
3573    method public void onPlaybackConfigChanged(@NonNull java.util.List<android.media.AudioPlaybackConfiguration>);
3574    method public void onRecordingConfigChanged(@NonNull java.util.List<android.media.AudioRecordingConfiguration>);
3575  }
3576
3577}
3578
3579package android.companion.virtual.camera {
3580
3581  @FlaggedApi("android.companion.virtual.flags.virtual_camera") public final class VirtualCamera implements java.io.Closeable {
3582    method public void close();
3583    method @NonNull public android.companion.virtual.camera.VirtualCameraConfig getConfig();
3584  }
3585
3586  @FlaggedApi("android.companion.virtual.flags.virtual_camera") public interface VirtualCameraCallback {
3587    method public default void onProcessCaptureRequest(int, long);
3588    method public void onStreamClosed(int);
3589    method public void onStreamConfigured(int, @NonNull android.view.Surface, @IntRange(from=1) int, @IntRange(from=1) int, int);
3590  }
3591
3592  @FlaggedApi("android.companion.virtual.flags.virtual_camera") public final class VirtualCameraConfig implements android.os.Parcelable {
3593    method public int describeContents();
3594    method public int getLensFacing();
3595    method @NonNull public String getName();
3596    method public int getSensorOrientation();
3597    method @NonNull public java.util.Set<android.companion.virtual.camera.VirtualCameraStreamConfig> getStreamConfigs();
3598    method public void writeToParcel(@NonNull android.os.Parcel, int);
3599    field @NonNull public static final android.os.Parcelable.Creator<android.companion.virtual.camera.VirtualCameraConfig> CREATOR;
3600    field public static final int SENSOR_ORIENTATION_0 = 0; // 0x0
3601    field public static final int SENSOR_ORIENTATION_180 = 180; // 0xb4
3602    field public static final int SENSOR_ORIENTATION_270 = 270; // 0x10e
3603    field public static final int SENSOR_ORIENTATION_90 = 90; // 0x5a
3604  }
3605
3606  @FlaggedApi("android.companion.virtual.flags.virtual_camera") public static final class VirtualCameraConfig.Builder {
3607    ctor public VirtualCameraConfig.Builder(@NonNull String);
3608    method @NonNull public android.companion.virtual.camera.VirtualCameraConfig.Builder addStreamConfig(@IntRange(from=1) int, @IntRange(from=1) int, int, @IntRange(from=1) int);
3609    method @NonNull public android.companion.virtual.camera.VirtualCameraConfig build();
3610    method @NonNull public android.companion.virtual.camera.VirtualCameraConfig.Builder setLensFacing(int);
3611    method @NonNull public android.companion.virtual.camera.VirtualCameraConfig.Builder setSensorOrientation(int);
3612    method @NonNull public android.companion.virtual.camera.VirtualCameraConfig.Builder setVirtualCameraCallback(@NonNull java.util.concurrent.Executor, @NonNull android.companion.virtual.camera.VirtualCameraCallback);
3613  }
3614
3615  @FlaggedApi("android.companion.virtual.flags.virtual_camera") public final class VirtualCameraStreamConfig implements android.os.Parcelable {
3616    method public int describeContents();
3617    method public int getFormat();
3618    method @IntRange(from=1) public int getHeight();
3619    method @IntRange(from=1) public int getMaximumFramesPerSecond();
3620    method @IntRange(from=1) public int getWidth();
3621    method public void writeToParcel(@NonNull android.os.Parcel, int);
3622    field @NonNull public static final android.os.Parcelable.Creator<android.companion.virtual.camera.VirtualCameraStreamConfig> CREATOR;
3623  }
3624
3625}
3626
3627package android.companion.virtual.sensor {
3628
3629  public final class VirtualSensor implements android.os.Parcelable {
3630    method public int describeContents();
3631    method public int getDeviceId();
3632    method @NonNull public String getName();
3633    method public int getType();
3634    method public void sendEvent(@NonNull android.companion.virtual.sensor.VirtualSensorEvent);
3635    method public void writeToParcel(@NonNull android.os.Parcel, int);
3636    field @NonNull public static final android.os.Parcelable.Creator<android.companion.virtual.sensor.VirtualSensor> CREATOR;
3637  }
3638
3639  public interface VirtualSensorCallback {
3640    method public void onConfigurationChanged(@NonNull android.companion.virtual.sensor.VirtualSensor, boolean, @NonNull java.time.Duration, @NonNull java.time.Duration);
3641  }
3642
3643  public final class VirtualSensorConfig implements android.os.Parcelable {
3644    method public int describeContents();
3645    method public int getDirectChannelTypesSupported();
3646    method public int getHighestDirectReportRateLevel();
3647    method public int getMaxDelay();
3648    method public float getMaximumRange();
3649    method public int getMinDelay();
3650    method @NonNull public String getName();
3651    method public float getPower();
3652    method @FlaggedApi("android.companion.virtualdevice.flags.device_aware_display_power") public int getReportingMode();
3653    method public float getResolution();
3654    method public int getType();
3655    method @Nullable public String getVendor();
3656    method @FlaggedApi("android.companion.virtualdevice.flags.device_aware_display_power") public boolean isWakeUpSensor();
3657    method public void writeToParcel(@NonNull android.os.Parcel, int);
3658    field @NonNull public static final android.os.Parcelable.Creator<android.companion.virtual.sensor.VirtualSensorConfig> CREATOR;
3659  }
3660
3661  public static final class VirtualSensorConfig.Builder {
3662    ctor public VirtualSensorConfig.Builder(@IntRange(from=1) int, @NonNull String);
3663    method @NonNull public android.companion.virtual.sensor.VirtualSensorConfig build();
3664    method @NonNull public android.companion.virtual.sensor.VirtualSensorConfig.Builder setDirectChannelTypesSupported(int);
3665    method @NonNull public android.companion.virtual.sensor.VirtualSensorConfig.Builder setHighestDirectReportRateLevel(int);
3666    method @NonNull public android.companion.virtual.sensor.VirtualSensorConfig.Builder setMaxDelay(int);
3667    method @NonNull public android.companion.virtual.sensor.VirtualSensorConfig.Builder setMaximumRange(float);
3668    method @NonNull public android.companion.virtual.sensor.VirtualSensorConfig.Builder setMinDelay(int);
3669    method @NonNull public android.companion.virtual.sensor.VirtualSensorConfig.Builder setPower(float);
3670    method @FlaggedApi("android.companion.virtualdevice.flags.device_aware_display_power") @NonNull public android.companion.virtual.sensor.VirtualSensorConfig.Builder setReportingMode(int);
3671    method @NonNull public android.companion.virtual.sensor.VirtualSensorConfig.Builder setResolution(float);
3672    method @NonNull public android.companion.virtual.sensor.VirtualSensorConfig.Builder setVendor(@Nullable String);
3673    method @FlaggedApi("android.companion.virtualdevice.flags.device_aware_display_power") @NonNull public android.companion.virtual.sensor.VirtualSensorConfig.Builder setWakeUpSensor(boolean);
3674  }
3675
3676  public interface VirtualSensorDirectChannelCallback {
3677    method public void onDirectChannelConfigured(@IntRange(from=1) int, @NonNull android.companion.virtual.sensor.VirtualSensor, int, @IntRange(from=1) int);
3678    method public void onDirectChannelCreated(@IntRange(from=1) int, @NonNull android.os.SharedMemory);
3679    method public void onDirectChannelDestroyed(@IntRange(from=1) int);
3680  }
3681
3682  public final class VirtualSensorDirectChannelWriter implements java.lang.AutoCloseable {
3683    ctor public VirtualSensorDirectChannelWriter();
3684    method public void addChannel(@IntRange(from=1) int, @NonNull android.os.SharedMemory) throws android.system.ErrnoException;
3685    method public void close();
3686    method public boolean configureChannel(@IntRange(from=1) int, @NonNull android.companion.virtual.sensor.VirtualSensor, int, @IntRange(from=1) int);
3687    method public void removeChannel(@IntRange(from=1) int);
3688    method public boolean writeSensorEvent(@NonNull android.companion.virtual.sensor.VirtualSensor, @NonNull android.companion.virtual.sensor.VirtualSensorEvent);
3689  }
3690
3691  public final class VirtualSensorEvent implements android.os.Parcelable {
3692    method public int describeContents();
3693    method public long getTimestampNanos();
3694    method @NonNull public float[] getValues();
3695    method public void writeToParcel(@NonNull android.os.Parcel, int);
3696    field @NonNull public static final android.os.Parcelable.Creator<android.companion.virtual.sensor.VirtualSensorEvent> CREATOR;
3697  }
3698
3699  public static final class VirtualSensorEvent.Builder {
3700    ctor public VirtualSensorEvent.Builder(@NonNull float[]);
3701    method @NonNull public android.companion.virtual.sensor.VirtualSensorEvent build();
3702    method @NonNull public android.companion.virtual.sensor.VirtualSensorEvent.Builder setTimestampNanos(long);
3703  }
3704
3705}
3706
3707package android.content {
3708
3709  public class ApexEnvironment {
3710    method @NonNull public static android.content.ApexEnvironment getApexEnvironment(@NonNull String);
3711    method @NonNull public java.io.File getCredentialProtectedDataDirForUser(@NonNull android.os.UserHandle);
3712    method @NonNull public java.io.File getDeviceProtectedDataDir();
3713    method @NonNull public java.io.File getDeviceProtectedDataDirForUser(@NonNull android.os.UserHandle);
3714  }
3715
3716  public final class AttributionSource implements android.os.Parcelable {
3717    method @NonNull @RequiresPermission(android.Manifest.permission.RENOUNCE_PERMISSIONS) public java.util.Set<java.lang.String> getRenouncedPermissions();
3718  }
3719
3720  public static final class AttributionSource.Builder {
3721    method @NonNull @RequiresPermission(android.Manifest.permission.RENOUNCE_PERMISSIONS) public android.content.AttributionSource.Builder setRenouncedPermissions(@Nullable java.util.Set<java.lang.String>);
3722  }
3723
3724  public abstract class BroadcastReceiver {
3725    method @NonNull public final android.os.UserHandle getSendingUser();
3726  }
3727
3728  public class ClipboardManager extends android.text.ClipboardManager {
3729    method @RequiresPermission(android.Manifest.permission.MANAGE_CLIPBOARD_ACCESS_NOTIFICATION) public boolean areClipboardAccessNotificationsEnabled();
3730    method @RequiresPermission(android.Manifest.permission.MANAGE_CLIPBOARD_ACCESS_NOTIFICATION) public void setClipboardAccessNotificationsEnabled(boolean);
3731    method @RequiresPermission(android.Manifest.permission.SET_CLIP_SOURCE) public void setPrimaryClipAsPackage(@NonNull android.content.ClipData, @NonNull String);
3732  }
3733
3734  public abstract class ContentProvider implements android.content.ComponentCallbacks2 {
3735    method public int checkUriPermission(@NonNull android.net.Uri, int, int);
3736  }
3737
3738  public class ContentProviderClient implements java.lang.AutoCloseable {
3739    method @RequiresPermission(android.Manifest.permission.REMOVE_TASKS) public void setDetectNotResponding(long);
3740  }
3741
3742  public abstract class ContentResolver {
3743    method public int checkUriPermission(@NonNull android.net.Uri, int, int);
3744    method @NonNull public static android.net.Uri decodeFromFile(@NonNull java.io.File);
3745    method @NonNull public static java.io.File encodeToFile(@NonNull android.net.Uri);
3746    method @Nullable @RequiresPermission("android.permission.CACHE_CONTENT") public android.os.Bundle getCache(@NonNull android.net.Uri);
3747    method @RequiresPermission("android.permission.CACHE_CONTENT") public void putCache(@NonNull android.net.Uri, @Nullable android.os.Bundle);
3748  }
3749
3750  public abstract class Context {
3751    method @NonNull public android.content.Context createContextAsUser(@NonNull android.os.UserHandle, int);
3752    method public abstract android.content.Context createCredentialProtectedStorageContext();
3753    method @NonNull public android.content.Context createPackageContextAsUser(@NonNull String, int, @NonNull android.os.UserHandle) throws android.content.pm.PackageManager.NameNotFoundException;
3754    method @Nullable public abstract java.io.File getPreloadsFileCache();
3755    method public abstract boolean isCredentialProtectedStorage();
3756    method @Nullable @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public android.content.Intent registerReceiverForAllUsers(@Nullable android.content.BroadcastReceiver, @NonNull android.content.IntentFilter, @Nullable String, @Nullable android.os.Handler);
3757    method @Nullable @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public android.content.Intent registerReceiverForAllUsers(@Nullable android.content.BroadcastReceiver, @NonNull android.content.IntentFilter, @Nullable String, @Nullable android.os.Handler, int);
3758    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);
3759    method public void sendBroadcastMultiplePermissions(@NonNull android.content.Intent, @NonNull String[], @Nullable android.app.BroadcastOptions);
3760    method @FlaggedApi("android.os.ordered_broadcast_multiple_permissions") public void sendOrderedBroadcastMultiplePermissions(@NonNull android.content.Intent, @NonNull String[], @Nullable String, @Nullable android.content.BroadcastReceiver, @Nullable android.os.Handler, int, @Nullable String, @Nullable android.os.Bundle, @Nullable android.os.Bundle);
3761    method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public void startActivityAsUser(@NonNull @RequiresPermission android.content.Intent, @NonNull android.os.UserHandle);
3762    method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public void startActivityAsUser(@NonNull @RequiresPermission android.content.Intent, @Nullable android.os.Bundle, @NonNull android.os.UserHandle);
3763    field public static final String AMBIENT_CONTEXT_SERVICE = "ambient_context";
3764    field public static final String APP_HIBERNATION_SERVICE = "app_hibernation";
3765    field public static final String APP_INTEGRITY_SERVICE = "app_integrity";
3766    field public static final String APP_PREDICTION_SERVICE = "app_prediction";
3767    field public static final String AUDIO_DEVICE_VOLUME_SERVICE = "audio_device_volume";
3768    field @FlaggedApi("android.security.secure_lockdown") public static final String AUTHENTICATION_POLICY_SERVICE = "authentication_policy";
3769    field public static final String BACKUP_SERVICE = "backup";
3770    field public static final String BATTERY_STATS_SERVICE = "batterystats";
3771    field public static final int BIND_ALLOW_BACKGROUND_ACTIVITY_STARTS = 1048576; // 0x100000
3772    field @Deprecated public static final int BIND_ALLOW_FOREGROUND_SERVICE_STARTS_FROM_BACKGROUND = 262144; // 0x40000
3773    field @FlaggedApi("com.android.server.telecom.flags.telecom_mainline_blocked_numbers_manager") public static final String BLOCKED_NUMBERS_SERVICE = "blocked_numbers";
3774    field public static final String CLOUDSEARCH_SERVICE = "cloudsearch";
3775    field public static final String CONTENT_SUGGESTIONS_SERVICE = "content_suggestions";
3776    field public static final String CONTEXTHUB_SERVICE = "contexthub";
3777    field @FlaggedApi("android.app.contextualsearch.flags.enable_service") public static final String CONTEXTUAL_SEARCH_SERVICE = "contextual_search";
3778    field @FlaggedApi("android.permission.flags.enhanced_confirmation_mode_apis_enabled") public static final String ECM_ENHANCED_CONFIRMATION_SERVICE = "ecm_enhanced_confirmation";
3779    field public static final String ETHERNET_SERVICE = "ethernet";
3780    field public static final String EUICC_CARD_SERVICE = "euicc_card";
3781    field public static final String FONT_SERVICE = "font";
3782    field public static final String HDMI_CONTROL_SERVICE = "hdmi_control";
3783    field public static final String MEDIA_TRANSCODING_SERVICE = "media_transcoding";
3784    field public static final String MUSIC_RECOGNITION_SERVICE = "music_recognition";
3785    field public static final String NEARBY_SERVICE = "nearby";
3786    field public static final String NETD_SERVICE = "netd";
3787    field @Deprecated public static final String NETWORK_SCORE_SERVICE = "network_score";
3788    field public static final String OEM_LOCK_SERVICE = "oem_lock";
3789    field @FlaggedApi("android.app.ondeviceintelligence.flags.enable_on_device_intelligence") public static final String ON_DEVICE_INTELLIGENCE_SERVICE = "on_device_intelligence";
3790    field public static final String PERMISSION_CONTROLLER_SERVICE = "permission_controller";
3791    field public static final String PERMISSION_SERVICE = "permission";
3792    field @FlaggedApi("com.android.ranging.flags.ranging_stack_enabled") public static final String RANGING_SERVICE = "ranging";
3793    field public static final String REBOOT_READINESS_SERVICE = "reboot_readiness";
3794    field public static final String ROLLBACK_SERVICE = "rollback";
3795    field public static final String SAFETY_CENTER_SERVICE = "safety_center";
3796    field public static final String SEARCH_UI_SERVICE = "search_ui";
3797    field public static final String SECURE_ELEMENT_SERVICE = "secure_element";
3798    field public static final String SHARED_CONNECTIVITY_SERVICE = "shared_connectivity";
3799    field public static final String SMARTSPACE_SERVICE = "smartspace";
3800    field public static final String STATS_MANAGER = "stats";
3801    field public static final String SYSTEM_CONFIG_SERVICE = "system_config";
3802    field public static final String SYSTEM_UPDATE_SERVICE = "system_update";
3803    field public static final String TETHERING_SERVICE = "tethering";
3804    field @FlaggedApi("com.android.net.thread.platform.flags.thread_enabled_platform") public static final String THREAD_NETWORK_SERVICE = "thread_network";
3805    field public static final String TIME_MANAGER_SERVICE = "time_manager";
3806    field public static final String TRANSLATION_MANAGER_SERVICE = "translation";
3807    field public static final String UI_TRANSLATION_SERVICE = "ui_translation";
3808    field public static final String UWB_SERVICE = "uwb";
3809    field public static final String VIRTUALIZATION_SERVICE = "virtualization";
3810    field public static final String VR_SERVICE = "vrmanager";
3811    field public static final String WALLPAPER_EFFECTS_GENERATION_SERVICE = "wallpaper_effects_generation";
3812    field public static final String WEARABLE_SENSING_SERVICE = "wearable_sensing";
3813    field public static final String WIFI_NL80211_SERVICE = "wifinl80211";
3814    field @Deprecated public static final String WIFI_RTT_SERVICE = "rttmanager";
3815    field public static final String WIFI_SCANNING_SERVICE = "wifiscanner";
3816    field @FlaggedApi("android.net.wifi.flags.usd") public static final String WIFI_USD_SERVICE = "wifi_usd";
3817  }
3818
3819  public final class ContextParams {
3820    method @NonNull @RequiresPermission(android.Manifest.permission.RENOUNCE_PERMISSIONS) public java.util.Set<java.lang.String> getRenouncedPermissions();
3821  }
3822
3823  public static final class ContextParams.Builder {
3824    method @NonNull @RequiresPermission(android.Manifest.permission.RENOUNCE_PERMISSIONS) public android.content.ContextParams.Builder setRenouncedPermissions(@Nullable java.util.Set<java.lang.String>);
3825  }
3826
3827  public class ContextWrapper extends android.content.Context {
3828    method public android.content.Context createCredentialProtectedStorageContext();
3829    method @Nullable public java.io.File getPreloadsFileCache();
3830    method public boolean isCredentialProtectedStorage();
3831    method public void sendBroadcastAsUser(android.content.Intent, android.os.UserHandle, @Nullable String, @Nullable android.os.Bundle);
3832  }
3833
3834  public class Intent implements java.lang.Cloneable android.os.Parcelable {
3835    field public static final String ACTION_ACTIVITY_RECOGNIZER = "android.intent.action.ACTIVITY_RECOGNIZER";
3836    field public static final String ACTION_BATTERY_LEVEL_CHANGED = "android.intent.action.BATTERY_LEVEL_CHANGED";
3837    field public static final String ACTION_CALL_EMERGENCY = "android.intent.action.CALL_EMERGENCY";
3838    field public static final String ACTION_CALL_PRIVILEGED = "android.intent.action.CALL_PRIVILEGED";
3839    field public static final String ACTION_DEVICE_CUSTOMIZATION_READY = "android.intent.action.DEVICE_CUSTOMIZATION_READY";
3840    field public static final String ACTION_DIAL_EMERGENCY = "android.intent.action.DIAL_EMERGENCY";
3841    field public static final String ACTION_DOMAINS_NEED_VERIFICATION = "android.intent.action.DOMAINS_NEED_VERIFICATION";
3842    field public static final String ACTION_FACTORY_RESET = "android.intent.action.FACTORY_RESET";
3843    field public static final String ACTION_GLOBAL_BUTTON = "android.intent.action.GLOBAL_BUTTON";
3844    field public static final String ACTION_INCIDENT_REPORT_READY = "android.intent.action.INCIDENT_REPORT_READY";
3845    field public static final String ACTION_INSTALL_INSTANT_APP_PACKAGE = "android.intent.action.INSTALL_INSTANT_APP_PACKAGE";
3846    field public static final String ACTION_INSTANT_APP_RESOLVER_SETTINGS = "android.intent.action.INSTANT_APP_RESOLVER_SETTINGS";
3847    field @Deprecated public static final String ACTION_INTENT_FILTER_NEEDS_VERIFICATION = "android.intent.action.INTENT_FILTER_NEEDS_VERIFICATION";
3848    field public static final String ACTION_LOAD_DATA = "android.intent.action.LOAD_DATA";
3849    field @FlaggedApi("android.security.frp_enforcement") public static final String ACTION_MAIN_USER_LOCKSCREEN_KNOWLEDGE_FACTOR_CHANGED = "android.intent.action.MAIN_USER_LOCKSCREEN_KNOWLEDGE_FACTOR_CHANGED";
3850    field @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) public static final String ACTION_MANAGE_APP_PERMISSION = "android.intent.action.MANAGE_APP_PERMISSION";
3851    field @Deprecated public static final String ACTION_MANAGE_APP_PERMISSIONS = "android.intent.action.MANAGE_APP_PERMISSIONS";
3852    field @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public static final String ACTION_MANAGE_DEFAULT_APP = "android.intent.action.MANAGE_DEFAULT_APP";
3853    field public static final String ACTION_MANAGE_PERMISSIONS = "android.intent.action.MANAGE_PERMISSIONS";
3854    field public static final String ACTION_MANAGE_PERMISSION_APPS = "android.intent.action.MANAGE_PERMISSION_APPS";
3855    field @RequiresPermission(android.Manifest.permission.START_VIEW_PERMISSION_USAGE) public static final String ACTION_MANAGE_PERMISSION_USAGE = "android.intent.action.MANAGE_PERMISSION_USAGE";
3856    field @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public static final String ACTION_MANAGE_SPECIAL_APP_ACCESSES = "android.intent.action.MANAGE_SPECIAL_APP_ACCESSES";
3857    field @RequiresPermission(android.Manifest.permission.MASTER_CLEAR) public static final String ACTION_MASTER_CLEAR_NOTIFICATION = "android.intent.action.MASTER_CLEAR_NOTIFICATION";
3858    field public static final String ACTION_PACKAGE_NEEDS_INTEGRITY_VERIFICATION = "android.intent.action.PACKAGE_NEEDS_INTEGRITY_VERIFICATION";
3859    field public static final String ACTION_PACKAGE_UNSUSPENDED_MANUALLY = "android.intent.action.PACKAGE_UNSUSPENDED_MANUALLY";
3860    field public static final String ACTION_PENDING_INCIDENT_REPORTS_CHANGED = "android.intent.action.PENDING_INCIDENT_REPORTS_CHANGED";
3861    field public static final String ACTION_PRE_BOOT_COMPLETED = "android.intent.action.PRE_BOOT_COMPLETED";
3862    field public static final String ACTION_QUERY_PACKAGE_RESTART = "android.intent.action.QUERY_PACKAGE_RESTART";
3863    field public static final String ACTION_RESOLVE_INSTANT_APP_PACKAGE = "android.intent.action.RESOLVE_INSTANT_APP_PACKAGE";
3864    field @RequiresPermission(android.Manifest.permission.REVIEW_ACCESSIBILITY_SERVICES) public static final String ACTION_REVIEW_ACCESSIBILITY_SERVICES = "android.intent.action.REVIEW_ACCESSIBILITY_SERVICES";
3865    field @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) public static final String ACTION_REVIEW_APP_DATA_SHARING_UPDATES = "android.intent.action.REVIEW_APP_DATA_SHARING_UPDATES";
3866    field @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) public static final String ACTION_REVIEW_ONGOING_PERMISSION_USAGE = "android.intent.action.REVIEW_ONGOING_PERMISSION_USAGE";
3867    field public static final String ACTION_REVIEW_PERMISSIONS = "android.intent.action.REVIEW_PERMISSIONS";
3868    field @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) public static final String ACTION_REVIEW_PERMISSION_HISTORY = "android.intent.action.REVIEW_PERMISSION_HISTORY";
3869    field @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) public static final String ACTION_REVIEW_PERMISSION_USAGE = "android.intent.action.REVIEW_PERMISSION_USAGE";
3870    field public static final String ACTION_ROLLBACK_COMMITTED = "android.intent.action.ROLLBACK_COMMITTED";
3871    field public static final String ACTION_SHOW_SUSPENDED_APP_DETAILS = "android.intent.action.SHOW_SUSPENDED_APP_DETAILS";
3872    field @Deprecated public static final String ACTION_SIM_STATE_CHANGED = "android.intent.action.SIM_STATE_CHANGED";
3873    field public static final String ACTION_SPLIT_CONFIGURATION_CHANGED = "android.intent.action.SPLIT_CONFIGURATION_CHANGED";
3874    field public static final String ACTION_UPGRADE_SETUP = "android.intent.action.UPGRADE_SETUP";
3875    field public static final String ACTION_USER_ADDED = "android.intent.action.USER_ADDED";
3876    field public static final String ACTION_USER_REMOVED = "android.intent.action.USER_REMOVED";
3877    field public static final String ACTION_USER_SWITCHED = "android.intent.action.USER_SWITCHED";
3878    field @RequiresPermission(android.Manifest.permission.START_VIEW_APP_FEATURES) public static final String ACTION_VIEW_APP_FEATURES = "android.intent.action.VIEW_APP_FEATURES";
3879    field @RequiresPermission(android.Manifest.permission.MANAGE_SENSOR_PRIVACY) public static final String ACTION_VIEW_SAFETY_CENTER_QS = "android.intent.action.VIEW_SAFETY_CENTER_QS";
3880    field public static final String ACTION_VOICE_ASSIST = "android.intent.action.VOICE_ASSIST";
3881    field public static final String CATEGORY_LEANBACK_SETTINGS = "android.intent.category.LEANBACK_SETTINGS";
3882    field public static final String EXTRA_CALLING_PACKAGE = "android.intent.extra.CALLING_PACKAGE";
3883    field public static final String EXTRA_FORCE_FACTORY_RESET = "android.intent.extra.FORCE_FACTORY_RESET";
3884    field public static final String EXTRA_INSTALL_RESULT = "android.intent.extra.INSTALL_RESULT";
3885    field public static final String EXTRA_INSTANT_APP_ACTION = "android.intent.extra.INSTANT_APP_ACTION";
3886    field public static final String EXTRA_INSTANT_APP_BUNDLES = "android.intent.extra.INSTANT_APP_BUNDLES";
3887    field public static final String EXTRA_INSTANT_APP_EXTRAS = "android.intent.extra.INSTANT_APP_EXTRAS";
3888    field public static final String EXTRA_INSTANT_APP_FAILURE = "android.intent.extra.INSTANT_APP_FAILURE";
3889    field public static final String EXTRA_INSTANT_APP_HOSTNAME = "android.intent.extra.INSTANT_APP_HOSTNAME";
3890    field public static final String EXTRA_INSTANT_APP_SUCCESS = "android.intent.extra.INSTANT_APP_SUCCESS";
3891    field public static final String EXTRA_INSTANT_APP_TOKEN = "android.intent.extra.INSTANT_APP_TOKEN";
3892    field public static final String EXTRA_LONG_VERSION_CODE = "android.intent.extra.LONG_VERSION_CODE";
3893    field public static final String EXTRA_ORIGINATING_UID = "android.intent.extra.ORIGINATING_UID";
3894    field public static final String EXTRA_PERMISSION_NAME = "android.intent.extra.PERMISSION_NAME";
3895    field public static final String EXTRA_REASON = "android.intent.extra.REASON";
3896    field public static final String EXTRA_REMOTE_CALLBACK = "android.intent.extra.REMOTE_CALLBACK";
3897    field public static final String EXTRA_RESULT_NEEDED = "android.intent.extra.RESULT_NEEDED";
3898    field public static final String EXTRA_ROLE_NAME = "android.intent.extra.ROLE_NAME";
3899    field public static final String EXTRA_SHOWING_ATTRIBUTION = "android.intent.extra.SHOWING_ATTRIBUTION";
3900    field public static final String EXTRA_UNINSTALL_ALL_USERS = "android.intent.extra.UNINSTALL_ALL_USERS";
3901    field public static final String EXTRA_UNKNOWN_INSTANT_APP = "android.intent.extra.UNKNOWN_INSTANT_APP";
3902    field public static final String EXTRA_USER_HANDLE = "android.intent.extra.user_handle";
3903    field public static final String EXTRA_VERIFICATION_BUNDLE = "android.intent.extra.VERIFICATION_BUNDLE";
3904    field public static final int FLAG_RECEIVER_INCLUDE_BACKGROUND = 16777216; // 0x1000000
3905    field public static final int FLAG_RECEIVER_REGISTERED_ONLY_BEFORE_BOOT = 67108864; // 0x4000000
3906    field public static final String METADATA_SETUP_VERSION = "android.SETUP_VERSION";
3907  }
3908
3909  public class IntentFilter implements android.os.Parcelable {
3910    method public final int getOrder();
3911    method public final void setOrder(int);
3912  }
3913
3914}
3915
3916package android.content.integrity {
3917
3918  public class AppIntegrityManager {
3919    method @NonNull public String getCurrentRuleSetProvider();
3920    method @NonNull public String getCurrentRuleSetVersion();
3921    method public void updateRuleSet(@NonNull android.content.integrity.RuleSet, @NonNull android.content.IntentSender);
3922    field public static final String EXTRA_STATUS = "android.content.integrity.extra.STATUS";
3923    field public static final int STATUS_FAILURE = 1; // 0x1
3924    field public static final int STATUS_SUCCESS = 0; // 0x0
3925  }
3926
3927  public abstract class IntegrityFormula {
3928    method @NonNull public static android.content.integrity.IntegrityFormula all(@NonNull android.content.integrity.IntegrityFormula...);
3929    method @NonNull public static android.content.integrity.IntegrityFormula any(@NonNull android.content.integrity.IntegrityFormula...);
3930    method @NonNull public static android.content.integrity.IntegrityFormula not(@NonNull android.content.integrity.IntegrityFormula);
3931  }
3932
3933  public static final class IntegrityFormula.Application {
3934    method @NonNull public static android.content.integrity.IntegrityFormula certificateLineageContains(@NonNull String);
3935    method @NonNull public static android.content.integrity.IntegrityFormula certificatesContain(@NonNull String);
3936    method @NonNull public static android.content.integrity.IntegrityFormula isPreInstalled();
3937    method @NonNull public static android.content.integrity.IntegrityFormula packageNameEquals(@NonNull String);
3938    method @NonNull public static android.content.integrity.IntegrityFormula versionCodeEquals(@NonNull long);
3939    method @NonNull public static android.content.integrity.IntegrityFormula versionCodeGreaterThan(@NonNull long);
3940    method @NonNull public static android.content.integrity.IntegrityFormula versionCodeGreaterThanOrEqualTo(@NonNull long);
3941  }
3942
3943  public static final class IntegrityFormula.Installer {
3944    method @NonNull public static android.content.integrity.IntegrityFormula certificatesContain(@NonNull String);
3945    method @NonNull public static android.content.integrity.IntegrityFormula notAllowedByManifest();
3946    method @NonNull public static android.content.integrity.IntegrityFormula packageNameEquals(@NonNull String);
3947  }
3948
3949  public static final class IntegrityFormula.SourceStamp {
3950    method @NonNull public static android.content.integrity.IntegrityFormula notTrusted();
3951    method @NonNull public static android.content.integrity.IntegrityFormula stampCertificateHashEquals(@NonNull String);
3952  }
3953
3954  public final class Rule implements android.os.Parcelable {
3955    ctor public Rule(@NonNull android.content.integrity.IntegrityFormula, int);
3956    method public int describeContents();
3957    method public int getEffect();
3958    method @NonNull public android.content.integrity.IntegrityFormula getFormula();
3959    method public void writeToParcel(@NonNull android.os.Parcel, int);
3960    field @NonNull public static final android.os.Parcelable.Creator<android.content.integrity.Rule> CREATOR;
3961    field public static final int DENY = 0; // 0x0
3962    field public static final int FORCE_ALLOW = 1; // 0x1
3963  }
3964
3965  public class RuleSet {
3966    method @NonNull public java.util.List<android.content.integrity.Rule> getRules();
3967    method @NonNull public String getVersion();
3968  }
3969
3970  public static class RuleSet.Builder {
3971    ctor public RuleSet.Builder();
3972    method @NonNull public android.content.integrity.RuleSet.Builder addRules(@NonNull java.util.List<android.content.integrity.Rule>);
3973    method @NonNull public android.content.integrity.RuleSet build();
3974    method @NonNull public android.content.integrity.RuleSet.Builder setVersion(@NonNull String);
3975  }
3976
3977}
3978
3979package android.content.om {
3980
3981  public final class OverlayInfo implements android.os.Parcelable {
3982    method @Nullable public String getCategory();
3983    method @NonNull public String getPackageName();
3984    method public int getUserId();
3985    method public boolean isEnabled();
3986  }
3987
3988  public class OverlayManager {
3989    method @Nullable public android.content.om.OverlayInfo getOverlayInfo(@NonNull String, @NonNull android.os.UserHandle);
3990    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);
3991    method @RequiresPermission(anyOf={"android.permission.INTERACT_ACROSS_USERS", "android.permission.INTERACT_ACROSS_USERS_FULL"}) public void setEnabled(@NonNull String, boolean, @NonNull android.os.UserHandle) throws java.lang.IllegalStateException, java.lang.SecurityException;
3992    method @RequiresPermission(anyOf={"android.permission.INTERACT_ACROSS_USERS", "android.permission.INTERACT_ACROSS_USERS_FULL"}) public void setEnabledExclusiveInCategory(@NonNull String, @NonNull android.os.UserHandle) throws java.lang.IllegalStateException, java.lang.SecurityException;
3993  }
3994
3995}
3996
3997package android.content.pm {
3998
3999  public class ApplicationInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable {
4000    method @RequiresPermission(android.Manifest.permission.DELETE_PACKAGES) public boolean hasFragileUserData();
4001    method public boolean isEncryptionAware();
4002    method public boolean isInstantApp();
4003    method public boolean isOem();
4004    method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public boolean isPrivilegedApp();
4005    method public boolean isProduct();
4006    method public boolean isVendor();
4007    field public String credentialProtectedDataDir;
4008    field public int targetSandboxVersion;
4009  }
4010
4011  public class CrossProfileApps {
4012    method @RequiresPermission(anyOf={android.Manifest.permission.INTERACT_ACROSS_PROFILES, android.Manifest.permission.START_CROSS_PROFILE_ACTIVITIES}) public void startActivity(@NonNull android.content.ComponentName, @NonNull android.os.UserHandle, @Nullable android.app.Activity, @Nullable android.os.Bundle);
4013    method @RequiresPermission(anyOf={android.Manifest.permission.INTERACT_ACROSS_PROFILES, android.Manifest.permission.START_CROSS_PROFILE_ACTIVITIES}) public void startActivity(@NonNull android.content.ComponentName, @NonNull android.os.UserHandle);
4014  }
4015
4016  public class DataLoaderParams {
4017    method @NonNull public static final android.content.pm.DataLoaderParams forIncremental(@NonNull android.content.ComponentName, @NonNull String);
4018    method @NonNull public static final android.content.pm.DataLoaderParams forStreaming(@NonNull android.content.ComponentName, @NonNull String);
4019    method @NonNull public final String getArguments();
4020    method @NonNull public final android.content.ComponentName getComponentName();
4021    method @NonNull public final int getType();
4022  }
4023
4024  public final class InstallationFile {
4025    method public long getLengthBytes();
4026    method public int getLocation();
4027    method @Nullable public byte[] getMetadata();
4028    method @NonNull public String getName();
4029    method @Nullable public byte[] getSignature();
4030  }
4031
4032  public final class InstantAppInfo implements android.os.Parcelable {
4033    ctor public InstantAppInfo(android.content.pm.ApplicationInfo, String[], String[]);
4034    ctor public InstantAppInfo(String, CharSequence, String[], String[]);
4035    method public int describeContents();
4036    method @Nullable public android.content.pm.ApplicationInfo getApplicationInfo();
4037    method @Nullable public String[] getGrantedPermissions();
4038    method @NonNull public String getPackageName();
4039    method @Nullable public String[] getRequestedPermissions();
4040    method @NonNull public android.graphics.drawable.Drawable loadIcon(@NonNull android.content.pm.PackageManager);
4041    method @NonNull public CharSequence loadLabel(@NonNull android.content.pm.PackageManager);
4042    method public void writeToParcel(android.os.Parcel, int);
4043    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.InstantAppInfo> CREATOR;
4044  }
4045
4046  public final class InstantAppIntentFilter implements android.os.Parcelable {
4047    ctor public InstantAppIntentFilter(@Nullable String, @NonNull java.util.List<android.content.IntentFilter>);
4048    method public int describeContents();
4049    method public java.util.List<android.content.IntentFilter> getFilters();
4050    method public String getSplitName();
4051    method public void writeToParcel(android.os.Parcel, int);
4052    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.InstantAppIntentFilter> CREATOR;
4053  }
4054
4055  public final class InstantAppRequestInfo implements android.os.Parcelable {
4056    ctor public InstantAppRequestInfo(@NonNull android.content.Intent, @Nullable int[], @NonNull android.os.UserHandle, boolean, @NonNull String);
4057    method public int describeContents();
4058    method @Nullable public int[] getHostDigestPrefix();
4059    method @NonNull public android.content.Intent getIntent();
4060    method @NonNull public String getToken();
4061    method @NonNull public android.os.UserHandle getUserHandle();
4062    method public boolean isRequesterInstantApp();
4063    method public void writeToParcel(@NonNull android.os.Parcel, int);
4064    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.InstantAppRequestInfo> CREATOR;
4065  }
4066
4067  public final class InstantAppResolveInfo implements android.os.Parcelable {
4068    ctor public InstantAppResolveInfo(@NonNull android.content.pm.InstantAppResolveInfo.InstantAppDigest, @Nullable String, @Nullable java.util.List<android.content.pm.InstantAppIntentFilter>, int);
4069    ctor public InstantAppResolveInfo(@NonNull android.content.pm.InstantAppResolveInfo.InstantAppDigest, @Nullable String, @Nullable java.util.List<android.content.pm.InstantAppIntentFilter>, long, @Nullable android.os.Bundle);
4070    ctor public InstantAppResolveInfo(@NonNull String, @Nullable String, @Nullable java.util.List<android.content.pm.InstantAppIntentFilter>);
4071    ctor public InstantAppResolveInfo(@Nullable android.os.Bundle);
4072    method public int describeContents();
4073    method public byte[] getDigestBytes();
4074    method public int getDigestPrefix();
4075    method @Nullable public android.os.Bundle getExtras();
4076    method public java.util.List<android.content.pm.InstantAppIntentFilter> getIntentFilters();
4077    method public long getLongVersionCode();
4078    method public String getPackageName();
4079    method @Deprecated public int getVersionCode();
4080    method public boolean shouldLetInstallerDecide();
4081    method public void writeToParcel(android.os.Parcel, int);
4082    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.InstantAppResolveInfo> CREATOR;
4083  }
4084
4085  public static final class InstantAppResolveInfo.InstantAppDigest implements android.os.Parcelable {
4086    ctor public InstantAppResolveInfo.InstantAppDigest(@NonNull String);
4087    method public int describeContents();
4088    method public byte[][] getDigestBytes();
4089    method public int[] getDigestPrefix();
4090    method public void writeToParcel(android.os.Parcel, int);
4091    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.InstantAppResolveInfo.InstantAppDigest> CREATOR;
4092    field public static final android.content.pm.InstantAppResolveInfo.InstantAppDigest UNDEFINED;
4093  }
4094
4095  public final class IntentFilterVerificationInfo implements android.os.Parcelable {
4096    method public int describeContents();
4097    method public java.util.Set<java.lang.String> getDomains();
4098    method public String getPackageName();
4099    method public int getStatus();
4100    method public void writeToParcel(android.os.Parcel, int);
4101    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.IntentFilterVerificationInfo> CREATOR;
4102  }
4103
4104  public class LauncherApps {
4105    method @Nullable public android.content.pm.LauncherApps.AppUsageLimit getAppUsageLimit(@NonNull String, @NonNull android.os.UserHandle);
4106  }
4107
4108  public static final class LauncherApps.AppUsageLimit implements android.os.Parcelable {
4109    method public int describeContents();
4110    method public long getTotalUsageLimit();
4111    method public long getUsageRemaining();
4112    method public void writeToParcel(android.os.Parcel, int);
4113    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.LauncherApps.AppUsageLimit> CREATOR;
4114  }
4115
4116  public static class LauncherApps.ShortcutQuery {
4117    field public static final int FLAG_GET_PERSISTED_DATA = 4096; // 0x1000
4118    field @RequiresPermission(android.Manifest.permission.ACCESS_SHORTCUTS) public static final int FLAG_GET_PERSONS_DATA = 2048; // 0x800
4119  }
4120
4121  public class PackageInstaller {
4122    method @NonNull public android.content.pm.PackageInstaller.InstallInfo readInstallInfo(@NonNull java.io.File, int) throws android.content.pm.PackageInstaller.PackageParsingException;
4123    method @FlaggedApi("android.content.pm.read_install_info") @NonNull public android.content.pm.PackageInstaller.InstallInfo readInstallInfo(@NonNull android.os.ParcelFileDescriptor, @Nullable String, int) throws android.content.pm.PackageInstaller.PackageParsingException;
4124    method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void setPermissionsResult(int, boolean);
4125    field public static final String ACTION_CONFIRM_INSTALL = "android.content.pm.action.CONFIRM_INSTALL";
4126    field public static final String ACTION_CONFIRM_PRE_APPROVAL = "android.content.pm.action.CONFIRM_PRE_APPROVAL";
4127    field @FlaggedApi("android.content.pm.sdk_dependency_installer") public static final String ACTION_INSTALL_DEPENDENCY = "android.content.pm.action.INSTALL_DEPENDENCY";
4128    field public static final int DATA_LOADER_TYPE_INCREMENTAL = 2; // 0x2
4129    field public static final int DATA_LOADER_TYPE_NONE = 0; // 0x0
4130    field public static final int DATA_LOADER_TYPE_STREAMING = 1; // 0x1
4131    field public static final String EXTRA_CALLBACK = "android.content.pm.extra.CALLBACK";
4132    field public static final String EXTRA_DATA_LOADER_TYPE = "android.content.pm.extra.DATA_LOADER_TYPE";
4133    field @FlaggedApi("android.content.pm.archiving") public static final String EXTRA_DELETE_FLAGS = "android.content.pm.extra.DELETE_FLAGS";
4134    field public static final String EXTRA_LEGACY_STATUS = "android.content.pm.extra.LEGACY_STATUS";
4135    field @Deprecated public static final String EXTRA_RESOLVED_BASE_PATH = "android.content.pm.extra.RESOLVED_BASE_PATH";
4136    field public static final int LOCATION_DATA_APP = 0; // 0x0
4137    field public static final int LOCATION_MEDIA_DATA = 2; // 0x2
4138    field public static final int LOCATION_MEDIA_OBB = 1; // 0x1
4139    field public static final int REASON_CONFIRM_PACKAGE_CHANGE = 0; // 0x0
4140    field public static final int REASON_OWNERSHIP_CHANGED = 1; // 0x1
4141    field public static final int REASON_REMIND_OWNERSHIP = 2; // 0x2
4142  }
4143
4144  public static class PackageInstaller.InstallInfo {
4145    method public long calculateInstalledSize(@NonNull android.content.pm.PackageInstaller.SessionParams) throws java.io.IOException;
4146    method @FlaggedApi("android.content.pm.read_install_info") public long calculateInstalledSize(@NonNull android.content.pm.PackageInstaller.SessionParams, @NonNull android.os.ParcelFileDescriptor) throws java.io.IOException;
4147    method public int getInstallLocation();
4148    method @NonNull public String getPackageName();
4149  }
4150
4151  public static class PackageInstaller.PackageParsingException extends java.lang.Exception {
4152    method public int getErrorCode();
4153  }
4154
4155  public static class PackageInstaller.Session implements java.io.Closeable {
4156    method @RequiresPermission("com.android.permission.USE_INSTALLER_V2") public void addFile(int, @NonNull String, long, @NonNull byte[], @Nullable byte[]);
4157    method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void commitTransferred(@NonNull android.content.IntentSender);
4158    method @Nullable @RequiresPermission("com.android.permission.USE_INSTALLER_V2") public android.content.pm.DataLoaderParams getDataLoaderParams();
4159    method @FlaggedApi("android.content.pm.set_pre_verified_domains") @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_INSTANT_APPS) public java.util.Set<java.lang.String> getPreVerifiedDomains();
4160    method @RequiresPermission("com.android.permission.USE_INSTALLER_V2") public void removeFile(int, @NonNull String);
4161    method @FlaggedApi("android.content.pm.set_pre_verified_domains") @RequiresPermission(android.Manifest.permission.ACCESS_INSTANT_APPS) public void setPreVerifiedDomains(@NonNull java.util.Set<java.lang.String>);
4162  }
4163
4164  public static class PackageInstaller.SessionInfo implements android.os.Parcelable {
4165    method public boolean getAllocateAggressive();
4166    method @Deprecated public boolean getAllowDowngrade();
4167    method public int getAutoRevokePermissionsMode();
4168    method public boolean getEnableRollback();
4169    method @Nullable public String[] getGrantedRuntimePermissions();
4170    method public boolean getInstallAsFullApp(boolean);
4171    method public boolean getInstallAsInstantApp(boolean);
4172    method public boolean getInstallAsVirtualPreload();
4173    method public int getPendingUserActionReason();
4174    method public boolean getRequestDowngrade();
4175    method @FlaggedApi("android.content.pm.get_resolved_apk_path") @Nullable @RequiresPermission(android.Manifest.permission.READ_INSTALLED_SESSION_PATHS) public String getResolvedBaseApkPath();
4176    method public int getRollbackDataPolicy();
4177    method @NonNull public java.util.Set<java.lang.String> getWhitelistedRestrictedPermissions();
4178  }
4179
4180  public static class PackageInstaller.SessionParams implements android.os.Parcelable {
4181    method @RequiresPermission(android.Manifest.permission.ALLOCATE_AGGRESSIVE) public void setAllocateAggressive(boolean);
4182    method @Deprecated public void setAllowDowngrade(boolean);
4183    method @RequiresPermission(allOf={android.Manifest.permission.INSTALL_PACKAGES, "com.android.permission.USE_INSTALLER_V2"}) public void setDataLoaderParams(@NonNull android.content.pm.DataLoaderParams);
4184    method public void setEnableRollback(boolean);
4185    method public void setEnableRollback(boolean, int);
4186    method @Deprecated @RequiresPermission(android.Manifest.permission.INSTALL_GRANT_RUNTIME_PERMISSIONS) public void setGrantedRuntimePermissions(String[]);
4187    method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void setInstallAsApex();
4188    method public void setInstallAsInstantApp(boolean);
4189    method public void setInstallAsVirtualPreload();
4190    method public void setRequestDowngrade(boolean);
4191    method @FlaggedApi("android.content.pm.recoverability_detection") @RequiresPermission(android.Manifest.permission.MANAGE_ROLLBACKS) public void setRollbackImpactLevel(int);
4192    method @FlaggedApi("android.content.pm.rollback_lifetime") @RequiresPermission(android.Manifest.permission.MANAGE_ROLLBACKS) public void setRollbackLifetimeMillis(long);
4193    method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void setStaged();
4194  }
4195
4196  public class PackageItemInfo {
4197    method public static void forceSafeLabels();
4198    method @Deprecated @NonNull public CharSequence loadSafeLabel(@NonNull android.content.pm.PackageManager);
4199    method @NonNull public CharSequence loadSafeLabel(@NonNull android.content.pm.PackageManager, @FloatRange(from=0) float, int);
4200  }
4201
4202  public abstract class PackageManager {
4203    method @RequiresPermission("android.permission.OBSERVE_GRANT_REVOKE_PERMISSIONS") public abstract void addOnPermissionsChangeListener(@NonNull android.content.pm.PackageManager.OnPermissionsChangedListener);
4204    method public abstract boolean arePermissionsIndividuallyControlled();
4205    method @NonNull public boolean canUserUninstall(@NonNull String, @NonNull android.os.UserHandle);
4206    method @NonNull public abstract java.util.List<android.content.IntentFilter> getAllIntentFilters(@NonNull String);
4207    method @NonNull @RequiresPermission(android.Manifest.permission.GET_APP_METADATA) public android.os.PersistableBundle getAppMetadata(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException;
4208    method @FlaggedApi("android.content.pm.asl_in_apk_app_metadata_source") @RequiresPermission(android.Manifest.permission.GET_APP_METADATA) public int getAppMetadataSource(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException;
4209    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;
4210    method @NonNull @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public android.content.pm.ApplicationInfo getApplicationInfoAsUser(@NonNull String, @NonNull android.content.pm.PackageManager.ApplicationInfoFlags, @NonNull android.os.UserHandle) throws android.content.pm.PackageManager.NameNotFoundException;
4211    method @NonNull public android.content.pm.dex.ArtManager getArtManager();
4212    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_SHARED_LIBRARIES) public java.util.List<android.content.pm.SharedLibraryInfo> getDeclaredSharedLibraries(@NonNull String, int);
4213    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_SHARED_LIBRARIES) public java.util.List<android.content.pm.SharedLibraryInfo> getDeclaredSharedLibraries(@NonNull String, @NonNull android.content.pm.PackageManager.PackageInfoFlags);
4214    method @Nullable @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public abstract String getDefaultBrowserPackageNameAsUser(int);
4215    method @Nullable @RequiresPermission(android.Manifest.permission.SET_HARMFUL_APP_WARNINGS) public CharSequence getHarmfulAppWarning(@NonNull String);
4216    method @Nullable public String getIncidentReportApproverPackageName();
4217    method @NonNull @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public abstract java.util.List<android.content.pm.PackageInfo> getInstalledPackagesAsUser(int, int);
4218    method @NonNull @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public java.util.List<android.content.pm.PackageInfo> getInstalledPackagesAsUser(@NonNull android.content.pm.PackageManager.PackageInfoFlags, int);
4219    method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_INSTANT_APPS) public abstract android.graphics.drawable.Drawable getInstantAppIcon(String);
4220    method @Nullable public abstract android.content.ComponentName getInstantAppInstallerComponent();
4221    method @Nullable public abstract android.content.ComponentName getInstantAppResolverSettingsComponent();
4222    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_INSTANT_APPS) public abstract java.util.List<android.content.pm.InstantAppInfo> getInstantApps();
4223    method @Deprecated @NonNull public abstract java.util.List<android.content.pm.IntentFilterVerificationInfo> getIntentFilterVerifications(@NonNull String);
4224    method @Deprecated @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public abstract int getIntentVerificationStatusAsUser(@NonNull String, int);
4225    method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public int getPackageUidAsUser(@NonNull String, @NonNull android.content.pm.PackageManager.PackageInfoFlags, int) throws android.content.pm.PackageManager.NameNotFoundException;
4226    method @NonNull public String getPermissionControllerPackageName();
4227    method @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);
4228    method @NonNull @RequiresPermission(android.Manifest.permission.SUSPEND_APPS) public String[] getUnsuspendablePackages(@NonNull String[]);
4229    method @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) public abstract void grantRuntimePermission(@NonNull String, @NonNull String, @NonNull android.os.UserHandle);
4230    method @Deprecated public abstract int installExistingPackage(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException;
4231    method @Deprecated public abstract int installExistingPackage(@NonNull String, int) throws android.content.pm.PackageManager.NameNotFoundException;
4232    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);
4233    method @NonNull @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public java.util.List<android.content.pm.ResolveInfo> queryBroadcastReceiversAsUser(@NonNull android.content.Intent, @NonNull android.content.pm.PackageManager.ResolveInfoFlags, @NonNull android.os.UserHandle);
4234    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);
4235    method @NonNull @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public java.util.List<android.content.pm.ResolveInfo> queryIntentActivitiesAsUser(@NonNull android.content.Intent, @NonNull android.content.pm.PackageManager.ResolveInfoFlags, @NonNull android.os.UserHandle);
4236    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);
4237    method @NonNull @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public java.util.List<android.content.pm.ResolveInfo> queryIntentContentProvidersAsUser(@NonNull android.content.Intent, @NonNull android.content.pm.PackageManager.ResolveInfoFlags, @NonNull android.os.UserHandle);
4238    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);
4239    method @NonNull @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public java.util.List<android.content.pm.ResolveInfo> queryIntentServicesAsUser(@NonNull android.content.Intent, @NonNull android.content.pm.PackageManager.ResolveInfoFlags, @NonNull android.os.UserHandle);
4240    method public abstract void registerDexModule(@NonNull String, @Nullable android.content.pm.PackageManager.DexModuleRegisterCallback);
4241    method @RequiresPermission("android.permission.OBSERVE_GRANT_REVOKE_PERMISSIONS") public abstract void removeOnPermissionsChangeListener(@NonNull android.content.pm.PackageManager.OnPermissionsChangedListener);
4242    method public void replacePreferredActivity(@NonNull android.content.IntentFilter, int, @NonNull java.util.List<android.content.ComponentName>, @NonNull android.content.ComponentName);
4243    method @RequiresPermission(android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS) public abstract void revokeRuntimePermission(@NonNull String, @NonNull String, @NonNull android.os.UserHandle);
4244    method @RequiresPermission(android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS) public void revokeRuntimePermission(@NonNull String, @NonNull String, @NonNull android.os.UserHandle, @NonNull String);
4245    method public void sendDeviceCustomizationReadyBroadcast();
4246    method @RequiresPermission(allOf={android.Manifest.permission.SET_PREFERRED_APPLICATIONS, android.Manifest.permission.INTERACT_ACROSS_USERS_FULL}) public abstract boolean setDefaultBrowserPackageNameAsUser(@Nullable String, int);
4247    method @NonNull @RequiresPermission(android.Manifest.permission.SUSPEND_APPS) public String[] setDistractingPackageRestrictions(@NonNull String[], int);
4248    method @RequiresPermission(android.Manifest.permission.SET_HARMFUL_APP_WARNINGS) public void setHarmfulAppWarning(@NonNull String, @Nullable CharSequence);
4249    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);
4250    method @Nullable @RequiresPermission(value=android.Manifest.permission.SUSPEND_APPS, conditional=true) public String[] setPackagesSuspended(@Nullable String[], boolean, @Nullable android.os.PersistableBundle, @Nullable android.os.PersistableBundle, @Nullable android.content.pm.SuspendDialogInfo);
4251    method @FlaggedApi("android.content.pm.quarantined_enabled") @Nullable @RequiresPermission(anyOf={android.Manifest.permission.SUSPEND_APPS, android.Manifest.permission.QUARANTINE_APPS}, conditional=true) public String[] setPackagesSuspended(@Nullable String[], boolean, @Nullable android.os.PersistableBundle, @Nullable android.os.PersistableBundle, @Nullable android.content.pm.SuspendDialogInfo, int);
4252    method @RequiresPermission(value=android.Manifest.permission.CHANGE_COMPONENT_ENABLED_STATE, conditional=true) public void setSyntheticAppDetailsActivityEnabled(@NonNull String, boolean);
4253    method public void setSystemAppState(@NonNull String, int);
4254    method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public abstract void setUpdateAvailable(@NonNull String, boolean);
4255    method @NonNull public boolean shouldShowNewAppInstalledNotification();
4256    method @Deprecated @RequiresPermission(android.Manifest.permission.SET_PREFERRED_APPLICATIONS) public abstract boolean updateIntentVerificationStatusAsUser(@NonNull String, int, int);
4257    method @RequiresPermission(anyOf={android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS, android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS}) public abstract void updatePermissionFlags(@NonNull String, @NonNull String, int, int, @NonNull android.os.UserHandle);
4258    method @Deprecated @RequiresPermission(android.Manifest.permission.INTENT_FILTER_VERIFICATION_AGENT) public abstract void verifyIntentFilter(int, int, @NonNull java.util.List<java.lang.String>);
4259    field public static final String ACTION_REQUEST_PERMISSIONS = "android.content.pm.action.REQUEST_PERMISSIONS";
4260    field public static final String ACTION_REQUEST_PERMISSIONS_FOR_OTHER = "android.content.pm.action.REQUEST_PERMISSIONS_FOR_OTHER";
4261    field @FlaggedApi("android.content.pm.asl_in_apk_app_metadata_source") public static final int APP_METADATA_SOURCE_APK = 1; // 0x1
4262    field @FlaggedApi("android.content.pm.asl_in_apk_app_metadata_source") public static final int APP_METADATA_SOURCE_INSTALLER = 2; // 0x2
4263    field @FlaggedApi("android.content.pm.asl_in_apk_app_metadata_source") public static final int APP_METADATA_SOURCE_SYSTEM_IMAGE = 3; // 0x3
4264    field @FlaggedApi("android.content.pm.asl_in_apk_app_metadata_source") public static final int APP_METADATA_SOURCE_UNKNOWN = 0; // 0x0
4265    field public static final int DELETE_ALL_USERS = 2; // 0x2
4266    field public static final int DELETE_FAILED_ABORTED = -5; // 0xfffffffb
4267    field public static final int DELETE_FAILED_DEVICE_POLICY_MANAGER = -2; // 0xfffffffe
4268    field public static final int DELETE_FAILED_INTERNAL_ERROR = -1; // 0xffffffff
4269    field public static final int DELETE_FAILED_OWNER_BLOCKED = -4; // 0xfffffffc
4270    field public static final int DELETE_KEEP_DATA = 1; // 0x1
4271    field public static final int DELETE_SUCCEEDED = 1; // 0x1
4272    field @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") public static final String EXTRA_REQUEST_PERMISSIONS_DEVICE_ID = "android.content.pm.extra.REQUEST_PERMISSIONS_DEVICE_ID";
4273    field public static final String EXTRA_REQUEST_PERMISSIONS_LEGACY_ACCESS_PERMISSION_NAMES = "android.content.pm.extra.REQUEST_PERMISSIONS_LEGACY_ACCESS_PERMISSION_NAMES";
4274    field public static final String EXTRA_REQUEST_PERMISSIONS_NAMES = "android.content.pm.extra.REQUEST_PERMISSIONS_NAMES";
4275    field public static final String EXTRA_REQUEST_PERMISSIONS_RESULTS = "android.content.pm.extra.REQUEST_PERMISSIONS_RESULTS";
4276    field public static final String FEATURE_BROADCAST_RADIO = "android.hardware.broadcastradio";
4277    field public static final String FEATURE_CONTEXT_HUB = "android.hardware.context_hub";
4278    field public static final String FEATURE_EROFS = "android.software.erofs";
4279    field public static final String FEATURE_EROFS_LEGACY = "android.software.erofs_legacy";
4280    field public static final String FEATURE_GAME_SERVICE = "android.software.game_service";
4281    field public static final String FEATURE_INCREMENTAL_DELIVERY = "android.software.incremental_delivery";
4282    field public static final String FEATURE_REBOOT_ESCROW = "android.hardware.reboot_escrow";
4283    field public static final String FEATURE_TELEPHONY_CARRIERLOCK = "android.hardware.telephony.carrierlock";
4284    field public static final String FEATURE_TELEPHONY_IMS_SINGLE_REGISTRATION = "android.hardware.telephony.ims.singlereg";
4285    field public static final String FEATURE_VIRTUALIZATION_FRAMEWORK = "android.software.virtualization_framework";
4286    field public static final int FLAGS_PERMISSION_RESERVED_PERMISSION_CONTROLLER = -268435456; // 0xf0000000
4287    field public static final int FLAG_PERMISSION_APPLY_RESTRICTION = 16384; // 0x4000
4288    field public static final int FLAG_PERMISSION_AUTO_REVOKED = 131072; // 0x20000
4289    field public static final int FLAG_PERMISSION_GRANTED_BY_DEFAULT = 32; // 0x20
4290    field public static final int FLAG_PERMISSION_GRANTED_BY_ROLE = 32768; // 0x8000
4291    field public static final int FLAG_PERMISSION_ONE_TIME = 65536; // 0x10000
4292    field public static final int FLAG_PERMISSION_POLICY_FIXED = 4; // 0x4
4293    field public static final int FLAG_PERMISSION_RESTRICTION_INSTALLER_EXEMPT = 2048; // 0x800
4294    field public static final int FLAG_PERMISSION_RESTRICTION_SYSTEM_EXEMPT = 4096; // 0x1000
4295    field public static final int FLAG_PERMISSION_RESTRICTION_UPGRADE_EXEMPT = 8192; // 0x2000
4296    field public static final int FLAG_PERMISSION_REVIEW_REQUIRED = 64; // 0x40
4297    field public static final int FLAG_PERMISSION_REVOKED_COMPAT = 8; // 0x8
4298    field @Deprecated public static final int FLAG_PERMISSION_REVOKE_ON_UPGRADE = 8; // 0x8
4299    field public static final int FLAG_PERMISSION_REVOKE_WHEN_REQUESTED = 128; // 0x80
4300    field public static final int FLAG_PERMISSION_SELECTED_LOCATION_ACCURACY = 524288; // 0x80000
4301    field public static final int FLAG_PERMISSION_SYSTEM_FIXED = 16; // 0x10
4302    field public static final int FLAG_PERMISSION_USER_FIXED = 2; // 0x2
4303    field public static final int FLAG_PERMISSION_USER_SENSITIVE_WHEN_DENIED = 512; // 0x200
4304    field public static final int FLAG_PERMISSION_USER_SENSITIVE_WHEN_GRANTED = 256; // 0x100
4305    field public static final int FLAG_PERMISSION_USER_SET = 1; // 0x1
4306    field @FlaggedApi("android.content.pm.quarantined_enabled") public static final int FLAG_SUSPEND_QUARANTINED = 1; // 0x1
4307    field public static final int INSTALL_FAILED_ALREADY_EXISTS = -1; // 0xffffffff
4308    field public static final int INSTALL_FAILED_CONFLICTING_PROVIDER = -13; // 0xfffffff3
4309    field public static final int INSTALL_FAILED_CONTAINER_ERROR = -18; // 0xffffffee
4310    field public static final int INSTALL_FAILED_CPU_ABI_INCOMPATIBLE = -16; // 0xfffffff0
4311    field public static final int INSTALL_FAILED_DEXOPT = -11; // 0xfffffff5
4312    field public static final int INSTALL_FAILED_DUPLICATE_PACKAGE = -5; // 0xfffffffb
4313    field public static final int INSTALL_FAILED_INSUFFICIENT_STORAGE = -4; // 0xfffffffc
4314    field public static final int INSTALL_FAILED_INTERNAL_ERROR = -110; // 0xffffff92
4315    field public static final int INSTALL_FAILED_INVALID_APK = -2; // 0xfffffffe
4316    field public static final int INSTALL_FAILED_INVALID_INSTALL_LOCATION = -19; // 0xffffffed
4317    field public static final int INSTALL_FAILED_INVALID_URI = -3; // 0xfffffffd
4318    field public static final int INSTALL_FAILED_MEDIA_UNAVAILABLE = -20; // 0xffffffec
4319    field public static final int INSTALL_FAILED_MISSING_FEATURE = -17; // 0xffffffef
4320    field public static final int INSTALL_FAILED_MISSING_SHARED_LIBRARY = -9; // 0xfffffff7
4321    field public static final int INSTALL_FAILED_NEWER_SDK = -14; // 0xfffffff2
4322    field public static final int INSTALL_FAILED_NO_SHARED_USER = -6; // 0xfffffffa
4323    field public static final int INSTALL_FAILED_OLDER_SDK = -12; // 0xfffffff4
4324    field public static final int INSTALL_FAILED_PACKAGE_CHANGED = -23; // 0xffffffe9
4325    field public static final int INSTALL_FAILED_PERMISSION_MODEL_DOWNGRADE = -26; // 0xffffffe6
4326    field public static final int INSTALL_FAILED_REPLACE_COULDNT_DELETE = -10; // 0xfffffff6
4327    field public static final int INSTALL_FAILED_SANDBOX_VERSION_DOWNGRADE = -27; // 0xffffffe5
4328    field public static final int INSTALL_FAILED_SHARED_USER_INCOMPATIBLE = -8; // 0xfffffff8
4329    field public static final int INSTALL_FAILED_TEST_ONLY = -15; // 0xfffffff1
4330    field public static final int INSTALL_FAILED_UPDATE_INCOMPATIBLE = -7; // 0xfffffff9
4331    field public static final int INSTALL_FAILED_VERIFICATION_FAILURE = -22; // 0xffffffea
4332    field public static final int INSTALL_FAILED_VERIFICATION_TIMEOUT = -21; // 0xffffffeb
4333    field public static final int INSTALL_PARSE_FAILED_BAD_MANIFEST = -101; // 0xffffff9b
4334    field public static final int INSTALL_PARSE_FAILED_BAD_PACKAGE_NAME = -106; // 0xffffff96
4335    field public static final int INSTALL_PARSE_FAILED_BAD_SHARED_USER_ID = -107; // 0xffffff95
4336    field public static final int INSTALL_PARSE_FAILED_CERTIFICATE_ENCODING = -105; // 0xffffff97
4337    field public static final int INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES = -104; // 0xffffff98
4338    field public static final int INSTALL_PARSE_FAILED_MANIFEST_EMPTY = -109; // 0xffffff93
4339    field public static final int INSTALL_PARSE_FAILED_MANIFEST_MALFORMED = -108; // 0xffffff94
4340    field public static final int INSTALL_PARSE_FAILED_NOT_APK = -100; // 0xffffff9c
4341    field public static final int INSTALL_PARSE_FAILED_NO_CERTIFICATES = -103; // 0xffffff99
4342    field public static final int INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION = -102; // 0xffffff9a
4343    field public static final int INSTALL_SUCCEEDED = 1; // 0x1
4344    field @Deprecated public static final int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ALWAYS = 2; // 0x2
4345    field @Deprecated public static final int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ALWAYS_ASK = 4; // 0x4
4346    field @Deprecated public static final int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ASK = 1; // 0x1
4347    field @Deprecated public static final int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_NEVER = 3; // 0x3
4348    field @Deprecated public static final int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_UNDEFINED = 0; // 0x0
4349    field @Deprecated public static final int INTENT_FILTER_VERIFICATION_FAILURE = -1; // 0xffffffff
4350    field @Deprecated public static final int INTENT_FILTER_VERIFICATION_SUCCESS = 1; // 0x1
4351    field @Deprecated public static final int MASK_PERMISSION_FLAGS = 255; // 0xff
4352    field public static final int MATCH_ANY_USER = 4194304; // 0x400000
4353    field @Deprecated public static final int MATCH_CLONE_PROFILE = 536870912; // 0x20000000
4354    field @FlaggedApi("android.content.pm.fix_duplicated_flags") public static final long MATCH_CLONE_PROFILE_LONG = 17179869184L; // 0x400000000L
4355    field public static final int MATCH_FACTORY_ONLY = 2097152; // 0x200000
4356    field public static final int MATCH_HIDDEN_UNTIL_INSTALLED_COMPONENTS = 536870912; // 0x20000000
4357    field public static final int MATCH_INSTANT = 8388608; // 0x800000
4358    field public static final int MODULE_APEX_NAME = 1; // 0x1
4359    field public static final int RESTRICTION_HIDE_FROM_SUGGESTIONS = 1; // 0x1
4360    field public static final int RESTRICTION_HIDE_NOTIFICATIONS = 2; // 0x2
4361    field public static final int RESTRICTION_NONE = 0; // 0x0
4362    field public static final int ROLLBACK_DATA_POLICY_RESTORE = 0; // 0x0
4363    field public static final int ROLLBACK_DATA_POLICY_RETAIN = 2; // 0x2
4364    field public static final int ROLLBACK_DATA_POLICY_WIPE = 1; // 0x1
4365    field @FlaggedApi("android.content.pm.recoverability_detection") public static final int ROLLBACK_USER_IMPACT_HIGH = 1; // 0x1
4366    field @FlaggedApi("android.content.pm.recoverability_detection") public static final int ROLLBACK_USER_IMPACT_LOW = 0; // 0x0
4367    field @FlaggedApi("android.content.pm.recoverability_detection") public static final int ROLLBACK_USER_IMPACT_ONLY_MANUAL = 2; // 0x2
4368    field public static final int SYSTEM_APP_STATE_HIDDEN_UNTIL_INSTALLED_HIDDEN = 0; // 0x0
4369    field public static final int SYSTEM_APP_STATE_HIDDEN_UNTIL_INSTALLED_VISIBLE = 1; // 0x1
4370    field public static final int SYSTEM_APP_STATE_INSTALLED = 2; // 0x2
4371    field public static final int SYSTEM_APP_STATE_UNINSTALLED = 3; // 0x3
4372  }
4373
4374  public abstract static class PackageManager.DexModuleRegisterCallback {
4375    ctor public PackageManager.DexModuleRegisterCallback();
4376    method public abstract void onDexModuleRegistered(String, boolean, String);
4377  }
4378
4379  public static interface PackageManager.OnPermissionsChangedListener {
4380    method public void onPermissionsChanged(int);
4381    method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") public default void onPermissionsChanged(int, @NonNull String);
4382  }
4383
4384  public static final class PackageManager.UninstallCompleteCallback implements android.os.Parcelable {
4385    method public int describeContents();
4386    method public void onUninstallComplete(@NonNull String, int, @Nullable String);
4387    method public void writeToParcel(@NonNull android.os.Parcel, int);
4388    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.PackageManager.UninstallCompleteCallback> CREATOR;
4389  }
4390
4391  public class PermissionGroupInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable {
4392    field @StringRes public final int backgroundRequestDetailResourceId;
4393    field @StringRes public final int backgroundRequestResourceId;
4394    field @StringRes public final int requestDetailResourceId;
4395    field @StringRes public int requestRes;
4396  }
4397
4398  public class PermissionInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable {
4399    field public static final int FLAG_REMOVED = 2; // 0x2
4400    field public static final int PROTECTION_FLAG_APP_PREDICTOR = 2097152; // 0x200000
4401    field public static final int PROTECTION_FLAG_COMPANION = 8388608; // 0x800000
4402    field public static final int PROTECTION_FLAG_CONFIGURATOR = 524288; // 0x80000
4403    field @Deprecated public static final int PROTECTION_FLAG_DOCUMENTER = 262144; // 0x40000
4404    field public static final int PROTECTION_FLAG_INCIDENT_REPORT_APPROVER = 1048576; // 0x100000
4405    field public static final int PROTECTION_FLAG_KNOWN_SIGNER = 134217728; // 0x8000000
4406    field public static final int PROTECTION_FLAG_MODULE = 4194304; // 0x400000
4407    field public static final int PROTECTION_FLAG_OEM = 16384; // 0x4000
4408    field public static final int PROTECTION_FLAG_RECENTS = 33554432; // 0x2000000
4409    field @Deprecated public static final int PROTECTION_FLAG_RETAIL_DEMO = 16777216; // 0x1000000
4410    field public static final int PROTECTION_FLAG_ROLE = 67108864; // 0x4000000
4411    field public static final int PROTECTION_FLAG_SYSTEM_TEXT_CLASSIFIER = 65536; // 0x10000
4412    field public static final int PROTECTION_FLAG_VENDOR_PRIVILEGED = 32768; // 0x8000
4413    field @Deprecated public static final int PROTECTION_FLAG_WELLBEING = 131072; // 0x20000
4414    field @Nullable public final String backgroundPermission;
4415    field @NonNull public java.util.Set<java.lang.String> knownCerts;
4416    field @StringRes public int requestRes;
4417  }
4418
4419  public class ResolveInfo implements android.os.Parcelable {
4420    field public boolean handleAllWebDataURI;
4421  }
4422
4423  public final class ShortcutInfo implements android.os.Parcelable {
4424    method @Nullable public android.app.Person[] getPersons();
4425  }
4426
4427  public class ShortcutManager {
4428    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_APP_PREDICTIONS) @WorkerThread public java.util.List<android.content.pm.ShortcutManager.ShareShortcutInfo> getShareTargets(@NonNull android.content.IntentFilter);
4429    method public boolean hasShareTargets(@NonNull String);
4430  }
4431
4432  public static final class ShortcutManager.ShareShortcutInfo implements android.os.Parcelable {
4433    method public int describeContents();
4434    method @NonNull public android.content.pm.ShortcutInfo getShortcutInfo();
4435    method @NonNull public android.content.ComponentName getTargetComponent();
4436    method public void writeToParcel(@NonNull android.os.Parcel, int);
4437    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.ShortcutManager.ShareShortcutInfo> CREATOR;
4438  }
4439
4440  public final class SuspendDialogInfo implements android.os.Parcelable {
4441    method public int describeContents();
4442    method public void writeToParcel(android.os.Parcel, int);
4443    field public static final int BUTTON_ACTION_MORE_DETAILS = 0; // 0x0
4444    field public static final int BUTTON_ACTION_UNSUSPEND = 1; // 0x1
4445    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.SuspendDialogInfo> CREATOR;
4446  }
4447
4448  public static final class SuspendDialogInfo.Builder {
4449    ctor public SuspendDialogInfo.Builder();
4450    method @NonNull public android.content.pm.SuspendDialogInfo build();
4451    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setIcon(@DrawableRes int);
4452    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setMessage(@NonNull String);
4453    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setMessage(@StringRes int);
4454    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setNeutralButtonAction(int);
4455    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setNeutralButtonText(@StringRes int);
4456    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setNeutralButtonText(@NonNull String);
4457    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setTitle(@StringRes int);
4458    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setTitle(@NonNull String);
4459  }
4460
4461  public final class UserProperties implements android.os.Parcelable {
4462    method public int describeContents();
4463    method public int getCrossProfileContentSharingStrategy();
4464    method public int getShowInQuietMode();
4465    method public int getShowInSharingSurfaces();
4466    method public boolean isCredentialShareableWithParent();
4467    method public boolean isMediaSharedWithParent();
4468    method public void writeToParcel(@NonNull android.os.Parcel, int);
4469    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.UserProperties> CREATOR;
4470    field public static final int CROSS_PROFILE_CONTENT_SHARING_DELEGATE_FROM_PARENT = 1; // 0x1
4471    field public static final int CROSS_PROFILE_CONTENT_SHARING_NO_DELEGATION = 0; // 0x0
4472    field public static final int CROSS_PROFILE_CONTENT_SHARING_UNKNOWN = -1; // 0xffffffff
4473    field public static final int SHOW_IN_QUIET_MODE_DEFAULT = 2; // 0x2
4474    field public static final int SHOW_IN_QUIET_MODE_HIDDEN = 1; // 0x1
4475    field public static final int SHOW_IN_QUIET_MODE_PAUSED = 0; // 0x0
4476    field public static final int SHOW_IN_QUIET_MODE_UNKNOWN = -1; // 0xffffffff
4477    field public static final int SHOW_IN_SHARING_SURFACES_NO = 2; // 0x2
4478    field public static final int SHOW_IN_SHARING_SURFACES_SEPARATE = 1; // 0x1
4479    field public static final int SHOW_IN_SHARING_SURFACES_UNKNOWN = -1; // 0xffffffff
4480    field public static final int SHOW_IN_SHARING_SURFACES_WITH_PARENT = 0; // 0x0
4481  }
4482
4483}
4484
4485package android.content.pm.dependencyinstaller {
4486
4487  @FlaggedApi("android.content.pm.sdk_dependency_installer") public final class DependencyInstallerCallback implements android.os.Parcelable {
4488    method public int describeContents();
4489    method public void onAllDependenciesResolved(@NonNull int[]);
4490    method public void onFailureToResolveAllDependencies();
4491    method public void writeToParcel(@NonNull android.os.Parcel, int);
4492    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.dependencyinstaller.DependencyInstallerCallback> CREATOR;
4493  }
4494
4495  @FlaggedApi("android.content.pm.sdk_dependency_installer") public abstract class DependencyInstallerService extends android.app.Service {
4496    ctor public DependencyInstallerService();
4497    method @NonNull public final android.os.IBinder onBind(@Nullable android.content.Intent);
4498    method public abstract void onDependenciesRequired(@NonNull java.util.List<android.content.pm.SharedLibraryInfo>, @NonNull android.content.pm.dependencyinstaller.DependencyInstallerCallback);
4499  }
4500
4501}
4502
4503package android.content.pm.dex {
4504
4505  public class ArtManager {
4506    method @RequiresPermission(allOf={android.Manifest.permission.READ_RUNTIME_PROFILES, android.Manifest.permission.PACKAGE_USAGE_STATS}) public boolean isRuntimeProfilingEnabled(int);
4507    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);
4508    field public static final int PROFILE_APPS = 0; // 0x0
4509    field public static final int PROFILE_BOOT_IMAGE = 1; // 0x1
4510    field public static final int SNAPSHOT_FAILED_CODE_PATH_NOT_FOUND = 1; // 0x1
4511    field public static final int SNAPSHOT_FAILED_INTERNAL_ERROR = 2; // 0x2
4512    field public static final int SNAPSHOT_FAILED_PACKAGE_NOT_FOUND = 0; // 0x0
4513  }
4514
4515  public abstract static class ArtManager.SnapshotRuntimeProfileCallback {
4516    ctor public ArtManager.SnapshotRuntimeProfileCallback();
4517    method public abstract void onError(int);
4518    method public abstract void onSuccess(android.os.ParcelFileDescriptor);
4519  }
4520
4521}
4522
4523package android.content.pm.permission {
4524
4525  @Deprecated public final class RuntimePermissionPresentationInfo implements android.os.Parcelable {
4526    ctor @Deprecated public RuntimePermissionPresentationInfo(CharSequence, boolean, boolean);
4527    method @Deprecated public int describeContents();
4528    method @Deprecated @NonNull public CharSequence getLabel();
4529    method @Deprecated public boolean isGranted();
4530    method @Deprecated public boolean isStandard();
4531    method @Deprecated public void writeToParcel(android.os.Parcel, int);
4532    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.content.pm.permission.RuntimePermissionPresentationInfo> CREATOR;
4533  }
4534
4535}
4536
4537package android.content.pm.verify.domain {
4538
4539  public final class DomainOwner implements android.os.Parcelable {
4540    ctor public DomainOwner(@NonNull String, boolean);
4541    method public int describeContents();
4542    method @NonNull public String getPackageName();
4543    method public boolean isOverrideable();
4544    method public void writeToParcel(@NonNull android.os.Parcel, int);
4545    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.verify.domain.DomainOwner> CREATOR;
4546  }
4547
4548  public final class DomainVerificationInfo implements android.os.Parcelable {
4549    method public int describeContents();
4550    method @NonNull public java.util.Map<java.lang.String,java.lang.Integer> getHostToStateMap();
4551    method @NonNull public java.util.UUID getIdentifier();
4552    method @NonNull public String getPackageName();
4553    method public void writeToParcel(@NonNull android.os.Parcel, int);
4554    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.verify.domain.DomainVerificationInfo> CREATOR;
4555    field public static final int STATE_FIRST_VERIFIER_DEFINED = 1024; // 0x400
4556    field public static final int STATE_MODIFIABLE_UNVERIFIED = 3; // 0x3
4557    field public static final int STATE_MODIFIABLE_VERIFIED = 4; // 0x4
4558    field public static final int STATE_NO_RESPONSE = 0; // 0x0
4559    field public static final int STATE_SUCCESS = 1; // 0x1
4560    field public static final int STATE_UNMODIFIABLE = 2; // 0x2
4561  }
4562
4563  public final class DomainVerificationManager {
4564    method @Nullable @RequiresPermission(android.Manifest.permission.DOMAIN_VERIFICATION_AGENT) public android.content.pm.verify.domain.DomainVerificationInfo getDomainVerificationInfo(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException;
4565    method @NonNull @RequiresPermission(android.Manifest.permission.UPDATE_DOMAIN_VERIFICATION_USER_SELECTION) public java.util.SortedSet<android.content.pm.verify.domain.DomainOwner> getOwnersForDomain(@NonNull String);
4566    method @FlaggedApi("android.content.pm.relative_reference_intent_filters") @NonNull public java.util.Map<java.lang.String,java.util.List<android.content.UriRelativeFilterGroup>> getUriRelativeFilterGroups(@NonNull String, @NonNull java.util.List<java.lang.String>);
4567    method @NonNull @RequiresPermission(android.Manifest.permission.DOMAIN_VERIFICATION_AGENT) public java.util.List<java.lang.String> queryValidVerificationPackageNames();
4568    method @RequiresPermission(android.Manifest.permission.UPDATE_DOMAIN_VERIFICATION_USER_SELECTION) public void setDomainVerificationLinkHandlingAllowed(@NonNull String, boolean) throws android.content.pm.PackageManager.NameNotFoundException;
4569    method @CheckResult @RequiresPermission(android.Manifest.permission.DOMAIN_VERIFICATION_AGENT) public int setDomainVerificationStatus(@NonNull java.util.UUID, @NonNull java.util.Set<java.lang.String>, int) throws android.content.pm.PackageManager.NameNotFoundException;
4570    method @CheckResult @RequiresPermission(android.Manifest.permission.UPDATE_DOMAIN_VERIFICATION_USER_SELECTION) public int setDomainVerificationUserSelection(@NonNull java.util.UUID, @NonNull java.util.Set<java.lang.String>, boolean) throws android.content.pm.PackageManager.NameNotFoundException;
4571    method @FlaggedApi("android.content.pm.relative_reference_intent_filters") @RequiresPermission(android.Manifest.permission.DOMAIN_VERIFICATION_AGENT) public void setUriRelativeFilterGroups(@NonNull String, @NonNull java.util.Map<java.lang.String,java.util.List<android.content.UriRelativeFilterGroup>>);
4572    field public static final int ERROR_DOMAIN_SET_ID_INVALID = 1; // 0x1
4573    field public static final int ERROR_UNABLE_TO_APPROVE = 3; // 0x3
4574    field public static final int ERROR_UNKNOWN_DOMAIN = 2; // 0x2
4575    field public static final String EXTRA_VERIFICATION_REQUEST = "android.content.pm.verify.domain.extra.VERIFICATION_REQUEST";
4576    field public static final int STATUS_OK = 0; // 0x0
4577  }
4578
4579  public final class DomainVerificationRequest implements android.os.Parcelable {
4580    method public int describeContents();
4581    method @NonNull public java.util.Set<java.lang.String> getPackageNames();
4582    method public void writeToParcel(@NonNull android.os.Parcel, int);
4583    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.verify.domain.DomainVerificationRequest> CREATOR;
4584  }
4585
4586  public final class DomainVerificationUserState implements android.os.Parcelable {
4587    method @NonNull public java.util.UUID getIdentifier();
4588  }
4589
4590}
4591
4592package android.content.rollback {
4593
4594  public final class PackageRollbackInfo implements android.os.Parcelable {
4595    method public int describeContents();
4596    method @NonNull public String getPackageName();
4597    method @NonNull public android.content.pm.VersionedPackage getVersionRolledBackFrom();
4598    method @NonNull public android.content.pm.VersionedPackage getVersionRolledBackTo();
4599    method @FlaggedApi("android.crashrecovery.flags.enable_crashrecovery") public boolean isApex();
4600    method @FlaggedApi("android.crashrecovery.flags.enable_crashrecovery") public boolean isApkInApex();
4601    method public void writeToParcel(android.os.Parcel, int);
4602    field @NonNull public static final android.os.Parcelable.Creator<android.content.rollback.PackageRollbackInfo> CREATOR;
4603  }
4604
4605  public final class RollbackInfo implements android.os.Parcelable {
4606    method public int describeContents();
4607    method @NonNull public java.util.List<android.content.pm.VersionedPackage> getCausePackages();
4608    method public int getCommittedSessionId();
4609    method @NonNull public java.util.List<android.content.rollback.PackageRollbackInfo> getPackages();
4610    method public int getRollbackId();
4611    method @FlaggedApi("android.crashrecovery.flags.enable_crashrecovery") public int getRollbackImpactLevel();
4612    method public boolean isStaged();
4613    method public void writeToParcel(android.os.Parcel, int);
4614    field @NonNull public static final android.os.Parcelable.Creator<android.content.rollback.RollbackInfo> CREATOR;
4615  }
4616
4617  public final class RollbackManager {
4618    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);
4619    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_ROLLBACKS, "android.permission.TEST_MANAGE_ROLLBACKS"}) public java.util.List<android.content.rollback.RollbackInfo> getAvailableRollbacks();
4620    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_ROLLBACKS, "android.permission.TEST_MANAGE_ROLLBACKS"}) public java.util.List<android.content.rollback.RollbackInfo> getRecentlyCommittedRollbacks();
4621    field public static final String EXTRA_STATUS = "android.content.rollback.extra.STATUS";
4622    field public static final String EXTRA_STATUS_MESSAGE = "android.content.rollback.extra.STATUS_MESSAGE";
4623    field public static final int STATUS_FAILURE = 1; // 0x1
4624    field public static final int STATUS_FAILURE_INSTALL = 3; // 0x3
4625    field public static final int STATUS_FAILURE_ROLLBACK_UNAVAILABLE = 2; // 0x2
4626    field public static final int STATUS_SUCCESS = 0; // 0x0
4627  }
4628
4629}
4630
4631package android.credentials.selection {
4632
4633  @FlaggedApi("android.credentials.flags.configurable_selector_ui_enabled") public final class AuthenticationEntry implements android.os.Parcelable {
4634    ctor public AuthenticationEntry(@NonNull String, @NonNull String, @NonNull android.app.slice.Slice, int, @NonNull android.content.Intent);
4635    method public int describeContents();
4636    method @Nullable public android.content.Intent getFrameworkExtrasIntent();
4637    method @NonNull public String getKey();
4638    method @NonNull public android.app.slice.Slice getSlice();
4639    method @NonNull public int getStatus();
4640    method @NonNull public String getSubkey();
4641    method public void writeToParcel(@NonNull android.os.Parcel, int);
4642    field @NonNull public static final android.os.Parcelable.Creator<android.credentials.selection.AuthenticationEntry> CREATOR;
4643    field public static final int STATUS_LOCKED = 0; // 0x0
4644    field public static final int STATUS_UNLOCKED_BUT_EMPTY_LESS_RECENT = 1; // 0x1
4645    field public static final int STATUS_UNLOCKED_BUT_EMPTY_MOST_RECENT = 2; // 0x2
4646  }
4647
4648  @FlaggedApi("android.credentials.flags.configurable_selector_ui_enabled") public final class CancelSelectionRequest implements android.os.Parcelable {
4649    ctor public CancelSelectionRequest(@NonNull android.credentials.selection.RequestToken, boolean, @NonNull String);
4650    method public int describeContents();
4651    method @NonNull public String getPackageName();
4652    method @NonNull public android.credentials.selection.RequestToken getRequestToken();
4653    method public boolean shouldShowCancellationExplanation();
4654    method public void writeToParcel(@NonNull android.os.Parcel, int);
4655    field @NonNull public static final android.os.Parcelable.Creator<android.credentials.selection.CancelSelectionRequest> CREATOR;
4656  }
4657
4658  @FlaggedApi("android.credentials.flags.configurable_selector_ui_enabled") public final class CreateCredentialProviderInfo {
4659    method @NonNull public String getProviderName();
4660    method @Nullable public android.credentials.selection.Entry getRemoteEntry();
4661    method @NonNull public java.util.List<android.credentials.selection.Entry> getSaveEntries();
4662  }
4663
4664  @FlaggedApi("android.credentials.flags.configurable_selector_ui_enabled") public static final class CreateCredentialProviderInfo.Builder {
4665    ctor public CreateCredentialProviderInfo.Builder(@NonNull String);
4666    method @NonNull public android.credentials.selection.CreateCredentialProviderInfo build();
4667    method @NonNull public android.credentials.selection.CreateCredentialProviderInfo.Builder setRemoteEntry(@Nullable android.credentials.selection.Entry);
4668    method @NonNull public android.credentials.selection.CreateCredentialProviderInfo.Builder setSaveEntries(@NonNull java.util.List<android.credentials.selection.Entry>);
4669  }
4670
4671  @FlaggedApi("android.credentials.flags.configurable_selector_ui_enabled") public final class DisabledProviderInfo {
4672    ctor public DisabledProviderInfo(@NonNull String);
4673    method @NonNull public String getProviderName();
4674  }
4675
4676  @FlaggedApi("android.credentials.flags.configurable_selector_ui_enabled") public final class Entry implements android.os.Parcelable {
4677    ctor public Entry(@NonNull String, @NonNull String, @NonNull android.app.slice.Slice, @NonNull android.content.Intent);
4678    method public int describeContents();
4679    method @Nullable public android.content.Intent getFrameworkExtrasIntent();
4680    method @NonNull public String getKey();
4681    method @NonNull public android.app.slice.Slice getSlice();
4682    method @NonNull public String getSubkey();
4683    method public void writeToParcel(@NonNull android.os.Parcel, int);
4684    field @NonNull public static final android.os.Parcelable.Creator<android.credentials.selection.Entry> CREATOR;
4685  }
4686
4687  @FlaggedApi("android.credentials.flags.configurable_selector_ui_enabled") public final class FailureResult {
4688    ctor public FailureResult(int, @Nullable String);
4689    method public int getErrorCode();
4690    method @Nullable public String getErrorMessage();
4691    method public static void sendFailureResult(@NonNull android.os.ResultReceiver, @NonNull android.credentials.selection.FailureResult);
4692    field public static final int ERROR_CODE_CANCELED_AND_LAUNCHED_SETTINGS = 2; // 0x2
4693    field public static final int ERROR_CODE_DIALOG_CANCELED_BY_USER = 1; // 0x1
4694    field public static final int ERROR_CODE_UI_FAILURE = 0; // 0x0
4695  }
4696
4697  @FlaggedApi("android.credentials.flags.configurable_selector_ui_enabled") public final class GetCredentialProviderInfo {
4698    method @NonNull public java.util.List<android.credentials.selection.Entry> getActionChips();
4699    method @NonNull public java.util.List<android.credentials.selection.AuthenticationEntry> getAuthenticationEntries();
4700    method @NonNull public java.util.List<android.credentials.selection.Entry> getCredentialEntries();
4701    method @NonNull public String getProviderName();
4702    method @Nullable public android.credentials.selection.Entry getRemoteEntry();
4703  }
4704
4705  @FlaggedApi("android.credentials.flags.configurable_selector_ui_enabled") public static final class GetCredentialProviderInfo.Builder {
4706    ctor public GetCredentialProviderInfo.Builder(@NonNull String);
4707    method @NonNull public android.credentials.selection.GetCredentialProviderInfo build();
4708    method @NonNull public android.credentials.selection.GetCredentialProviderInfo.Builder setActionChips(@NonNull java.util.List<android.credentials.selection.Entry>);
4709    method @NonNull public android.credentials.selection.GetCredentialProviderInfo.Builder setAuthenticationEntries(@NonNull java.util.List<android.credentials.selection.AuthenticationEntry>);
4710    method @NonNull public android.credentials.selection.GetCredentialProviderInfo.Builder setCredentialEntries(@NonNull java.util.List<android.credentials.selection.Entry>);
4711    method @NonNull public android.credentials.selection.GetCredentialProviderInfo.Builder setRemoteEntry(@Nullable android.credentials.selection.Entry);
4712  }
4713
4714  @FlaggedApi("android.credentials.flags.configurable_selector_ui_enabled") public final class IntentHelper {
4715    method @Nullable public static android.credentials.selection.CancelSelectionRequest extractCancelUiRequest(@NonNull android.content.Intent);
4716    method @NonNull public static java.util.List<android.credentials.selection.CreateCredentialProviderInfo> extractCreateCredentialProviderInfoList(@NonNull android.content.Intent);
4717    method @NonNull public static java.util.List<android.credentials.selection.DisabledProviderInfo> extractDisabledProviderInfoList(@NonNull android.content.Intent);
4718    method @NonNull public static java.util.List<android.credentials.selection.GetCredentialProviderInfo> extractGetCredentialProviderInfoList(@NonNull android.content.Intent);
4719    method @Nullable public static android.credentials.selection.RequestInfo extractRequestInfo(@NonNull android.content.Intent);
4720    method @Nullable public static android.os.ResultReceiver extractResultReceiver(@NonNull android.content.Intent);
4721  }
4722
4723  @FlaggedApi("android.credentials.flags.configurable_selector_ui_enabled") public final class ProviderPendingIntentResponse implements android.os.Parcelable {
4724    ctor public ProviderPendingIntentResponse(int, @Nullable android.content.Intent);
4725    method public int describeContents();
4726    method public int getResultCode();
4727    method @Nullable public android.content.Intent getResultData();
4728    method public void writeToParcel(@NonNull android.os.Parcel, int);
4729    field @NonNull public static final android.os.Parcelable.Creator<android.credentials.selection.ProviderPendingIntentResponse> CREATOR;
4730  }
4731
4732  @FlaggedApi("android.credentials.flags.configurable_selector_ui_enabled") public final class RequestInfo implements android.os.Parcelable {
4733    method public int describeContents();
4734    method @Nullable public android.credentials.CreateCredentialRequest getCreateCredentialRequest();
4735    method @NonNull public java.util.List<java.lang.String> getDefaultProviderIds();
4736    method @Nullable public android.credentials.GetCredentialRequest getGetCredentialRequest();
4737    method @NonNull public String getPackageName();
4738    method @NonNull public java.util.List<java.lang.String> getRegistryProviderIds();
4739    method @NonNull public android.credentials.selection.RequestToken getRequestToken();
4740    method @NonNull public String getType();
4741    method public boolean hasPermissionToOverrideDefault();
4742    method public boolean isShowAllOptionsRequested();
4743    method public void writeToParcel(@NonNull android.os.Parcel, int);
4744    field @NonNull public static final android.os.Parcelable.Creator<android.credentials.selection.RequestInfo> CREATOR;
4745    field @NonNull public static final String TYPE_CREATE = "android.credentials.selection.TYPE_CREATE";
4746    field @NonNull public static final String TYPE_GET = "android.credentials.selection.TYPE_GET";
4747    field @NonNull public static final String TYPE_UNDEFINED = "android.credentials.selection.TYPE_UNDEFINED";
4748  }
4749
4750  @FlaggedApi("android.credentials.flags.configurable_selector_ui_enabled") public final class RequestToken {
4751  }
4752
4753  @FlaggedApi("android.credentials.flags.configurable_selector_ui_enabled") public final class UserSelectionResult {
4754    ctor public UserSelectionResult(@NonNull String, @NonNull String, @NonNull String, @Nullable android.credentials.selection.ProviderPendingIntentResponse);
4755    method @NonNull public String getEntryKey();
4756    method @NonNull public String getEntrySubkey();
4757    method @Nullable public android.credentials.selection.ProviderPendingIntentResponse getPendingIntentProviderResponse();
4758    method @NonNull public String getProviderId();
4759    method public static void sendUserSelectionResult(@NonNull android.os.ResultReceiver, @NonNull android.credentials.selection.UserSelectionResult);
4760  }
4761
4762}
4763
4764package android.database {
4765
4766  public abstract class ContentObserver {
4767    method public void onChange(boolean, @NonNull java.util.Collection<android.net.Uri>, int, @NonNull android.os.UserHandle);
4768  }
4769
4770}
4771
4772package android.debug {
4773
4774  public class AdbManager {
4775    method @RequiresPermission(android.Manifest.permission.MANAGE_DEBUGGING) public boolean isAdbWifiQrSupported();
4776    method @RequiresPermission(android.Manifest.permission.MANAGE_DEBUGGING) public boolean isAdbWifiSupported();
4777  }
4778
4779}
4780
4781package android.graphics.fonts {
4782
4783  public final class FontFamilyUpdateRequest {
4784    method @NonNull public java.util.List<android.graphics.fonts.FontFamilyUpdateRequest.FontFamily> getFontFamilies();
4785    method @NonNull public java.util.List<android.graphics.fonts.FontFileUpdateRequest> getFontFileUpdateRequests();
4786  }
4787
4788  public static final class FontFamilyUpdateRequest.Builder {
4789    ctor public FontFamilyUpdateRequest.Builder();
4790    method @NonNull public android.graphics.fonts.FontFamilyUpdateRequest.Builder addFontFamily(@NonNull android.graphics.fonts.FontFamilyUpdateRequest.FontFamily);
4791    method @NonNull public android.graphics.fonts.FontFamilyUpdateRequest.Builder addFontFileUpdateRequest(@NonNull android.graphics.fonts.FontFileUpdateRequest);
4792    method @NonNull public android.graphics.fonts.FontFamilyUpdateRequest build();
4793  }
4794
4795  public static final class FontFamilyUpdateRequest.Font {
4796    method @NonNull public java.util.List<android.graphics.fonts.FontVariationAxis> getAxes();
4797    method @IntRange(from=0) public int getIndex();
4798    method @NonNull public String getPostScriptName();
4799    method @NonNull public android.graphics.fonts.FontStyle getStyle();
4800  }
4801
4802  public static final class FontFamilyUpdateRequest.Font.Builder {
4803    ctor public FontFamilyUpdateRequest.Font.Builder(@NonNull String, @NonNull android.graphics.fonts.FontStyle);
4804    method @NonNull public android.graphics.fonts.FontFamilyUpdateRequest.Font build();
4805    method @NonNull public android.graphics.fonts.FontFamilyUpdateRequest.Font.Builder setAxes(@NonNull java.util.List<android.graphics.fonts.FontVariationAxis>);
4806    method @NonNull public android.graphics.fonts.FontFamilyUpdateRequest.Font.Builder setIndex(@IntRange(from=0) int);
4807  }
4808
4809  public static final class FontFamilyUpdateRequest.FontFamily {
4810    method @NonNull public java.util.List<android.graphics.fonts.FontFamilyUpdateRequest.Font> getFonts();
4811    method @NonNull public String getName();
4812  }
4813
4814  public static final class FontFamilyUpdateRequest.FontFamily.Builder {
4815    ctor public FontFamilyUpdateRequest.FontFamily.Builder(@NonNull String, @NonNull java.util.List<android.graphics.fonts.FontFamilyUpdateRequest.Font>);
4816    method @NonNull public android.graphics.fonts.FontFamilyUpdateRequest.FontFamily.Builder addFont(@NonNull android.graphics.fonts.FontFamilyUpdateRequest.Font);
4817    method @NonNull public android.graphics.fonts.FontFamilyUpdateRequest.FontFamily build();
4818  }
4819
4820  public final class FontFileUpdateRequest {
4821    ctor public FontFileUpdateRequest(@NonNull android.os.ParcelFileDescriptor, @NonNull byte[]);
4822    method @NonNull public android.os.ParcelFileDescriptor getParcelFileDescriptor();
4823    method @NonNull public byte[] getSignature();
4824  }
4825
4826  public class FontManager {
4827    method @NonNull @RequiresPermission(android.Manifest.permission.UPDATE_FONTS) public android.text.FontConfig getFontConfig();
4828    method @RequiresPermission(android.Manifest.permission.UPDATE_FONTS) public int updateFontFamily(@NonNull android.graphics.fonts.FontFamilyUpdateRequest, @IntRange(from=0) int);
4829    field public static final int RESULT_ERROR_DOWNGRADING = -5; // 0xfffffffb
4830    field public static final int RESULT_ERROR_FAILED_TO_WRITE_FONT_FILE = -1; // 0xffffffff
4831    field public static final int RESULT_ERROR_FAILED_UPDATE_CONFIG = -6; // 0xfffffffa
4832    field public static final int RESULT_ERROR_FONT_NOT_FOUND = -9; // 0xfffffff7
4833    field public static final int RESULT_ERROR_FONT_UPDATER_DISABLED = -7; // 0xfffffff9
4834    field public static final int RESULT_ERROR_INVALID_FONT_FILE = -3; // 0xfffffffd
4835    field public static final int RESULT_ERROR_INVALID_FONT_NAME = -4; // 0xfffffffc
4836    field public static final int RESULT_ERROR_VERIFICATION_FAILURE = -2; // 0xfffffffe
4837    field public static final int RESULT_ERROR_VERSION_MISMATCH = -8; // 0xfffffff8
4838    field public static final int RESULT_SUCCESS = 0; // 0x0
4839  }
4840
4841}
4842
4843package android.hardware {
4844
4845  public final class Sensor {
4846    method public java.util.UUID getUuid();
4847    method public boolean isDataInjectionSupported();
4848    field public static final String STRING_TYPE_DYNAMIC_SENSOR_META = "android.sensor.dynamic_sensor_meta";
4849    field public static final String STRING_TYPE_WRIST_TILT_GESTURE = "android.sensor.wrist_tilt_gesture";
4850    field public static final int TYPE_DYNAMIC_SENSOR_META = 32; // 0x20
4851    field public static final int TYPE_WRIST_TILT_GESTURE = 26; // 0x1a
4852  }
4853
4854  public abstract class SensorManager {
4855    method public boolean initDataInjection(boolean);
4856    method public boolean injectSensorData(android.hardware.Sensor, float[], int, long);
4857  }
4858
4859  public final class SensorPrivacyManager {
4860    method @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public void addSensorPrivacyListener(int, @NonNull android.hardware.SensorPrivacyManager.OnSensorPrivacyChangedListener);
4861    method @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public void addSensorPrivacyListener(int, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.SensorPrivacyManager.OnSensorPrivacyChangedListener);
4862    method @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public void addSensorPrivacyListener(@NonNull android.hardware.SensorPrivacyManager.OnSensorPrivacyChangedListener);
4863    method @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public void addSensorPrivacyListener(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.SensorPrivacyManager.OnSensorPrivacyChangedListener);
4864    method @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public boolean areAnySensorPrivacyTogglesEnabled(int);
4865    method @FlaggedApi("com.android.internal.camera.flags.camera_privacy_allowlist") @NonNull @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public java.util.List<java.lang.String> getCameraPrivacyAllowlist();
4866    method @FlaggedApi("com.android.internal.camera.flags.camera_privacy_allowlist") @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public int getSensorPrivacyState(int, int);
4867    method @FlaggedApi("com.android.internal.camera.flags.camera_privacy_allowlist") @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public boolean isCameraPrivacyEnabled(@NonNull String);
4868    method @Deprecated @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public boolean isSensorPrivacyEnabled(int);
4869    method @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public boolean isSensorPrivacyEnabled(int, int);
4870    method @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public void removeSensorPrivacyListener(int, @NonNull android.hardware.SensorPrivacyManager.OnSensorPrivacyChangedListener);
4871    method @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public void removeSensorPrivacyListener(@NonNull android.hardware.SensorPrivacyManager.OnSensorPrivacyChangedListener);
4872    method @RequiresPermission(android.Manifest.permission.MANAGE_SENSOR_PRIVACY) public void setSensorPrivacy(int, boolean);
4873    method @FlaggedApi("com.android.internal.camera.flags.camera_privacy_allowlist") @RequiresPermission(android.Manifest.permission.MANAGE_SENSOR_PRIVACY) public void setSensorPrivacyState(int, int);
4874  }
4875
4876  public static interface SensorPrivacyManager.OnSensorPrivacyChangedListener {
4877    method public default void onSensorPrivacyChanged(@NonNull android.hardware.SensorPrivacyManager.OnSensorPrivacyChangedListener.SensorPrivacyChangedParams);
4878    method @Deprecated public void onSensorPrivacyChanged(int, boolean);
4879  }
4880
4881  public static class SensorPrivacyManager.OnSensorPrivacyChangedListener.SensorPrivacyChangedParams {
4882    method public int getSensor();
4883    method @FlaggedApi("com.android.internal.camera.flags.camera_privacy_allowlist") public int getState();
4884    method public int getToggleType();
4885    method public boolean isEnabled();
4886  }
4887
4888  @FlaggedApi("com.android.internal.camera.flags.camera_privacy_allowlist") public static class SensorPrivacyManager.StateTypes {
4889    field public static final int DISABLED = 2; // 0x2
4890    field public static final int ENABLED = 1; // 0x1
4891    field public static final int ENABLED_EXCEPT_ALLOWLISTED_APPS = 3; // 0x3
4892  }
4893
4894}
4895
4896package android.hardware.biometrics {
4897
4898  public static interface BiometricManager.Authenticators {
4899    field @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static final int BIOMETRIC_CONVENIENCE = 4095; // 0xfff
4900    field @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static final int EMPTY_SET = 0; // 0x0
4901  }
4902
4903}
4904
4905package android.hardware.camera2 {
4906
4907  public final class CameraCharacteristics extends android.hardware.camera2.CameraMetadata<android.hardware.camera2.CameraCharacteristics.Key<?>> {
4908    field @FlaggedApi("com.android.internal.camera.flags.camera_multi_client") @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<android.hardware.camera2.params.SharedSessionConfiguration> SHARED_SESSION_CONFIGURATION;
4909  }
4910
4911  public abstract class CameraDevice implements java.lang.AutoCloseable {
4912    method @Deprecated public abstract void createCustomCaptureSession(android.hardware.camera2.params.InputConfiguration, @NonNull java.util.List<android.hardware.camera2.params.OutputConfiguration>, int, @NonNull android.hardware.camera2.CameraCaptureSession.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException;
4913    field public static final int SESSION_OPERATION_MODE_CONSTRAINED_HIGH_SPEED = 1; // 0x1
4914    field public static final int SESSION_OPERATION_MODE_NORMAL = 0; // 0x0
4915    field @FlaggedApi("com.android.internal.camera.flags.camera_multi_client") public static final int SESSION_OPERATION_MODE_SHARED = 2; // 0x2
4916    field public static final int SESSION_OPERATION_MODE_VENDOR_START = 32768; // 0x8000
4917  }
4918
4919  public abstract static class CameraDevice.StateCallback {
4920    method @FlaggedApi("com.android.internal.camera.flags.camera_multi_client") public void onClientSharedAccessPriorityChanged(@NonNull android.hardware.camera2.CameraDevice, boolean);
4921    method @FlaggedApi("com.android.internal.camera.flags.camera_multi_client") public void onOpenedInSharedMode(@NonNull android.hardware.camera2.CameraDevice, boolean);
4922  }
4923
4924  public final class CameraManager {
4925    method @FlaggedApi("com.android.internal.camera.flags.camera_multi_client") public boolean isCameraDeviceSharingSupported(@NonNull String) throws android.hardware.camera2.CameraAccessException;
4926    method @RequiresPermission(allOf={android.Manifest.permission.SYSTEM_CAMERA, android.Manifest.permission.CAMERA}) public void openCamera(@NonNull String, int, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraDevice.StateCallback) throws android.hardware.camera2.CameraAccessException;
4927    method @FlaggedApi("com.android.internal.camera.flags.camera_multi_client") @RequiresPermission(allOf={android.Manifest.permission.SYSTEM_CAMERA, android.Manifest.permission.CAMERA}) public void openSharedCamera(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraDevice.StateCallback) throws android.hardware.camera2.CameraAccessException;
4928  }
4929
4930  public abstract static class CameraManager.AvailabilityCallback {
4931    method @RequiresPermission(android.Manifest.permission.CAMERA_OPEN_CLOSE_LISTENER) public void onCameraClosed(@NonNull String);
4932    method @RequiresPermission(android.Manifest.permission.CAMERA_OPEN_CLOSE_LISTENER) public void onCameraOpened(@NonNull String, @NonNull String);
4933  }
4934
4935  @FlaggedApi("com.android.internal.camera.flags.camera_multi_client") public abstract class CameraSharedCaptureSession extends android.hardware.camera2.CameraCaptureSession {
4936    ctor public CameraSharedCaptureSession();
4937    method @FlaggedApi("com.android.internal.camera.flags.camera_multi_client") public abstract int startStreaming(@NonNull java.util.List<android.view.Surface>, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraCaptureSession.CaptureCallback) throws android.hardware.camera2.CameraAccessException;
4938    method @FlaggedApi("com.android.internal.camera.flags.camera_multi_client") public abstract void stopStreaming() throws android.hardware.camera2.CameraAccessException;
4939  }
4940
4941}
4942
4943package android.hardware.camera2.extension {
4944
4945  public abstract class AdvancedExtender {
4946    ctor public AdvancedExtender(@NonNull android.hardware.camera2.CameraManager);
4947    method @NonNull public abstract java.util.List<android.hardware.camera2.CaptureRequest.Key> getAvailableCaptureRequestKeys(@NonNull String);
4948    method @NonNull public abstract java.util.List<android.hardware.camera2.CaptureResult.Key> getAvailableCaptureResultKeys(@NonNull String);
4949    method @NonNull public abstract java.util.List<android.util.Pair<android.hardware.camera2.CameraCharacteristics.Key,java.lang.Object>> getAvailableCharacteristicsKeyValues();
4950    method public long getMetadataVendorId(@NonNull String);
4951    method @NonNull public abstract android.hardware.camera2.extension.SessionProcessor getSessionProcessor();
4952    method @NonNull public abstract java.util.Map<java.lang.Integer,java.util.List<android.util.Size>> getSupportedCaptureOutputResolutions(@NonNull String);
4953    method @NonNull public abstract java.util.Map<java.lang.Integer,java.util.List<android.util.Size>> getSupportedPreviewOutputResolutions(@NonNull String);
4954    method public abstract void initialize(@NonNull String, @NonNull android.hardware.camera2.extension.CharacteristicsMap);
4955    method public abstract boolean isExtensionAvailable(@NonNull String, @NonNull android.hardware.camera2.extension.CharacteristicsMap);
4956  }
4957
4958  public abstract class CameraExtensionService extends android.app.Service {
4959    ctor protected CameraExtensionService();
4960    method @NonNull public final android.os.IBinder onBind(@Nullable android.content.Intent);
4961    method @NonNull public abstract android.hardware.camera2.extension.AdvancedExtender onInitializeAdvancedExtension(int);
4962    method public abstract boolean onRegisterClient(@NonNull android.os.IBinder);
4963    method public abstract void onUnregisterClient(@NonNull android.os.IBinder);
4964  }
4965
4966  public final class CameraOutputSurface {
4967    ctor public CameraOutputSurface(@NonNull android.view.Surface, @NonNull android.util.Size);
4968    method public int getColorSpace();
4969    method public long getDynamicRangeProfile();
4970    method public int getImageFormat();
4971    method @NonNull public android.util.Size getSize();
4972    method @NonNull public android.view.Surface getSurface();
4973    method public void setDynamicRangeProfile(long);
4974  }
4975
4976  public class CharacteristicsMap {
4977    method @Nullable public android.hardware.camera2.CameraCharacteristics get(@NonNull String);
4978    method @NonNull public java.util.Set<java.lang.String> getCameraIds();
4979  }
4980
4981  public class ExtensionConfiguration {
4982    ctor public ExtensionConfiguration(int, int, @NonNull java.util.List<android.hardware.camera2.extension.ExtensionOutputConfiguration>, @Nullable android.hardware.camera2.CaptureRequest);
4983    method public void setColorSpace(int);
4984  }
4985
4986  public class ExtensionOutputConfiguration {
4987    ctor public ExtensionOutputConfiguration(@NonNull java.util.List<android.hardware.camera2.extension.CameraOutputSurface>, int, @Nullable String, int);
4988  }
4989
4990  public final class RequestProcessor {
4991    method public void abortCaptures();
4992    method public int setRepeating(@NonNull android.hardware.camera2.extension.RequestProcessor.Request, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.extension.RequestProcessor.RequestCallback) throws android.hardware.camera2.CameraAccessException;
4993    method public void stopRepeating();
4994    method public int submit(@NonNull android.hardware.camera2.extension.RequestProcessor.Request, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.extension.RequestProcessor.RequestCallback) throws android.hardware.camera2.CameraAccessException;
4995    method public int submitBurst(@NonNull java.util.List<android.hardware.camera2.extension.RequestProcessor.Request>, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.extension.RequestProcessor.RequestCallback) throws android.hardware.camera2.CameraAccessException;
4996  }
4997
4998  public static final class RequestProcessor.Request {
4999    ctor public RequestProcessor.Request(@NonNull java.util.List<java.lang.Integer>, @NonNull java.util.List<android.util.Pair<android.hardware.camera2.CaptureRequest.Key,java.lang.Object>>, int);
5000    method @NonNull public java.util.List<android.util.Pair<android.hardware.camera2.CaptureRequest.Key,java.lang.Object>> getParameters();
5001  }
5002
5003  public static interface RequestProcessor.RequestCallback {
5004    method public void onCaptureBufferLost(@NonNull android.hardware.camera2.extension.RequestProcessor.Request, long, int);
5005    method public void onCaptureCompleted(@NonNull android.hardware.camera2.extension.RequestProcessor.Request, @Nullable android.hardware.camera2.TotalCaptureResult);
5006    method public void onCaptureFailed(@NonNull android.hardware.camera2.extension.RequestProcessor.Request, @NonNull android.hardware.camera2.CaptureFailure);
5007    method public void onCaptureProgressed(@NonNull android.hardware.camera2.extension.RequestProcessor.Request, @NonNull android.hardware.camera2.CaptureResult);
5008    method public void onCaptureSequenceAborted(int);
5009    method public void onCaptureSequenceCompleted(int, long);
5010    method public void onCaptureStarted(@NonNull android.hardware.camera2.extension.RequestProcessor.Request, long, long);
5011  }
5012
5013  public abstract class SessionProcessor {
5014    ctor public SessionProcessor();
5015    method public abstract void deInitSession(@NonNull android.os.IBinder);
5016    method @NonNull public abstract android.hardware.camera2.extension.ExtensionConfiguration initSession(@NonNull android.os.IBinder, @NonNull String, @NonNull android.hardware.camera2.extension.CharacteristicsMap, @NonNull android.hardware.camera2.extension.CameraOutputSurface, @NonNull android.hardware.camera2.extension.CameraOutputSurface);
5017    method public abstract void onCaptureSessionEnd();
5018    method public abstract void onCaptureSessionStart(@NonNull android.hardware.camera2.extension.RequestProcessor, @NonNull String);
5019    method public abstract void setParameters(@NonNull android.hardware.camera2.CaptureRequest);
5020    method public abstract int startMultiFrameCapture(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.extension.SessionProcessor.CaptureCallback);
5021    method public abstract int startRepeating(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.extension.SessionProcessor.CaptureCallback);
5022    method public abstract int startTrigger(@NonNull android.hardware.camera2.CaptureRequest, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.extension.SessionProcessor.CaptureCallback);
5023    method public abstract void stopRepeating();
5024  }
5025
5026  public static interface SessionProcessor.CaptureCallback {
5027    method public void onCaptureCompleted(long, int, @NonNull java.util.Map<android.hardware.camera2.CaptureResult.Key,java.lang.Object>);
5028    method public void onCaptureFailed(int, int);
5029    method public void onCaptureProcessStarted(int);
5030    method public void onCaptureSequenceAborted(int);
5031    method public void onCaptureSequenceCompleted(int);
5032    method public void onCaptureStarted(int, long);
5033  }
5034
5035}
5036
5037package android.hardware.camera2.params {
5038
5039  public final class OutputConfiguration implements android.os.Parcelable {
5040    ctor public OutputConfiguration(@NonNull android.view.Surface, int);
5041    ctor public OutputConfiguration(int, @NonNull android.view.Surface, int);
5042    method public int getRotation();
5043    field public static final int ROTATION_0 = 0; // 0x0
5044    field public static final int ROTATION_180 = 2; // 0x2
5045    field public static final int ROTATION_270 = 3; // 0x3
5046    field public static final int ROTATION_90 = 1; // 0x1
5047  }
5048
5049  public final class SessionConfiguration implements android.os.Parcelable {
5050    field @FlaggedApi("com.android.internal.camera.flags.camera_multi_client") public static final int SESSION_SHARED = 2; // 0x2
5051  }
5052
5053  @FlaggedApi("com.android.internal.camera.flags.camera_multi_client") public final class SharedSessionConfiguration {
5054    method @Nullable public android.graphics.ColorSpace getColorSpace();
5055    method @NonNull public java.util.List<android.hardware.camera2.params.SharedSessionConfiguration.SharedOutputConfiguration> getOutputStreamsInformation();
5056  }
5057
5058  public static final class SharedSessionConfiguration.SharedOutputConfiguration {
5059    method public int getDataspace();
5060    method public int getFormat();
5061    method public int getMirrorMode();
5062    method @Nullable public String getPhysicalCameraId();
5063    method @NonNull public android.util.Size getSize();
5064    method public long getStreamUseCase();
5065    method public int getSurfaceType();
5066    method public int getTimestampBase();
5067    method public long getUsage();
5068    method public boolean isReadoutTimestampEnabled();
5069  }
5070
5071}
5072
5073package android.hardware.contexthub {
5074
5075  @FlaggedApi("android.chre.flags.offload_api") public class HubDiscoveryInfo {
5076    method @NonNull public android.hardware.contexthub.HubEndpointInfo getHubEndpointInfo();
5077    method @Nullable public android.hardware.contexthub.HubServiceInfo getHubServiceInfo();
5078  }
5079
5080  @FlaggedApi("android.chre.flags.offload_api") public class HubEndpoint {
5081    method @Nullable public android.hardware.contexthub.IHubEndpointLifecycleCallback getLifecycleCallback();
5082    method @Nullable public android.hardware.contexthub.IHubEndpointMessageCallback getMessageCallback();
5083    method @NonNull public java.util.Collection<android.hardware.contexthub.HubServiceInfo> getServiceInfoCollection();
5084    method @Nullable public String getTag();
5085    method public int getVersion();
5086    field public static final int REASON_CLOSE_ENDPOINT_SESSION_REQUESTED = 4; // 0x4
5087    field public static final int REASON_ENDPOINT_INVALID = 5; // 0x5
5088    field public static final int REASON_ENDPOINT_STOPPED = 6; // 0x6
5089    field public static final int REASON_FAILURE = 0; // 0x0
5090    field public static final int REASON_OPEN_ENDPOINT_SESSION_REQUEST_REJECTED = 3; // 0x3
5091  }
5092
5093  public static final class HubEndpoint.Builder {
5094    ctor public HubEndpoint.Builder(@NonNull android.content.Context);
5095    method @NonNull public android.hardware.contexthub.HubEndpoint build();
5096    method @NonNull public android.hardware.contexthub.HubEndpoint.Builder setLifecycleCallback(@NonNull android.hardware.contexthub.IHubEndpointLifecycleCallback);
5097    method @NonNull public android.hardware.contexthub.HubEndpoint.Builder setLifecycleCallback(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.contexthub.IHubEndpointLifecycleCallback);
5098    method @NonNull public android.hardware.contexthub.HubEndpoint.Builder setMessageCallback(@NonNull android.hardware.contexthub.IHubEndpointMessageCallback);
5099    method @NonNull public android.hardware.contexthub.HubEndpoint.Builder setMessageCallback(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.contexthub.IHubEndpointMessageCallback);
5100    method @NonNull public android.hardware.contexthub.HubEndpoint.Builder setServiceInfoCollection(@NonNull java.util.Collection<android.hardware.contexthub.HubServiceInfo>);
5101    method @NonNull public android.hardware.contexthub.HubEndpoint.Builder setTag(@NonNull String);
5102  }
5103
5104  @FlaggedApi("android.chre.flags.offload_api") public final class HubEndpointInfo implements android.os.Parcelable {
5105    method public int describeContents();
5106    method @NonNull public android.hardware.contexthub.HubEndpointInfo.HubEndpointIdentifier getIdentifier();
5107    method @NonNull public String getName();
5108    method @NonNull public java.util.Collection<java.lang.String> getRequiredPermissions();
5109    method @NonNull public java.util.Collection<android.hardware.contexthub.HubServiceInfo> getServiceInfoCollection();
5110    method @Nullable public String getTag();
5111    method public int getType();
5112    method public int getVersion();
5113    method public void writeToParcel(@NonNull android.os.Parcel, int);
5114    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.contexthub.HubEndpointInfo> CREATOR;
5115    field public static final int TYPE_APP = 2; // 0x2
5116    field public static final int TYPE_FRAMEWORK = 1; // 0x1
5117    field public static final int TYPE_HUB_ENDPOINT = 5; // 0x5
5118    field public static final int TYPE_NANOAPP = 4; // 0x4
5119    field public static final int TYPE_NATIVE = 3; // 0x3
5120  }
5121
5122  public static class HubEndpointInfo.HubEndpointIdentifier {
5123    method public long getEndpoint();
5124    method public long getHub();
5125  }
5126
5127  @FlaggedApi("android.chre.flags.offload_api") public class HubEndpointSession implements java.lang.AutoCloseable {
5128    method @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public void close();
5129    method @Nullable public String getServiceDescriptor();
5130    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public android.hardware.location.ContextHubTransaction<java.lang.Void> sendMessage(@NonNull android.hardware.contexthub.HubMessage);
5131  }
5132
5133  @FlaggedApi("android.chre.flags.offload_api") public class HubEndpointSessionResult {
5134    method @NonNull public static android.hardware.contexthub.HubEndpointSessionResult accept();
5135    method @Nullable public String getReason();
5136    method public boolean isAccepted();
5137    method @NonNull public static android.hardware.contexthub.HubEndpointSessionResult reject(@NonNull String);
5138  }
5139
5140  @FlaggedApi("android.chre.flags.offload_api") public final class HubMessage implements android.os.Parcelable {
5141    method @NonNull public static android.hardware.contexthub.HubMessage createMessage(int, @NonNull byte[]);
5142    method @NonNull public static android.hardware.contexthub.HubMessage createMessage(int, @NonNull byte[], @NonNull android.hardware.contexthub.HubMessage.DeliveryParams);
5143    method public int describeContents();
5144    method @NonNull public byte[] getMessageBody();
5145    method public int getMessageType();
5146    method public void writeToParcel(@NonNull android.os.Parcel, int);
5147    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.contexthub.HubMessage> CREATOR;
5148  }
5149
5150  public static class HubMessage.DeliveryParams {
5151    method public boolean isResponseRequired();
5152    method @NonNull public static android.hardware.contexthub.HubMessage.DeliveryParams makeBasic();
5153    method @NonNull public android.hardware.contexthub.HubMessage.DeliveryParams setResponseRequired(boolean);
5154  }
5155
5156  @FlaggedApi("android.chre.flags.offload_api") public final class HubServiceInfo implements android.os.Parcelable {
5157    ctor public HubServiceInfo(@NonNull String, int, int, int);
5158    method public int describeContents();
5159    method public int getFormat();
5160    method public int getMajorVersion();
5161    method public int getMinorVersion();
5162    method @NonNull public String getServiceDescriptor();
5163    method public void writeToParcel(@NonNull android.os.Parcel, int);
5164    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.contexthub.HubServiceInfo> CREATOR;
5165    field public static final int FORMAT_AIDL = 1; // 0x1
5166    field public static final int FORMAT_CUSTOM = 0; // 0x0
5167    field public static final int FORMAT_PW_RPC_PROTOBUF = 2; // 0x2
5168  }
5169
5170  public static final class HubServiceInfo.Builder {
5171    ctor public HubServiceInfo.Builder(@NonNull String, int, int, int);
5172    method @NonNull public android.hardware.contexthub.HubServiceInfo build();
5173  }
5174
5175  @FlaggedApi("android.chre.flags.offload_api") public interface IHubEndpointDiscoveryCallback {
5176    method public void onEndpointsStarted(@NonNull java.util.List<android.hardware.contexthub.HubDiscoveryInfo>);
5177    method public void onEndpointsStopped(@NonNull java.util.List<android.hardware.contexthub.HubDiscoveryInfo>, int);
5178  }
5179
5180  @FlaggedApi("android.chre.flags.offload_api") public interface IHubEndpointLifecycleCallback {
5181    method public void onSessionClosed(@NonNull android.hardware.contexthub.HubEndpointSession, int);
5182    method @NonNull public android.hardware.contexthub.HubEndpointSessionResult onSessionOpenRequest(@NonNull android.hardware.contexthub.HubEndpointInfo, @Nullable String);
5183    method public void onSessionOpened(@NonNull android.hardware.contexthub.HubEndpointSession);
5184  }
5185
5186  @FlaggedApi("android.chre.flags.offload_api") public interface IHubEndpointMessageCallback {
5187    method public void onMessageReceived(@NonNull android.hardware.contexthub.HubEndpointSession, @NonNull android.hardware.contexthub.HubMessage);
5188  }
5189
5190}
5191
5192package android.hardware.devicestate {
5193
5194  @FlaggedApi("android.hardware.devicestate.feature.flags.device_state_property_api") public final class DeviceState {
5195    method @IntRange(from=0x0) public int getIdentifier();
5196    method @NonNull public String getName();
5197    method public boolean hasProperties(@NonNull int...);
5198    method public boolean hasProperty(int);
5199    field public static final int PROPERTY_EMULATED_ONLY = 10; // 0xa
5200    field public static final int PROPERTY_EXTENDED_DEVICE_STATE_EXTERNAL_DISPLAY = 15; // 0xf
5201    field public static final int PROPERTY_FEATURE_DUAL_DISPLAY_INTERNAL_DEFAULT = 17; // 0x11
5202    field public static final int PROPERTY_FEATURE_REAR_DISPLAY = 16; // 0x10
5203    field public static final int PROPERTY_FOLDABLE_DISPLAY_CONFIGURATION_INNER_PRIMARY = 12; // 0xc
5204    field public static final int PROPERTY_FOLDABLE_DISPLAY_CONFIGURATION_OUTER_PRIMARY = 11; // 0xb
5205    field public static final int PROPERTY_FOLDABLE_HARDWARE_CONFIGURATION_FOLD_IN_CLOSED = 1; // 0x1
5206    field public static final int PROPERTY_FOLDABLE_HARDWARE_CONFIGURATION_FOLD_IN_HALF_OPEN = 2; // 0x2
5207    field public static final int PROPERTY_FOLDABLE_HARDWARE_CONFIGURATION_FOLD_IN_OPEN = 3; // 0x3
5208    field public static final int PROPERTY_POWER_CONFIGURATION_TRIGGER_SLEEP = 13; // 0xd
5209    field public static final int PROPERTY_POWER_CONFIGURATION_TRIGGER_WAKE = 14; // 0xe
5210  }
5211
5212  @FlaggedApi("android.hardware.devicestate.feature.flags.device_state_property_api") public final class DeviceStateManager {
5213    method @NonNull public java.util.List<android.hardware.devicestate.DeviceState> getSupportedDeviceStates();
5214    method public void registerCallback(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.devicestate.DeviceStateManager.DeviceStateCallback);
5215    method public void unregisterCallback(@NonNull android.hardware.devicestate.DeviceStateManager.DeviceStateCallback);
5216  }
5217
5218  public static interface DeviceStateManager.DeviceStateCallback {
5219    method public void onDeviceStateChanged(@NonNull android.hardware.devicestate.DeviceState);
5220    method public default void onSupportedStatesChanged(@NonNull java.util.List<android.hardware.devicestate.DeviceState>);
5221  }
5222
5223}
5224
5225package android.hardware.display {
5226
5227  public final class AmbientBrightnessDayStats implements android.os.Parcelable {
5228    method public int describeContents();
5229    method public float[] getBucketBoundaries();
5230    method public java.time.LocalDate getLocalDate();
5231    method public float[] getStats();
5232    method public void writeToParcel(android.os.Parcel, int);
5233    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.display.AmbientBrightnessDayStats> CREATOR;
5234  }
5235
5236  public final class BrightnessChangeEvent implements android.os.Parcelable {
5237    method public int describeContents();
5238    method public void writeToParcel(android.os.Parcel, int);
5239    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.display.BrightnessChangeEvent> CREATOR;
5240    field public final float batteryLevel;
5241    field public final float brightness;
5242    field public final long colorSampleDuration;
5243    field public final int colorTemperature;
5244    field @Nullable public final long[] colorValueBuckets;
5245    field public final boolean isDefaultBrightnessConfig;
5246    field public final boolean isUserSetBrightness;
5247    field public final float lastBrightness;
5248    field public final long[] luxTimestamps;
5249    field public final float[] luxValues;
5250    field public final boolean nightMode;
5251    field public final String packageName;
5252    field public final float powerBrightnessFactor;
5253    field public final boolean reduceBrightColors;
5254    field public final float reduceBrightColorsOffset;
5255    field public final int reduceBrightColorsStrength;
5256    field public final long timeStamp;
5257    field @NonNull public final String uniqueDisplayId;
5258  }
5259
5260  public final class BrightnessConfiguration implements android.os.Parcelable {
5261    method public int describeContents();
5262    method @Nullable public android.hardware.display.BrightnessCorrection getCorrectionByCategory(int);
5263    method @Nullable public android.hardware.display.BrightnessCorrection getCorrectionByPackageName(@NonNull String);
5264    method public android.util.Pair<float[],float[]> getCurve();
5265    method public float getShortTermModelLowerLuxMultiplier();
5266    method public long getShortTermModelTimeoutMillis();
5267    method public float getShortTermModelUpperLuxMultiplier();
5268    method public boolean shouldCollectColorSamples();
5269    method public void writeToParcel(android.os.Parcel, int);
5270    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.display.BrightnessConfiguration> CREATOR;
5271    field public static final long SHORT_TERM_TIMEOUT_UNSET = -1L; // 0xffffffffffffffffL
5272  }
5273
5274  public static class BrightnessConfiguration.Builder {
5275    ctor public BrightnessConfiguration.Builder(float[], float[]);
5276    method @NonNull public android.hardware.display.BrightnessConfiguration.Builder addCorrectionByCategory(int, @NonNull android.hardware.display.BrightnessCorrection);
5277    method @NonNull public android.hardware.display.BrightnessConfiguration.Builder addCorrectionByPackageName(@NonNull String, @NonNull android.hardware.display.BrightnessCorrection);
5278    method @NonNull public android.hardware.display.BrightnessConfiguration build();
5279    method public int getMaxCorrectionsByCategory();
5280    method public int getMaxCorrectionsByPackageName();
5281    method @NonNull public android.hardware.display.BrightnessConfiguration.Builder setDescription(@Nullable String);
5282    method @NonNull public android.hardware.display.BrightnessConfiguration.Builder setShortTermModelLowerLuxMultiplier(@FloatRange(from=0.0f) float);
5283    method @NonNull public android.hardware.display.BrightnessConfiguration.Builder setShortTermModelTimeoutMillis(long);
5284    method @NonNull public android.hardware.display.BrightnessConfiguration.Builder setShortTermModelUpperLuxMultiplier(@FloatRange(from=0.0f) float);
5285    method @NonNull public android.hardware.display.BrightnessConfiguration.Builder setShouldCollectColorSamples(boolean);
5286  }
5287
5288  public final class BrightnessCorrection implements android.os.Parcelable {
5289    method @FloatRange(from=0.0) public float apply(@FloatRange(from=0.0) float);
5290    method @NonNull public static android.hardware.display.BrightnessCorrection createScaleAndTranslateLog(float, float);
5291    method public int describeContents();
5292    method public void writeToParcel(android.os.Parcel, int);
5293    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.display.BrightnessCorrection> CREATOR;
5294  }
5295
5296  public final class ColorDisplayManager {
5297    method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public int getNightDisplayAutoMode();
5298    method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public int getTransformCapabilities();
5299    method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public boolean setAppSaturationLevel(@NonNull String, @IntRange(from=0, to=100) int);
5300    method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public boolean setNightDisplayAutoMode(int);
5301    method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public boolean setNightDisplayCustomEndTime(@NonNull java.time.LocalTime);
5302    method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public boolean setNightDisplayCustomStartTime(@NonNull java.time.LocalTime);
5303    method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public boolean setSaturationLevel(@IntRange(from=0, to=100) int);
5304    field public static final int AUTO_MODE_CUSTOM_TIME = 1; // 0x1
5305    field public static final int AUTO_MODE_DISABLED = 0; // 0x0
5306    field public static final int AUTO_MODE_TWILIGHT = 2; // 0x2
5307    field public static final int CAPABILITY_HARDWARE_ACCELERATION_GLOBAL = 2; // 0x2
5308    field public static final int CAPABILITY_HARDWARE_ACCELERATION_PER_APP = 4; // 0x4
5309    field public static final int CAPABILITY_NONE = 0; // 0x0
5310    field public static final int CAPABILITY_PROTECTED_CONTENT = 1; // 0x1
5311  }
5312
5313  public final class DisplayManager {
5314    method @Nullable @RequiresPermission("android.permission.CAPTURE_VIDEO_OUTPUT") public static android.hardware.display.VirtualDisplay createVirtualDisplay(@NonNull String, int, int, int, @Nullable android.view.Surface);
5315    method @RequiresPermission(android.Manifest.permission.ACCESS_AMBIENT_LIGHT_STATS) public java.util.List<android.hardware.display.AmbientBrightnessDayStats> getAmbientBrightnessStats();
5316    method @RequiresPermission(android.Manifest.permission.CONFIGURE_DISPLAY_BRIGHTNESS) public android.hardware.display.BrightnessConfiguration getBrightnessConfiguration();
5317    method @Nullable @RequiresPermission(android.Manifest.permission.CONFIGURE_DISPLAY_BRIGHTNESS) public android.hardware.display.BrightnessConfiguration getBrightnessConfigurationForDisplay(@NonNull String);
5318    method @RequiresPermission(android.Manifest.permission.BRIGHTNESS_SLIDER_USAGE) public java.util.List<android.hardware.display.BrightnessChangeEvent> getBrightnessEvents();
5319    method @Nullable @RequiresPermission(android.Manifest.permission.CONFIGURE_DISPLAY_BRIGHTNESS) public android.hardware.display.BrightnessConfiguration getDefaultBrightnessConfiguration();
5320    method public android.util.Pair<float[],float[]> getMinimumBrightnessCurve();
5321    method public android.graphics.Point getStableDisplaySize();
5322    method @FlaggedApi("com.android.server.display.feature.flags.is_always_on_available_api") public boolean isAlwaysOnDisplayCurrentlyAvailable();
5323    method @RequiresPermission(android.Manifest.permission.CONFIGURE_DISPLAY_BRIGHTNESS) public void setBrightnessConfiguration(android.hardware.display.BrightnessConfiguration);
5324    method @RequiresPermission(android.Manifest.permission.CONFIGURE_DISPLAY_BRIGHTNESS) public void setBrightnessConfigurationForDisplay(@NonNull android.hardware.display.BrightnessConfiguration, @NonNull String);
5325    method @Deprecated @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_SATURATION) public void setSaturationLevel(float);
5326    field @FlaggedApi("android.companion.virtual.flags.vdm_public_apis") public static final int VIRTUAL_DISPLAY_FLAG_ROTATES_WITH_CONTENT = 128; // 0x80
5327    field public static final int VIRTUAL_DISPLAY_FLAG_STEAL_TOP_FOCUS_DISABLED = 65536; // 0x10000
5328    field public static final int VIRTUAL_DISPLAY_FLAG_TRUSTED = 1024; // 0x400
5329  }
5330
5331  public final class VirtualDisplayConfig implements android.os.Parcelable {
5332    method @FlaggedApi("android.companion.virtualdevice.flags.virtual_display_insets") @Nullable public android.view.DisplayCutout getDisplayCutout();
5333    method @FlaggedApi("android.companion.virtual.flags.vdm_custom_home") public boolean isHomeSupported();
5334    method @FlaggedApi("com.android.window.flags.vdm_force_app_universal_resizable_api") public boolean isIgnoreActivitySizeRestrictions();
5335  }
5336
5337  public static final class VirtualDisplayConfig.Builder {
5338    method @FlaggedApi("android.companion.virtualdevice.flags.virtual_display_insets") @NonNull public android.hardware.display.VirtualDisplayConfig.Builder setDisplayCutout(@Nullable android.view.DisplayCutout);
5339    method @FlaggedApi("android.companion.virtual.flags.vdm_custom_home") @NonNull public android.hardware.display.VirtualDisplayConfig.Builder setHomeSupported(boolean);
5340    method @FlaggedApi("com.android.window.flags.vdm_force_app_universal_resizable_api") @NonNull public android.hardware.display.VirtualDisplayConfig.Builder setIgnoreActivitySizeRestrictions(boolean);
5341  }
5342
5343}
5344
5345package android.hardware.hdmi {
5346
5347  public abstract class HdmiClient {
5348    method public android.hardware.hdmi.HdmiDeviceInfo getActiveSource();
5349    method public void selectDevice(int, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.hdmi.HdmiClient.OnDeviceSelectedListener);
5350    method public void sendKeyEvent(int, boolean);
5351    method public void sendVendorCommand(int, byte[], boolean);
5352    method public void setVendorCommandListener(@NonNull android.hardware.hdmi.HdmiControlManager.VendorCommandListener);
5353    method public void setVendorCommandListener(@NonNull android.hardware.hdmi.HdmiControlManager.VendorCommandListener, int);
5354  }
5355
5356  public static interface HdmiClient.OnDeviceSelectedListener {
5357    method public void onDeviceSelected(int, int);
5358  }
5359
5360  public final class HdmiControlManager {
5361    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void addHdmiCecEnabledChangeListener(@NonNull android.hardware.hdmi.HdmiControlManager.CecSettingChangeListener);
5362    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void addHdmiCecEnabledChangeListener(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.hdmi.HdmiControlManager.CecSettingChangeListener);
5363    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void addHotplugEventListener(android.hardware.hdmi.HdmiControlManager.HotplugEventListener);
5364    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void addHotplugEventListener(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.hdmi.HdmiControlManager.HotplugEventListener);
5365    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public java.util.List<java.lang.Integer> getAllowedCecSettingIntValues(@NonNull String);
5366    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public java.util.List<java.lang.String> getAllowedCecSettingStringValues(@NonNull String);
5367    method @Nullable public android.hardware.hdmi.HdmiClient getClient(int);
5368    method @NonNull public java.util.List<android.hardware.hdmi.HdmiDeviceInfo> getConnectedDevices();
5369    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getEarcEnabled();
5370    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getHdmiCecEnabled();
5371    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getHdmiCecVersion();
5372    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getHdmiCecVolumeControlEnabled();
5373    method public int getPhysicalAddress();
5374    method @Nullable public android.hardware.hdmi.HdmiPlaybackClient getPlaybackClient();
5375    method @NonNull public java.util.List<android.hardware.hdmi.HdmiPortInfo> getPortInfo();
5376    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public String getPowerControlMode();
5377    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public String getPowerStateChangeOnActiveSourceLost();
5378    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getRoutingControl();
5379    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getSadPresenceInQuery(@NonNull String);
5380    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getSoundbarMode();
5381    method @Nullable public android.hardware.hdmi.HdmiSwitchClient getSwitchClient();
5382    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getSystemAudioControl();
5383    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getSystemAudioModeMuting();
5384    method @Nullable public android.hardware.hdmi.HdmiTvClient getTvClient();
5385    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getTvSendStandbyOnSleep();
5386    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getTvWakeOnOneTouchPlay();
5387    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public java.util.List<java.lang.String> getUserCecSettings();
5388    method public boolean isDeviceConnected(@NonNull android.hardware.hdmi.HdmiDeviceInfo);
5389    method public void powerOffDevice(@NonNull android.hardware.hdmi.HdmiDeviceInfo);
5390    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void removeHdmiCecEnabledChangeListener(@NonNull android.hardware.hdmi.HdmiControlManager.CecSettingChangeListener);
5391    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void removeHotplugEventListener(android.hardware.hdmi.HdmiControlManager.HotplugEventListener);
5392    method public void setActiveSource(@NonNull android.hardware.hdmi.HdmiDeviceInfo);
5393    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setEarcEnabled(@NonNull int);
5394    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setHdmiCecEnabled(@NonNull int);
5395    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setHdmiCecVersion(@NonNull int);
5396    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setHdmiCecVolumeControlEnabled(int);
5397    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setPowerControlMode(@NonNull String);
5398    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setPowerStateChangeOnActiveSourceLost(@NonNull String);
5399    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setRoutingControl(@NonNull int);
5400    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setSadPresenceInQuery(@NonNull String, int);
5401    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setSadsPresenceInQuery(@NonNull java.util.List<java.lang.String>, int);
5402    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setSoundbarMode(int);
5403    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setStandbyMode(boolean);
5404    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setSystemAudioControl(@NonNull int);
5405    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setSystemAudioModeMuting(@NonNull int);
5406    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setTvSendStandbyOnSleep(@NonNull int);
5407    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setTvWakeOnOneTouchPlay(@NonNull int);
5408    field public static final String ACTION_OSD_MESSAGE = "android.hardware.hdmi.action.OSD_MESSAGE";
5409    field public static final int AVR_VOLUME_MUTED = 101; // 0x65
5410    field public static final String CEC_SETTING_NAME_HDMI_CEC_ENABLED = "hdmi_cec_enabled";
5411    field public static final String CEC_SETTING_NAME_HDMI_CEC_VERSION = "hdmi_cec_version";
5412    field public static final String CEC_SETTING_NAME_POWER_CONTROL_MODE = "power_control_mode";
5413    field public static final String CEC_SETTING_NAME_POWER_STATE_CHANGE_ON_ACTIVE_SOURCE_LOST = "power_state_change_on_active_source_lost";
5414    field public static final String CEC_SETTING_NAME_QUERY_SAD_AAC = "query_sad_aac";
5415    field public static final String CEC_SETTING_NAME_QUERY_SAD_ATRAC = "query_sad_atrac";
5416    field public static final String CEC_SETTING_NAME_QUERY_SAD_DD = "query_sad_dd";
5417    field public static final String CEC_SETTING_NAME_QUERY_SAD_DDP = "query_sad_ddp";
5418    field public static final String CEC_SETTING_NAME_QUERY_SAD_DST = "query_sad_dst";
5419    field public static final String CEC_SETTING_NAME_QUERY_SAD_DTS = "query_sad_dts";
5420    field public static final String CEC_SETTING_NAME_QUERY_SAD_DTSHD = "query_sad_dtshd";
5421    field public static final String CEC_SETTING_NAME_QUERY_SAD_LPCM = "query_sad_lpcm";
5422    field public static final String CEC_SETTING_NAME_QUERY_SAD_MAX = "query_sad_max";
5423    field public static final String CEC_SETTING_NAME_QUERY_SAD_MP3 = "query_sad_mp3";
5424    field public static final String CEC_SETTING_NAME_QUERY_SAD_MPEG1 = "query_sad_mpeg1";
5425    field public static final String CEC_SETTING_NAME_QUERY_SAD_MPEG2 = "query_sad_mpeg2";
5426    field public static final String CEC_SETTING_NAME_QUERY_SAD_ONEBITAUDIO = "query_sad_onebitaudio";
5427    field public static final String CEC_SETTING_NAME_QUERY_SAD_TRUEHD = "query_sad_truehd";
5428    field public static final String CEC_SETTING_NAME_QUERY_SAD_WMAPRO = "query_sad_wmapro";
5429    field public static final String CEC_SETTING_NAME_ROUTING_CONTROL = "routing_control";
5430    field public static final String CEC_SETTING_NAME_SOUNDBAR_MODE = "soundbar_mode";
5431    field public static final String CEC_SETTING_NAME_SYSTEM_AUDIO_CONTROL = "system_audio_control";
5432    field public static final String CEC_SETTING_NAME_SYSTEM_AUDIO_MODE_MUTING = "system_audio_mode_muting";
5433    field public static final String CEC_SETTING_NAME_TV_SEND_STANDBY_ON_SLEEP = "tv_send_standby_on_sleep";
5434    field public static final String CEC_SETTING_NAME_TV_WAKE_ON_ONE_TOUCH_PLAY = "tv_wake_on_one_touch_play";
5435    field public static final String CEC_SETTING_NAME_VOLUME_CONTROL_MODE = "volume_control_enabled";
5436    field public static final int CLEAR_TIMER_STATUS_CEC_DISABLE = 162; // 0xa2
5437    field public static final int CLEAR_TIMER_STATUS_CHECK_RECORDER_CONNECTION = 160; // 0xa0
5438    field public static final int CLEAR_TIMER_STATUS_FAIL_TO_CLEAR_SELECTED_SOURCE = 161; // 0xa1
5439    field public static final int CLEAR_TIMER_STATUS_TIMER_CLEARED = 128; // 0x80
5440    field public static final int CLEAR_TIMER_STATUS_TIMER_NOT_CLEARED_NO_INFO_AVAILABLE = 2; // 0x2
5441    field public static final int CLEAR_TIMER_STATUS_TIMER_NOT_CLEARED_NO_MATCHING = 1; // 0x1
5442    field public static final int CLEAR_TIMER_STATUS_TIMER_NOT_CLEARED_RECORDING = 0; // 0x0
5443    field public static final int CONTROL_STATE_CHANGED_REASON_SETTING = 1; // 0x1
5444    field public static final int CONTROL_STATE_CHANGED_REASON_STANDBY = 3; // 0x3
5445    field public static final int CONTROL_STATE_CHANGED_REASON_START = 0; // 0x0
5446    field public static final int CONTROL_STATE_CHANGED_REASON_WAKEUP = 2; // 0x2
5447    field public static final int DEVICE_EVENT_ADD_DEVICE = 1; // 0x1
5448    field public static final int DEVICE_EVENT_REMOVE_DEVICE = 2; // 0x2
5449    field public static final int DEVICE_EVENT_UPDATE_DEVICE = 3; // 0x3
5450    field public static final int EARC_FEATURE_DISABLED = 0; // 0x0
5451    field public static final int EARC_FEATURE_ENABLED = 1; // 0x1
5452    field public static final String EXTRA_MESSAGE_EXTRA_PARAM1 = "android.hardware.hdmi.extra.MESSAGE_EXTRA_PARAM1";
5453    field public static final String EXTRA_MESSAGE_ID = "android.hardware.hdmi.extra.MESSAGE_ID";
5454    field public static final int HDMI_CEC_CONTROL_DISABLED = 0; // 0x0
5455    field public static final int HDMI_CEC_CONTROL_ENABLED = 1; // 0x1
5456    field public static final int HDMI_CEC_VERSION_1_4_B = 5; // 0x5
5457    field public static final int HDMI_CEC_VERSION_2_0 = 6; // 0x6
5458    field public static final int ONE_TOUCH_RECORD_ALREADY_RECORDING = 18; // 0x12
5459    field public static final int ONE_TOUCH_RECORD_CEC_DISABLED = 51; // 0x33
5460    field public static final int ONE_TOUCH_RECORD_CHECK_RECORDER_CONNECTION = 49; // 0x31
5461    field public static final int ONE_TOUCH_RECORD_DISALLOW_TO_COPY = 13; // 0xd
5462    field public static final int ONE_TOUCH_RECORD_DISALLOW_TO_FUTHER_COPIES = 14; // 0xe
5463    field public static final int ONE_TOUCH_RECORD_FAIL_TO_RECORD_DISPLAYED_SCREEN = 50; // 0x32
5464    field public static final int ONE_TOUCH_RECORD_INVALID_EXTERNAL_PHYSICAL_ADDRESS = 10; // 0xa
5465    field public static final int ONE_TOUCH_RECORD_INVALID_EXTERNAL_PLUG_NUMBER = 9; // 0x9
5466    field public static final int ONE_TOUCH_RECORD_MEDIA_PROBLEM = 21; // 0x15
5467    field public static final int ONE_TOUCH_RECORD_MEDIA_PROTECTED = 19; // 0x13
5468    field public static final int ONE_TOUCH_RECORD_NOT_ENOUGH_SPACE = 22; // 0x16
5469    field public static final int ONE_TOUCH_RECORD_NO_MEDIA = 16; // 0x10
5470    field public static final int ONE_TOUCH_RECORD_NO_OR_INSUFFICIENT_CA_ENTITLEMENTS = 12; // 0xc
5471    field public static final int ONE_TOUCH_RECORD_NO_SOURCE_SIGNAL = 20; // 0x14
5472    field public static final int ONE_TOUCH_RECORD_OTHER_REASON = 31; // 0x1f
5473    field public static final int ONE_TOUCH_RECORD_PARENT_LOCK_ON = 23; // 0x17
5474    field public static final int ONE_TOUCH_RECORD_PLAYING = 17; // 0x11
5475    field public static final int ONE_TOUCH_RECORD_PREVIOUS_RECORDING_IN_PROGRESS = 48; // 0x30
5476    field public static final int ONE_TOUCH_RECORD_RECORDING_ALREADY_TERMINATED = 27; // 0x1b
5477    field public static final int ONE_TOUCH_RECORD_RECORDING_ANALOGUE_SERVICE = 3; // 0x3
5478    field public static final int ONE_TOUCH_RECORD_RECORDING_CURRENTLY_SELECTED_SOURCE = 1; // 0x1
5479    field public static final int ONE_TOUCH_RECORD_RECORDING_DIGITAL_SERVICE = 2; // 0x2
5480    field public static final int ONE_TOUCH_RECORD_RECORDING_EXTERNAL_INPUT = 4; // 0x4
5481    field public static final int ONE_TOUCH_RECORD_RECORDING_TERMINATED_NORMALLY = 26; // 0x1a
5482    field public static final int ONE_TOUCH_RECORD_UNABLE_ANALOGUE_SERVICE = 6; // 0x6
5483    field public static final int ONE_TOUCH_RECORD_UNABLE_DIGITAL_SERVICE = 5; // 0x5
5484    field public static final int ONE_TOUCH_RECORD_UNABLE_SELECTED_SERVICE = 7; // 0x7
5485    field public static final int ONE_TOUCH_RECORD_UNSUPPORTED_CA = 11; // 0xb
5486    field public static final int OSD_MESSAGE_ARC_CONNECTED_INVALID_PORT = 1; // 0x1
5487    field public static final int OSD_MESSAGE_AVR_VOLUME_CHANGED = 2; // 0x2
5488    field public static final String POWER_CONTROL_MODE_BROADCAST = "broadcast";
5489    field public static final String POWER_CONTROL_MODE_NONE = "none";
5490    field public static final String POWER_CONTROL_MODE_TV = "to_tv";
5491    field public static final String POWER_CONTROL_MODE_TV_AND_AUDIO_SYSTEM = "to_tv_and_audio_system";
5492    field public static final String POWER_STATE_CHANGE_ON_ACTIVE_SOURCE_LOST_NONE = "none";
5493    field public static final String POWER_STATE_CHANGE_ON_ACTIVE_SOURCE_LOST_STANDBY_NOW = "standby_now";
5494    field public static final int POWER_STATUS_ON = 0; // 0x0
5495    field public static final int POWER_STATUS_STANDBY = 1; // 0x1
5496    field public static final int POWER_STATUS_TRANSIENT_TO_ON = 2; // 0x2
5497    field public static final int POWER_STATUS_TRANSIENT_TO_STANDBY = 3; // 0x3
5498    field public static final int POWER_STATUS_UNKNOWN = -1; // 0xffffffff
5499    field public static final int QUERY_SAD_DISABLED = 0; // 0x0
5500    field public static final int QUERY_SAD_ENABLED = 1; // 0x1
5501    field @Deprecated public static final int RESULT_ALREADY_IN_PROGRESS = 4; // 0x4
5502    field public static final int RESULT_COMMUNICATION_FAILED = 7; // 0x7
5503    field public static final int RESULT_EXCEPTION = 5; // 0x5
5504    field public static final int RESULT_INCORRECT_MODE = 6; // 0x6
5505    field public static final int RESULT_SOURCE_NOT_AVAILABLE = 2; // 0x2
5506    field public static final int RESULT_SUCCESS = 0; // 0x0
5507    field public static final int RESULT_TARGET_NOT_AVAILABLE = 3; // 0x3
5508    field public static final int RESULT_TIMEOUT = 1; // 0x1
5509    field public static final int ROUTING_CONTROL_DISABLED = 0; // 0x0
5510    field public static final int ROUTING_CONTROL_ENABLED = 1; // 0x1
5511    field public static final String SETTING_NAME_EARC_ENABLED = "earc_enabled";
5512    field public static final int SOUNDBAR_MODE_DISABLED = 0; // 0x0
5513    field public static final int SOUNDBAR_MODE_ENABLED = 1; // 0x1
5514    field public static final int SYSTEM_AUDIO_CONTROL_DISABLED = 0; // 0x0
5515    field public static final int SYSTEM_AUDIO_CONTROL_ENABLED = 1; // 0x1
5516    field public static final int SYSTEM_AUDIO_MODE_MUTING_DISABLED = 0; // 0x0
5517    field public static final int SYSTEM_AUDIO_MODE_MUTING_ENABLED = 1; // 0x1
5518    field public static final int TIMER_RECORDING_RESULT_EXTRA_CEC_DISABLED = 3; // 0x3
5519    field public static final int TIMER_RECORDING_RESULT_EXTRA_CHECK_RECORDER_CONNECTION = 1; // 0x1
5520    field public static final int TIMER_RECORDING_RESULT_EXTRA_FAIL_TO_RECORD_SELECTED_SOURCE = 2; // 0x2
5521    field public static final int TIMER_RECORDING_RESULT_EXTRA_NO_ERROR = 0; // 0x0
5522    field public static final int TIMER_RECORDING_TYPE_ANALOGUE = 2; // 0x2
5523    field public static final int TIMER_RECORDING_TYPE_DIGITAL = 1; // 0x1
5524    field public static final int TIMER_RECORDING_TYPE_EXTERNAL = 3; // 0x3
5525    field public static final int TIMER_STATUS_MEDIA_INFO_NOT_PRESENT = 2; // 0x2
5526    field public static final int TIMER_STATUS_MEDIA_INFO_PRESENT_NOT_PROTECTED = 0; // 0x0
5527    field public static final int TIMER_STATUS_MEDIA_INFO_PRESENT_PROTECTED = 1; // 0x1
5528    field public static final int TIMER_STATUS_NOT_PROGRAMMED_CA_NOT_SUPPORTED = 6; // 0x6
5529    field public static final int TIMER_STATUS_NOT_PROGRAMMED_CLOCK_FAILURE = 10; // 0xa
5530    field public static final int TIMER_STATUS_NOT_PROGRAMMED_DATE_OUT_OF_RANGE = 2; // 0x2
5531    field public static final int TIMER_STATUS_NOT_PROGRAMMED_DUPLICATED = 14; // 0xe
5532    field public static final int TIMER_STATUS_NOT_PROGRAMMED_INVALID_EXTERNAL_PHYSICAL_NUMBER = 5; // 0x5
5533    field public static final int TIMER_STATUS_NOT_PROGRAMMED_INVALID_EXTERNAL_PLUG_NUMBER = 4; // 0x4
5534    field public static final int TIMER_STATUS_NOT_PROGRAMMED_INVALID_SEQUENCE = 3; // 0x3
5535    field public static final int TIMER_STATUS_NOT_PROGRAMMED_NO_CA_ENTITLEMENTS = 7; // 0x7
5536    field public static final int TIMER_STATUS_NOT_PROGRAMMED_NO_FREE_TIME = 1; // 0x1
5537    field public static final int TIMER_STATUS_NOT_PROGRAMMED_PARENTAL_LOCK_ON = 9; // 0x9
5538    field public static final int TIMER_STATUS_NOT_PROGRAMMED_UNSUPPORTED_RESOLUTION = 8; // 0x8
5539    field public static final int TIMER_STATUS_PROGRAMMED_INFO_ENOUGH_SPACE = 8; // 0x8
5540    field public static final int TIMER_STATUS_PROGRAMMED_INFO_MIGHT_NOT_ENOUGH_SPACE = 11; // 0xb
5541    field public static final int TIMER_STATUS_PROGRAMMED_INFO_NOT_ENOUGH_SPACE = 9; // 0x9
5542    field public static final int TIMER_STATUS_PROGRAMMED_INFO_NO_MEDIA_INFO = 10; // 0xa
5543    field public static final int TV_SEND_STANDBY_ON_SLEEP_DISABLED = 0; // 0x0
5544    field public static final int TV_SEND_STANDBY_ON_SLEEP_ENABLED = 1; // 0x1
5545    field public static final int TV_WAKE_ON_ONE_TOUCH_PLAY_DISABLED = 0; // 0x0
5546    field public static final int TV_WAKE_ON_ONE_TOUCH_PLAY_ENABLED = 1; // 0x1
5547    field public static final int VOLUME_CONTROL_DISABLED = 0; // 0x0
5548    field public static final int VOLUME_CONTROL_ENABLED = 1; // 0x1
5549  }
5550
5551  public static interface HdmiControlManager.CecSettingChangeListener {
5552    method public void onChange(@NonNull String);
5553  }
5554
5555  public static interface HdmiControlManager.HotplugEventListener {
5556    method public void onReceived(android.hardware.hdmi.HdmiHotplugEvent);
5557  }
5558
5559  public static interface HdmiControlManager.VendorCommandListener {
5560    method public void onControlStateChanged(boolean, int);
5561    method public void onReceived(int, int, byte[], boolean);
5562  }
5563
5564  public class HdmiDeviceInfo implements android.os.Parcelable {
5565    ctor @Deprecated public HdmiDeviceInfo();
5566    method public int describeContents();
5567    method public int getAdopterId();
5568    method public int getDeviceId();
5569    method public int getDevicePowerStatus();
5570    method public int getDeviceType();
5571    method public String getDisplayName();
5572    method public int getId();
5573    method public int getLogicalAddress();
5574    method public int getPhysicalAddress();
5575    method public int getPortId();
5576    method public int getVendorId();
5577    method public static int idForCecDevice(int);
5578    method public static int idForHardware(int);
5579    method public static int idForMhlDevice(int);
5580    method public boolean isCecDevice();
5581    method public boolean isInactivated();
5582    method public boolean isMhlDevice();
5583    method public boolean isSourceType();
5584    method public void writeToParcel(android.os.Parcel, int);
5585    field public static final int ADDR_INTERNAL = 0; // 0x0
5586    field public static final int ADDR_INVALID = -1; // 0xffffffff
5587    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.hdmi.HdmiDeviceInfo> CREATOR;
5588    field public static final int DEVICE_AUDIO_SYSTEM = 5; // 0x5
5589    field public static final int DEVICE_INACTIVE = -1; // 0xffffffff
5590    field public static final int DEVICE_PLAYBACK = 4; // 0x4
5591    field public static final int DEVICE_RECORDER = 1; // 0x1
5592    field public static final int DEVICE_RESERVED = 2; // 0x2
5593    field public static final int DEVICE_TUNER = 3; // 0x3
5594    field public static final int DEVICE_TV = 0; // 0x0
5595    field public static final int ID_INVALID = 65535; // 0xffff
5596    field public static final android.hardware.hdmi.HdmiDeviceInfo INACTIVE_DEVICE;
5597    field public static final int PATH_INTERNAL = 0; // 0x0
5598    field public static final int PATH_INVALID = 65535; // 0xffff
5599    field public static final int PORT_INVALID = -1; // 0xffffffff
5600    field public static final int VENDOR_ID_UNKNOWN = 16777215; // 0xffffff
5601  }
5602
5603  public final class HdmiHotplugEvent implements android.os.Parcelable {
5604    method public int describeContents();
5605    method public int getPort();
5606    method public boolean isConnected();
5607    method public void writeToParcel(android.os.Parcel, int);
5608    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.hdmi.HdmiHotplugEvent> CREATOR;
5609  }
5610
5611  public final class HdmiPlaybackClient extends android.hardware.hdmi.HdmiClient {
5612    method public int getDeviceType();
5613    method public void oneTouchPlay(android.hardware.hdmi.HdmiPlaybackClient.OneTouchPlayCallback);
5614    method public void queryDisplayStatus(android.hardware.hdmi.HdmiPlaybackClient.DisplayStatusCallback);
5615    method public void sendStandby();
5616  }
5617
5618  public static interface HdmiPlaybackClient.DisplayStatusCallback {
5619    method public void onComplete(int);
5620  }
5621
5622  public static interface HdmiPlaybackClient.OneTouchPlayCallback {
5623    method public void onComplete(int);
5624  }
5625
5626  public final class HdmiPortInfo implements android.os.Parcelable {
5627    ctor @Deprecated public HdmiPortInfo(int, int, int, boolean, boolean, boolean);
5628    method public int describeContents();
5629    method public int getAddress();
5630    method public int getId();
5631    method public int getType();
5632    method public boolean isArcSupported();
5633    method public boolean isCecSupported();
5634    method public boolean isEarcSupported();
5635    method public boolean isMhlSupported();
5636    method public void writeToParcel(android.os.Parcel, int);
5637    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.hdmi.HdmiPortInfo> CREATOR;
5638    field public static final int PORT_INPUT = 0; // 0x0
5639    field public static final int PORT_OUTPUT = 1; // 0x1
5640  }
5641
5642  public static final class HdmiPortInfo.Builder {
5643    ctor public HdmiPortInfo.Builder(int, int, int);
5644    method @NonNull public android.hardware.hdmi.HdmiPortInfo build();
5645    method @NonNull public android.hardware.hdmi.HdmiPortInfo.Builder setArcSupported(boolean);
5646    method @NonNull public android.hardware.hdmi.HdmiPortInfo.Builder setCecSupported(boolean);
5647    method @NonNull public android.hardware.hdmi.HdmiPortInfo.Builder setEarcSupported(boolean);
5648    method @NonNull public android.hardware.hdmi.HdmiPortInfo.Builder setMhlSupported(boolean);
5649  }
5650
5651  public abstract class HdmiRecordListener {
5652    ctor public HdmiRecordListener();
5653    method public void onClearTimerRecordingResult(int, int);
5654    method public void onOneTouchRecordResult(int, int);
5655    method public abstract android.hardware.hdmi.HdmiRecordSources.RecordSource onOneTouchRecordSourceRequested(int);
5656    method public void onTimerRecordingResult(int, android.hardware.hdmi.HdmiRecordListener.TimerStatusData);
5657  }
5658
5659  public static class HdmiRecordListener.TimerStatusData {
5660    method public int getDurationHour();
5661    method public int getDurationMinute();
5662    method public int getExtraError();
5663    method public int getMediaInfo();
5664    method public int getNotProgammedError();
5665    method public int getProgrammedInfo();
5666    method public boolean isOverlapped();
5667    method public boolean isProgrammed();
5668  }
5669
5670  public final class HdmiRecordSources {
5671    method public static boolean checkRecordSource(byte[]);
5672    method public static android.hardware.hdmi.HdmiRecordSources.OwnSource ofOwnSource();
5673  }
5674
5675  public static final class HdmiRecordSources.AnalogueServiceSource extends android.hardware.hdmi.HdmiRecordSources.RecordSource {
5676  }
5677
5678  public static final class HdmiRecordSources.DigitalServiceSource extends android.hardware.hdmi.HdmiRecordSources.RecordSource {
5679  }
5680
5681  public static final class HdmiRecordSources.ExternalPhysicalAddress extends android.hardware.hdmi.HdmiRecordSources.RecordSource {
5682  }
5683
5684  public static final class HdmiRecordSources.ExternalPlugData extends android.hardware.hdmi.HdmiRecordSources.RecordSource {
5685  }
5686
5687  public static final class HdmiRecordSources.OwnSource extends android.hardware.hdmi.HdmiRecordSources.RecordSource {
5688  }
5689
5690  public abstract static class HdmiRecordSources.RecordSource {
5691  }
5692
5693  public class HdmiSwitchClient extends android.hardware.hdmi.HdmiClient {
5694    method public int getDeviceType();
5695    method @Deprecated @NonNull public java.util.List<android.hardware.hdmi.HdmiPortInfo> getPortInfo();
5696    method public void selectPort(int, @NonNull android.hardware.hdmi.HdmiSwitchClient.OnSelectListener);
5697    method public void selectPort(int, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.hdmi.HdmiSwitchClient.OnSelectListener);
5698  }
5699
5700  public static interface HdmiSwitchClient.OnSelectListener {
5701    method public void onSelect(int);
5702  }
5703
5704  public class HdmiTimerRecordSources {
5705    method public static boolean checkTimerRecordSource(int, byte[]);
5706    method public static android.hardware.hdmi.HdmiTimerRecordSources.Duration durationOf(int, int);
5707    method public static android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource ofAnalogueSource(android.hardware.hdmi.HdmiTimerRecordSources.TimerInfo, android.hardware.hdmi.HdmiRecordSources.AnalogueServiceSource);
5708    method public static android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource ofDigitalSource(android.hardware.hdmi.HdmiTimerRecordSources.TimerInfo, android.hardware.hdmi.HdmiRecordSources.DigitalServiceSource);
5709    method public static android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource ofExternalPhysicalAddress(android.hardware.hdmi.HdmiTimerRecordSources.TimerInfo, android.hardware.hdmi.HdmiRecordSources.ExternalPhysicalAddress);
5710    method public static android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource ofExternalPlug(android.hardware.hdmi.HdmiTimerRecordSources.TimerInfo, android.hardware.hdmi.HdmiRecordSources.ExternalPlugData);
5711    method public static android.hardware.hdmi.HdmiTimerRecordSources.Time timeOf(int, int);
5712    method public static android.hardware.hdmi.HdmiTimerRecordSources.TimerInfo timerInfoOf(int, int, android.hardware.hdmi.HdmiTimerRecordSources.Time, android.hardware.hdmi.HdmiTimerRecordSources.Duration, int);
5713    field public static final int RECORDING_SEQUENCE_REPEAT_FRIDAY = 32; // 0x20
5714    field public static final int RECORDING_SEQUENCE_REPEAT_MONDAY = 2; // 0x2
5715    field public static final int RECORDING_SEQUENCE_REPEAT_ONCE_ONLY = 0; // 0x0
5716    field public static final int RECORDING_SEQUENCE_REPEAT_SATUREDAY = 64; // 0x40
5717    field public static final int RECORDING_SEQUENCE_REPEAT_SUNDAY = 1; // 0x1
5718    field public static final int RECORDING_SEQUENCE_REPEAT_THURSDAY = 16; // 0x10
5719    field public static final int RECORDING_SEQUENCE_REPEAT_TUESDAY = 4; // 0x4
5720    field public static final int RECORDING_SEQUENCE_REPEAT_WEDNESDAY = 8; // 0x8
5721  }
5722
5723  public static final class HdmiTimerRecordSources.Duration {
5724  }
5725
5726  public static final class HdmiTimerRecordSources.Time {
5727  }
5728
5729  public static final class HdmiTimerRecordSources.TimerInfo {
5730  }
5731
5732  public static final class HdmiTimerRecordSources.TimerRecordSource {
5733  }
5734
5735  public final class HdmiTvClient extends android.hardware.hdmi.HdmiClient {
5736    method public void clearTimerRecording(int, int, android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource);
5737    method @Deprecated public void deviceSelect(int, @NonNull android.hardware.hdmi.HdmiTvClient.SelectCallback);
5738    method @Deprecated public java.util.List<android.hardware.hdmi.HdmiDeviceInfo> getDeviceList();
5739    method public int getDeviceType();
5740    method public void portSelect(int, @NonNull android.hardware.hdmi.HdmiTvClient.SelectCallback);
5741    method public void sendMhlVendorCommand(int, int, int, byte[]);
5742    method public void sendStandby(int);
5743    method public void setHdmiMhlVendorCommandListener(android.hardware.hdmi.HdmiTvClient.HdmiMhlVendorCommandListener);
5744    method public void setInputChangeListener(android.hardware.hdmi.HdmiTvClient.InputChangeListener);
5745    method public void setRecordListener(@NonNull android.hardware.hdmi.HdmiRecordListener);
5746    method public void setSystemAudioMode(boolean, android.hardware.hdmi.HdmiTvClient.SelectCallback);
5747    method public void setSystemAudioMute(boolean);
5748    method public void setSystemAudioVolume(int, int, int);
5749    method public void startOneTouchRecord(int, @NonNull android.hardware.hdmi.HdmiRecordSources.RecordSource);
5750    method public void startTimerRecording(int, int, android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource);
5751    method public void stopOneTouchRecord(int);
5752    field public static final int VENDOR_DATA_SIZE = 16; // 0x10
5753  }
5754
5755  public static interface HdmiTvClient.HdmiMhlVendorCommandListener {
5756    method public void onReceived(int, int, int, byte[]);
5757  }
5758
5759  public static interface HdmiTvClient.InputChangeListener {
5760    method public void onChanged(android.hardware.hdmi.HdmiDeviceInfo);
5761  }
5762
5763  public static interface HdmiTvClient.SelectCallback {
5764    method public void onComplete(int);
5765  }
5766
5767}
5768
5769package android.hardware.input {
5770
5771  public class VirtualDpad implements java.io.Closeable {
5772    method public void close();
5773    method public void sendKeyEvent(@NonNull android.hardware.input.VirtualKeyEvent);
5774  }
5775
5776  public final class VirtualDpadConfig extends android.hardware.input.VirtualInputDeviceConfig implements android.os.Parcelable {
5777    method public int describeContents();
5778    method public void writeToParcel(@NonNull android.os.Parcel, int);
5779    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualDpadConfig> CREATOR;
5780  }
5781
5782  public static final class VirtualDpadConfig.Builder extends android.hardware.input.VirtualInputDeviceConfig.Builder<android.hardware.input.VirtualDpadConfig.Builder> {
5783    ctor public VirtualDpadConfig.Builder();
5784    method @NonNull public android.hardware.input.VirtualDpadConfig build();
5785  }
5786
5787  public abstract class VirtualInputDeviceConfig {
5788    ctor protected VirtualInputDeviceConfig(@NonNull android.hardware.input.VirtualInputDeviceConfig.Builder<? extends android.hardware.input.VirtualInputDeviceConfig.Builder<?>>);
5789    ctor protected VirtualInputDeviceConfig(@NonNull android.os.Parcel);
5790    method public int getAssociatedDisplayId();
5791    method @NonNull public String getInputDeviceName();
5792    method public int getProductId();
5793    method public int getVendorId();
5794  }
5795
5796  public abstract static class VirtualInputDeviceConfig.Builder<T extends android.hardware.input.VirtualInputDeviceConfig.Builder<T>> {
5797    ctor public VirtualInputDeviceConfig.Builder();
5798    method @NonNull public T setAssociatedDisplayId(int);
5799    method @NonNull public T setInputDeviceName(@NonNull String);
5800    method @NonNull public T setProductId(int);
5801    method @NonNull public T setVendorId(int);
5802  }
5803
5804  public final class VirtualKeyEvent implements android.os.Parcelable {
5805    method public int describeContents();
5806    method public int getAction();
5807    method public long getEventTimeNanos();
5808    method public int getKeyCode();
5809    method public void writeToParcel(@NonNull android.os.Parcel, int);
5810    field public static final int ACTION_DOWN = 0; // 0x0
5811    field public static final int ACTION_UP = 1; // 0x1
5812    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualKeyEvent> CREATOR;
5813  }
5814
5815  public static final class VirtualKeyEvent.Builder {
5816    ctor public VirtualKeyEvent.Builder();
5817    method @NonNull public android.hardware.input.VirtualKeyEvent build();
5818    method @NonNull public android.hardware.input.VirtualKeyEvent.Builder setAction(int);
5819    method @NonNull public android.hardware.input.VirtualKeyEvent.Builder setEventTimeNanos(long);
5820    method @NonNull public android.hardware.input.VirtualKeyEvent.Builder setKeyCode(int);
5821  }
5822
5823  public class VirtualKeyboard implements java.io.Closeable {
5824    method public void close();
5825    method public void sendKeyEvent(@NonNull android.hardware.input.VirtualKeyEvent);
5826  }
5827
5828  public final class VirtualKeyboardConfig extends android.hardware.input.VirtualInputDeviceConfig implements android.os.Parcelable {
5829    method public int describeContents();
5830    method @NonNull public String getLanguageTag();
5831    method @NonNull public String getLayoutType();
5832    method public void writeToParcel(@NonNull android.os.Parcel, int);
5833    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualKeyboardConfig> CREATOR;
5834    field public static final String DEFAULT_LANGUAGE_TAG = "en-Latn-US";
5835    field public static final String DEFAULT_LAYOUT_TYPE = "qwerty";
5836  }
5837
5838  public static final class VirtualKeyboardConfig.Builder extends android.hardware.input.VirtualInputDeviceConfig.Builder<android.hardware.input.VirtualKeyboardConfig.Builder> {
5839    ctor public VirtualKeyboardConfig.Builder();
5840    method @NonNull public android.hardware.input.VirtualKeyboardConfig build();
5841    method @NonNull public android.hardware.input.VirtualKeyboardConfig.Builder setLanguageTag(@NonNull String);
5842    method @NonNull public android.hardware.input.VirtualKeyboardConfig.Builder setLayoutType(@NonNull String);
5843  }
5844
5845  public class VirtualMouse implements java.io.Closeable {
5846    method public void close();
5847    method @NonNull public android.graphics.PointF getCursorPosition();
5848    method public void sendButtonEvent(@NonNull android.hardware.input.VirtualMouseButtonEvent);
5849    method public void sendRelativeEvent(@NonNull android.hardware.input.VirtualMouseRelativeEvent);
5850    method public void sendScrollEvent(@NonNull android.hardware.input.VirtualMouseScrollEvent);
5851  }
5852
5853  public final class VirtualMouseButtonEvent implements android.os.Parcelable {
5854    method public int describeContents();
5855    method public int getAction();
5856    method public int getButtonCode();
5857    method public long getEventTimeNanos();
5858    method public void writeToParcel(@NonNull android.os.Parcel, int);
5859    field public static final int ACTION_BUTTON_PRESS = 11; // 0xb
5860    field public static final int ACTION_BUTTON_RELEASE = 12; // 0xc
5861    field public static final int BUTTON_BACK = 8; // 0x8
5862    field public static final int BUTTON_FORWARD = 16; // 0x10
5863    field public static final int BUTTON_PRIMARY = 1; // 0x1
5864    field public static final int BUTTON_SECONDARY = 2; // 0x2
5865    field public static final int BUTTON_TERTIARY = 4; // 0x4
5866    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualMouseButtonEvent> CREATOR;
5867  }
5868
5869  public static final class VirtualMouseButtonEvent.Builder {
5870    ctor public VirtualMouseButtonEvent.Builder();
5871    method @NonNull public android.hardware.input.VirtualMouseButtonEvent build();
5872    method @NonNull public android.hardware.input.VirtualMouseButtonEvent.Builder setAction(int);
5873    method @NonNull public android.hardware.input.VirtualMouseButtonEvent.Builder setButtonCode(int);
5874    method @NonNull public android.hardware.input.VirtualMouseButtonEvent.Builder setEventTimeNanos(long);
5875  }
5876
5877  public final class VirtualMouseConfig extends android.hardware.input.VirtualInputDeviceConfig implements android.os.Parcelable {
5878    method public int describeContents();
5879    method public void writeToParcel(@NonNull android.os.Parcel, int);
5880    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualMouseConfig> CREATOR;
5881  }
5882
5883  public static final class VirtualMouseConfig.Builder extends android.hardware.input.VirtualInputDeviceConfig.Builder<android.hardware.input.VirtualMouseConfig.Builder> {
5884    ctor public VirtualMouseConfig.Builder();
5885    method @NonNull public android.hardware.input.VirtualMouseConfig build();
5886  }
5887
5888  public final class VirtualMouseRelativeEvent implements android.os.Parcelable {
5889    method public int describeContents();
5890    method public long getEventTimeNanos();
5891    method public float getRelativeX();
5892    method public float getRelativeY();
5893    method public void writeToParcel(@NonNull android.os.Parcel, int);
5894    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualMouseRelativeEvent> CREATOR;
5895  }
5896
5897  public static final class VirtualMouseRelativeEvent.Builder {
5898    ctor public VirtualMouseRelativeEvent.Builder();
5899    method @NonNull public android.hardware.input.VirtualMouseRelativeEvent build();
5900    method @NonNull public android.hardware.input.VirtualMouseRelativeEvent.Builder setEventTimeNanos(long);
5901    method @NonNull public android.hardware.input.VirtualMouseRelativeEvent.Builder setRelativeX(float);
5902    method @NonNull public android.hardware.input.VirtualMouseRelativeEvent.Builder setRelativeY(float);
5903  }
5904
5905  public final class VirtualMouseScrollEvent implements android.os.Parcelable {
5906    method public int describeContents();
5907    method public long getEventTimeNanos();
5908    method public float getXAxisMovement();
5909    method public float getYAxisMovement();
5910    method public void writeToParcel(@NonNull android.os.Parcel, int);
5911    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualMouseScrollEvent> CREATOR;
5912  }
5913
5914  public static final class VirtualMouseScrollEvent.Builder {
5915    ctor public VirtualMouseScrollEvent.Builder();
5916    method @NonNull public android.hardware.input.VirtualMouseScrollEvent build();
5917    method @NonNull public android.hardware.input.VirtualMouseScrollEvent.Builder setEventTimeNanos(long);
5918    method @NonNull public android.hardware.input.VirtualMouseScrollEvent.Builder setXAxisMovement(@FloatRange(from=-1.0F, to=1.0f) float);
5919    method @NonNull public android.hardware.input.VirtualMouseScrollEvent.Builder setYAxisMovement(@FloatRange(from=-1.0F, to=1.0f) float);
5920  }
5921
5922  public class VirtualNavigationTouchpad implements java.io.Closeable {
5923    method public void close();
5924    method public void sendTouchEvent(@NonNull android.hardware.input.VirtualTouchEvent);
5925  }
5926
5927  public final class VirtualNavigationTouchpadConfig extends android.hardware.input.VirtualInputDeviceConfig implements android.os.Parcelable {
5928    method public int describeContents();
5929    method @IntRange(from=1) public int getHeight();
5930    method @IntRange(from=1) public int getWidth();
5931    method public void writeToParcel(@NonNull android.os.Parcel, int);
5932    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualNavigationTouchpadConfig> CREATOR;
5933  }
5934
5935  public static final class VirtualNavigationTouchpadConfig.Builder extends android.hardware.input.VirtualInputDeviceConfig.Builder<android.hardware.input.VirtualNavigationTouchpadConfig.Builder> {
5936    ctor public VirtualNavigationTouchpadConfig.Builder(@IntRange(from=1) int, @IntRange(from=1) int);
5937    method @NonNull public android.hardware.input.VirtualNavigationTouchpadConfig build();
5938  }
5939
5940  @FlaggedApi("android.companion.virtualdevice.flags.virtual_rotary") public class VirtualRotaryEncoder implements java.io.Closeable {
5941    method public void close();
5942    method public void sendScrollEvent(@NonNull android.hardware.input.VirtualRotaryEncoderScrollEvent);
5943  }
5944
5945  @FlaggedApi("android.companion.virtualdevice.flags.virtual_rotary") public final class VirtualRotaryEncoderConfig extends android.hardware.input.VirtualInputDeviceConfig implements android.os.Parcelable {
5946    method public int describeContents();
5947    method public void writeToParcel(@NonNull android.os.Parcel, int);
5948    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualRotaryEncoderConfig> CREATOR;
5949  }
5950
5951  public static final class VirtualRotaryEncoderConfig.Builder extends android.hardware.input.VirtualInputDeviceConfig.Builder<android.hardware.input.VirtualRotaryEncoderConfig.Builder> {
5952    ctor public VirtualRotaryEncoderConfig.Builder();
5953    method @NonNull public android.hardware.input.VirtualRotaryEncoderConfig build();
5954  }
5955
5956  @FlaggedApi("android.companion.virtualdevice.flags.virtual_rotary") public final class VirtualRotaryEncoderScrollEvent implements android.os.Parcelable {
5957    method public int describeContents();
5958    method public long getEventTimeNanos();
5959    method @FloatRange(from=-1.0F, to=1.0f) public float getScrollAmount();
5960    method public void writeToParcel(@NonNull android.os.Parcel, int);
5961    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualRotaryEncoderScrollEvent> CREATOR;
5962  }
5963
5964  public static final class VirtualRotaryEncoderScrollEvent.Builder {
5965    ctor public VirtualRotaryEncoderScrollEvent.Builder();
5966    method @NonNull public android.hardware.input.VirtualRotaryEncoderScrollEvent build();
5967    method @NonNull public android.hardware.input.VirtualRotaryEncoderScrollEvent.Builder setEventTimeNanos(long);
5968    method @NonNull public android.hardware.input.VirtualRotaryEncoderScrollEvent.Builder setScrollAmount(@FloatRange(from=-1.0F, to=1.0f) float);
5969  }
5970
5971  @FlaggedApi("android.companion.virtual.flags.virtual_stylus") public class VirtualStylus implements java.io.Closeable {
5972    method public void close();
5973    method public void sendButtonEvent(@NonNull android.hardware.input.VirtualStylusButtonEvent);
5974    method public void sendMotionEvent(@NonNull android.hardware.input.VirtualStylusMotionEvent);
5975  }
5976
5977  @FlaggedApi("android.companion.virtual.flags.virtual_stylus") public final class VirtualStylusButtonEvent implements android.os.Parcelable {
5978    method public int describeContents();
5979    method public int getAction();
5980    method public int getButtonCode();
5981    method public long getEventTimeNanos();
5982    method public void writeToParcel(@NonNull android.os.Parcel, int);
5983    field public static final int ACTION_BUTTON_PRESS = 11; // 0xb
5984    field public static final int ACTION_BUTTON_RELEASE = 12; // 0xc
5985    field public static final int BUTTON_PRIMARY = 32; // 0x20
5986    field public static final int BUTTON_SECONDARY = 64; // 0x40
5987    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualStylusButtonEvent> CREATOR;
5988  }
5989
5990  @FlaggedApi("android.companion.virtual.flags.virtual_stylus") public static final class VirtualStylusButtonEvent.Builder {
5991    ctor public VirtualStylusButtonEvent.Builder();
5992    method @NonNull public android.hardware.input.VirtualStylusButtonEvent build();
5993    method @NonNull public android.hardware.input.VirtualStylusButtonEvent.Builder setAction(int);
5994    method @NonNull public android.hardware.input.VirtualStylusButtonEvent.Builder setButtonCode(int);
5995    method @NonNull public android.hardware.input.VirtualStylusButtonEvent.Builder setEventTimeNanos(long);
5996  }
5997
5998  @FlaggedApi("android.companion.virtual.flags.virtual_stylus") public final class VirtualStylusConfig extends android.hardware.input.VirtualInputDeviceConfig implements android.os.Parcelable {
5999    method public int describeContents();
6000    method public int getHeight();
6001    method public int getWidth();
6002    method public void writeToParcel(@NonNull android.os.Parcel, int);
6003    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualStylusConfig> CREATOR;
6004  }
6005
6006  @FlaggedApi("android.companion.virtual.flags.virtual_stylus") public static final class VirtualStylusConfig.Builder extends android.hardware.input.VirtualInputDeviceConfig.Builder<android.hardware.input.VirtualStylusConfig.Builder> {
6007    ctor public VirtualStylusConfig.Builder(@IntRange(from=1) int, @IntRange(from=1) int);
6008    method @NonNull public android.hardware.input.VirtualStylusConfig build();
6009  }
6010
6011  @FlaggedApi("android.companion.virtual.flags.virtual_stylus") public final class VirtualStylusMotionEvent implements android.os.Parcelable {
6012    method public int describeContents();
6013    method public int getAction();
6014    method public long getEventTimeNanos();
6015    method public int getPressure();
6016    method public int getTiltX();
6017    method public int getTiltY();
6018    method public int getToolType();
6019    method public int getX();
6020    method public int getY();
6021    method public void writeToParcel(@NonNull android.os.Parcel, int);
6022    field public static final int ACTION_DOWN = 0; // 0x0
6023    field public static final int ACTION_MOVE = 2; // 0x2
6024    field public static final int ACTION_UP = 1; // 0x1
6025    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualStylusMotionEvent> CREATOR;
6026    field public static final int TOOL_TYPE_ERASER = 4; // 0x4
6027    field public static final int TOOL_TYPE_STYLUS = 2; // 0x2
6028  }
6029
6030  @FlaggedApi("android.companion.virtual.flags.virtual_stylus") public static final class VirtualStylusMotionEvent.Builder {
6031    ctor public VirtualStylusMotionEvent.Builder();
6032    method @NonNull public android.hardware.input.VirtualStylusMotionEvent build();
6033    method @NonNull public android.hardware.input.VirtualStylusMotionEvent.Builder setAction(int);
6034    method @NonNull public android.hardware.input.VirtualStylusMotionEvent.Builder setEventTimeNanos(long);
6035    method @NonNull public android.hardware.input.VirtualStylusMotionEvent.Builder setPressure(@IntRange(from=0x0, to=0xff) int);
6036    method @NonNull public android.hardware.input.VirtualStylusMotionEvent.Builder setTiltX(@IntRange(from=0xffffffa6, to=0x5a) int);
6037    method @NonNull public android.hardware.input.VirtualStylusMotionEvent.Builder setTiltY(@IntRange(from=0xffffffa6, to=0x5a) int);
6038    method @NonNull public android.hardware.input.VirtualStylusMotionEvent.Builder setToolType(int);
6039    method @NonNull public android.hardware.input.VirtualStylusMotionEvent.Builder setX(int);
6040    method @NonNull public android.hardware.input.VirtualStylusMotionEvent.Builder setY(int);
6041  }
6042
6043  public final class VirtualTouchEvent implements android.os.Parcelable {
6044    method public int describeContents();
6045    method public int getAction();
6046    method public long getEventTimeNanos();
6047    method public float getMajorAxisSize();
6048    method public int getPointerId();
6049    method public float getPressure();
6050    method public int getToolType();
6051    method public float getX();
6052    method public float getY();
6053    method public void writeToParcel(@NonNull android.os.Parcel, int);
6054    field public static final int ACTION_CANCEL = 3; // 0x3
6055    field public static final int ACTION_DOWN = 0; // 0x0
6056    field public static final int ACTION_MOVE = 2; // 0x2
6057    field public static final int ACTION_UP = 1; // 0x1
6058    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualTouchEvent> CREATOR;
6059    field public static final int TOOL_TYPE_FINGER = 1; // 0x1
6060    field public static final int TOOL_TYPE_PALM = 5; // 0x5
6061  }
6062
6063  public static final class VirtualTouchEvent.Builder {
6064    ctor public VirtualTouchEvent.Builder();
6065    method @NonNull public android.hardware.input.VirtualTouchEvent build();
6066    method @NonNull public android.hardware.input.VirtualTouchEvent.Builder setAction(int);
6067    method @NonNull public android.hardware.input.VirtualTouchEvent.Builder setEventTimeNanos(long);
6068    method @NonNull public android.hardware.input.VirtualTouchEvent.Builder setMajorAxisSize(@FloatRange(from=0.0f) float);
6069    method @NonNull public android.hardware.input.VirtualTouchEvent.Builder setPointerId(@IntRange(from=0, to=0x10 - 1) int);
6070    method @NonNull public android.hardware.input.VirtualTouchEvent.Builder setPressure(@FloatRange(from=0.0f) float);
6071    method @NonNull public android.hardware.input.VirtualTouchEvent.Builder setToolType(int);
6072    method @NonNull public android.hardware.input.VirtualTouchEvent.Builder setX(float);
6073    method @NonNull public android.hardware.input.VirtualTouchEvent.Builder setY(float);
6074  }
6075
6076  public class VirtualTouchscreen implements java.io.Closeable {
6077    method public void close();
6078    method public void sendTouchEvent(@NonNull android.hardware.input.VirtualTouchEvent);
6079  }
6080
6081  public final class VirtualTouchscreenConfig extends android.hardware.input.VirtualInputDeviceConfig implements android.os.Parcelable {
6082    method public int describeContents();
6083    method public int getHeight();
6084    method public int getWidth();
6085    method public void writeToParcel(@NonNull android.os.Parcel, int);
6086    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualTouchscreenConfig> CREATOR;
6087  }
6088
6089  public static final class VirtualTouchscreenConfig.Builder extends android.hardware.input.VirtualInputDeviceConfig.Builder<android.hardware.input.VirtualTouchscreenConfig.Builder> {
6090    ctor public VirtualTouchscreenConfig.Builder(@IntRange(from=1) int, @IntRange(from=1) int);
6091    method @NonNull public android.hardware.input.VirtualTouchscreenConfig build();
6092  }
6093
6094}
6095
6096package android.hardware.lights {
6097
6098  public final class LightState implements android.os.Parcelable {
6099    ctor @Deprecated public LightState(@ColorInt int);
6100  }
6101
6102  public abstract class LightsManager {
6103    field @Deprecated public static final int LIGHT_TYPE_MICROPHONE = 8; // 0x8
6104  }
6105
6106  public static final class LightsRequest.Builder {
6107    method @Deprecated @NonNull public android.hardware.lights.LightsRequest.Builder setLight(@NonNull android.hardware.lights.Light, @NonNull android.hardware.lights.LightState);
6108  }
6109
6110}
6111
6112package android.hardware.location {
6113
6114  public class ContextHubClient implements java.io.Closeable {
6115    method public void close();
6116    method @NonNull public android.hardware.location.ContextHubInfo getAttachedHub();
6117    method @IntRange(from=0, to=65535) public int getId();
6118    method @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public int sendMessageToNanoApp(@NonNull android.hardware.location.NanoAppMessage);
6119    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public android.hardware.location.ContextHubTransaction<java.lang.Void> sendReliableMessageToNanoApp(@NonNull android.hardware.location.NanoAppMessage);
6120  }
6121
6122  public class ContextHubClientCallback {
6123    ctor public ContextHubClientCallback();
6124    method public void onClientAuthorizationChanged(@NonNull android.hardware.location.ContextHubClient, long, int);
6125    method public void onHubReset(android.hardware.location.ContextHubClient);
6126    method public void onMessageFromNanoApp(android.hardware.location.ContextHubClient, android.hardware.location.NanoAppMessage);
6127    method public void onNanoAppAborted(android.hardware.location.ContextHubClient, long, int);
6128    method public void onNanoAppDisabled(android.hardware.location.ContextHubClient, long);
6129    method public void onNanoAppEnabled(android.hardware.location.ContextHubClient, long);
6130    method public void onNanoAppLoaded(android.hardware.location.ContextHubClient, long);
6131    method public void onNanoAppUnloaded(android.hardware.location.ContextHubClient, long);
6132  }
6133
6134  public class ContextHubInfo implements android.os.Parcelable {
6135    ctor public ContextHubInfo();
6136    method public int describeContents();
6137    method public byte getChreApiMajorVersion();
6138    method public byte getChreApiMinorVersion();
6139    method public short getChrePatchVersion();
6140    method public long getChrePlatformId();
6141    method public int getId();
6142    method public int getMaxPacketLengthBytes();
6143    method public android.hardware.location.MemoryRegion[] getMemoryRegions();
6144    method public String getName();
6145    method public float getPeakMips();
6146    method public float getPeakPowerDrawMw();
6147    method public int getPlatformVersion();
6148    method public float getSleepPowerDrawMw();
6149    method public int getStaticSwVersion();
6150    method public float getStoppedPowerDrawMw();
6151    method public int[] getSupportedSensors();
6152    method public String getToolchain();
6153    method public int getToolchainVersion();
6154    method public String getVendor();
6155    method public boolean supportsReliableMessages();
6156    method public void writeToParcel(android.os.Parcel, int);
6157    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.ContextHubInfo> CREATOR;
6158  }
6159
6160  public class ContextHubIntentEvent {
6161    method @NonNull public static android.hardware.location.ContextHubIntentEvent fromIntent(@NonNull android.content.Intent);
6162    method public int getClientAuthorizationState();
6163    method @NonNull public android.hardware.location.ContextHubInfo getContextHubInfo();
6164    method public int getEventType();
6165    method public int getNanoAppAbortCode();
6166    method public long getNanoAppId();
6167    method @NonNull public android.hardware.location.NanoAppMessage getNanoAppMessage();
6168  }
6169
6170  public final class ContextHubManager {
6171    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public android.hardware.location.ContextHubClient createClient(@Nullable android.content.Context, @NonNull android.hardware.location.ContextHubInfo, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.location.ContextHubClientCallback);
6172    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public android.hardware.location.ContextHubClient createClient(@NonNull android.hardware.location.ContextHubInfo, @NonNull android.hardware.location.ContextHubClientCallback, @NonNull java.util.concurrent.Executor);
6173    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public android.hardware.location.ContextHubClient createClient(@NonNull android.hardware.location.ContextHubInfo, @NonNull android.hardware.location.ContextHubClientCallback);
6174    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public android.hardware.location.ContextHubClient createClient(@Nullable android.content.Context, @NonNull android.hardware.location.ContextHubInfo, @NonNull android.app.PendingIntent, long);
6175    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public android.hardware.location.ContextHubClient createClient(@NonNull android.hardware.location.ContextHubInfo, @NonNull android.app.PendingIntent, long);
6176    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public android.hardware.location.ContextHubTransaction<java.lang.Void> disableNanoApp(@NonNull android.hardware.location.ContextHubInfo, long);
6177    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public android.hardware.location.ContextHubTransaction<java.lang.Void> enableNanoApp(@NonNull android.hardware.location.ContextHubInfo, long);
6178    method @FlaggedApi("android.chre.flags.offload_api") @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public java.util.List<android.hardware.contexthub.HubDiscoveryInfo> findEndpoints(long);
6179    method @FlaggedApi("android.chre.flags.offload_api") @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public java.util.List<android.hardware.contexthub.HubDiscoveryInfo> findEndpoints(@NonNull String);
6180    method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public int[] findNanoAppOnHub(int, @NonNull android.hardware.location.NanoAppFilter);
6181    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public int[] getContextHubHandles();
6182    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public android.hardware.location.ContextHubInfo getContextHubInfo(int);
6183    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public java.util.List<android.hardware.location.ContextHubInfo> getContextHubs();
6184    method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public android.hardware.location.NanoAppInstanceInfo getNanoAppInstanceInfo(int);
6185    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public int loadNanoApp(int, @NonNull android.hardware.location.NanoApp);
6186    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public android.hardware.location.ContextHubTransaction<java.lang.Void> loadNanoApp(@NonNull android.hardware.location.ContextHubInfo, @NonNull android.hardware.location.NanoAppBinary);
6187    method @FlaggedApi("android.chre.flags.offload_api") @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public void openSession(@NonNull android.hardware.contexthub.HubEndpoint, @NonNull android.hardware.contexthub.HubEndpointInfo);
6188    method @FlaggedApi("android.chre.flags.offload_api") @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public void openSession(@NonNull android.hardware.contexthub.HubEndpoint, @NonNull android.hardware.contexthub.HubEndpointInfo, @NonNull String);
6189    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public android.hardware.location.ContextHubTransaction<java.util.List<android.hardware.location.NanoAppState>> queryNanoApps(@NonNull android.hardware.location.ContextHubInfo);
6190    method @Deprecated public int registerCallback(@NonNull android.hardware.location.ContextHubManager.Callback);
6191    method @Deprecated public int registerCallback(android.hardware.location.ContextHubManager.Callback, android.os.Handler);
6192    method @FlaggedApi("android.chre.flags.offload_api") @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public void registerEndpoint(@NonNull android.hardware.contexthub.HubEndpoint);
6193    method @FlaggedApi("android.chre.flags.offload_api") @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public void registerEndpointDiscoveryCallback(long, @NonNull android.hardware.contexthub.IHubEndpointDiscoveryCallback);
6194    method @FlaggedApi("android.chre.flags.offload_api") @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public void registerEndpointDiscoveryCallback(long, @NonNull android.hardware.contexthub.IHubEndpointDiscoveryCallback, @NonNull java.util.concurrent.Executor);
6195    method @FlaggedApi("android.chre.flags.offload_api") @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public void registerEndpointDiscoveryCallback(@NonNull String, @NonNull android.hardware.contexthub.IHubEndpointDiscoveryCallback);
6196    method @FlaggedApi("android.chre.flags.offload_api") @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public void registerEndpointDiscoveryCallback(@NonNull String, @NonNull android.hardware.contexthub.IHubEndpointDiscoveryCallback, @NonNull java.util.concurrent.Executor);
6197    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public int sendMessage(int, int, @NonNull android.hardware.location.ContextHubMessage);
6198    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public int unloadNanoApp(int);
6199    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public android.hardware.location.ContextHubTransaction<java.lang.Void> unloadNanoApp(@NonNull android.hardware.location.ContextHubInfo, long);
6200    method @Deprecated public int unregisterCallback(@NonNull android.hardware.location.ContextHubManager.Callback);
6201    method @FlaggedApi("android.chre.flags.offload_api") @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public void unregisterEndpoint(@NonNull android.hardware.contexthub.HubEndpoint);
6202    method @FlaggedApi("android.chre.flags.offload_api") @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public void unregisterEndpointDiscoveryCallback(@NonNull android.hardware.contexthub.IHubEndpointDiscoveryCallback);
6203    field public static final int AUTHORIZATION_DENIED = 0; // 0x0
6204    field public static final int AUTHORIZATION_DENIED_GRACE_PERIOD = 1; // 0x1
6205    field public static final int AUTHORIZATION_GRANTED = 2; // 0x2
6206    field public static final int EVENT_CLIENT_AUTHORIZATION = 7; // 0x7
6207    field public static final int EVENT_HUB_RESET = 6; // 0x6
6208    field public static final int EVENT_NANOAPP_ABORTED = 4; // 0x4
6209    field public static final int EVENT_NANOAPP_DISABLED = 3; // 0x3
6210    field public static final int EVENT_NANOAPP_ENABLED = 2; // 0x2
6211    field public static final int EVENT_NANOAPP_LOADED = 0; // 0x0
6212    field public static final int EVENT_NANOAPP_MESSAGE = 5; // 0x5
6213    field public static final int EVENT_NANOAPP_UNLOADED = 1; // 0x1
6214    field public static final String EXTRA_CLIENT_AUTHORIZATION_STATE = "android.hardware.location.extra.CLIENT_AUTHORIZATION_STATE";
6215    field public static final String EXTRA_CONTEXT_HUB_INFO = "android.hardware.location.extra.CONTEXT_HUB_INFO";
6216    field public static final String EXTRA_EVENT_TYPE = "android.hardware.location.extra.EVENT_TYPE";
6217    field public static final String EXTRA_MESSAGE = "android.hardware.location.extra.MESSAGE";
6218    field public static final String EXTRA_NANOAPP_ABORT_CODE = "android.hardware.location.extra.NANOAPP_ABORT_CODE";
6219    field public static final String EXTRA_NANOAPP_ID = "android.hardware.location.extra.NANOAPP_ID";
6220  }
6221
6222  @Deprecated public abstract static class ContextHubManager.Callback {
6223    ctor @Deprecated protected ContextHubManager.Callback();
6224    method @Deprecated public abstract void onMessageReceipt(int, int, @NonNull android.hardware.location.ContextHubMessage);
6225  }
6226
6227  @Deprecated public class ContextHubMessage implements android.os.Parcelable {
6228    ctor @Deprecated public ContextHubMessage(int, int, byte[]);
6229    method @Deprecated public int describeContents();
6230    method @Deprecated public byte[] getData();
6231    method @Deprecated public int getMsgType();
6232    method @Deprecated public int getVersion();
6233    method @Deprecated public void setMsgData(byte[]);
6234    method @Deprecated public void setMsgType(int);
6235    method @Deprecated public void setVersion(int);
6236    method @Deprecated public void writeToParcel(android.os.Parcel, int);
6237    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.ContextHubMessage> CREATOR;
6238  }
6239
6240  public class ContextHubTransaction<T> {
6241    method public int getType();
6242    method public void setOnCompleteListener(@NonNull android.hardware.location.ContextHubTransaction.OnCompleteListener<T>, @NonNull java.util.concurrent.Executor);
6243    method public void setOnCompleteListener(@NonNull android.hardware.location.ContextHubTransaction.OnCompleteListener<T>);
6244    method public static String typeToString(int, boolean);
6245    method public android.hardware.location.ContextHubTransaction.Response<T> waitForResponse(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException, java.util.concurrent.TimeoutException;
6246    field public static final int RESULT_FAILED_AT_HUB = 5; // 0x5
6247    field public static final int RESULT_FAILED_BAD_PARAMS = 2; // 0x2
6248    field public static final int RESULT_FAILED_BUSY = 4; // 0x4
6249    field public static final int RESULT_FAILED_HAL_UNAVAILABLE = 8; // 0x8
6250    field public static final int RESULT_FAILED_NOT_SUPPORTED = 9; // 0x9
6251    field public static final int RESULT_FAILED_SERVICE_INTERNAL_FAILURE = 7; // 0x7
6252    field public static final int RESULT_FAILED_TIMEOUT = 6; // 0x6
6253    field public static final int RESULT_FAILED_UNINITIALIZED = 3; // 0x3
6254    field public static final int RESULT_FAILED_UNKNOWN = 1; // 0x1
6255    field public static final int RESULT_SUCCESS = 0; // 0x0
6256    field public static final int TYPE_DISABLE_NANOAPP = 3; // 0x3
6257    field public static final int TYPE_ENABLE_NANOAPP = 2; // 0x2
6258    field @FlaggedApi("android.chre.flags.offload_api") public static final int TYPE_HUB_MESSAGE_DEFAULT = 6; // 0x6
6259    field @FlaggedApi("android.chre.flags.offload_api") public static final int TYPE_HUB_MESSAGE_REQUIRES_RESPONSE = 7; // 0x7
6260    field public static final int TYPE_LOAD_NANOAPP = 0; // 0x0
6261    field public static final int TYPE_QUERY_NANOAPPS = 4; // 0x4
6262    field public static final int TYPE_RELIABLE_MESSAGE = 5; // 0x5
6263    field public static final int TYPE_UNLOAD_NANOAPP = 1; // 0x1
6264  }
6265
6266  @java.lang.FunctionalInterface public static interface ContextHubTransaction.OnCompleteListener<L> {
6267    method public void onComplete(android.hardware.location.ContextHubTransaction<L>, android.hardware.location.ContextHubTransaction.Response<L>);
6268  }
6269
6270  public static class ContextHubTransaction.Response<R> {
6271    method public R getContents();
6272    method public int getResult();
6273  }
6274
6275  public final class GeofenceHardware {
6276    method public boolean addGeofence(int, int, android.hardware.location.GeofenceHardwareRequest, android.hardware.location.GeofenceHardwareCallback);
6277    method public int[] getMonitoringTypes();
6278    method public int getStatusOfMonitoringType(int);
6279    method public boolean pauseGeofence(int, int);
6280    method public boolean registerForMonitorStateChangeCallback(int, android.hardware.location.GeofenceHardwareMonitorCallback);
6281    method public boolean removeGeofence(int, int);
6282    method public boolean resumeGeofence(int, int, int);
6283    method public boolean unregisterForMonitorStateChangeCallback(int, android.hardware.location.GeofenceHardwareMonitorCallback);
6284    field public static final int GEOFENCE_ENTERED = 1; // 0x1
6285    field public static final int GEOFENCE_ERROR_ID_EXISTS = 2; // 0x2
6286    field public static final int GEOFENCE_ERROR_ID_UNKNOWN = 3; // 0x3
6287    field public static final int GEOFENCE_ERROR_INSUFFICIENT_MEMORY = 6; // 0x6
6288    field public static final int GEOFENCE_ERROR_INVALID_TRANSITION = 4; // 0x4
6289    field public static final int GEOFENCE_ERROR_TOO_MANY_GEOFENCES = 1; // 0x1
6290    field public static final int GEOFENCE_EXITED = 2; // 0x2
6291    field public static final int GEOFENCE_FAILURE = 5; // 0x5
6292    field public static final int GEOFENCE_SUCCESS = 0; // 0x0
6293    field public static final int GEOFENCE_UNCERTAIN = 4; // 0x4
6294    field public static final int MONITORING_TYPE_FUSED_HARDWARE = 1; // 0x1
6295    field public static final int MONITORING_TYPE_GPS_HARDWARE = 0; // 0x0
6296    field public static final int MONITOR_CURRENTLY_AVAILABLE = 0; // 0x0
6297    field public static final int MONITOR_CURRENTLY_UNAVAILABLE = 1; // 0x1
6298    field public static final int MONITOR_UNSUPPORTED = 2; // 0x2
6299    field public static final int SOURCE_TECHNOLOGY_BLUETOOTH = 16; // 0x10
6300    field public static final int SOURCE_TECHNOLOGY_CELL = 8; // 0x8
6301    field public static final int SOURCE_TECHNOLOGY_GNSS = 1; // 0x1
6302    field public static final int SOURCE_TECHNOLOGY_SENSORS = 4; // 0x4
6303    field public static final int SOURCE_TECHNOLOGY_WIFI = 2; // 0x2
6304  }
6305
6306  public abstract class GeofenceHardwareCallback {
6307    ctor public GeofenceHardwareCallback();
6308    method public void onGeofenceAdd(int, int);
6309    method public void onGeofencePause(int, int);
6310    method public void onGeofenceRemove(int, int);
6311    method public void onGeofenceResume(int, int);
6312    method public void onGeofenceTransition(int, int, android.location.Location, long, int);
6313  }
6314
6315  public abstract class GeofenceHardwareMonitorCallback {
6316    ctor public GeofenceHardwareMonitorCallback();
6317    method @Deprecated public void onMonitoringSystemChange(int, boolean, android.location.Location);
6318    method public void onMonitoringSystemChange(android.hardware.location.GeofenceHardwareMonitorEvent);
6319  }
6320
6321  public class GeofenceHardwareMonitorEvent implements android.os.Parcelable {
6322    ctor public GeofenceHardwareMonitorEvent(int, int, int, android.location.Location);
6323    method public int describeContents();
6324    method public android.location.Location getLocation();
6325    method public int getMonitoringStatus();
6326    method public int getMonitoringType();
6327    method public int getSourceTechnologies();
6328    method public void writeToParcel(android.os.Parcel, int);
6329    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.GeofenceHardwareMonitorEvent> CREATOR;
6330  }
6331
6332  public final class GeofenceHardwareRequest {
6333    ctor public GeofenceHardwareRequest();
6334    method public static android.hardware.location.GeofenceHardwareRequest createCircularGeofence(double, double, double);
6335    method public int getLastTransition();
6336    method public double getLatitude();
6337    method public double getLongitude();
6338    method public int getMonitorTransitions();
6339    method public int getNotificationResponsiveness();
6340    method public double getRadius();
6341    method public int getSourceTechnologies();
6342    method public int getUnknownTimer();
6343    method public void setLastTransition(int);
6344    method public void setMonitorTransitions(int);
6345    method public void setNotificationResponsiveness(int);
6346    method public void setSourceTechnologies(int);
6347    method public void setUnknownTimer(int);
6348  }
6349
6350  public class MemoryRegion implements android.os.Parcelable {
6351    ctor public MemoryRegion(android.os.Parcel);
6352    method public int describeContents();
6353    method public int getCapacityBytes();
6354    method public int getFreeCapacityBytes();
6355    method public boolean isExecutable();
6356    method public boolean isReadable();
6357    method public boolean isWritable();
6358    method public void writeToParcel(android.os.Parcel, int);
6359    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.MemoryRegion> CREATOR;
6360  }
6361
6362  @Deprecated public class NanoApp implements android.os.Parcelable {
6363    ctor @Deprecated public NanoApp();
6364    ctor @Deprecated public NanoApp(int, byte[]);
6365    ctor @Deprecated public NanoApp(long, byte[]);
6366    method @Deprecated public int describeContents();
6367    method @Deprecated public byte[] getAppBinary();
6368    method @Deprecated public long getAppId();
6369    method @Deprecated public int getAppVersion();
6370    method @Deprecated public String getName();
6371    method @Deprecated public int getNeededExecMemBytes();
6372    method @Deprecated public int getNeededReadMemBytes();
6373    method @Deprecated public int[] getNeededSensors();
6374    method @Deprecated public int getNeededWriteMemBytes();
6375    method @Deprecated public int[] getOutputEvents();
6376    method @Deprecated public String getPublisher();
6377    method @Deprecated public void setAppBinary(byte[]);
6378    method @Deprecated public void setAppId(long);
6379    method @Deprecated public void setAppVersion(int);
6380    method @Deprecated public void setName(String);
6381    method @Deprecated public void setNeededExecMemBytes(int);
6382    method @Deprecated public void setNeededReadMemBytes(int);
6383    method @Deprecated public void setNeededSensors(int[]);
6384    method @Deprecated public void setNeededWriteMemBytes(int);
6385    method @Deprecated public void setOutputEvents(int[]);
6386    method @Deprecated public void setPublisher(String);
6387    method @Deprecated public void writeToParcel(android.os.Parcel, int);
6388    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoApp> CREATOR;
6389  }
6390
6391  public final class NanoAppBinary implements android.os.Parcelable {
6392    ctor public NanoAppBinary(byte[]);
6393    method public int describeContents();
6394    method public byte[] getBinary();
6395    method public byte[] getBinaryNoHeader();
6396    method public int getFlags();
6397    method public int getHeaderVersion();
6398    method public long getHwHubType();
6399    method public long getNanoAppId();
6400    method public int getNanoAppVersion();
6401    method public byte getTargetChreApiMajorVersion();
6402    method public byte getTargetChreApiMinorVersion();
6403    method public boolean hasValidHeader();
6404    method public boolean isEncrypted();
6405    method public boolean isSigned();
6406    method public void writeToParcel(android.os.Parcel, int);
6407    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoAppBinary> CREATOR;
6408  }
6409
6410  @Deprecated public class NanoAppFilter implements android.os.Parcelable {
6411    ctor @Deprecated public NanoAppFilter(long, int, int, long);
6412    method @Deprecated public int describeContents();
6413    method @Deprecated public boolean testMatch(android.hardware.location.NanoAppInstanceInfo);
6414    method @Deprecated public void writeToParcel(android.os.Parcel, int);
6415    field @Deprecated public static final int APP_ANY = -1; // 0xffffffff
6416    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoAppFilter> CREATOR;
6417    field @Deprecated public static final int FLAGS_VERSION_ANY = -1; // 0xffffffff
6418    field @Deprecated public static final int FLAGS_VERSION_GREAT_THAN = 2; // 0x2
6419    field @Deprecated public static final int FLAGS_VERSION_LESS_THAN = 4; // 0x4
6420    field @Deprecated public static final int FLAGS_VERSION_STRICTLY_EQUAL = 8; // 0x8
6421    field @Deprecated public static final int HUB_ANY = -1; // 0xffffffff
6422    field @Deprecated public static final int VENDOR_ANY = -1; // 0xffffffff
6423  }
6424
6425  @Deprecated public class NanoAppInstanceInfo implements android.os.Parcelable {
6426    ctor @Deprecated public NanoAppInstanceInfo();
6427    method @Deprecated public int describeContents();
6428    method @Deprecated public long getAppId();
6429    method @Deprecated public int getAppVersion();
6430    method @Deprecated public int getContexthubId();
6431    method @Deprecated public int getHandle();
6432    method @Deprecated public String getName();
6433    method @Deprecated public int getNeededExecMemBytes();
6434    method @Deprecated public int getNeededReadMemBytes();
6435    method @Deprecated @NonNull public int[] getNeededSensors();
6436    method @Deprecated public int getNeededWriteMemBytes();
6437    method @Deprecated @NonNull public int[] getOutputEvents();
6438    method @Deprecated public String getPublisher();
6439    method @Deprecated public void writeToParcel(android.os.Parcel, int);
6440    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoAppInstanceInfo> CREATOR;
6441  }
6442
6443  public final class NanoAppMessage implements android.os.Parcelable {
6444    method public static android.hardware.location.NanoAppMessage createMessageFromNanoApp(long, int, byte[], boolean);
6445    method @NonNull public static android.hardware.location.NanoAppMessage createMessageFromNanoApp(long, int, @NonNull byte[], boolean, boolean, int);
6446    method public static android.hardware.location.NanoAppMessage createMessageToNanoApp(long, int, byte[]);
6447    method public int describeContents();
6448    method public byte[] getMessageBody();
6449    method public int getMessageSequenceNumber();
6450    method public int getMessageType();
6451    method public long getNanoAppId();
6452    method public boolean isBroadcastMessage();
6453    method public boolean isReliable();
6454    method public void writeToParcel(android.os.Parcel, int);
6455    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoAppMessage> CREATOR;
6456  }
6457
6458  public final class NanoAppRpcService implements android.os.Parcelable {
6459    ctor public NanoAppRpcService(long, int);
6460    method public int describeContents();
6461    method public long getId();
6462    method public int getVersion();
6463    method public void writeToParcel(@NonNull android.os.Parcel, int);
6464    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoAppRpcService> CREATOR;
6465  }
6466
6467  public final class NanoAppState implements android.os.Parcelable {
6468    ctor public NanoAppState(long, int, boolean);
6469    ctor public NanoAppState(long, int, boolean, @NonNull java.util.List<java.lang.String>);
6470    ctor public NanoAppState(long, int, boolean, @NonNull java.util.List<java.lang.String>, @NonNull java.util.List<android.hardware.location.NanoAppRpcService>);
6471    method public int describeContents();
6472    method public long getNanoAppId();
6473    method @NonNull public java.util.List<java.lang.String> getNanoAppPermissions();
6474    method public long getNanoAppVersion();
6475    method @NonNull public java.util.List<android.hardware.location.NanoAppRpcService> getRpcServices();
6476    method public boolean isEnabled();
6477    method public void writeToParcel(android.os.Parcel, int);
6478    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoAppState> CREATOR;
6479  }
6480
6481}
6482
6483package android.hardware.radio {
6484
6485  public final class Announcement implements android.os.Parcelable {
6486    method public int describeContents();
6487    method @NonNull public android.hardware.radio.ProgramSelector getSelector();
6488    method public int getType();
6489    method @NonNull public java.util.Map<java.lang.String,java.lang.String> getVendorInfo();
6490    method public void writeToParcel(android.os.Parcel, int);
6491    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.Announcement> CREATOR;
6492    field public static final int TYPE_EMERGENCY = 1; // 0x1
6493    field public static final int TYPE_EVENT = 6; // 0x6
6494    field public static final int TYPE_MISC = 8; // 0x8
6495    field public static final int TYPE_NEWS = 5; // 0x5
6496    field public static final int TYPE_SPORT = 7; // 0x7
6497    field public static final int TYPE_TRAFFIC = 3; // 0x3
6498    field public static final int TYPE_WARNING = 2; // 0x2
6499    field public static final int TYPE_WEATHER = 4; // 0x4
6500  }
6501
6502  public static interface Announcement.OnListUpdatedListener {
6503    method public void onListUpdated(java.util.Collection<android.hardware.radio.Announcement>);
6504  }
6505
6506  public final class ProgramList implements java.lang.AutoCloseable {
6507    method public void addOnCompleteListener(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.radio.ProgramList.OnCompleteListener);
6508    method public void addOnCompleteListener(@NonNull android.hardware.radio.ProgramList.OnCompleteListener);
6509    method public void close();
6510    method @Deprecated @Nullable public android.hardware.radio.RadioManager.ProgramInfo get(@NonNull android.hardware.radio.ProgramSelector.Identifier);
6511    method @FlaggedApi("android.hardware.radio.hd_radio_improved") @NonNull public java.util.List<android.hardware.radio.RadioManager.ProgramInfo> getProgramInfos(@NonNull android.hardware.radio.ProgramSelector.Identifier);
6512    method public void registerListCallback(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.radio.ProgramList.ListCallback);
6513    method public void registerListCallback(@NonNull android.hardware.radio.ProgramList.ListCallback);
6514    method public void removeOnCompleteListener(@NonNull android.hardware.radio.ProgramList.OnCompleteListener);
6515    method @NonNull public java.util.List<android.hardware.radio.RadioManager.ProgramInfo> toList();
6516    method public void unregisterListCallback(@NonNull android.hardware.radio.ProgramList.ListCallback);
6517  }
6518
6519  public static final class ProgramList.Filter implements android.os.Parcelable {
6520    ctor public ProgramList.Filter(@NonNull java.util.Set<java.lang.Integer>, @NonNull java.util.Set<android.hardware.radio.ProgramSelector.Identifier>, boolean, boolean);
6521    method public boolean areCategoriesIncluded();
6522    method public boolean areModificationsExcluded();
6523    method public int describeContents();
6524    method @NonNull public java.util.Set<java.lang.Integer> getIdentifierTypes();
6525    method @NonNull public java.util.Set<android.hardware.radio.ProgramSelector.Identifier> getIdentifiers();
6526    method public void writeToParcel(android.os.Parcel, int);
6527    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.ProgramList.Filter> CREATOR;
6528  }
6529
6530  public abstract static class ProgramList.ListCallback {
6531    ctor public ProgramList.ListCallback();
6532    method public void onItemChanged(@NonNull android.hardware.radio.ProgramSelector.Identifier);
6533    method public void onItemRemoved(@NonNull android.hardware.radio.ProgramSelector.Identifier);
6534  }
6535
6536  public static interface ProgramList.OnCompleteListener {
6537    method public void onComplete();
6538  }
6539
6540  public final class ProgramSelector implements android.os.Parcelable {
6541    ctor public ProgramSelector(int, @NonNull android.hardware.radio.ProgramSelector.Identifier, @Nullable android.hardware.radio.ProgramSelector.Identifier[], @Nullable long[]);
6542    method @NonNull public static android.hardware.radio.ProgramSelector createAmFmSelector(int, int);
6543    method @NonNull public static android.hardware.radio.ProgramSelector createAmFmSelector(int, int, int);
6544    method public int describeContents();
6545    method @NonNull public android.hardware.radio.ProgramSelector.Identifier[] getAllIds(int);
6546    method public long getFirstId(int);
6547    method @NonNull public android.hardware.radio.ProgramSelector.Identifier getPrimaryId();
6548    method @Deprecated public int getProgramType();
6549    method @NonNull public android.hardware.radio.ProgramSelector.Identifier[] getSecondaryIds();
6550    method @Deprecated @NonNull public long[] getVendorIds();
6551    method @NonNull public android.hardware.radio.ProgramSelector withSecondaryPreferred(@NonNull android.hardware.radio.ProgramSelector.Identifier);
6552    method public void writeToParcel(android.os.Parcel, int);
6553    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.ProgramSelector> CREATOR;
6554    field public static final int IDENTIFIER_TYPE_AMFM_FREQUENCY = 1; // 0x1
6555    field public static final int IDENTIFIER_TYPE_DAB_DMB_SID_EXT = 14; // 0xe
6556    field public static final int IDENTIFIER_TYPE_DAB_ENSEMBLE = 6; // 0x6
6557    field public static final int IDENTIFIER_TYPE_DAB_FREQUENCY = 8; // 0x8
6558    field public static final int IDENTIFIER_TYPE_DAB_SCID = 7; // 0x7
6559    field @Deprecated public static final int IDENTIFIER_TYPE_DAB_SIDECC = 5; // 0x5
6560    field @Deprecated public static final int IDENTIFIER_TYPE_DAB_SID_EXT = 5; // 0x5
6561    field public static final int IDENTIFIER_TYPE_DRMO_FREQUENCY = 10; // 0xa
6562    field @Deprecated public static final int IDENTIFIER_TYPE_DRMO_MODULATION = 11; // 0xb
6563    field public static final int IDENTIFIER_TYPE_DRMO_SERVICE_ID = 9; // 0x9
6564    field public static final int IDENTIFIER_TYPE_HD_STATION_ID_EXT = 3; // 0x3
6565    field @FlaggedApi("android.hardware.radio.hd_radio_improved") public static final int IDENTIFIER_TYPE_HD_STATION_LOCATION = 15; // 0xf
6566    field public static final int IDENTIFIER_TYPE_HD_STATION_NAME = 10004; // 0x2714
6567    field @Deprecated public static final int IDENTIFIER_TYPE_HD_SUBCHANNEL = 4; // 0x4
6568    field public static final int IDENTIFIER_TYPE_INVALID = 0; // 0x0
6569    field public static final int IDENTIFIER_TYPE_RDS_PI = 2; // 0x2
6570    field @Deprecated public static final int IDENTIFIER_TYPE_SXM_CHANNEL = 13; // 0xd
6571    field @Deprecated public static final int IDENTIFIER_TYPE_SXM_SERVICE_ID = 12; // 0xc
6572    field public static final int IDENTIFIER_TYPE_VENDOR_END = 1999; // 0x7cf
6573    field @Deprecated public static final int IDENTIFIER_TYPE_VENDOR_PRIMARY_END = 1999; // 0x7cf
6574    field @Deprecated public static final int IDENTIFIER_TYPE_VENDOR_PRIMARY_START = 1000; // 0x3e8
6575    field public static final int IDENTIFIER_TYPE_VENDOR_START = 1000; // 0x3e8
6576    field @Deprecated public static final int PROGRAM_TYPE_AM = 1; // 0x1
6577    field @Deprecated public static final int PROGRAM_TYPE_AM_HD = 3; // 0x3
6578    field @Deprecated public static final int PROGRAM_TYPE_DAB = 5; // 0x5
6579    field @Deprecated public static final int PROGRAM_TYPE_DRMO = 6; // 0x6
6580    field @Deprecated public static final int PROGRAM_TYPE_FM = 2; // 0x2
6581    field @Deprecated public static final int PROGRAM_TYPE_FM_HD = 4; // 0x4
6582    field @Deprecated public static final int PROGRAM_TYPE_INVALID = 0; // 0x0
6583    field @Deprecated public static final int PROGRAM_TYPE_SXM = 7; // 0x7
6584    field @Deprecated public static final int PROGRAM_TYPE_VENDOR_END = 1999; // 0x7cf
6585    field @Deprecated public static final int PROGRAM_TYPE_VENDOR_START = 1000; // 0x3e8
6586    field @FlaggedApi("android.hardware.radio.hd_radio_improved") public static final int SUB_CHANNEL_HD_1 = 1; // 0x1
6587    field @FlaggedApi("android.hardware.radio.hd_radio_improved") public static final int SUB_CHANNEL_HD_2 = 2; // 0x2
6588    field @FlaggedApi("android.hardware.radio.hd_radio_improved") public static final int SUB_CHANNEL_HD_3 = 4; // 0x4
6589    field @FlaggedApi("android.hardware.radio.hd_radio_improved") public static final int SUB_CHANNEL_HD_4 = 8; // 0x8
6590    field @FlaggedApi("android.hardware.radio.hd_radio_improved") public static final int SUB_CHANNEL_HD_5 = 16; // 0x10
6591    field @FlaggedApi("android.hardware.radio.hd_radio_improved") public static final int SUB_CHANNEL_HD_6 = 32; // 0x20
6592    field @FlaggedApi("android.hardware.radio.hd_radio_improved") public static final int SUB_CHANNEL_HD_7 = 64; // 0x40
6593    field @FlaggedApi("android.hardware.radio.hd_radio_improved") public static final int SUB_CHANNEL_HD_8 = 128; // 0x80
6594  }
6595
6596  public static final class ProgramSelector.Identifier implements android.os.Parcelable {
6597    ctor public ProgramSelector.Identifier(int, long);
6598    method public int describeContents();
6599    method public int getType();
6600    method public long getValue();
6601    method public boolean isCategoryType();
6602    method public void writeToParcel(android.os.Parcel, int);
6603    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.ProgramSelector.Identifier> CREATOR;
6604  }
6605
6606  @FlaggedApi("android.hardware.radio.hd_radio_emergency_alert_system") public final class RadioAlert implements android.os.Parcelable {
6607    method public int describeContents();
6608    method @NonNull public java.util.List<android.hardware.radio.RadioAlert.AlertInfo> getInfoList();
6609    method public int getMessageType();
6610    method public int getStatus();
6611    method public void writeToParcel(@NonNull android.os.Parcel, int);
6612    field public static final int CATEGORY_CBRNE = 10; // 0xa
6613    field public static final int CATEGORY_ENV = 7; // 0x7
6614    field public static final int CATEGORY_FIRE = 5; // 0x5
6615    field public static final int CATEGORY_GEO = 0; // 0x0
6616    field public static final int CATEGORY_HEALTH = 6; // 0x6
6617    field public static final int CATEGORY_INFRA = 9; // 0x9
6618    field public static final int CATEGORY_MET = 1; // 0x1
6619    field public static final int CATEGORY_OTHER = 11; // 0xb
6620    field public static final int CATEGORY_RESCUE = 4; // 0x4
6621    field public static final int CATEGORY_SAFETY = 2; // 0x2
6622    field public static final int CATEGORY_SECURITY = 3; // 0x3
6623    field public static final int CATEGORY_TRANSPORT = 8; // 0x8
6624    field public static final int CERTAINTY_LIKELY = 1; // 0x1
6625    field public static final int CERTAINTY_OBSERVED = 0; // 0x0
6626    field public static final int CERTAINTY_POSSIBLE = 2; // 0x2
6627    field public static final int CERTAINTY_UNKNOWN = 4; // 0x4
6628    field public static final int CERTAINTY_UNLIKELY = 3; // 0x3
6629    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioAlert> CREATOR;
6630    field public static final int MESSAGE_TYPE_ALERT = 0; // 0x0
6631    field public static final int MESSAGE_TYPE_CANCEL = 2; // 0x2
6632    field public static final int MESSAGE_TYPE_UPDATE = 1; // 0x1
6633    field public static final int SEVERITY_EXTREME = 0; // 0x0
6634    field public static final int SEVERITY_MINOR = 3; // 0x3
6635    field public static final int SEVERITY_MODERATE = 2; // 0x2
6636    field public static final int SEVERITY_SEVERE = 1; // 0x1
6637    field public static final int SEVERITY_UNKNOWN = 4; // 0x4
6638    field public static final int STATUS_ACTUAL = 0; // 0x0
6639    field public static final int STATUS_EXERCISE = 1; // 0x1
6640    field public static final int STATUS_TEST = 2; // 0x2
6641    field public static final int URGENCY_EXPECTED = 1; // 0x1
6642    field public static final int URGENCY_FUTURE = 2; // 0x2
6643    field public static final int URGENCY_IMMEDIATE = 0; // 0x0
6644    field public static final int URGENCY_PAST = 3; // 0x3
6645    field public static final int URGENCY_UNKNOWN = 4; // 0x4
6646  }
6647
6648  public static final class RadioAlert.AlertArea implements android.os.Parcelable {
6649    method public int describeContents();
6650    method @NonNull public java.util.List<android.hardware.radio.RadioAlert.Geocode> getGeocodes();
6651    method @NonNull public java.util.List<android.hardware.radio.RadioAlert.Polygon> getPolygons();
6652    method public void writeToParcel(@NonNull android.os.Parcel, int);
6653    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioAlert.AlertArea> CREATOR;
6654  }
6655
6656  public static final class RadioAlert.AlertInfo implements android.os.Parcelable {
6657    method public int describeContents();
6658    method @NonNull public java.util.List<android.hardware.radio.RadioAlert.AlertArea> getAreas();
6659    method @NonNull public int[] getCategories();
6660    method public int getCertainty();
6661    method @NonNull public String getDescription();
6662    method @Nullable public String getLanguage();
6663    method public int getSeverity();
6664    method public int getUrgency();
6665    method public void writeToParcel(@NonNull android.os.Parcel, int);
6666    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioAlert.AlertInfo> CREATOR;
6667  }
6668
6669  public static final class RadioAlert.Coordinate implements android.os.Parcelable {
6670    method public int describeContents();
6671    method @FloatRange(from=-90.0, to=90.0) public double getLatitude();
6672    method @FloatRange(from=-180.0, to=180.0) public double getLongitude();
6673    method public void writeToParcel(@NonNull android.os.Parcel, int);
6674    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioAlert.Coordinate> CREATOR;
6675  }
6676
6677  public static final class RadioAlert.Geocode implements android.os.Parcelable {
6678    method public int describeContents();
6679    method @NonNull public String getValue();
6680    method @NonNull public String getValueName();
6681    method public void writeToParcel(@NonNull android.os.Parcel, int);
6682    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioAlert.Geocode> CREATOR;
6683  }
6684
6685  public static final class RadioAlert.Polygon implements android.os.Parcelable {
6686    method public int describeContents();
6687    method @NonNull public java.util.List<android.hardware.radio.RadioAlert.Coordinate> getCoordinates();
6688    method public void writeToParcel(@NonNull android.os.Parcel, int);
6689    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioAlert.Polygon> CREATOR;
6690  }
6691
6692  public class RadioManager {
6693    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public void addAnnouncementListener(@NonNull java.util.Set<java.lang.Integer>, @NonNull android.hardware.radio.Announcement.OnListUpdatedListener);
6694    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);
6695    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public int listModules(java.util.List<android.hardware.radio.RadioManager.ModuleProperties>);
6696    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);
6697    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public void removeAnnouncementListener(@NonNull android.hardware.radio.Announcement.OnListUpdatedListener);
6698    field public static final int BAND_AM = 0; // 0x0
6699    field public static final int BAND_AM_HD = 3; // 0x3
6700    field public static final int BAND_FM = 1; // 0x1
6701    field public static final int BAND_FM_HD = 2; // 0x2
6702    field public static final int BAND_INVALID = -1; // 0xffffffff
6703    field public static final int CLASS_AM_FM = 0; // 0x0
6704    field public static final int CLASS_DT = 2; // 0x2
6705    field public static final int CLASS_SAT = 1; // 0x1
6706    field public static final int CONFIG_DAB_DAB_LINKING = 6; // 0x6
6707    field public static final int CONFIG_DAB_DAB_SOFT_LINKING = 8; // 0x8
6708    field public static final int CONFIG_DAB_FM_LINKING = 7; // 0x7
6709    field public static final int CONFIG_DAB_FM_SOFT_LINKING = 9; // 0x9
6710    field @Deprecated public static final int CONFIG_FORCE_ANALOG = 2; // 0x2
6711    field @FlaggedApi("android.hardware.radio.hd_radio_improved") public static final int CONFIG_FORCE_ANALOG_AM = 11; // 0xb
6712    field @FlaggedApi("android.hardware.radio.hd_radio_improved") public static final int CONFIG_FORCE_ANALOG_FM = 10; // 0xa
6713    field public static final int CONFIG_FORCE_DIGITAL = 3; // 0x3
6714    field public static final int CONFIG_FORCE_MONO = 1; // 0x1
6715    field public static final int CONFIG_RDS_AF = 4; // 0x4
6716    field public static final int CONFIG_RDS_REG = 5; // 0x5
6717    field public static final int REGION_ITU_1 = 0; // 0x0
6718    field public static final int REGION_ITU_2 = 1; // 0x1
6719    field public static final int REGION_JAPAN = 3; // 0x3
6720    field public static final int REGION_KOREA = 4; // 0x4
6721    field public static final int REGION_OIRT = 2; // 0x2
6722    field public static final int STATUS_BAD_VALUE = -22; // 0xffffffea
6723    field public static final int STATUS_DEAD_OBJECT = -32; // 0xffffffe0
6724    field public static final int STATUS_ERROR = -2147483648; // 0x80000000
6725    field public static final int STATUS_INVALID_OPERATION = -38; // 0xffffffda
6726    field public static final int STATUS_NO_INIT = -19; // 0xffffffed
6727    field public static final int STATUS_OK = 0; // 0x0
6728    field public static final int STATUS_PERMISSION_DENIED = -1; // 0xffffffff
6729    field public static final int STATUS_TIMED_OUT = -110; // 0xffffff92
6730  }
6731
6732  public static class RadioManager.AmBandConfig extends android.hardware.radio.RadioManager.BandConfig {
6733    method public boolean getStereo();
6734    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.AmBandConfig> CREATOR;
6735  }
6736
6737  public static class RadioManager.AmBandConfig.Builder {
6738    ctor public RadioManager.AmBandConfig.Builder(android.hardware.radio.RadioManager.AmBandDescriptor);
6739    ctor public RadioManager.AmBandConfig.Builder(android.hardware.radio.RadioManager.AmBandConfig);
6740    method public android.hardware.radio.RadioManager.AmBandConfig build();
6741    method public android.hardware.radio.RadioManager.AmBandConfig.Builder setStereo(boolean);
6742  }
6743
6744  public static class RadioManager.AmBandDescriptor extends android.hardware.radio.RadioManager.BandDescriptor {
6745    method public boolean isStereoSupported();
6746    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.AmBandDescriptor> CREATOR;
6747  }
6748
6749  public static class RadioManager.BandConfig implements android.os.Parcelable {
6750    method public int describeContents();
6751    method public int getLowerLimit();
6752    method public int getRegion();
6753    method public int getSpacing();
6754    method public int getType();
6755    method public int getUpperLimit();
6756    method public void writeToParcel(android.os.Parcel, int);
6757    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.BandConfig> CREATOR;
6758  }
6759
6760  public static class RadioManager.BandDescriptor implements android.os.Parcelable {
6761    method public int describeContents();
6762    method public int getLowerLimit();
6763    method public int getRegion();
6764    method public int getSpacing();
6765    method public int getType();
6766    method public int getUpperLimit();
6767    method public boolean isAmBand();
6768    method public boolean isFmBand();
6769    method public void writeToParcel(android.os.Parcel, int);
6770    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.BandDescriptor> CREATOR;
6771  }
6772
6773  public static class RadioManager.FmBandConfig extends android.hardware.radio.RadioManager.BandConfig {
6774    method public boolean getAf();
6775    method public boolean getEa();
6776    method public boolean getRds();
6777    method public boolean getStereo();
6778    method public boolean getTa();
6779    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.FmBandConfig> CREATOR;
6780  }
6781
6782  public static class RadioManager.FmBandConfig.Builder {
6783    ctor public RadioManager.FmBandConfig.Builder(android.hardware.radio.RadioManager.FmBandDescriptor);
6784    ctor public RadioManager.FmBandConfig.Builder(android.hardware.radio.RadioManager.FmBandConfig);
6785    method public android.hardware.radio.RadioManager.FmBandConfig build();
6786    method public android.hardware.radio.RadioManager.FmBandConfig.Builder setAf(boolean);
6787    method public android.hardware.radio.RadioManager.FmBandConfig.Builder setEa(boolean);
6788    method public android.hardware.radio.RadioManager.FmBandConfig.Builder setRds(boolean);
6789    method public android.hardware.radio.RadioManager.FmBandConfig.Builder setStereo(boolean);
6790    method public android.hardware.radio.RadioManager.FmBandConfig.Builder setTa(boolean);
6791  }
6792
6793  public static class RadioManager.FmBandDescriptor extends android.hardware.radio.RadioManager.BandDescriptor {
6794    method public boolean isAfSupported();
6795    method public boolean isEaSupported();
6796    method public boolean isRdsSupported();
6797    method public boolean isStereoSupported();
6798    method public boolean isTaSupported();
6799    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.FmBandDescriptor> CREATOR;
6800  }
6801
6802  public static class RadioManager.ModuleProperties implements android.os.Parcelable {
6803    method public int describeContents();
6804    method public android.hardware.radio.RadioManager.BandDescriptor[] getBands();
6805    method public int getClassId();
6806    method @Nullable public java.util.Map<java.lang.String,java.lang.Integer> getDabFrequencyTable();
6807    method public int getId();
6808    method public String getImplementor();
6809    method public int getNumAudioSources();
6810    method public int getNumTuners();
6811    method public String getProduct();
6812    method public String getSerial();
6813    method @NonNull public String getServiceName();
6814    method @NonNull public java.util.Map<java.lang.String,java.lang.String> getVendorInfo();
6815    method public String getVersion();
6816    method public boolean isBackgroundScanningSupported();
6817    method public boolean isCaptureSupported();
6818    method public boolean isInitializationRequired();
6819    method public boolean isProgramIdentifierSupported(int);
6820    method public boolean isProgramTypeSupported(int);
6821    method public void writeToParcel(android.os.Parcel, int);
6822    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.ModuleProperties> CREATOR;
6823  }
6824
6825  public static class RadioManager.ProgramInfo implements android.os.Parcelable {
6826    method public int describeContents();
6827    method @FlaggedApi("android.hardware.radio.hd_radio_emergency_alert_system") @Nullable public android.hardware.radio.RadioAlert getAlert();
6828    method @Deprecated public int getChannel();
6829    method @Nullable public android.hardware.radio.ProgramSelector.Identifier getLogicallyTunedTo();
6830    method public android.hardware.radio.RadioMetadata getMetadata();
6831    method @Nullable public android.hardware.radio.ProgramSelector.Identifier getPhysicallyTunedTo();
6832    method @Nullable public java.util.Collection<android.hardware.radio.ProgramSelector.Identifier> getRelatedContent();
6833    method @NonNull public android.hardware.radio.ProgramSelector getSelector();
6834    method public int getSignalStrength();
6835    method @Deprecated public int getSubChannel();
6836    method @NonNull public java.util.Map<java.lang.String,java.lang.String> getVendorInfo();
6837    method @Deprecated public boolean isDigital();
6838    method @FlaggedApi("android.hardware.radio.hd_radio_improved") public boolean isHdAudioAvailable();
6839    method @FlaggedApi("android.hardware.radio.hd_radio_improved") public boolean isHdSisAvailable();
6840    method public boolean isLive();
6841    method public boolean isMuted();
6842    method @FlaggedApi("android.hardware.radio.hd_radio_improved") public boolean isSignalAcquired();
6843    method public boolean isStereo();
6844    method public boolean isTrafficAnnouncementActive();
6845    method public boolean isTrafficProgram();
6846    method public boolean isTuned();
6847    method public void writeToParcel(android.os.Parcel, int);
6848    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.ProgramInfo> CREATOR;
6849  }
6850
6851  public final class RadioMetadata implements android.os.Parcelable {
6852    method public boolean containsKey(String);
6853    method public int describeContents();
6854    method @Deprecated public android.graphics.Bitmap getBitmap(String);
6855    method @FlaggedApi("android.hardware.radio.hd_radio_improved") public int getBitmapId(@NonNull String);
6856    method public android.hardware.radio.RadioMetadata.Clock getClock(String);
6857    method public int getInt(String);
6858    method public String getString(String);
6859    method @FlaggedApi("android.hardware.radio.hd_radio_improved") @NonNull public String[] getStringArray(@NonNull String);
6860    method public java.util.Set<java.lang.String> keySet();
6861    method public int size();
6862    method public void writeToParcel(android.os.Parcel, int);
6863    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioMetadata> CREATOR;
6864    field public static final String METADATA_KEY_ALBUM = "android.hardware.radio.metadata.ALBUM";
6865    field public static final String METADATA_KEY_ART = "android.hardware.radio.metadata.ART";
6866    field public static final String METADATA_KEY_ARTIST = "android.hardware.radio.metadata.ARTIST";
6867    field public static final String METADATA_KEY_CLOCK = "android.hardware.radio.metadata.CLOCK";
6868    field @FlaggedApi("android.hardware.radio.hd_radio_improved") public static final String METADATA_KEY_COMMENT_ACTUAL_TEXT = "android.hardware.radio.metadata.COMMENT_ACTUAL_TEXT";
6869    field @FlaggedApi("android.hardware.radio.hd_radio_improved") public static final String METADATA_KEY_COMMENT_SHORT_DESCRIPTION = "android.hardware.radio.metadata.COMMENT_SHORT_DESCRIPTION";
6870    field @FlaggedApi("android.hardware.radio.hd_radio_improved") public static final String METADATA_KEY_COMMERCIAL = "android.hardware.radio.metadata.COMMERCIAL";
6871    field public static final String METADATA_KEY_DAB_COMPONENT_NAME = "android.hardware.radio.metadata.DAB_COMPONENT_NAME";
6872    field public static final String METADATA_KEY_DAB_COMPONENT_NAME_SHORT = "android.hardware.radio.metadata.DAB_COMPONENT_NAME_SHORT";
6873    field public static final String METADATA_KEY_DAB_ENSEMBLE_NAME = "android.hardware.radio.metadata.DAB_ENSEMBLE_NAME";
6874    field public static final String METADATA_KEY_DAB_ENSEMBLE_NAME_SHORT = "android.hardware.radio.metadata.DAB_ENSEMBLE_NAME_SHORT";
6875    field public static final String METADATA_KEY_DAB_SERVICE_NAME = "android.hardware.radio.metadata.DAB_SERVICE_NAME";
6876    field public static final String METADATA_KEY_DAB_SERVICE_NAME_SHORT = "android.hardware.radio.metadata.DAB_SERVICE_NAME_SHORT";
6877    field public static final String METADATA_KEY_GENRE = "android.hardware.radio.metadata.GENRE";
6878    field @FlaggedApi("android.hardware.radio.hd_radio_improved") public static final String METADATA_KEY_HD_STATION_NAME_LONG = "android.hardware.radio.metadata.HD_STATION_NAME_LONG";
6879    field @FlaggedApi("android.hardware.radio.hd_radio_improved") public static final String METADATA_KEY_HD_STATION_NAME_SHORT = "android.hardware.radio.metadata.HD_STATION_NAME_SHORT";
6880    field @FlaggedApi("android.hardware.radio.hd_radio_improved") public static final String METADATA_KEY_HD_SUBCHANNELS_AVAILABLE = "android.hardware.radio.metadata.HD_SUBCHANNELS_AVAILABLE";
6881    field public static final String METADATA_KEY_ICON = "android.hardware.radio.metadata.ICON";
6882    field public static final String METADATA_KEY_PROGRAM_NAME = "android.hardware.radio.metadata.PROGRAM_NAME";
6883    field public static final String METADATA_KEY_RBDS_PTY = "android.hardware.radio.metadata.RBDS_PTY";
6884    field public static final String METADATA_KEY_RDS_PI = "android.hardware.radio.metadata.RDS_PI";
6885    field public static final String METADATA_KEY_RDS_PS = "android.hardware.radio.metadata.RDS_PS";
6886    field public static final String METADATA_KEY_RDS_PTY = "android.hardware.radio.metadata.RDS_PTY";
6887    field public static final String METADATA_KEY_RDS_RT = "android.hardware.radio.metadata.RDS_RT";
6888    field public static final String METADATA_KEY_TITLE = "android.hardware.radio.metadata.TITLE";
6889    field @FlaggedApi("android.hardware.radio.hd_radio_improved") public static final String METADATA_KEY_UFIDS = "android.hardware.radio.metadata.UFIDS";
6890  }
6891
6892  public static final class RadioMetadata.Builder {
6893    ctor public RadioMetadata.Builder();
6894    ctor public RadioMetadata.Builder(android.hardware.radio.RadioMetadata);
6895    method public android.hardware.radio.RadioMetadata build();
6896    method public android.hardware.radio.RadioMetadata.Builder putBitmap(String, android.graphics.Bitmap);
6897    method public android.hardware.radio.RadioMetadata.Builder putClock(String, long, int);
6898    method public android.hardware.radio.RadioMetadata.Builder putInt(String, int);
6899    method public android.hardware.radio.RadioMetadata.Builder putString(String, String);
6900    method @FlaggedApi("android.hardware.radio.hd_radio_improved") @NonNull public android.hardware.radio.RadioMetadata.Builder putStringArray(@NonNull String, @NonNull String[]);
6901  }
6902
6903  public static final class RadioMetadata.Clock implements android.os.Parcelable {
6904    ctor public RadioMetadata.Clock(long, int);
6905    method public int describeContents();
6906    method public int getTimezoneOffsetMinutes();
6907    method public long getUtcEpochSeconds();
6908    method public void writeToParcel(android.os.Parcel, int);
6909    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioMetadata.Clock> CREATOR;
6910  }
6911
6912  public abstract class RadioTuner {
6913    ctor public RadioTuner();
6914    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract int cancel();
6915    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract void cancelAnnouncement();
6916    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract void close();
6917    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract int getConfiguration(android.hardware.radio.RadioManager.BandConfig[]);
6918    method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public android.hardware.radio.ProgramList getDynamicProgramList(@Nullable android.hardware.radio.ProgramList.Filter);
6919    method @FlaggedApi("android.hardware.radio.hd_radio_improved") @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public android.graphics.Bitmap getMetadataImage(int);
6920    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract boolean getMute();
6921    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public java.util.Map<java.lang.String,java.lang.String> getParameters(@NonNull java.util.List<java.lang.String>);
6922    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract int getProgramInformation(android.hardware.radio.RadioManager.ProgramInfo[]);
6923    method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract java.util.List<android.hardware.radio.RadioManager.ProgramInfo> getProgramList(@Nullable java.util.Map<java.lang.String,java.lang.String>);
6924    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract boolean hasControl();
6925    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract boolean isAnalogForced();
6926    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract boolean isAntennaConnected();
6927    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public boolean isConfigFlagSet(int);
6928    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public boolean isConfigFlagSupported(int);
6929    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract int scan(int, boolean);
6930    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public int seek(int, boolean);
6931    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract void setAnalogForced(boolean);
6932    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public void setConfigFlag(int, boolean);
6933    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract int setConfiguration(android.hardware.radio.RadioManager.BandConfig);
6934    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract int setMute(boolean);
6935    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public java.util.Map<java.lang.String,java.lang.String> setParameters(@NonNull java.util.Map<java.lang.String,java.lang.String>);
6936    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract boolean startBackgroundScan();
6937    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract int step(int, boolean);
6938    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract int tune(int, int);
6939    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract void tune(@NonNull android.hardware.radio.ProgramSelector);
6940    field public static final int DIRECTION_DOWN = 1; // 0x1
6941    field public static final int DIRECTION_UP = 0; // 0x0
6942    field @Deprecated public static final int ERROR_BACKGROUND_SCAN_FAILED = 6; // 0x6
6943    field @Deprecated public static final int ERROR_BACKGROUND_SCAN_UNAVAILABLE = 5; // 0x5
6944    field @Deprecated public static final int ERROR_CANCELLED = 2; // 0x2
6945    field @Deprecated public static final int ERROR_CONFIG = 4; // 0x4
6946    field @Deprecated public static final int ERROR_HARDWARE_FAILURE = 0; // 0x0
6947    field @Deprecated public static final int ERROR_SCAN_TIMEOUT = 3; // 0x3
6948    field @Deprecated public static final int ERROR_SERVER_DIED = 1; // 0x1
6949    field public static final int TUNER_RESULT_CANCELED = 6; // 0x6
6950    field public static final int TUNER_RESULT_INTERNAL_ERROR = 1; // 0x1
6951    field public static final int TUNER_RESULT_INVALID_ARGUMENTS = 2; // 0x2
6952    field public static final int TUNER_RESULT_INVALID_STATE = 3; // 0x3
6953    field public static final int TUNER_RESULT_NOT_SUPPORTED = 4; // 0x4
6954    field public static final int TUNER_RESULT_OK = 0; // 0x0
6955    field public static final int TUNER_RESULT_TIMEOUT = 5; // 0x5
6956    field public static final int TUNER_RESULT_UNKNOWN_ERROR = 7; // 0x7
6957  }
6958
6959  public abstract static class RadioTuner.Callback {
6960    ctor public RadioTuner.Callback();
6961    method public void onAntennaState(boolean);
6962    method public void onBackgroundScanAvailabilityChange(boolean);
6963    method public void onBackgroundScanComplete();
6964    method public void onConfigFlagUpdated(int, boolean);
6965    method @Deprecated public void onConfigurationChanged(android.hardware.radio.RadioManager.BandConfig);
6966    method public void onControlChanged(boolean);
6967    method public void onEmergencyAnnouncement(boolean);
6968    method @Deprecated public void onError(int);
6969    method @Deprecated public void onMetadataChanged(android.hardware.radio.RadioMetadata);
6970    method public void onParametersUpdated(@NonNull java.util.Map<java.lang.String,java.lang.String>);
6971    method public void onProgramInfoChanged(android.hardware.radio.RadioManager.ProgramInfo);
6972    method public void onProgramListChanged();
6973    method public void onTrafficAnnouncement(boolean);
6974    method public void onTuneFailed(int, @Nullable android.hardware.radio.ProgramSelector);
6975  }
6976
6977}
6978
6979package android.hardware.soundtrigger {
6980
6981  public class SoundTrigger {
6982    field public static final int RECOGNITION_MODE_GENERIC = 8; // 0x8
6983    field public static final int RECOGNITION_MODE_USER_AUTHENTICATION = 4; // 0x4
6984    field public static final int RECOGNITION_MODE_USER_IDENTIFICATION = 2; // 0x2
6985    field public static final int RECOGNITION_MODE_VOICE_TRIGGER = 1; // 0x1
6986    field public static final int STATUS_OK = 0; // 0x0
6987  }
6988
6989  @FlaggedApi("android.media.soundtrigger.generic_model_api") public static final class SoundTrigger.GenericSoundModel extends android.hardware.soundtrigger.SoundTrigger.SoundModel implements android.os.Parcelable {
6990    ctor public SoundTrigger.GenericSoundModel(@NonNull java.util.UUID, @NonNull java.util.UUID, @Nullable byte[], int);
6991    ctor public SoundTrigger.GenericSoundModel(@NonNull java.util.UUID, @NonNull java.util.UUID, @Nullable byte[]);
6992    method public int describeContents();
6993    method public void writeToParcel(@NonNull android.os.Parcel, int);
6994    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.soundtrigger.SoundTrigger.GenericSoundModel> CREATOR;
6995  }
6996
6997  public static final class SoundTrigger.Keyphrase implements android.os.Parcelable {
6998    ctor public SoundTrigger.Keyphrase(int, int, @NonNull java.util.Locale, @NonNull String, @Nullable int[]);
6999    method public int describeContents();
7000    method public int getId();
7001    method @NonNull public java.util.Locale getLocale();
7002    method public int getRecognitionModes();
7003    method @NonNull public String getText();
7004    method @NonNull public int[] getUsers();
7005    method @NonNull public static android.hardware.soundtrigger.SoundTrigger.Keyphrase readFromParcel(@NonNull android.os.Parcel);
7006    method public void writeToParcel(@NonNull android.os.Parcel, int);
7007    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.soundtrigger.SoundTrigger.Keyphrase> CREATOR;
7008  }
7009
7010  public static final class SoundTrigger.KeyphraseRecognitionExtra implements android.os.Parcelable {
7011    method public int describeContents();
7012    method @IntRange(from=0, to=100) public int getCoarseConfidenceLevel();
7013    method public int getKeyphraseId();
7014    method public int getRecognitionModes();
7015    method public void writeToParcel(@NonNull android.os.Parcel, int);
7016    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.soundtrigger.SoundTrigger.KeyphraseRecognitionExtra> CREATOR;
7017  }
7018
7019  public static final class SoundTrigger.KeyphraseSoundModel extends android.hardware.soundtrigger.SoundTrigger.SoundModel implements android.os.Parcelable {
7020    ctor public SoundTrigger.KeyphraseSoundModel(@NonNull java.util.UUID, @NonNull java.util.UUID, @Nullable byte[], @Nullable android.hardware.soundtrigger.SoundTrigger.Keyphrase[], int);
7021    ctor public SoundTrigger.KeyphraseSoundModel(@NonNull java.util.UUID, @NonNull java.util.UUID, @Nullable byte[], @Nullable android.hardware.soundtrigger.SoundTrigger.Keyphrase[]);
7022    method public int describeContents();
7023    method @NonNull public android.hardware.soundtrigger.SoundTrigger.Keyphrase[] getKeyphrases();
7024    method @NonNull public static android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel readFromParcel(@NonNull android.os.Parcel);
7025    method public void writeToParcel(@NonNull android.os.Parcel, int);
7026    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel> CREATOR;
7027  }
7028
7029  public static final class SoundTrigger.ModelParamRange implements android.os.Parcelable {
7030    method public int describeContents();
7031    method public int getEnd();
7032    method public int getStart();
7033    method public void writeToParcel(@NonNull android.os.Parcel, int);
7034    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.soundtrigger.SoundTrigger.ModelParamRange> CREATOR;
7035  }
7036
7037  public static final class SoundTrigger.ModuleProperties implements android.os.Parcelable {
7038    method public int describeContents();
7039    method public int getAudioCapabilities();
7040    method @NonNull public String getDescription();
7041    method public int getId();
7042    method @NonNull public String getImplementor();
7043    method public int getMaxBufferMillis();
7044    method public int getMaxKeyphrases();
7045    method public int getMaxSoundModels();
7046    method public int getMaxUsers();
7047    method public int getPowerConsumptionMw();
7048    method public int getRecognitionModes();
7049    method @NonNull public String getSupportedModelArch();
7050    method @NonNull public java.util.UUID getUuid();
7051    method public int getVersion();
7052    method public boolean isCaptureTransitionSupported();
7053    method public boolean isConcurrentCaptureSupported();
7054    method public boolean isTriggerReturnedInEvent();
7055    method public void writeToParcel(android.os.Parcel, int);
7056    field public static final int AUDIO_CAPABILITY_ECHO_CANCELLATION = 1; // 0x1
7057    field public static final int AUDIO_CAPABILITY_NOISE_SUPPRESSION = 2; // 0x2
7058    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.soundtrigger.SoundTrigger.ModuleProperties> CREATOR;
7059  }
7060
7061  @FlaggedApi("android.media.soundtrigger.manager_api") public static final class SoundTrigger.RecognitionConfig implements android.os.Parcelable {
7062    method public int describeContents();
7063    method public int getAudioCapabilities();
7064    method @NonNull public byte[] getData();
7065    method @NonNull public java.util.List<android.hardware.soundtrigger.SoundTrigger.KeyphraseRecognitionExtra> getKeyphrases();
7066    method public boolean isCaptureRequested();
7067    method public boolean isMultipleTriggersAllowed();
7068    method public void writeToParcel(@NonNull android.os.Parcel, int);
7069    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.soundtrigger.SoundTrigger.RecognitionConfig> CREATOR;
7070  }
7071
7072  public static final class SoundTrigger.RecognitionConfig.Builder {
7073    ctor public SoundTrigger.RecognitionConfig.Builder();
7074    method @NonNull public android.hardware.soundtrigger.SoundTrigger.RecognitionConfig build();
7075    method @NonNull public android.hardware.soundtrigger.SoundTrigger.RecognitionConfig.Builder setAudioCapabilities(int);
7076    method @NonNull public android.hardware.soundtrigger.SoundTrigger.RecognitionConfig.Builder setCaptureRequested(boolean);
7077    method @NonNull public android.hardware.soundtrigger.SoundTrigger.RecognitionConfig.Builder setData(@NonNull byte[]);
7078    method @NonNull public android.hardware.soundtrigger.SoundTrigger.RecognitionConfig.Builder setKeyphrases(@NonNull java.util.Collection<android.hardware.soundtrigger.SoundTrigger.KeyphraseRecognitionExtra>);
7079    method @NonNull public android.hardware.soundtrigger.SoundTrigger.RecognitionConfig.Builder setMultipleTriggersAllowed(boolean);
7080  }
7081
7082  public static class SoundTrigger.RecognitionEvent {
7083    method @Nullable public android.media.AudioFormat getCaptureFormat();
7084    method public int getCaptureSession();
7085    method public byte[] getData();
7086    method public long getHalEventReceivedMillis();
7087    method public boolean isCaptureAvailable();
7088  }
7089
7090  public static class SoundTrigger.SoundModel {
7091    method @NonNull public byte[] getData();
7092    method public int getType();
7093    method @NonNull public java.util.UUID getUuid();
7094    method @NonNull public java.util.UUID getVendorUuid();
7095    method public int getVersion();
7096    field public static final int TYPE_GENERIC_SOUND = 1; // 0x1
7097    field public static final int TYPE_KEYPHRASE = 0; // 0x0
7098  }
7099
7100}
7101
7102package android.hardware.usb {
7103
7104  public final class DisplayPortAltModeInfo implements android.os.Parcelable {
7105    method public int describeContents();
7106    method public int getCableStatus();
7107    method public int getLinkTrainingStatus();
7108    method public int getNumberOfLanes();
7109    method public int getPartnerSinkStatus();
7110    method public boolean isHotPlugDetectActive();
7111    method public void writeToParcel(@NonNull android.os.Parcel, int);
7112    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.usb.DisplayPortAltModeInfo> CREATOR;
7113    field public static final int DISPLAYPORT_ALT_MODE_STATUS_CAPABLE_DISABLED = 2; // 0x2
7114    field public static final int DISPLAYPORT_ALT_MODE_STATUS_ENABLED = 3; // 0x3
7115    field public static final int DISPLAYPORT_ALT_MODE_STATUS_NOT_CAPABLE = 1; // 0x1
7116    field public static final int DISPLAYPORT_ALT_MODE_STATUS_UNKNOWN = 0; // 0x0
7117    field public static final int LINK_TRAINING_STATUS_FAILURE = 2; // 0x2
7118    field public static final int LINK_TRAINING_STATUS_SUCCESS = 1; // 0x1
7119    field public static final int LINK_TRAINING_STATUS_UNKNOWN = 0; // 0x0
7120  }
7121
7122  public class UsbDeviceConnection {
7123    method public boolean resetDevice();
7124  }
7125
7126  public class UsbManager {
7127    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public long getCurrentFunctions();
7128    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_USB) public java.util.List<android.hardware.usb.UsbPort> getPorts();
7129    method @FlaggedApi("android.hardware.usb.flags.expose_usb_speed_system_api") @RequiresPermission(android.Manifest.permission.MANAGE_USB) public int getUsbBandwidthMbps();
7130    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void grantPermission(android.hardware.usb.UsbDevice, String);
7131    method public static boolean isUvcSupportEnabled();
7132    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void registerDisplayPortAltModeInfoListener(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.usb.UsbManager.DisplayPortAltModeInfoListener);
7133    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void resetUsbGadget();
7134    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void setCurrentFunctions(long);
7135    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void unregisterDisplayPortAltModeInfoListener(@NonNull android.hardware.usb.UsbManager.DisplayPortAltModeInfoListener);
7136    field @RequiresPermission(android.Manifest.permission.MANAGE_USB) public static final String ACTION_USB_ACCESSORY_HANDSHAKE = "android.hardware.usb.action.USB_ACCESSORY_HANDSHAKE";
7137    field @RequiresPermission(android.Manifest.permission.MANAGE_USB) public static final String ACTION_USB_PORT_CHANGED = "android.hardware.usb.action.USB_PORT_CHANGED";
7138    field @RequiresPermission(android.Manifest.permission.MANAGE_USB) public static final String ACTION_USB_PORT_COMPLIANCE_CHANGED = "android.hardware.usb.action.USB_PORT_COMPLIANCE_CHANGED";
7139    field public static final String ACTION_USB_STATE = "android.hardware.usb.action.USB_STATE";
7140    field public static final String EXTRA_ACCESSORY_HANDSHAKE_END = "android.hardware.usb.extra.ACCESSORY_HANDSHAKE_END";
7141    field public static final String EXTRA_ACCESSORY_START = "android.hardware.usb.extra.ACCESSORY_START";
7142    field public static final String EXTRA_ACCESSORY_STRING_COUNT = "android.hardware.usb.extra.ACCESSORY_STRING_COUNT";
7143    field public static final String EXTRA_ACCESSORY_UEVENT_TIME = "android.hardware.usb.extra.ACCESSORY_UEVENT_TIME";
7144    field public static final long FUNCTION_ACCESSORY = 2L; // 0x2L
7145    field public static final long FUNCTION_ADB = 1L; // 0x1L
7146    field public static final long FUNCTION_AUDIO_SOURCE = 64L; // 0x40L
7147    field public static final long FUNCTION_MIDI = 8L; // 0x8L
7148    field public static final long FUNCTION_MTP = 4L; // 0x4L
7149    field public static final long FUNCTION_NCM = 1024L; // 0x400L
7150    field public static final long FUNCTION_NONE = 0L; // 0x0L
7151    field public static final long FUNCTION_PTP = 16L; // 0x10L
7152    field public static final long FUNCTION_RNDIS = 32L; // 0x20L
7153    field public static final long FUNCTION_UVC = 128L; // 0x80L
7154    field public static final String USB_CONFIGURED = "configured";
7155    field public static final String USB_CONNECTED = "connected";
7156    field @FlaggedApi("android.hardware.usb.flags.expose_usb_speed_system_api") public static final int USB_DATA_TRANSFER_RATE_10G = 10240; // 0x2800
7157    field @FlaggedApi("android.hardware.usb.flags.expose_usb_speed_system_api") public static final int USB_DATA_TRANSFER_RATE_20G = 20480; // 0x5000
7158    field @FlaggedApi("android.hardware.usb.flags.expose_usb_speed_system_api") public static final int USB_DATA_TRANSFER_RATE_40G = 40960; // 0xa000
7159    field @FlaggedApi("android.hardware.usb.flags.expose_usb_speed_system_api") public static final int USB_DATA_TRANSFER_RATE_5G = 5120; // 0x1400
7160    field @FlaggedApi("android.hardware.usb.flags.expose_usb_speed_system_api") public static final int USB_DATA_TRANSFER_RATE_FULL_SPEED = 12; // 0xc
7161    field @FlaggedApi("android.hardware.usb.flags.expose_usb_speed_system_api") public static final int USB_DATA_TRANSFER_RATE_HIGH_SPEED = 480; // 0x1e0
7162    field @FlaggedApi("android.hardware.usb.flags.expose_usb_speed_system_api") public static final int USB_DATA_TRANSFER_RATE_LOW_SPEED = 2; // 0x2
7163    field @FlaggedApi("android.hardware.usb.flags.expose_usb_speed_system_api") public static final int USB_DATA_TRANSFER_RATE_UNKNOWN = -1; // 0xffffffff
7164    field public static final String USB_FUNCTION_NCM = "ncm";
7165    field public static final String USB_FUNCTION_RNDIS = "rndis";
7166  }
7167
7168  public static interface UsbManager.DisplayPortAltModeInfoListener {
7169    method public void onDisplayPortAltModeInfoChanged(@NonNull String, @NonNull android.hardware.usb.DisplayPortAltModeInfo);
7170  }
7171
7172  public final class UsbPort {
7173    method @CheckResult @RequiresPermission(android.Manifest.permission.MANAGE_USB) public int enableLimitPowerTransfer(boolean);
7174    method @CheckResult @RequiresPermission(android.Manifest.permission.MANAGE_USB) public int enableUsbData(boolean);
7175    method @CheckResult @RequiresPermission(android.Manifest.permission.MANAGE_USB) public int enableUsbDataWhileDocked();
7176    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_USB) public android.hardware.usb.UsbPortStatus getStatus();
7177    method public boolean isAltModeSupported(int);
7178    method @CheckResult @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void resetUsbPort(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
7179    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void setRoles(int, int);
7180    method @CheckResult @RequiresPermission(android.Manifest.permission.MANAGE_USB) public boolean supportsComplianceWarnings();
7181    field public static final int ENABLE_LIMIT_POWER_TRANSFER_ERROR_INTERNAL = 1; // 0x1
7182    field public static final int ENABLE_LIMIT_POWER_TRANSFER_ERROR_NOT_SUPPORTED = 2; // 0x2
7183    field public static final int ENABLE_LIMIT_POWER_TRANSFER_ERROR_OTHER = 4; // 0x4
7184    field public static final int ENABLE_LIMIT_POWER_TRANSFER_ERROR_PORT_MISMATCH = 3; // 0x3
7185    field public static final int ENABLE_LIMIT_POWER_TRANSFER_SUCCESS = 0; // 0x0
7186    field public static final int ENABLE_USB_DATA_ERROR_INTERNAL = 1; // 0x1
7187    field public static final int ENABLE_USB_DATA_ERROR_NOT_SUPPORTED = 2; // 0x2
7188    field public static final int ENABLE_USB_DATA_ERROR_OTHER = 4; // 0x4
7189    field public static final int ENABLE_USB_DATA_ERROR_PORT_MISMATCH = 3; // 0x3
7190    field public static final int ENABLE_USB_DATA_SUCCESS = 0; // 0x0
7191    field public static final int ENABLE_USB_DATA_WHILE_DOCKED_ERROR_DATA_ENABLED = 4; // 0x4
7192    field public static final int ENABLE_USB_DATA_WHILE_DOCKED_ERROR_INTERNAL = 1; // 0x1
7193    field public static final int ENABLE_USB_DATA_WHILE_DOCKED_ERROR_NOT_SUPPORTED = 2; // 0x2
7194    field public static final int ENABLE_USB_DATA_WHILE_DOCKED_ERROR_OTHER = 5; // 0x5
7195    field public static final int ENABLE_USB_DATA_WHILE_DOCKED_ERROR_PORT_MISMATCH = 3; // 0x3
7196    field public static final int ENABLE_USB_DATA_WHILE_DOCKED_SUCCESS = 0; // 0x0
7197    field public static final int FLAG_ALT_MODE_TYPE_DISPLAYPORT = 1; // 0x1
7198    field public static final int RESET_USB_PORT_ERROR_INTERNAL = 1; // 0x1
7199    field public static final int RESET_USB_PORT_ERROR_NOT_SUPPORTED = 2; // 0x2
7200    field public static final int RESET_USB_PORT_ERROR_OTHER = 4; // 0x4
7201    field public static final int RESET_USB_PORT_ERROR_PORT_MISMATCH = 3; // 0x3
7202    field public static final int RESET_USB_PORT_SUCCESS = 0; // 0x0
7203  }
7204
7205  public final class UsbPortStatus implements android.os.Parcelable {
7206    method public int describeContents();
7207    method @CheckResult @NonNull public int[] getComplianceWarnings();
7208    method public int getCurrentDataRole();
7209    method public int getCurrentMode();
7210    method public int getCurrentPowerRole();
7211    method @Nullable public android.hardware.usb.DisplayPortAltModeInfo getDisplayPortAltModeInfo();
7212    method public int getPlugState();
7213    method public int getPowerBrickConnectionStatus();
7214    method public int getSupportedRoleCombinations();
7215    method public int getUsbDataStatus();
7216    method public boolean isConnected();
7217    method @FlaggedApi("android.hardware.usb.flags.enable_is_pd_compliant_api") public boolean isPdCompliant();
7218    method public boolean isPowerTransferLimited();
7219    method public boolean isRoleCombinationSupported(int, int);
7220    method public void writeToParcel(android.os.Parcel, int);
7221    field public static final int COMPLIANCE_WARNING_BC_1_2 = 3; // 0x3
7222    field public static final int COMPLIANCE_WARNING_DEBUG_ACCESSORY = 2; // 0x2
7223    field @FlaggedApi("android.hardware.usb.flags.enable_usb_data_compliance_warning") public static final int COMPLIANCE_WARNING_ENUMERATION_FAIL = 7; // 0x7
7224    field @FlaggedApi("android.hardware.usb.flags.enable_usb_data_compliance_warning") public static final int COMPLIANCE_WARNING_FLAKY_CONNECTION = 8; // 0x8
7225    field @FlaggedApi("android.hardware.usb.flags.enable_usb_data_compliance_warning") public static final int COMPLIANCE_WARNING_INPUT_POWER_LIMITED = 5; // 0x5
7226    field @FlaggedApi("android.hardware.usb.flags.enable_usb_data_compliance_warning") public static final int COMPLIANCE_WARNING_MISSING_DATA_LINES = 6; // 0x6
7227    field public static final int COMPLIANCE_WARNING_MISSING_RP = 4; // 0x4
7228    field public static final int COMPLIANCE_WARNING_OTHER = 1; // 0x1
7229    field @FlaggedApi("android.hardware.usb.flags.enable_usb_data_compliance_warning") public static final int COMPLIANCE_WARNING_UNRELIABLE_IO = 9; // 0x9
7230    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.usb.UsbPortStatus> CREATOR;
7231    field public static final int DATA_ROLE_DEVICE = 2; // 0x2
7232    field public static final int DATA_ROLE_HOST = 1; // 0x1
7233    field public static final int DATA_ROLE_NONE = 0; // 0x0
7234    field public static final int DATA_STATUS_DISABLED_CONTAMINANT = 4; // 0x4
7235    field public static final int DATA_STATUS_DISABLED_DEBUG = 32; // 0x20
7236    field public static final int DATA_STATUS_DISABLED_DOCK = 8; // 0x8
7237    field public static final int DATA_STATUS_DISABLED_DOCK_DEVICE_MODE = 128; // 0x80
7238    field public static final int DATA_STATUS_DISABLED_DOCK_HOST_MODE = 64; // 0x40
7239    field public static final int DATA_STATUS_DISABLED_FORCE = 16; // 0x10
7240    field public static final int DATA_STATUS_DISABLED_OVERHEAT = 2; // 0x2
7241    field public static final int DATA_STATUS_ENABLED = 1; // 0x1
7242    field public static final int DATA_STATUS_UNKNOWN = 0; // 0x0
7243    field public static final int MODE_AUDIO_ACCESSORY = 4; // 0x4
7244    field public static final int MODE_DEBUG_ACCESSORY = 8; // 0x8
7245    field public static final int MODE_DFP = 2; // 0x2
7246    field public static final int MODE_NONE = 0; // 0x0
7247    field public static final int MODE_UFP = 1; // 0x1
7248    field public static final int PLUG_STATE_PLUGGED_ORIENTATION_FLIPPED = 4; // 0x4
7249    field public static final int PLUG_STATE_PLUGGED_ORIENTATION_NORMAL = 3; // 0x3
7250    field public static final int PLUG_STATE_PLUGGED_ORIENTATION_UNKNOWN = 2; // 0x2
7251    field public static final int PLUG_STATE_UNKNOWN = 0; // 0x0
7252    field public static final int PLUG_STATE_UNPLUGGED = 1; // 0x1
7253    field public static final int POWER_BRICK_STATUS_CONNECTED = 1; // 0x1
7254    field public static final int POWER_BRICK_STATUS_DISCONNECTED = 2; // 0x2
7255    field public static final int POWER_BRICK_STATUS_UNKNOWN = 0; // 0x0
7256    field public static final int POWER_ROLE_NONE = 0; // 0x0
7257    field public static final int POWER_ROLE_SINK = 2; // 0x2
7258    field public static final int POWER_ROLE_SOURCE = 1; // 0x1
7259  }
7260
7261}
7262
7263package android.location {
7264
7265  public class Location implements android.os.Parcelable {
7266    method public void makeComplete();
7267    method @Deprecated public void setIsFromMockProvider(boolean);
7268    field @Deprecated public static final String EXTRA_NO_GPS_LOCATION = "noGPSLocation";
7269  }
7270
7271}
7272
7273package android.media {
7274
7275  public final class AudioAttributes implements android.os.Parcelable {
7276    method public int getAllFlags();
7277    method public android.os.Bundle getBundle();
7278    method public int getCapturePreset();
7279    method public int getSystemUsage();
7280    method public static boolean isSystemUsage(int);
7281    field @RequiresPermission(android.Manifest.permission.ACCESS_ULTRASOUND) public static final int CONTENT_TYPE_ULTRASOUND = 1997; // 0x7cd
7282    field public static final int FLAG_BEACON = 8; // 0x8
7283    field public static final int FLAG_BYPASS_INTERRUPTION_POLICY = 64; // 0x40
7284    field public static final int FLAG_BYPASS_MUTE = 128; // 0x80
7285    field public static final int FLAG_HW_HOTWORD = 32; // 0x20
7286    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int USAGE_ANNOUNCEMENT = 1003; // 0x3eb
7287    field @RequiresPermission(allOf={android.Manifest.permission.MODIFY_PHONE_STATE, android.Manifest.permission.MODIFY_AUDIO_ROUTING}) public static final int USAGE_CALL_ASSISTANT = 17; // 0x11
7288    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int USAGE_EMERGENCY = 1000; // 0x3e8
7289    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int USAGE_SAFETY = 1001; // 0x3e9
7290    field @FlaggedApi("android.media.audio.speaker_cleanup_usage") @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int USAGE_SPEAKER_CLEANUP = 1004; // 0x3ec
7291    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int USAGE_VEHICLE_STATUS = 1002; // 0x3ea
7292  }
7293
7294  public static class AudioAttributes.Builder {
7295    method public android.media.AudioAttributes.Builder addBundle(@NonNull android.os.Bundle);
7296    method public android.media.AudioAttributes.Builder setCapturePreset(int);
7297    method @NonNull @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_HOTWORD) public android.media.AudioAttributes.Builder setHotwordModeEnabled(boolean);
7298    method public android.media.AudioAttributes.Builder setInternalCapturePreset(int);
7299    method @NonNull public android.media.AudioAttributes.Builder setInternalContentType(int);
7300    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public android.media.AudioAttributes.Builder setSystemUsage(int);
7301  }
7302
7303  public class AudioDescriptor implements android.os.Parcelable {
7304    ctor public AudioDescriptor(int, int, @NonNull byte[]);
7305  }
7306
7307  public final class AudioDeviceAttributes implements android.os.Parcelable {
7308    ctor public AudioDeviceAttributes(@NonNull android.media.AudioDeviceInfo);
7309    ctor public AudioDeviceAttributes(int, int, @NonNull String);
7310    ctor public AudioDeviceAttributes(int, int, @NonNull String, @NonNull String, @NonNull java.util.List<android.media.AudioProfile>, @NonNull java.util.List<android.media.AudioDescriptor>);
7311    method public int describeContents();
7312    method public boolean equalTypeAddress(@Nullable Object);
7313    method @NonNull public String getAddress();
7314    method @NonNull public java.util.List<android.media.AudioDescriptor> getAudioDescriptors();
7315    method @NonNull public java.util.List<android.media.AudioProfile> getAudioProfiles();
7316    method @NonNull public String getName();
7317    method public int getRole();
7318    method public int getType();
7319    method public void writeToParcel(@NonNull android.os.Parcel, int);
7320    field @NonNull public static final android.os.Parcelable.Creator<android.media.AudioDeviceAttributes> CREATOR;
7321    field public static final int ROLE_INPUT = 1; // 0x1
7322    field public static final int ROLE_OUTPUT = 2; // 0x2
7323  }
7324
7325  public class AudioDeviceVolumeManager {
7326    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MODIFY_AUDIO_ROUTING, android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED}) public android.media.VolumeInfo getDeviceVolume(@NonNull android.media.VolumeInfo, @NonNull android.media.AudioDeviceAttributes);
7327    method @RequiresPermission(anyOf={android.Manifest.permission.MODIFY_AUDIO_ROUTING, android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED}) public void setDeviceVolume(@NonNull android.media.VolumeInfo, @NonNull android.media.AudioDeviceAttributes);
7328  }
7329
7330  public final class AudioFocusInfo implements android.os.Parcelable {
7331    method public int describeContents();
7332    method @NonNull public android.media.AudioAttributes getAttributes();
7333    method @NonNull public String getClientId();
7334    method public int getClientUid();
7335    method public int getFlags();
7336    method public int getGainRequest();
7337    method public int getLossReceived();
7338    method @NonNull public String getPackageName();
7339    method public void writeToParcel(android.os.Parcel, int);
7340    field @NonNull public static final android.os.Parcelable.Creator<android.media.AudioFocusInfo> CREATOR;
7341  }
7342
7343  public final class AudioFocusRequest {
7344    method public boolean locksFocus();
7345  }
7346
7347  public static final class AudioFocusRequest.Builder {
7348    method @NonNull public android.media.AudioFocusRequest.Builder setLocksFocus(boolean);
7349  }
7350
7351  public class AudioManager {
7352    method @Deprecated public int abandonAudioFocus(android.media.AudioManager.OnAudioFocusChangeListener, android.media.AudioAttributes);
7353    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void addAssistantServicesUids(@NonNull int[]);
7354    method @RequiresPermission(anyOf={android.Manifest.permission.MODIFY_AUDIO_ROUTING, "android.permission.QUERY_AUDIO_STATE"}) public void addOnDevicesForAttributesChangedListener(@NonNull android.media.AudioAttributes, @NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.OnDevicesForAttributesChangedListener);
7355    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void addOnNonDefaultDevicesForStrategyChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.OnNonDefaultDevicesForStrategyChangedListener) throws java.lang.SecurityException;
7356    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void addOnPreferredDeviceForStrategyChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.OnPreferredDeviceForStrategyChangedListener) throws java.lang.SecurityException;
7357    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void addOnPreferredDevicesForCapturePresetChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.OnPreferredDevicesForCapturePresetChangedListener) throws java.lang.SecurityException;
7358    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void addOnPreferredDevicesForStrategyChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.OnPreferredDevicesForStrategyChangedListener) throws java.lang.SecurityException;
7359    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED) public void addOnStreamAliasingChangedListener(@NonNull java.util.concurrent.Executor, @NonNull Runnable);
7360    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void cancelMuteAwaitConnection(@NonNull android.media.AudioDeviceAttributes) throws java.lang.IllegalStateException;
7361    method public void clearAudioServerStateCallback();
7362    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean clearPreferredDevicesForCapturePreset(int);
7363    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int dispatchAudioFocusChange(@NonNull android.media.AudioFocusInfo, int, @NonNull android.media.audiopolicy.AudioPolicy);
7364    method @FlaggedApi("android.media.audiopolicy.enable_fade_manager_configuration") @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED) public int dispatchAudioFocusChangeWithFade(@NonNull android.media.AudioFocusInfo, int, @NonNull android.media.audiopolicy.AudioPolicy, @NonNull java.util.List<android.media.AudioFocusInfo>, @Nullable android.media.FadeManagerConfiguration);
7365    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int[] getActiveAssistantServicesUids();
7366    method @IntRange(from=0) public long getAdditionalOutputDeviceDelay(@NonNull android.media.AudioDeviceInfo);
7367    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int[] getAssistantServicesUids();
7368    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static java.util.List<android.media.audiopolicy.AudioProductStrategy> getAudioProductStrategies();
7369    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static java.util.List<android.media.audiopolicy.AudioVolumeGroup> getAudioVolumeGroups();
7370    method @NonNull @RequiresPermission(android.Manifest.permission.CALL_AUDIO_INTERCEPTION) public android.media.AudioRecord getCallDownlinkExtractionAudioRecord(@NonNull android.media.AudioFormat);
7371    method @NonNull @RequiresPermission(android.Manifest.permission.CALL_AUDIO_INTERCEPTION) public android.media.AudioTrack getCallUplinkInjectionAudioTrack(@NonNull android.media.AudioFormat);
7372    method @RequiresPermission(anyOf={android.Manifest.permission.MODIFY_AUDIO_ROUTING, "android.permission.QUERY_AUDIO_STATE", android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED}) public int getDeviceVolumeBehavior(@NonNull android.media.AudioDeviceAttributes);
7373    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MODIFY_AUDIO_ROUTING, "android.permission.QUERY_AUDIO_STATE"}) public java.util.List<android.media.AudioDeviceAttributes> getDevicesForAttributes(@NonNull android.media.AudioAttributes);
7374    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED) public java.util.List<java.lang.Integer> getIndependentStreamTypes();
7375    method @RequiresPermission("android.permission.QUERY_AUDIO_STATE") public int getLastAudibleStreamVolume(int);
7376    method @IntRange(from=0) @RequiresPermission("android.permission.QUERY_AUDIO_STATE") public int getLastAudibleVolumeForVolumeGroup(int);
7377    method @IntRange(from=0) public long getMaxAdditionalOutputDeviceDelay(@NonNull android.media.AudioDeviceInfo);
7378    method @IntRange(from=0) @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getMaxVolumeIndexForAttributes(@NonNull android.media.AudioAttributes);
7379    method @IntRange(from=0) @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getMinVolumeIndexForAttributes(@NonNull android.media.AudioAttributes);
7380    method @Nullable @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public android.media.AudioDeviceAttributes getMutingExpectedDevice();
7381    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public java.util.List<android.media.AudioDeviceAttributes> getNonDefaultDevicesForStrategy(@NonNull android.media.audiopolicy.AudioProductStrategy);
7382    method @Nullable @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public android.media.AudioDeviceAttributes getPreferredDeviceForStrategy(@NonNull android.media.audiopolicy.AudioProductStrategy);
7383    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public java.util.List<android.media.AudioDeviceAttributes> getPreferredDevicesForCapturePreset(int);
7384    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public java.util.List<android.media.AudioDeviceAttributes> getPreferredDevicesForStrategy(@NonNull android.media.audiopolicy.AudioProductStrategy);
7385    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED) public int getStreamTypeAlias(int);
7386    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int[] getSupportedSystemUsages();
7387    method @IntRange(from=0) @RequiresPermission(anyOf={android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED, android.Manifest.permission.MODIFY_AUDIO_ROUTING}) public int getVolumeGroupMaxVolumeIndex(int);
7388    method @IntRange(from=0) @RequiresPermission(anyOf={android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED, android.Manifest.permission.MODIFY_AUDIO_ROUTING}) public int getVolumeGroupMinVolumeIndex(int);
7389    method @IntRange(from=0) @RequiresPermission(anyOf={android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED, android.Manifest.permission.MODIFY_AUDIO_ROUTING}) public int getVolumeGroupVolumeIndex(int);
7390    method @IntRange(from=0) @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getVolumeIndexForAttributes(@NonNull android.media.AudioAttributes);
7391    method public boolean isAudioServerRunning();
7392    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean isBluetoothVariableLatencyEnabled();
7393    method public boolean isHdmiSystemAudioSupported();
7394    method @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_HOTWORD) public boolean isHotwordStreamSupported(boolean);
7395    method @RequiresPermission(android.Manifest.permission.CALL_AUDIO_INTERCEPTION) public boolean isPstnCallAudioInterceptable();
7396    method @RequiresPermission(android.Manifest.permission.ACCESS_ULTRASOUND) public boolean isUltrasoundSupported();
7397    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void muteAwaitConnection(@NonNull int[], @NonNull android.media.AudioDeviceAttributes, long, @NonNull java.util.concurrent.TimeUnit) throws java.lang.IllegalStateException;
7398    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int registerAudioPolicy(@NonNull android.media.audiopolicy.AudioPolicy);
7399    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void registerMuteAwaitConnectionCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.MuteAwaitConnectionCallback);
7400    method public void registerVolumeGroupCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.VolumeGroupCallback);
7401    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void removeAssistantServicesUids(@NonNull int[]);
7402    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean removeDeviceAsNonDefaultForStrategy(@NonNull android.media.audiopolicy.AudioProductStrategy, @NonNull android.media.AudioDeviceAttributes);
7403    method @RequiresPermission(anyOf={android.Manifest.permission.MODIFY_AUDIO_ROUTING, "android.permission.QUERY_AUDIO_STATE"}) public void removeOnDevicesForAttributesChangedListener(@NonNull android.media.AudioManager.OnDevicesForAttributesChangedListener);
7404    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void removeOnNonDefaultDevicesForStrategyChangedListener(@NonNull android.media.AudioManager.OnNonDefaultDevicesForStrategyChangedListener);
7405    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void removeOnPreferredDeviceForStrategyChangedListener(@NonNull android.media.AudioManager.OnPreferredDeviceForStrategyChangedListener);
7406    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void removeOnPreferredDevicesForCapturePresetChangedListener(@NonNull android.media.AudioManager.OnPreferredDevicesForCapturePresetChangedListener);
7407    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void removeOnPreferredDevicesForStrategyChangedListener(@NonNull android.media.AudioManager.OnPreferredDevicesForStrategyChangedListener);
7408    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED) public void removeOnStreamAliasingChangedListener(@NonNull Runnable);
7409    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean removePreferredDeviceForStrategy(@NonNull android.media.audiopolicy.AudioProductStrategy);
7410    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;
7411    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;
7412    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int requestAudioFocus(@NonNull android.media.AudioFocusRequest, @Nullable android.media.audiopolicy.AudioPolicy);
7413    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void setActiveAssistantServiceUids(@NonNull int[]);
7414    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean setAdditionalOutputDeviceDelay(@NonNull android.media.AudioDeviceInfo, @IntRange(from=0) long);
7415    method public void setAudioServerStateCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.AudioServerStateCallback);
7416    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void setBluetoothVariableLatencyEnabled(boolean);
7417    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean setDeviceAsNonDefaultForStrategy(@NonNull android.media.audiopolicy.AudioProductStrategy, @NonNull android.media.AudioDeviceAttributes);
7418    method @RequiresPermission(anyOf={android.Manifest.permission.MODIFY_AUDIO_ROUTING, android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED}) public void setDeviceVolumeBehavior(@NonNull android.media.AudioDeviceAttributes, int);
7419    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void setFocusRequestResult(@NonNull android.media.AudioFocusInfo, int, @NonNull android.media.audiopolicy.AudioPolicy);
7420    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean setPreferredDeviceForCapturePreset(int, @NonNull android.media.AudioDeviceAttributes);
7421    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean setPreferredDeviceForStrategy(@NonNull android.media.audiopolicy.AudioProductStrategy, @NonNull android.media.AudioDeviceAttributes);
7422    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean setPreferredDevicesForStrategy(@NonNull android.media.audiopolicy.AudioProductStrategy, @NonNull java.util.List<android.media.AudioDeviceAttributes>);
7423    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void setSupportedSystemUsages(@NonNull int[]);
7424    method @RequiresPermission(anyOf={android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED, android.Manifest.permission.MODIFY_AUDIO_ROUTING}) public void setVolumeGroupVolumeIndex(int, int, int);
7425    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void setVolumeIndexForAttributes(@NonNull android.media.AudioAttributes, int, int);
7426    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void setWiredDeviceConnectionState(@NonNull android.media.AudioDeviceAttributes, int);
7427    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean supportsBluetoothVariableLatency();
7428    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void unregisterAudioPolicy(@NonNull android.media.audiopolicy.AudioPolicy);
7429    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void unregisterAudioPolicyAsync(@NonNull android.media.audiopolicy.AudioPolicy);
7430    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void unregisterMuteAwaitConnectionCallback(@NonNull android.media.AudioManager.MuteAwaitConnectionCallback);
7431    method public void unregisterVolumeGroupCallback(@NonNull android.media.AudioManager.VolumeGroupCallback);
7432    field public static final String ACTION_VOLUME_CHANGED = "android.media.VOLUME_CHANGED_ACTION";
7433    field public static final int AUDIOFOCUS_FLAG_DELAY_OK = 1; // 0x1
7434    field public static final int AUDIOFOCUS_FLAG_LOCK = 4; // 0x4
7435    field public static final int AUDIOFOCUS_FLAG_PAUSES_ON_DUCKABLE_LOSS = 2; // 0x2
7436    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int DEVICE_CONNECTION_STATE_CONNECTED = 1; // 0x1
7437    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int DEVICE_CONNECTION_STATE_DISCONNECTED = 0; // 0x0
7438    field public static final int DEVICE_VOLUME_BEHAVIOR_ABSOLUTE = 3; // 0x3
7439    field public static final int DEVICE_VOLUME_BEHAVIOR_ABSOLUTE_ADJUST_ONLY = 5; // 0x5
7440    field public static final int DEVICE_VOLUME_BEHAVIOR_ABSOLUTE_MULTI_MODE = 4; // 0x4
7441    field public static final int DEVICE_VOLUME_BEHAVIOR_FIXED = 2; // 0x2
7442    field public static final int DEVICE_VOLUME_BEHAVIOR_FULL = 1; // 0x1
7443    field public static final int DEVICE_VOLUME_BEHAVIOR_VARIABLE = 0; // 0x0
7444    field public static final String EXTRA_VOLUME_STREAM_TYPE = "android.media.EXTRA_VOLUME_STREAM_TYPE";
7445    field public static final String EXTRA_VOLUME_STREAM_VALUE = "android.media.EXTRA_VOLUME_STREAM_VALUE";
7446    field public static final int FLAG_BLUETOOTH_ABS_VOLUME = 64; // 0x40
7447    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int STREAM_ASSISTANT = 11; // 0xb
7448    field @Deprecated @FlaggedApi("android.media.audio.deprecate_stream_bt_sco") public static final int STREAM_BLUETOOTH_SCO = 6; // 0x6
7449    field public static final int SUCCESS = 0; // 0x0
7450  }
7451
7452  public abstract static class AudioManager.AudioServerStateCallback {
7453    ctor public AudioManager.AudioServerStateCallback();
7454    method public void onAudioServerDown();
7455    method public void onAudioServerUp();
7456  }
7457
7458  public abstract static class AudioManager.MuteAwaitConnectionCallback {
7459    ctor public AudioManager.MuteAwaitConnectionCallback();
7460    method public void onMutedUntilConnection(@NonNull android.media.AudioDeviceAttributes, @NonNull int[]);
7461    method public void onUnmutedEvent(int, @NonNull android.media.AudioDeviceAttributes, @NonNull int[]);
7462    field public static final int EVENT_CANCEL = 3; // 0x3
7463    field public static final int EVENT_CONNECTION = 1; // 0x1
7464    field public static final int EVENT_TIMEOUT = 2; // 0x2
7465  }
7466
7467  public static interface AudioManager.OnDevicesForAttributesChangedListener {
7468    method public void onDevicesForAttributesChanged(@NonNull android.media.AudioAttributes, @NonNull java.util.List<android.media.AudioDeviceAttributes>);
7469  }
7470
7471  public static interface AudioManager.OnNonDefaultDevicesForStrategyChangedListener {
7472    method public void onNonDefaultDevicesForStrategyChanged(@NonNull android.media.audiopolicy.AudioProductStrategy, @NonNull java.util.List<android.media.AudioDeviceAttributes>);
7473  }
7474
7475  @Deprecated public static interface AudioManager.OnPreferredDeviceForStrategyChangedListener {
7476    method @Deprecated public void onPreferredDeviceForStrategyChanged(@NonNull android.media.audiopolicy.AudioProductStrategy, @Nullable android.media.AudioDeviceAttributes);
7477  }
7478
7479  public static interface AudioManager.OnPreferredDevicesForCapturePresetChangedListener {
7480    method public void onPreferredDevicesForCapturePresetChanged(int, @NonNull java.util.List<android.media.AudioDeviceAttributes>);
7481  }
7482
7483  public static interface AudioManager.OnPreferredDevicesForStrategyChangedListener {
7484    method public void onPreferredDevicesForStrategyChanged(@NonNull android.media.audiopolicy.AudioProductStrategy, @NonNull java.util.List<android.media.AudioDeviceAttributes>);
7485  }
7486
7487  public abstract static class AudioManager.VolumeGroupCallback {
7488    ctor public AudioManager.VolumeGroupCallback();
7489    method public void onAudioVolumeGroupChanged(int, int);
7490  }
7491
7492  public final class AudioPlaybackConfiguration implements android.os.Parcelable {
7493    method @FlaggedApi("android.media.audio.routed_device_ids") @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public java.util.List<android.media.AudioDeviceInfo> getAudioDeviceInfos();
7494    method public int getChannelMask();
7495    method public int getClientPid();
7496    method public int getClientUid();
7497    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getMutedBy();
7498    method public int getPlayerInterfaceId();
7499    method public android.media.PlayerProxy getPlayerProxy();
7500    method public int getPlayerState();
7501    method public int getPlayerType();
7502    method @IntRange(from=0) public int getSampleRate();
7503    method @IntRange(from=0) public int getSessionId();
7504    method public boolean isActive();
7505    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean isMuted();
7506    method public boolean isSpatialized();
7507    field @Deprecated @FlaggedApi("android.media.audio.muted_by_port_volume_api") @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int MUTED_BY_APP_OPS = 8; // 0x8
7508    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int MUTED_BY_CLIENT_VOLUME = 16; // 0x10
7509    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int MUTED_BY_MASTER = 1; // 0x1
7510    field @FlaggedApi("android.media.audio.muted_by_port_volume_api") @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int MUTED_BY_OP_CONTROL_AUDIO = 128; // 0x80
7511    field @FlaggedApi("android.media.audio.muted_by_port_volume_api") @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int MUTED_BY_OP_PLAY_AUDIO = 8; // 0x8
7512    field @FlaggedApi("android.media.audio.muted_by_port_volume_api") @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int MUTED_BY_PORT_VOLUME = 64; // 0x40
7513    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int MUTED_BY_STREAM_MUTED = 4; // 0x4
7514    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int MUTED_BY_STREAM_VOLUME = 2; // 0x2
7515    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int MUTED_BY_VOLUME_SHAPER = 32; // 0x20
7516    field public static final int PLAYER_STATE_IDLE = 1; // 0x1
7517    field public static final int PLAYER_STATE_PAUSED = 3; // 0x3
7518    field public static final int PLAYER_STATE_RELEASED = 0; // 0x0
7519    field public static final int PLAYER_STATE_STARTED = 2; // 0x2
7520    field public static final int PLAYER_STATE_STOPPED = 4; // 0x4
7521    field public static final int PLAYER_STATE_UNKNOWN = -1; // 0xffffffff
7522    field public static final int PLAYER_TYPE_AAUDIO = 13; // 0xd
7523    field public static final int PLAYER_TYPE_JAM_AUDIOTRACK = 1; // 0x1
7524    field public static final int PLAYER_TYPE_JAM_MEDIAPLAYER = 2; // 0x2
7525    field public static final int PLAYER_TYPE_JAM_SOUNDPOOL = 3; // 0x3
7526    field public static final int PLAYER_TYPE_SLES_AUDIOPLAYER_BUFFERQUEUE = 11; // 0xb
7527    field public static final int PLAYER_TYPE_SLES_AUDIOPLAYER_URI_FD = 12; // 0xc
7528    field public static final int PLAYER_TYPE_UNKNOWN = -1; // 0xffffffff
7529  }
7530
7531  public class AudioProfile implements android.os.Parcelable {
7532    ctor public AudioProfile(int, @NonNull int[], @NonNull int[], @NonNull int[], int);
7533  }
7534
7535  public class AudioRecord implements android.media.AudioRecordingMonitor android.media.AudioRouting android.media.MicrophoneDirection {
7536    ctor @RequiresPermission(android.Manifest.permission.RECORD_AUDIO) public AudioRecord(android.media.AudioAttributes, android.media.AudioFormat, int, int) throws java.lang.IllegalArgumentException;
7537    method public static long getMaxSharedAudioHistoryMillis();
7538    method public boolean isHotwordLookbackStream();
7539    method public boolean isHotwordStream();
7540    method @NonNull @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_HOTWORD) public android.media.MediaSyncEvent shareAudioHistory(@NonNull String, @IntRange(from=0) long);
7541  }
7542
7543  public static class AudioRecord.Builder {
7544    method public android.media.AudioRecord.Builder setAudioAttributes(@NonNull android.media.AudioAttributes) throws java.lang.IllegalArgumentException;
7545    method @NonNull @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_HOTWORD) public android.media.AudioRecord.Builder setMaxSharedAudioHistoryMillis(long) throws java.lang.IllegalArgumentException;
7546    method @NonNull @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_HOTWORD) public android.media.AudioRecord.Builder setRequestHotwordLookbackStream(boolean);
7547    method @NonNull @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_HOTWORD) public android.media.AudioRecord.Builder setRequestHotwordStream(boolean);
7548    method public android.media.AudioRecord.Builder setSessionId(int) throws java.lang.IllegalArgumentException;
7549    method @NonNull public android.media.AudioRecord.Builder setSharedAudioEvent(@NonNull android.media.MediaSyncEvent) throws java.lang.IllegalArgumentException;
7550  }
7551
7552  public final class AudioRecordingConfiguration implements android.os.Parcelable {
7553    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getClientUid();
7554  }
7555
7556  public class AudioTrack implements android.media.AudioRouting android.media.VolumeAutomation {
7557    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int ENCAPSULATION_MODE_HANDLE = 2; // 0x2
7558  }
7559
7560  public static class AudioTrack.Builder {
7561    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public android.media.AudioTrack.Builder setTunerConfiguration(@NonNull android.media.AudioTrack.TunerConfiguration);
7562  }
7563
7564  public static class AudioTrack.TunerConfiguration {
7565    ctor @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public AudioTrack.TunerConfiguration(@IntRange(from=0) int, @IntRange(from=1) int);
7566    method @IntRange(from=1) @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getContentId();
7567    method @IntRange(from=1) @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getSyncId();
7568    field public static final int CONTENT_ID_NONE = 0; // 0x0
7569  }
7570
7571  @FlaggedApi("android.media.audiopolicy.enable_fade_manager_configuration") public final class FadeManagerConfiguration implements android.os.Parcelable {
7572    method public int describeContents();
7573    method @NonNull public java.util.List<android.media.AudioAttributes> getAudioAttributesWithVolumeShaperConfigs();
7574    method @IntRange(from=1) public static long getDefaultFadeInDurationMillis();
7575    method @IntRange(from=1) public static long getDefaultFadeOutDurationMillis();
7576    method @IntRange(from=0) public long getFadeInDelayForOffenders();
7577    method @IntRange(from=0) public long getFadeInDurationForAudioAttributes(@NonNull android.media.AudioAttributes);
7578    method @IntRange(from=0) public long getFadeInDurationForUsage(int);
7579    method @Nullable public android.media.VolumeShaper.Configuration getFadeInVolumeShaperConfigForAudioAttributes(@NonNull android.media.AudioAttributes);
7580    method @Nullable public android.media.VolumeShaper.Configuration getFadeInVolumeShaperConfigForUsage(int);
7581    method @IntRange(from=0) public long getFadeOutDurationForAudioAttributes(@NonNull android.media.AudioAttributes);
7582    method @IntRange(from=0) public long getFadeOutDurationForUsage(int);
7583    method @Nullable public android.media.VolumeShaper.Configuration getFadeOutVolumeShaperConfigForAudioAttributes(@NonNull android.media.AudioAttributes);
7584    method @Nullable public android.media.VolumeShaper.Configuration getFadeOutVolumeShaperConfigForUsage(int);
7585    method public int getFadeState();
7586    method @NonNull public java.util.List<java.lang.Integer> getFadeableUsages();
7587    method @NonNull public java.util.List<android.media.AudioAttributes> getUnfadeableAudioAttributes();
7588    method @NonNull public java.util.List<java.lang.Integer> getUnfadeableContentTypes();
7589    method @NonNull public java.util.List<java.lang.Integer> getUnfadeablePlayerTypes();
7590    method @NonNull public java.util.List<java.lang.Integer> getUnfadeableUids();
7591    method public boolean isAudioAttributesUnfadeable(@NonNull android.media.AudioAttributes);
7592    method public boolean isContentTypeUnfadeable(int);
7593    method public boolean isFadeEnabled();
7594    method public boolean isPlayerTypeUnfadeable(int);
7595    method public boolean isUidUnfadeable(int);
7596    method public boolean isUsageFadeable(int);
7597    method public void writeToParcel(@NonNull android.os.Parcel, int);
7598    field @NonNull public static final android.os.Parcelable.Creator<android.media.FadeManagerConfiguration> CREATOR;
7599    field public static final long DURATION_NOT_SET = 0L; // 0x0L
7600    field public static final int FADE_STATE_DISABLED = 0; // 0x0
7601    field public static final int FADE_STATE_ENABLED_DEFAULT = 1; // 0x1
7602    field public static final String TAG = "FadeManagerConfiguration";
7603    field public static final int VOLUME_SHAPER_SYSTEM_FADE_ID = 2; // 0x2
7604  }
7605
7606  public static final class FadeManagerConfiguration.Builder {
7607    ctor public FadeManagerConfiguration.Builder();
7608    ctor public FadeManagerConfiguration.Builder(@IntRange(from=1) long, @IntRange(from=1) long);
7609    ctor public FadeManagerConfiguration.Builder(@NonNull android.media.FadeManagerConfiguration);
7610    method @NonNull public android.media.FadeManagerConfiguration.Builder addFadeableUsage(int);
7611    method @NonNull public android.media.FadeManagerConfiguration.Builder addUnfadeableAudioAttributes(@NonNull android.media.AudioAttributes);
7612    method @NonNull public android.media.FadeManagerConfiguration.Builder addUnfadeableContentType(int);
7613    method @NonNull public android.media.FadeManagerConfiguration.Builder addUnfadeableUid(int);
7614    method @NonNull public android.media.FadeManagerConfiguration build();
7615    method @NonNull public android.media.FadeManagerConfiguration.Builder clearFadeableUsages();
7616    method @NonNull public android.media.FadeManagerConfiguration.Builder clearUnfadeableAudioAttributes();
7617    method @NonNull public android.media.FadeManagerConfiguration.Builder clearUnfadeableContentTypes();
7618    method @NonNull public android.media.FadeManagerConfiguration.Builder clearUnfadeableUids();
7619    method @NonNull public android.media.FadeManagerConfiguration.Builder setFadeInDelayForOffenders(@IntRange(from=0) long);
7620    method @NonNull public android.media.FadeManagerConfiguration.Builder setFadeInDurationForAudioAttributes(@NonNull android.media.AudioAttributes, @IntRange(from=0) long);
7621    method @NonNull public android.media.FadeManagerConfiguration.Builder setFadeInDurationForUsage(int, @IntRange(from=0) long);
7622    method @NonNull public android.media.FadeManagerConfiguration.Builder setFadeInVolumeShaperConfigForAudioAttributes(@NonNull android.media.AudioAttributes, @Nullable android.media.VolumeShaper.Configuration);
7623    method @NonNull public android.media.FadeManagerConfiguration.Builder setFadeInVolumeShaperConfigForUsage(int, @Nullable android.media.VolumeShaper.Configuration);
7624    method @NonNull public android.media.FadeManagerConfiguration.Builder setFadeOutDurationForAudioAttributes(@NonNull android.media.AudioAttributes, @IntRange(from=0) long);
7625    method @NonNull public android.media.FadeManagerConfiguration.Builder setFadeOutDurationForUsage(int, @IntRange(from=0) long);
7626    method @NonNull public android.media.FadeManagerConfiguration.Builder setFadeOutVolumeShaperConfigForAudioAttributes(@NonNull android.media.AudioAttributes, @Nullable android.media.VolumeShaper.Configuration);
7627    method @NonNull public android.media.FadeManagerConfiguration.Builder setFadeOutVolumeShaperConfigForUsage(int, @Nullable android.media.VolumeShaper.Configuration);
7628    method @NonNull public android.media.FadeManagerConfiguration.Builder setFadeState(int);
7629    method @NonNull public android.media.FadeManagerConfiguration.Builder setFadeableUsages(@NonNull java.util.List<java.lang.Integer>);
7630    method @NonNull public android.media.FadeManagerConfiguration.Builder setUnfadeableAudioAttributes(@NonNull java.util.List<android.media.AudioAttributes>);
7631    method @NonNull public android.media.FadeManagerConfiguration.Builder setUnfadeableContentTypes(@NonNull java.util.List<java.lang.Integer>);
7632    method @NonNull public android.media.FadeManagerConfiguration.Builder setUnfadeableUids(@NonNull java.util.List<java.lang.Integer>);
7633  }
7634
7635  public class HwAudioSource {
7636    method public boolean isPlaying();
7637    method public void start();
7638    method public void stop();
7639  }
7640
7641  public static final class HwAudioSource.Builder {
7642    ctor public HwAudioSource.Builder();
7643    method @NonNull public android.media.HwAudioSource build();
7644    method @NonNull public android.media.HwAudioSource.Builder setAudioAttributes(@NonNull android.media.AudioAttributes);
7645    method @NonNull public android.media.HwAudioSource.Builder setAudioDeviceInfo(@NonNull android.media.AudioDeviceInfo);
7646  }
7647
7648  public final class MediaCas implements java.lang.AutoCloseable {
7649    method @FlaggedApi("android.media.tv.flags.set_resource_holder_retain") @RequiresPermission("android.permission.TUNER_RESOURCE_ACCESS") public void setResourceOwnershipRetention(boolean);
7650    method @FlaggedApi("android.media.tv.flags.mediacas_update_client_profile_priority") @RequiresPermission("android.permission.TUNER_RESOURCE_ACCESS") public boolean updateResourcePriority(int, int);
7651  }
7652
7653  public final class MediaCodec {
7654    method @NonNull @RequiresPermission(android.Manifest.permission.MEDIA_RESOURCE_OVERRIDE_PID) public static android.media.MediaCodec createByCodecNameForClient(@NonNull String, int, int) throws java.io.IOException;
7655  }
7656
7657  public class MediaPlayer implements android.media.AudioRouting android.media.VolumeAutomation {
7658    method @RequiresPermission(android.Manifest.permission.BIND_IMS_SERVICE) public void setOnRtpRxNoticeListener(@NonNull android.content.Context, @NonNull java.util.concurrent.Executor, @NonNull android.media.MediaPlayer.OnRtpRxNoticeListener);
7659  }
7660
7661  public static interface MediaPlayer.OnRtpRxNoticeListener {
7662    method public void onRtpRxNotice(@NonNull android.media.MediaPlayer, int, @NonNull int[]);
7663  }
7664
7665  public final class MediaRecorder.AudioSource {
7666    field @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_OUTPUT) public static final int ECHO_REFERENCE = 1997; // 0x7cd
7667    field @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_HOTWORD) public static final int HOTWORD = 1999; // 0x7cf
7668    field @RequiresPermission(android.Manifest.permission.CAPTURE_TUNER_AUDIO_INPUT) public static final int RADIO_TUNER = 1998; // 0x7ce
7669    field @RequiresPermission(android.Manifest.permission.ACCESS_ULTRASOUND) public static final int ULTRASOUND = 2000; // 0x7d0
7670  }
7671
7672  public final class MediaRouter2 {
7673    method @NonNull public java.util.List<android.media.MediaRoute2Info> getAllRoutes();
7674    method @Nullable public String getClientPackageName();
7675    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MEDIA_CONTENT_CONTROL, android.Manifest.permission.MEDIA_ROUTING_CONTROL}) public static android.media.MediaRouter2 getInstance(@NonNull android.content.Context, @NonNull String);
7676    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void startScan();
7677    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void stopScan();
7678    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void transfer(@NonNull android.media.MediaRouter2.RoutingController, @NonNull android.media.MediaRoute2Info);
7679  }
7680
7681  public abstract static class MediaRouter2.RouteCallback {
7682    method public void onPreferredFeaturesChanged(@NonNull java.util.List<java.lang.String>);
7683  }
7684
7685  public class MediaSyncEvent implements android.os.Parcelable {
7686    field public static final int SYNC_EVENT_SHARE_AUDIO_HISTORY = 100; // 0x64
7687  }
7688
7689  public final class NearbyDevice implements android.os.Parcelable {
7690    ctor public NearbyDevice(@NonNull String, int);
7691    method public int describeContents();
7692    method @NonNull public String getMediaRoute2Id();
7693    method public int getRangeZone();
7694    method public void writeToParcel(@NonNull android.os.Parcel, int);
7695    field @NonNull public static final android.os.Parcelable.Creator<android.media.NearbyDevice> CREATOR;
7696    field public static final int RANGE_CLOSE = 3; // 0x3
7697    field public static final int RANGE_FAR = 1; // 0x1
7698    field public static final int RANGE_LONG = 2; // 0x2
7699    field public static final int RANGE_UNKNOWN = 0; // 0x0
7700    field public static final int RANGE_WITHIN_REACH = 4; // 0x4
7701  }
7702
7703  public interface NearbyMediaDevicesProvider {
7704    method public void registerNearbyDevicesCallback(@NonNull java.util.function.Consumer<java.util.List<android.media.NearbyDevice>>);
7705    method public void unregisterNearbyDevicesCallback(@NonNull java.util.function.Consumer<java.util.List<android.media.NearbyDevice>>);
7706  }
7707
7708  public class PlayerProxy {
7709    method public void pause();
7710    method public void setPan(float);
7711    method public void setStartDelayMs(int);
7712    method public void setVolume(float);
7713    method public void start();
7714    method public void stop();
7715  }
7716
7717  public class RingtoneManager {
7718    method @RequiresPermission(android.Manifest.permission.WRITE_SETTINGS) public static void ensureDefaultRingtones(@NonNull android.content.Context);
7719  }
7720
7721  public final class RouteDiscoveryPreference implements android.os.Parcelable {
7722    field public static final android.media.RouteDiscoveryPreference EMPTY;
7723  }
7724
7725  public class Spatializer {
7726    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void addCompatibleAudioDevice(@NonNull android.media.AudioDeviceAttributes);
7727    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void addOnHeadTrackingModeChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.Spatializer.OnHeadTrackingModeChangedListener);
7728    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void clearOnHeadToSoundstagePoseUpdatedListener();
7729    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void clearOnSpatializerOutputChangedListener();
7730    method @NonNull @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public java.util.List<android.media.AudioDeviceAttributes> getCompatibleAudioDevices();
7731    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public int getDesiredHeadTrackingMode();
7732    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void getEffectParameter(int, @NonNull byte[]);
7733    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public int getHeadTrackingMode();
7734    method @IntRange(from=0) @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public int getOutput();
7735    method @NonNull @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public java.util.List<java.lang.Integer> getSupportedHeadTrackingModes();
7736    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public boolean hasHeadTracker(@NonNull android.media.AudioDeviceAttributes);
7737    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public boolean isAvailableForDevice(@NonNull android.media.AudioDeviceAttributes);
7738    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public boolean isHeadTrackerEnabled(@NonNull android.media.AudioDeviceAttributes);
7739    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void recenterHeadTracker();
7740    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void removeCompatibleAudioDevice(@NonNull android.media.AudioDeviceAttributes);
7741    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void removeOnHeadTrackingModeChangedListener(@NonNull android.media.Spatializer.OnHeadTrackingModeChangedListener);
7742    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void setDesiredHeadTrackingMode(int);
7743    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void setEffectParameter(int, @NonNull byte[]);
7744    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void setEnabled(boolean);
7745    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void setGlobalTransform(@NonNull float[]);
7746    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void setHeadTrackerEnabled(boolean, @NonNull android.media.AudioDeviceAttributes);
7747    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void setOnHeadToSoundstagePoseUpdatedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.Spatializer.OnHeadToSoundstagePoseUpdatedListener);
7748    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void setOnSpatializerOutputChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.Spatializer.OnSpatializerOutputChangedListener);
7749    field @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public static final int HEAD_TRACKING_MODE_DISABLED = -1; // 0xffffffff
7750    field @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public static final int HEAD_TRACKING_MODE_OTHER = 0; // 0x0
7751    field @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public static final int HEAD_TRACKING_MODE_RELATIVE_DEVICE = 2; // 0x2
7752    field @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public static final int HEAD_TRACKING_MODE_RELATIVE_WORLD = 1; // 0x1
7753    field @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public static final int HEAD_TRACKING_MODE_UNSUPPORTED = -2; // 0xfffffffe
7754  }
7755
7756  public static interface Spatializer.OnHeadToSoundstagePoseUpdatedListener {
7757    method public void onHeadToSoundstagePoseUpdated(@NonNull android.media.Spatializer, @NonNull float[]);
7758  }
7759
7760  public static interface Spatializer.OnHeadTrackingModeChangedListener {
7761    method public void onDesiredHeadTrackingModeChanged(@NonNull android.media.Spatializer, int);
7762    method public void onHeadTrackingModeChanged(@NonNull android.media.Spatializer, int);
7763  }
7764
7765  public static interface Spatializer.OnSpatializerOutputChangedListener {
7766    method public void onSpatializerOutputChanged(@NonNull android.media.Spatializer, @IntRange(from=0) int);
7767  }
7768
7769  public final class VolumeInfo implements android.os.Parcelable {
7770    method public int describeContents();
7771    method @NonNull public static android.media.VolumeInfo getDefaultVolumeInfo();
7772    method public int getMaxVolumeIndex();
7773    method public int getMinVolumeIndex();
7774    method public int getStreamType();
7775    method @NonNull public android.media.audiopolicy.AudioVolumeGroup getVolumeGroup();
7776    method public int getVolumeIndex();
7777    method public boolean hasMuteCommand();
7778    method public boolean hasStreamType();
7779    method public boolean hasVolumeGroup();
7780    method public boolean isMuted();
7781    method public void writeToParcel(@NonNull android.os.Parcel, int);
7782    field @NonNull public static final android.os.Parcelable.Creator<android.media.VolumeInfo> CREATOR;
7783    field public static final int INDEX_NOT_SET = -100; // 0xffffff9c
7784  }
7785
7786  public static final class VolumeInfo.Builder {
7787    ctor public VolumeInfo.Builder(int);
7788    ctor public VolumeInfo.Builder(@NonNull android.media.audiopolicy.AudioVolumeGroup);
7789    ctor public VolumeInfo.Builder(@NonNull android.media.VolumeInfo);
7790    method @NonNull public android.media.VolumeInfo build();
7791    method @NonNull public android.media.VolumeInfo.Builder setMaxVolumeIndex(int);
7792    method @NonNull public android.media.VolumeInfo.Builder setMinVolumeIndex(int);
7793    method @NonNull public android.media.VolumeInfo.Builder setMuted(boolean);
7794    method @NonNull public android.media.VolumeInfo.Builder setVolumeIndex(int);
7795  }
7796
7797}
7798
7799package android.media.audiofx {
7800
7801  public class AudioEffect {
7802    ctor @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public AudioEffect(@NonNull java.util.UUID, @NonNull android.media.AudioDeviceAttributes);
7803    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public static boolean isEffectSupportedForDevice(@NonNull java.util.UUID, @NonNull android.media.AudioDeviceAttributes);
7804  }
7805
7806}
7807
7808package android.media.audiopolicy {
7809
7810  public class AudioMix implements android.os.Parcelable {
7811    method public int describeContents();
7812    method public int getMixState();
7813    method public void writeToParcel(@NonNull android.os.Parcel, int);
7814    field @NonNull public static final android.os.Parcelable.Creator<android.media.audiopolicy.AudioMix> CREATOR;
7815    field public static final int MIX_STATE_DISABLED = -1; // 0xffffffff
7816    field public static final int MIX_STATE_IDLE = 0; // 0x0
7817    field public static final int MIX_STATE_MIXING = 1; // 0x1
7818    field public static final int ROUTE_FLAG_LOOP_BACK = 2; // 0x2
7819    field public static final int ROUTE_FLAG_RENDER = 1; // 0x1
7820  }
7821
7822  public static class AudioMix.Builder {
7823    ctor public AudioMix.Builder(@NonNull android.media.audiopolicy.AudioMixingRule) throws java.lang.IllegalArgumentException;
7824    method public android.media.audiopolicy.AudioMix build() throws java.lang.IllegalArgumentException;
7825    method public android.media.audiopolicy.AudioMix.Builder setDevice(@NonNull android.media.AudioDeviceInfo) throws java.lang.IllegalArgumentException;
7826    method public android.media.audiopolicy.AudioMix.Builder setFormat(@NonNull android.media.AudioFormat) throws java.lang.IllegalArgumentException;
7827    method public android.media.audiopolicy.AudioMix.Builder setRouteFlags(int) throws java.lang.IllegalArgumentException;
7828  }
7829
7830  public class AudioMixingRule implements android.os.Parcelable {
7831    method public int describeContents();
7832    method public int getTargetMixRole();
7833    method public void writeToParcel(@NonNull android.os.Parcel, int);
7834    field @NonNull public static final android.os.Parcelable.Creator<android.media.audiopolicy.AudioMixingRule> CREATOR;
7835    field public static final int MIX_ROLE_INJECTOR = 1; // 0x1
7836    field public static final int MIX_ROLE_PLAYERS = 0; // 0x0
7837    field public static final int RULE_MATCH_ATTRIBUTE_CAPTURE_PRESET = 2; // 0x2
7838    field public static final int RULE_MATCH_ATTRIBUTE_USAGE = 1; // 0x1
7839    field public static final int RULE_MATCH_AUDIO_SESSION_ID = 16; // 0x10
7840    field public static final int RULE_MATCH_UID = 4; // 0x4
7841    field public static final int RULE_MATCH_USERID = 8; // 0x8
7842  }
7843
7844  public static class AudioMixingRule.Builder {
7845    ctor public AudioMixingRule.Builder();
7846    method public android.media.audiopolicy.AudioMixingRule.Builder addMixRule(int, Object) throws java.lang.IllegalArgumentException;
7847    method public android.media.audiopolicy.AudioMixingRule.Builder addRule(android.media.AudioAttributes, int) throws java.lang.IllegalArgumentException;
7848    method @NonNull public android.media.audiopolicy.AudioMixingRule.Builder allowPrivilegedPlaybackCapture(boolean);
7849    method public android.media.audiopolicy.AudioMixingRule build();
7850    method public android.media.audiopolicy.AudioMixingRule.Builder excludeMixRule(int, Object) throws java.lang.IllegalArgumentException;
7851    method public android.media.audiopolicy.AudioMixingRule.Builder excludeRule(android.media.AudioAttributes, int) throws java.lang.IllegalArgumentException;
7852    method @NonNull public android.media.audiopolicy.AudioMixingRule.Builder setTargetMixRole(int);
7853  }
7854
7855  public class AudioPolicy {
7856    method public int attachMixes(@NonNull java.util.List<android.media.audiopolicy.AudioMix>);
7857    method @FlaggedApi("android.media.audiopolicy.enable_fade_manager_configuration") @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED) public int clearFadeManagerConfigurationForFocusLoss();
7858    method public android.media.AudioRecord createAudioRecordSink(android.media.audiopolicy.AudioMix) throws java.lang.IllegalArgumentException;
7859    method public android.media.AudioTrack createAudioTrackSource(android.media.audiopolicy.AudioMix) throws java.lang.IllegalArgumentException;
7860    method public int detachMixes(@NonNull java.util.List<android.media.audiopolicy.AudioMix>);
7861    method @FlaggedApi("android.media.audiopolicy.enable_fade_manager_configuration") @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED) public android.media.FadeManagerConfiguration getFadeManagerConfigurationForFocusLoss();
7862    method public int getFocusDuckingBehavior();
7863    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public java.util.List<android.media.AudioFocusInfo> getFocusStack();
7864    method public int getStatus();
7865    method public boolean removeUidDeviceAffinity(int);
7866    method public boolean removeUserIdDeviceAffinity(int);
7867    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean sendFocusLoss(@NonNull android.media.AudioFocusInfo) throws java.lang.IllegalStateException;
7868    method @FlaggedApi("android.media.audiopolicy.enable_fade_manager_configuration") @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED) public int setFadeManagerConfigurationForFocusLoss(@NonNull android.media.FadeManagerConfiguration);
7869    method public int setFocusDuckingBehavior(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException;
7870    method public void setRegistration(String);
7871    method public boolean setUidDeviceAffinity(int, @NonNull java.util.List<android.media.AudioDeviceInfo>);
7872    method public boolean setUserIdDeviceAffinity(int, @NonNull java.util.List<android.media.AudioDeviceInfo>);
7873    method public String toLogFriendlyString();
7874    method @FlaggedApi("android.media.audiopolicy.audio_policy_update_mixing_rules_api") @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int updateMixingRules(@NonNull java.util.List<android.util.Pair<android.media.audiopolicy.AudioMix,android.media.audiopolicy.AudioMixingRule>>);
7875    field public static final int FOCUS_POLICY_DUCKING_DEFAULT = 0; // 0x0
7876    field public static final int FOCUS_POLICY_DUCKING_IN_APP = 0; // 0x0
7877    field public static final int FOCUS_POLICY_DUCKING_IN_POLICY = 1; // 0x1
7878    field public static final int POLICY_STATUS_REGISTERED = 2; // 0x2
7879    field public static final int POLICY_STATUS_UNREGISTERED = 1; // 0x1
7880  }
7881
7882  public abstract static class AudioPolicy.AudioPolicyFocusListener {
7883    ctor public AudioPolicy.AudioPolicyFocusListener();
7884    method public void onAudioFocusAbandon(android.media.AudioFocusInfo);
7885    method public void onAudioFocusGrant(android.media.AudioFocusInfo, int);
7886    method public void onAudioFocusLoss(android.media.AudioFocusInfo, boolean);
7887    method public void onAudioFocusRequest(android.media.AudioFocusInfo, int);
7888  }
7889
7890  public abstract static class AudioPolicy.AudioPolicyStatusListener {
7891    ctor public AudioPolicy.AudioPolicyStatusListener();
7892    method public void onMixStateUpdate(android.media.audiopolicy.AudioMix);
7893    method public void onStatusChange();
7894  }
7895
7896  public abstract static class AudioPolicy.AudioPolicyVolumeCallback {
7897    ctor public AudioPolicy.AudioPolicyVolumeCallback();
7898    method public void onVolumeAdjustment(int);
7899  }
7900
7901  public static class AudioPolicy.Builder {
7902    ctor public AudioPolicy.Builder(android.content.Context);
7903    method @NonNull public android.media.audiopolicy.AudioPolicy.Builder addMix(@NonNull android.media.audiopolicy.AudioMix) throws java.lang.IllegalArgumentException;
7904    method @NonNull public android.media.audiopolicy.AudioPolicy build();
7905    method public void setAudioPolicyFocusListener(android.media.audiopolicy.AudioPolicy.AudioPolicyFocusListener);
7906    method public void setAudioPolicyStatusListener(android.media.audiopolicy.AudioPolicy.AudioPolicyStatusListener);
7907    method @NonNull public android.media.audiopolicy.AudioPolicy.Builder setAudioPolicyVolumeCallback(@NonNull android.media.audiopolicy.AudioPolicy.AudioPolicyVolumeCallback);
7908    method @NonNull public android.media.audiopolicy.AudioPolicy.Builder setIsAudioFocusPolicy(boolean);
7909    method @NonNull public android.media.audiopolicy.AudioPolicy.Builder setLooper(@NonNull android.os.Looper) throws java.lang.IllegalArgumentException;
7910  }
7911
7912  public final class AudioProductStrategy implements android.os.Parcelable {
7913    method @NonNull public static android.media.audiopolicy.AudioProductStrategy createInvalidAudioProductStrategy(int);
7914    method public int describeContents();
7915    method @NonNull public android.media.AudioAttributes getAudioAttributes();
7916    method public int getId();
7917    method @NonNull public String getName();
7918    method public boolean supportsAudioAttributes(@NonNull android.media.AudioAttributes);
7919    method public void writeToParcel(@NonNull android.os.Parcel, int);
7920    field @NonNull public static final android.os.Parcelable.Creator<android.media.audiopolicy.AudioProductStrategy> CREATOR;
7921  }
7922
7923  public final class AudioVolumeGroup implements android.os.Parcelable {
7924    method public int describeContents();
7925    method @NonNull public java.util.List<android.media.AudioAttributes> getAudioAttributes();
7926    method public int getId();
7927    method @NonNull public int[] getLegacyStreamTypes();
7928    method @NonNull public String name();
7929    method public void writeToParcel(@NonNull android.os.Parcel, int);
7930    field public static final android.os.Parcelable.Creator<android.media.audiopolicy.AudioVolumeGroup> CREATOR;
7931    field public static final int DEFAULT_VOLUME_GROUP = -1; // 0xffffffff
7932  }
7933
7934}
7935
7936package android.media.musicrecognition {
7937
7938  public class MusicRecognitionManager {
7939    method @RequiresPermission(android.Manifest.permission.MANAGE_MUSIC_RECOGNITION) public void beginStreamingSearch(@NonNull android.media.musicrecognition.RecognitionRequest, @NonNull java.util.concurrent.Executor, @NonNull android.media.musicrecognition.MusicRecognitionManager.RecognitionCallback);
7940    field public static final int RECOGNITION_FAILED_AUDIO_UNAVAILABLE = 7; // 0x7
7941    field public static final int RECOGNITION_FAILED_NOT_FOUND = 1; // 0x1
7942    field public static final int RECOGNITION_FAILED_NO_CONNECTIVITY = 2; // 0x2
7943    field public static final int RECOGNITION_FAILED_SERVICE_KILLED = 5; // 0x5
7944    field public static final int RECOGNITION_FAILED_SERVICE_UNAVAILABLE = 3; // 0x3
7945    field public static final int RECOGNITION_FAILED_TIMEOUT = 6; // 0x6
7946    field public static final int RECOGNITION_FAILED_UNKNOWN = -1; // 0xffffffff
7947  }
7948
7949  public static interface MusicRecognitionManager.RecognitionCallback {
7950    method public void onAudioStreamClosed();
7951    method public void onRecognitionFailed(@NonNull android.media.musicrecognition.RecognitionRequest, int);
7952    method public void onRecognitionSucceeded(@NonNull android.media.musicrecognition.RecognitionRequest, @NonNull android.media.MediaMetadata, @Nullable android.os.Bundle);
7953  }
7954
7955  public abstract class MusicRecognitionService extends android.app.Service {
7956    ctor public MusicRecognitionService();
7957    method @Nullable public android.os.IBinder onBind(@NonNull android.content.Intent);
7958    method public abstract void onRecognize(@NonNull android.os.ParcelFileDescriptor, @NonNull android.media.AudioFormat, @NonNull android.media.musicrecognition.MusicRecognitionService.Callback);
7959  }
7960
7961  public static interface MusicRecognitionService.Callback {
7962    method public void onRecognitionFailed(int);
7963    method public void onRecognitionSucceeded(@NonNull android.media.MediaMetadata, @Nullable android.os.Bundle);
7964  }
7965
7966  public final class RecognitionRequest implements android.os.Parcelable {
7967    method public int describeContents();
7968    method @NonNull public android.media.AudioAttributes getAudioAttributes();
7969    method @NonNull public android.media.AudioFormat getAudioFormat();
7970    method public int getCaptureSession();
7971    method public int getIgnoreBeginningFrames();
7972    method public int getMaxAudioLengthSeconds();
7973    method public void writeToParcel(@NonNull android.os.Parcel, int);
7974    field @NonNull public static final android.os.Parcelable.Creator<android.media.musicrecognition.RecognitionRequest> CREATOR;
7975  }
7976
7977  public static final class RecognitionRequest.Builder {
7978    ctor public RecognitionRequest.Builder();
7979    method @NonNull public android.media.musicrecognition.RecognitionRequest build();
7980    method @NonNull public android.media.musicrecognition.RecognitionRequest.Builder setAudioAttributes(@NonNull android.media.AudioAttributes);
7981    method @NonNull public android.media.musicrecognition.RecognitionRequest.Builder setAudioFormat(@NonNull android.media.AudioFormat);
7982    method @NonNull public android.media.musicrecognition.RecognitionRequest.Builder setCaptureSession(int);
7983    method @NonNull public android.media.musicrecognition.RecognitionRequest.Builder setIgnoreBeginningFrames(int);
7984    method @NonNull public android.media.musicrecognition.RecognitionRequest.Builder setMaxAudioLengthSeconds(int);
7985  }
7986
7987}
7988
7989package android.media.quality {
7990
7991  @FlaggedApi("android.media.tv.flags.media_quality_fw") public final class MediaQualityManager {
7992    method public void addGlobalActiveProcessingPictureListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.quality.MediaQualityManager.ActiveProcessingPictureListener);
7993    method @NonNull public java.util.List<java.lang.String> getPictureProfileAllowList();
7994    method @NonNull public java.util.List<java.lang.String> getPictureProfilePackageNames();
7995    method @NonNull public java.util.List<android.media.quality.PictureProfile> getPictureProfilesByPackage(@NonNull String, boolean);
7996    method @NonNull public java.util.List<java.lang.String> getSoundProfileAllowList();
7997    method @NonNull public java.util.List<java.lang.String> getSoundProfilePackageNames();
7998    method @NonNull public java.util.List<android.media.quality.SoundProfile> getSoundProfilesByPackage(@NonNull String, boolean);
7999    method public void setAutoPictureQualityEnabled(boolean);
8000    method public void setAutoSoundQualityEnabled(boolean);
8001    method public boolean setDefaultPictureProfile(@Nullable String);
8002    method public boolean setDefaultSoundProfile(@Nullable String);
8003    method public void setPictureProfileAllowList(@NonNull java.util.List<java.lang.String>);
8004    method public void setSoundProfileAllowList(@NonNull java.util.List<java.lang.String>);
8005    method public void setSuperResolutionEnabled(boolean);
8006  }
8007
8008  public static final class PictureProfile.Builder {
8009    method @NonNull public android.media.quality.PictureProfile.Builder setInputId(@NonNull String);
8010    method @NonNull public android.media.quality.PictureProfile.Builder setPackageName(@NonNull String);
8011    method @NonNull public android.media.quality.PictureProfile.Builder setProfileType(int);
8012  }
8013
8014  @FlaggedApi("android.media.tv.flags.apply_picture_profiles") public final class PictureProfileHandle implements android.os.Parcelable {
8015    method @FlaggedApi("android.media.tv.flags.apply_picture_profiles") public int describeContents();
8016    method @FlaggedApi("android.media.tv.flags.apply_picture_profiles") public long getId();
8017    method @FlaggedApi("android.media.tv.flags.apply_picture_profiles") public void writeToParcel(@NonNull android.os.Parcel, int);
8018    field @FlaggedApi("android.media.tv.flags.apply_picture_profiles") @NonNull public static final android.os.Parcelable.Creator<android.media.quality.PictureProfileHandle> CREATOR;
8019    field @NonNull public static final android.media.quality.PictureProfileHandle NONE;
8020  }
8021
8022  public static final class SoundProfile.Builder {
8023    method @NonNull public android.media.quality.SoundProfile.Builder setInputId(@NonNull String);
8024    method @NonNull public android.media.quality.SoundProfile.Builder setPackageName(@NonNull String);
8025    method @NonNull public android.media.quality.SoundProfile.Builder setProfileType(int);
8026  }
8027
8028}
8029
8030package android.media.session {
8031
8032  public final class MediaSessionManager {
8033    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void addOnMediaKeyEventDispatchedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.session.MediaSessionManager.OnMediaKeyEventDispatchedListener);
8034    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void removeOnMediaKeyEventDispatchedListener(@NonNull android.media.session.MediaSessionManager.OnMediaKeyEventDispatchedListener);
8035    method @RequiresPermission(android.Manifest.permission.SET_MEDIA_KEY_LISTENER) public void setOnMediaKeyListener(android.media.session.MediaSessionManager.OnMediaKeyListener, @Nullable android.os.Handler);
8036    method @RequiresPermission(android.Manifest.permission.SET_VOLUME_KEY_LONG_PRESS_LISTENER) public void setOnVolumeKeyLongPressListener(android.media.session.MediaSessionManager.OnVolumeKeyLongPressListener, @Nullable android.os.Handler);
8037  }
8038
8039  public static interface MediaSessionManager.OnMediaKeyEventDispatchedListener {
8040    method public void onMediaKeyEventDispatched(@NonNull android.view.KeyEvent, @NonNull String, @Nullable android.media.session.MediaSession.Token);
8041  }
8042
8043  public static interface MediaSessionManager.OnMediaKeyListener {
8044    method public boolean onMediaKey(android.view.KeyEvent);
8045  }
8046
8047  public static interface MediaSessionManager.OnVolumeKeyLongPressListener {
8048    method public void onVolumeKeyLongPress(android.view.KeyEvent);
8049  }
8050
8051}
8052
8053package android.media.soundtrigger {
8054
8055  public abstract class SoundTriggerDetectionService extends android.app.Service {
8056    ctor public SoundTriggerDetectionService();
8057    method public final android.os.IBinder onBind(android.content.Intent);
8058    method @MainThread public void onConnected(@NonNull java.util.UUID, @Nullable android.os.Bundle);
8059    method @MainThread public void onDisconnected(@NonNull java.util.UUID, @Nullable android.os.Bundle);
8060    method @MainThread public void onError(@NonNull java.util.UUID, @Nullable android.os.Bundle, int, int);
8061    method @MainThread public void onGenericRecognitionEvent(@NonNull java.util.UUID, @Nullable android.os.Bundle, int, @NonNull android.hardware.soundtrigger.SoundTrigger.RecognitionEvent);
8062    method @MainThread public abstract void onStopOperation(@NonNull java.util.UUID, @Nullable android.os.Bundle, int);
8063    method public final void operationFinished(@Nullable java.util.UUID, int);
8064  }
8065
8066  @Deprecated public final class SoundTriggerDetector {
8067    method @Deprecated @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public boolean startRecognition(int);
8068    method @Deprecated @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public boolean stopRecognition();
8069    field @Deprecated public static final int RECOGNITION_FLAG_ALLOW_MULTIPLE_TRIGGERS = 2; // 0x2
8070    field @Deprecated public static final int RECOGNITION_FLAG_CAPTURE_TRIGGER_AUDIO = 1; // 0x1
8071    field @Deprecated public static final int RECOGNITION_FLAG_ENABLE_AUDIO_ECHO_CANCELLATION = 4; // 0x4
8072    field @Deprecated public static final int RECOGNITION_FLAG_ENABLE_AUDIO_NOISE_SUPPRESSION = 8; // 0x8
8073    field @Deprecated public static final int RECOGNITION_FLAG_RUN_IN_BATTERY_SAVER = 16; // 0x10
8074  }
8075
8076  @Deprecated public abstract static class SoundTriggerDetector.Callback {
8077    ctor @Deprecated public SoundTriggerDetector.Callback();
8078    method @Deprecated public abstract void onAvailabilityChanged(int);
8079    method @Deprecated public abstract void onDetected(@NonNull android.media.soundtrigger.SoundTriggerDetector.EventPayload);
8080    method @Deprecated public abstract void onError();
8081    method @Deprecated public abstract void onRecognitionPaused();
8082    method @Deprecated public abstract void onRecognitionResumed();
8083  }
8084
8085  @Deprecated public static class SoundTriggerDetector.EventPayload {
8086    method @Deprecated @Nullable public android.media.AudioFormat getCaptureAudioFormat();
8087    method @Deprecated @Nullable public byte[] getTriggerAudio();
8088  }
8089
8090  public final class SoundTriggerManager {
8091    method @Deprecated @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);
8092    method @Deprecated @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public void deleteModel(java.util.UUID);
8093    method public int getDetectionServiceOperationsTimeout();
8094    method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public android.media.soundtrigger.SoundTriggerManager.Model getModel(java.util.UUID);
8095    method @FlaggedApi("android.media.soundtrigger.manager_api") @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public int getModelState(@NonNull java.util.UUID);
8096    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public android.hardware.soundtrigger.SoundTrigger.ModuleProperties getModuleProperties();
8097    method @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public int getParameter(@NonNull java.util.UUID, int);
8098    method @FlaggedApi("android.media.soundtrigger.manager_api") @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public boolean isRecognitionActive(@NonNull java.util.UUID);
8099    method @FlaggedApi("android.media.soundtrigger.manager_api") @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public int loadSoundModel(@NonNull android.hardware.soundtrigger.SoundTrigger.SoundModel);
8100    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public android.hardware.soundtrigger.SoundTrigger.ModelParamRange queryParameter(@Nullable java.util.UUID, int);
8101    method @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public int setParameter(@Nullable java.util.UUID, int, int);
8102    method @FlaggedApi("android.media.soundtrigger.manager_api") @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public int startRecognition(@NonNull java.util.UUID, @Nullable android.os.Bundle, @NonNull android.content.ComponentName, @NonNull android.hardware.soundtrigger.SoundTrigger.RecognitionConfig);
8103    method @FlaggedApi("android.media.soundtrigger.manager_api") @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public int stopRecognition(@NonNull java.util.UUID);
8104    method @FlaggedApi("android.media.soundtrigger.manager_api") @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public int unloadSoundModel(@NonNull java.util.UUID);
8105    method @Deprecated @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public void updateModel(android.media.soundtrigger.SoundTriggerManager.Model);
8106  }
8107
8108  public static class SoundTriggerManager.Model {
8109    method @NonNull public static android.media.soundtrigger.SoundTriggerManager.Model create(@NonNull java.util.UUID, @NonNull java.util.UUID, @Nullable byte[], int);
8110    method @NonNull public static android.media.soundtrigger.SoundTriggerManager.Model create(@NonNull java.util.UUID, @NonNull java.util.UUID, @Nullable byte[]);
8111    method @Nullable public byte[] getModelData();
8112    method @NonNull public java.util.UUID getModelUuid();
8113    method @NonNull public java.util.UUID getVendorUuid();
8114    method public int getVersion();
8115  }
8116
8117}
8118
8119package android.media.tv {
8120
8121  public final class DvbDeviceInfo implements android.os.Parcelable {
8122    ctor public DvbDeviceInfo(int, int);
8123    method public int describeContents();
8124    method @IntRange(from=0) public int getAdapterId();
8125    method @IntRange(from=0) public int getDeviceId();
8126    method public void writeToParcel(@NonNull android.os.Parcel, int);
8127    field @NonNull public static final android.os.Parcelable.Creator<android.media.tv.DvbDeviceInfo> CREATOR;
8128  }
8129
8130  public final class TunedInfo implements android.os.Parcelable {
8131    method public int describeContents();
8132    method public int getAppTag();
8133    method public int getAppType();
8134    method @Nullable public android.net.Uri getChannelUri();
8135    method @NonNull public String getInputId();
8136    method public boolean isMainSession();
8137    method public boolean isRecordingSession();
8138    method public boolean isVisible();
8139    method public void writeToParcel(@NonNull android.os.Parcel, int);
8140    field public static final int APP_TAG_SELF = 0; // 0x0
8141    field public static final int APP_TYPE_NON_SYSTEM = 3; // 0x3
8142    field public static final int APP_TYPE_SELF = 1; // 0x1
8143    field public static final int APP_TYPE_SYSTEM = 2; // 0x2
8144    field @NonNull public static final android.os.Parcelable.Creator<android.media.tv.TunedInfo> CREATOR;
8145  }
8146
8147  public final class TvContentRatingSystemInfo implements android.os.Parcelable {
8148    method public static android.media.tv.TvContentRatingSystemInfo createTvContentRatingSystemInfo(int, android.content.pm.ApplicationInfo);
8149    method public int describeContents();
8150    method public android.net.Uri getXmlUri();
8151    method public boolean isSystemDefined();
8152    method public void writeToParcel(android.os.Parcel, int);
8153  }
8154
8155  public final class TvContract {
8156    method public static android.net.Uri buildChannelsUriForInput(@Nullable String, boolean);
8157    method public static android.net.Uri buildChannelsUriForInput(@Nullable String, @Nullable String, boolean);
8158    field public static final String ACTION_CHANNEL_BROWSABLE_REQUESTED = "android.media.tv.action.CHANNEL_BROWSABLE_REQUESTED";
8159    field public static final String EXTRA_BLOCKED_PACKAGES = "android.media.tv.extra.BLOCKED_PACKAGES";
8160    field public static final String EXTRA_COLUMN_NAME = "android.media.tv.extra.COLUMN_NAME";
8161    field public static final String EXTRA_DATA_TYPE = "android.media.tv.extra.DATA_TYPE";
8162    field public static final String EXTRA_DEFAULT_VALUE = "android.media.tv.extra.DEFAULT_VALUE";
8163    field public static final String EXTRA_EXISTING_COLUMN_NAMES = "android.media.tv.extra.EXISTING_COLUMN_NAMES";
8164    field public static final String EXTRA_PACKAGE_NAME = "android.media.tv.extra.PACKAGE_NAME";
8165    field public static final String EXTRA_RESULT_CODE = "android.media.tv.extra.RESULT_CODE";
8166    field public static final String METHOD_ADD_COLUMN = "add_column";
8167    field public static final String METHOD_BLOCK_PACKAGE = "block_package";
8168    field public static final String METHOD_GET_BLOCKED_PACKAGES = "get_blocked_packages";
8169    field public static final String METHOD_GET_COLUMNS = "get_columns";
8170    field public static final String METHOD_UNBLOCK_PACKAGE = "unblock_package";
8171    field public static final int RESULT_ERROR_INVALID_ARGUMENT = 2; // 0x2
8172    field public static final int RESULT_ERROR_IO = 1; // 0x1
8173    field public static final int RESULT_OK = 0; // 0x0
8174  }
8175
8176  public static final class TvContract.WatchedPrograms implements android.media.tv.TvContract.BaseTvColumns {
8177    field public static final String COLUMN_CHANNEL_ID = "channel_id";
8178    field public static final String COLUMN_DESCRIPTION = "description";
8179    field public static final String COLUMN_END_TIME_UTC_MILLIS = "end_time_utc_millis";
8180    field public static final String COLUMN_INTERNAL_SESSION_TOKEN = "session_token";
8181    field public static final String COLUMN_INTERNAL_TUNE_PARAMS = "tune_params";
8182    field public static final String COLUMN_START_TIME_UTC_MILLIS = "start_time_utc_millis";
8183    field public static final String COLUMN_TITLE = "title";
8184    field public static final String COLUMN_WATCH_END_TIME_UTC_MILLIS = "watch_end_time_utc_millis";
8185    field public static final String COLUMN_WATCH_START_TIME_UTC_MILLIS = "watch_start_time_utc_millis";
8186    field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/watched_program";
8187    field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/watched_program";
8188    field public static final android.net.Uri CONTENT_URI;
8189  }
8190
8191  public final class TvInputHardwareInfo implements android.os.Parcelable {
8192    method public int describeContents();
8193    method public String getAudioAddress();
8194    method public int getAudioType();
8195    method public int getCableConnectionStatus();
8196    method public int getDeviceId();
8197    method public int getHdmiPortId();
8198    method public int getType();
8199    method public void readFromParcel(android.os.Parcel);
8200    method public void writeToParcel(android.os.Parcel, int);
8201    field public static final int CABLE_CONNECTION_STATUS_CONNECTED = 1; // 0x1
8202    field public static final int CABLE_CONNECTION_STATUS_DISCONNECTED = 2; // 0x2
8203    field public static final int CABLE_CONNECTION_STATUS_UNKNOWN = 0; // 0x0
8204    field @NonNull public static final android.os.Parcelable.Creator<android.media.tv.TvInputHardwareInfo> CREATOR;
8205    field public static final int TV_INPUT_TYPE_COMPONENT = 6; // 0x6
8206    field public static final int TV_INPUT_TYPE_COMPOSITE = 3; // 0x3
8207    field public static final int TV_INPUT_TYPE_DISPLAY_PORT = 10; // 0xa
8208    field public static final int TV_INPUT_TYPE_DVI = 8; // 0x8
8209    field public static final int TV_INPUT_TYPE_HDMI = 9; // 0x9
8210    field public static final int TV_INPUT_TYPE_OTHER_HARDWARE = 1; // 0x1
8211    field public static final int TV_INPUT_TYPE_SCART = 5; // 0x5
8212    field public static final int TV_INPUT_TYPE_SVIDEO = 4; // 0x4
8213    field public static final int TV_INPUT_TYPE_TUNER = 2; // 0x2
8214    field public static final int TV_INPUT_TYPE_VGA = 7; // 0x7
8215  }
8216
8217  public static final class TvInputHardwareInfo.Builder {
8218    ctor public TvInputHardwareInfo.Builder();
8219    method public android.media.tv.TvInputHardwareInfo.Builder audioAddress(String);
8220    method public android.media.tv.TvInputHardwareInfo.Builder audioType(int);
8221    method public android.media.tv.TvInputHardwareInfo build();
8222    method public android.media.tv.TvInputHardwareInfo.Builder cableConnectionStatus(int);
8223    method public android.media.tv.TvInputHardwareInfo.Builder deviceId(int);
8224    method public android.media.tv.TvInputHardwareInfo.Builder hdmiPortId(int);
8225    method public android.media.tv.TvInputHardwareInfo.Builder type(int);
8226  }
8227
8228  public final class TvInputInfo implements android.os.Parcelable {
8229    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;
8230    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;
8231    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;
8232    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;
8233    method public android.hardware.hdmi.HdmiDeviceInfo getHdmiDeviceInfo();
8234    method public boolean isConnectedToHdmiSwitch();
8235    method public boolean isHardwareInput();
8236    method public android.graphics.drawable.Drawable loadIcon(@NonNull android.content.Context, int);
8237  }
8238
8239  public static final class TvInputInfo.Builder {
8240    method public android.media.tv.TvInputInfo.Builder setHdmiDeviceInfo(android.hardware.hdmi.HdmiDeviceInfo);
8241    method public android.media.tv.TvInputInfo.Builder setIcon(android.graphics.drawable.Icon);
8242    method public android.media.tv.TvInputInfo.Builder setIcon(android.graphics.drawable.Icon, int);
8243    method public android.media.tv.TvInputInfo.Builder setLabel(CharSequence);
8244    method public android.media.tv.TvInputInfo.Builder setLabel(@StringRes int);
8245    method public android.media.tv.TvInputInfo.Builder setParentId(String);
8246    method public android.media.tv.TvInputInfo.Builder setTvInputHardwareInfo(android.media.tv.TvInputHardwareInfo);
8247  }
8248
8249  public static final class TvInputInfo.TvInputSettings {
8250    method public static java.util.Map<java.lang.String,java.lang.String> getCustomLabels(android.content.Context, int);
8251    method public static java.util.Set<java.lang.String> getHiddenTvInputIds(android.content.Context, int);
8252    method public static void putCustomLabels(android.content.Context, java.util.Map<java.lang.String,java.lang.String>, int);
8253    method public static void putHiddenTvInputs(android.content.Context, java.util.Set<java.lang.String>, int);
8254  }
8255
8256  public final class TvInputManager {
8257    method @RequiresPermission(android.Manifest.permission.TV_INPUT_HARDWARE) public android.media.tv.TvInputManager.Hardware acquireTvInputHardware(int, @NonNull android.media.tv.TvInputInfo, @NonNull android.media.tv.TvInputManager.HardwareCallback);
8258    method @Nullable @RequiresPermission(android.Manifest.permission.TV_INPUT_HARDWARE) public android.media.tv.TvInputManager.Hardware acquireTvInputHardware(int, @NonNull android.media.tv.TvInputInfo, @Nullable String, int, @NonNull java.util.concurrent.Executor, @NonNull android.media.tv.TvInputManager.HardwareCallback);
8259    method @RequiresPermission(android.Manifest.permission.MODIFY_PARENTAL_CONTROLS) public void addBlockedRating(@NonNull android.media.tv.TvContentRating);
8260    method @RequiresPermission(android.Manifest.permission.CAPTURE_TV_INPUT) public boolean captureFrame(String, android.view.Surface, android.media.tv.TvStreamConfig);
8261    method @NonNull @RequiresPermission(android.Manifest.permission.TIS_EXTENSION_INTERFACE) public java.util.List<java.lang.String> getAvailableExtensionInterfaceNames(@NonNull String);
8262    method @RequiresPermission(android.Manifest.permission.CAPTURE_TV_INPUT) public java.util.List<android.media.tv.TvStreamConfig> getAvailableTvStreamConfigList(String);
8263    method @RequiresPermission("android.permission.TUNER_RESOURCE_ACCESS") public int getClientPid(@NonNull String);
8264    method @RequiresPermission("android.permission.TUNER_RESOURCE_ACCESS") public int getClientPriority(int, @NonNull String);
8265    method @RequiresPermission("android.permission.TUNER_RESOURCE_ACCESS") public int getClientPriority(int);
8266    method @FlaggedApi("android.media.tv.flags.kids_mode_tvdb_sharing") @RequiresPermission(android.Manifest.permission.SINGLE_USER_TIS_ACCESS) public int getClientUserId(@NonNull String);
8267    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_TUNED_INFO) public java.util.List<android.media.tv.TunedInfo> getCurrentTunedInfos();
8268    method @NonNull @RequiresPermission("android.permission.DVB_DEVICE") public java.util.List<android.media.tv.DvbDeviceInfo> getDvbDeviceList();
8269    method @Nullable @RequiresPermission(android.Manifest.permission.TIS_EXTENSION_INTERFACE) public android.os.IBinder getExtensionInterface(@NonNull String, @NonNull String);
8270    method @RequiresPermission(android.Manifest.permission.TV_INPUT_HARDWARE) public java.util.List<android.media.tv.TvInputHardwareInfo> getHardwareList();
8271    method @RequiresPermission(android.Manifest.permission.READ_CONTENT_RATING_SYSTEMS) public java.util.List<android.media.tv.TvContentRatingSystemInfo> getTvContentRatingSystemList();
8272    method @RequiresPermission(android.Manifest.permission.CAPTURE_TV_INPUT) public boolean isSingleSessionActive();
8273    method @RequiresPermission(android.Manifest.permission.NOTIFY_TV_INPUTS) public void notifyPreviewProgramAddedToWatchNext(String, long, long);
8274    method @RequiresPermission(android.Manifest.permission.NOTIFY_TV_INPUTS) public void notifyPreviewProgramBrowsableDisabled(String, long);
8275    method @RequiresPermission(android.Manifest.permission.NOTIFY_TV_INPUTS) public void notifyWatchNextProgramBrowsableDisabled(String, long);
8276    method @Nullable @RequiresPermission("android.permission.DVB_DEVICE") public android.os.ParcelFileDescriptor openDvbDevice(@NonNull android.media.tv.DvbDeviceInfo, int);
8277    method @RequiresPermission(android.Manifest.permission.TV_INPUT_HARDWARE) public void releaseTvInputHardware(int, android.media.tv.TvInputManager.Hardware);
8278    method @RequiresPermission(android.Manifest.permission.MODIFY_PARENTAL_CONTROLS) public void removeBlockedRating(@NonNull android.media.tv.TvContentRating);
8279    method @RequiresPermission(android.Manifest.permission.MODIFY_PARENTAL_CONTROLS) public void setParentalControlsEnabled(boolean);
8280  }
8281
8282  public static final class TvInputManager.Hardware {
8283    method public void overrideAudioSink(int, String, int, int, int);
8284    method public void overrideAudioSink(@NonNull android.media.AudioDeviceInfo, @IntRange(from=0) int, int, int);
8285    method public void setStreamVolume(float);
8286    method public boolean setSurface(android.view.Surface, android.media.tv.TvStreamConfig);
8287  }
8288
8289  public abstract static class TvInputManager.HardwareCallback {
8290    ctor public TvInputManager.HardwareCallback();
8291    method public abstract void onReleased();
8292    method public abstract void onStreamConfigChanged(android.media.tv.TvStreamConfig[]);
8293  }
8294
8295  public abstract static class TvInputManager.TvInputCallback {
8296    method @RequiresPermission(android.Manifest.permission.ACCESS_TUNED_INFO) public void onCurrentTunedInfosUpdated(@NonNull java.util.List<android.media.tv.TunedInfo>);
8297  }
8298
8299  public abstract class TvInputService extends android.app.Service {
8300    method @Nullable public android.os.IBinder createExtension();
8301    method @NonNull public java.util.List<java.lang.String> getAvailableExtensionInterfaceNames();
8302    method @Nullable public android.os.IBinder getExtensionInterface(@NonNull String);
8303    method @Nullable public String getExtensionInterfacePermission(@NonNull String);
8304    method @Nullable public android.media.tv.TvInputInfo onHardwareAdded(android.media.tv.TvInputHardwareInfo);
8305    method @Nullable public String onHardwareRemoved(android.media.tv.TvInputHardwareInfo);
8306    method @Nullable public android.media.tv.TvInputInfo onHdmiDeviceAdded(android.hardware.hdmi.HdmiDeviceInfo);
8307    method @Nullable public String onHdmiDeviceRemoved(android.hardware.hdmi.HdmiDeviceInfo);
8308    method public void onHdmiDeviceUpdated(@NonNull android.hardware.hdmi.HdmiDeviceInfo);
8309  }
8310
8311  public abstract static class TvInputService.RecordingSession {
8312    method public void notifySessionEvent(@NonNull String, android.os.Bundle);
8313  }
8314
8315  public abstract static class TvInputService.Session implements android.view.KeyEvent.Callback {
8316    method public void notifySessionEvent(@NonNull String, android.os.Bundle);
8317    method public void onSetMain(boolean);
8318  }
8319
8320  @FlaggedApi("android.media.tv.flags.tif_extension_standardization") public final class TvInputServiceExtensionManager {
8321    method @RequiresPermission(android.Manifest.permission.TV_INPUT_HARDWARE) public int registerExtensionIBinder(@NonNull String, @NonNull android.os.IBinder);
8322    field public static final String IANALOG_ATTRIBUTE_INTERFACE = "android.media.tv.extension.analog.IAnalogAttributeInterface";
8323    field public static final String IANALOG_AUDIO_INFO = "android.media.tv.extension.signal.IAnalogAudioInfo";
8324    field public static final String IAUDIO_SIGNAL_INFO = "android.media.tv.extension.signal.IAudioSignalInfo";
8325    field public static final String IAUDIO_SIGNAL_INFO_LISTENER = "android.media.tv.extension.signal.IAudioSignalInfoListener";
8326    field public static final String IBROADCAST_TIME = "android.media.tv.extension.time.IBroadcastTime";
8327    field public static final String ICAM_APP_INFO_LISTENER = "android.media.tv.extension.cam.ICamAppInfoListener";
8328    field public static final String ICAM_APP_INFO_SERVICE = "android.media.tv.extension.cam.ICamAppInfoService";
8329    field public static final String ICAM_DRM_INFO_LISTENER = "android.media.tv.extension.cam.ICamDrmInfoListener";
8330    field public static final String ICAM_HOST_CONTROL_ASK_RELEASE_REPLY_CALLBACK = "android.media.tv.extension.cam.ICamHostControlAskReleaseReplyCallback";
8331    field public static final String ICAM_HOST_CONTROL_INFO_LISTENER = "android.media.tv.extension.cam.ICamHostControlInfoListener";
8332    field public static final String ICAM_HOST_CONTROL_SERVICE = "android.media.tv.extension.cam.ICamHostControlService";
8333    field public static final String ICAM_HOST_CONTROL_TUNE_QUIETLY_FLAG = "android.media.tv.extension.cam.ICamHostControlTuneQuietlyFlag";
8334    field public static final String ICAM_HOST_CONTROL_TUNE_QUIETLY_FLAG_LISTENER = "android.media.tv.extension.cam.ICamHostControlTuneQuietlyFlagListener";
8335    field public static final String ICAM_INFO_LISTENER = "android.media.tv.extension.cam.ICamInfoListener";
8336    field public static final String ICAM_MONITORING_SERVICE = "android.media.tv.extension.cam.ICamMonitoringService";
8337    field public static final String ICAM_PIN_CAPABILITY_LISTENER = "android.media.tv.extension.cam.ICamPinCapabilityListener";
8338    field public static final String ICAM_PIN_SERVICE = "android.media.tv.extension.cam.ICamPinService";
8339    field public static final String ICAM_PIN_STATUS_LISTENER = "android.media.tv.extension.cam.ICamPinStatusListener";
8340    field public static final String ICAM_PROFILE_INTERFACE = "android.media.tv.extension.cam.ICamProfileInterface";
8341    field public static final String ICHANNEL_LIST_TRANSFER = "android.media.tv.extension.servicedb.IChannelListTransfer";
8342    field public static final String ICHANNEL_TUNED_INTERFACE = "android.media.tv.extension.tune.IChannelTunedInterface";
8343    field public static final String ICHANNEL_TUNED_LISTENER = "android.media.tv.extension.tune.IChannelTunedListener";
8344    field public static final String ICI_OPERATOR_INTERFACE = "android.media.tv.extension.cam.ICiOperatorInterface";
8345    field public static final String ICI_OPERATOR_LISTENER = "android.media.tv.extension.cam.ICiOperatorListener";
8346    field public static final String ICLIENT_TOKEN = "android.media.tv.extension.clienttoken.IClientToken";
8347    field public static final String ICONTENT_CONTROL_SERVICE = "android.media.tv.extension.cam.IContentControlService";
8348    field public static final String IDATA_SERVICE_SIGNAL_INFO = "android.media.tv.extension.teletext.IDataServiceSignalInfo";
8349    field public static final String IDATA_SERVICE_SIGNAL_INFO_LISTENER = "android.media.tv.extension.teletext.IDataServiceSignalInfoListener";
8350    field public static final String IDELETE_RECORDED_CONTENTS_CALLBACK = "android.media.tv.extension.pvr.IDeleteRecordedContentsCallback";
8351    field public static final String IDOWNLOADABLE_RATING_TABLE_MONITOR = "android.media.tv.extension.rating.IDownloadableRatingTableMonitor";
8352    field public static final String IENTER_MENU_ERROR_CALLBACK = "android.media.tv.extension.cam.IEnterMenuErrorCallback";
8353    field public static final String IEVENT_DOWNLOAD = "android.media.tv.extension.event.IEventDownload";
8354    field public static final String IEVENT_DOWNLOAD_LISTENER = "android.media.tv.extension.event.IEventDownloadListener";
8355    field public static final String IEVENT_DOWNLOAD_SESSION = "android.media.tv.extension.event.IEventDownloadSession";
8356    field public static final String IEVENT_MONITOR = "android.media.tv.extension.event.IEventMonitor";
8357    field public static final String IEVENT_MONITOR_LISTENER = "android.media.tv.extension.event.IEventMonitorListener";
8358    field public static final String IFAVORITE_NETWORK = "android.media.tv.extension.scan.IFavoriteNetwork";
8359    field public static final String IFAVORITE_NETWORK_LISTENER = "android.media.tv.extension.scan.IFavoriteNetworkListener";
8360    field public static final String IGET_INFO_RECORDED_CONTENTS_CALLBACK = "android.media.tv.extension.pvr.IGetInfoRecordedContentsCallback";
8361    field public static final String IHDMI_SIGNAL_INFO_LISTENER = "android.media.tv.extension.signal.IHdmiSignalInfoListener";
8362    field public static final String IHDMI_SIGNAL_INTERFACE = "android.media.tv.extension.signal.IHdmiSignalInterface";
8363    field public static final String IHDPLUS_INFO = "android.media.tv.extension.scan.IHDPlusInfo";
8364    field public static final String ILCNV2_CHANNEL_LIST = "android.media.tv.extension.scan.ILcnV2ChannelList";
8365    field public static final String ILCNV2_CHANNEL_LIST_LISTENER = "android.media.tv.extension.scan.ILcnV2ChannelListListener";
8366    field public static final String ILCN_CONFLICT = "android.media.tv.extension.scan.ILcnConflict";
8367    field public static final String ILCN_CONFLICT_LISTENER = "android.media.tv.extension.scan.ILcnConflictListener";
8368    field public static final String IMMI_INTERFACE = "android.media.tv.extension.cam.IMmiInterface";
8369    field public static final String IMMI_SESSION = "android.media.tv.extension.cam.IMmiSession";
8370    field public static final String IMMI_STATUS_CALLBACK = "android.media.tv.extension.cam.IMmiStatusCallback";
8371    field public static final String IMUX_TUNE = "android.media.tv.extension.tune.IMuxTune";
8372    field public static final String IMUX_TUNE_SESSION = "android.media.tv.extension.tune.IMuxTuneSession";
8373    field public static final String IOAD_UPDATE_INTERFACE = "android.media.tv.extension.oad.IOadUpdateInterface";
8374    field public static final String IOPERATOR_DETECTION = "android.media.tv.extension.scan.IOperatorDetection";
8375    field public static final String IOPERATOR_DETECTION_LISTENER = "android.media.tv.extension.scan.IOperatorDetectionListener";
8376    field public static final String IPMT_RATING_INTERFACE = "android.media.tv.extension.rating.IPmtRatingInterface";
8377    field public static final String IPMT_RATING_LISTENER = "android.media.tv.extension.rating.IPmtRatingListener";
8378    field public static final String IPROGRAM_INFO = "android.media.tv.extension.rating.IProgramInfo";
8379    field public static final String IPROGRAM_INFO_LISTENER = "android.media.tv.extension.rating.IProgramInfoListener";
8380    field public static final String IRATING_INTERFACE = "android.media.tv.extension.rating.IRatingInterface";
8381    field public static final String IRECORDED_CONTENTS = "android.media.tv.extension.pvr.IRecordedContents";
8382    field public static final String IREGION_CHANNEL_LIST = "android.media.tv.extension.scan.IRegionChannelList";
8383    field public static final String IREGION_CHANNEL_LIST_LISTENER = "android.media.tv.extension.scan.IRegionChannelListListener";
8384    field public static final String ISCAN_BACKGROUND_SERVICE_UPDATE = "android.media.tv.extension.scanbsu.IScanBackgroundServiceUpdate";
8385    field public static final String ISCAN_BACKGROUND_SERVICE_UPDATE_LISTENER = "android.media.tv.extension.scanbsu.IScanBackgroundServiceUpdateListener";
8386    field public static final String ISCAN_INTERFACE = "android.media.tv.extension.scan.IScanInterface";
8387    field public static final String ISCAN_LISTENER = "android.media.tv.extension.scan.IScanListener";
8388    field public static final String ISCAN_SAT_SEARCH = "android.media.tv.extension.scan.IScanSatSearch";
8389    field public static final String ISCAN_SESSION = "android.media.tv.extension.scan.IScanSession";
8390    field public static final String ISCREEN_MODE_SETTINGS = "android.media.tv.extension.screenmode.IScreenModeSettings";
8391    field public static final String ISERVICE_LIST = "android.media.tv.extension.servicedb.IServiceList";
8392    field public static final String ISERVICE_LIST_EDIT = "android.media.tv.extension.servicedb.IServiceListEdit";
8393    field public static final String ISERVICE_LIST_EDIT_LISTENER = "android.media.tv.extension.servicedb.IServiceListEditListener";
8394    field public static final String ISERVICE_LIST_EXPORT_LISTENER = "android.media.tv.extension.servicedb.IServiceListExportListener";
8395    field public static final String ISERVICE_LIST_EXPORT_SESSION = "android.media.tv.extension.servicedb.IServiceListExportSession";
8396    field public static final String ISERVICE_LIST_IMPORT_LISTENER = "android.media.tv.extension.servicedb.IServiceListImportListener";
8397    field public static final String ISERVICE_LIST_IMPORT_SESSION = "android.media.tv.extension.servicedb.IServiceListImportSession";
8398    field public static final String ISERVICE_LIST_SET_CHANNEL_LIST_LISTENER = "android.media.tv.extension.servicedb.IServiceListSetChannelListListener";
8399    field public static final String ISERVICE_LIST_SET_CHANNEL_LIST_SESSION = "android.media.tv.extension.servicedb.IServiceListSetChannelListSession";
8400    field public static final String ISERVICE_LIST_TRANSFER_INTERFACE = "android.media.tv.extension.servicedb.IServiceListTransferInterface";
8401    field public static final String ITARGET_REGION = "android.media.tv.extension.scan.ITargetRegion";
8402    field public static final String ITARGET_REGION_LISTENER = "android.media.tv.extension.scan.ITargetRegionListener";
8403    field public static final String ITELETEXT_PAGE_SUB_CODE = "android.media.tv.extension.teletext.ITeletextPageSubCode";
8404    field public static final String ITKGS_INFO = "android.media.tv.extension.scan.ITkgsInfo";
8405    field public static final String ITKGS_INFO_LISTENER = "android.media.tv.extension.scan.ITkgsInfoListener";
8406    field public static final String ITUNER_FRONTEND_SIGNAL_INFO_INTERFACE = "android.media.tv.extension.signal.ITunerFrontendSignalInfoInterface";
8407    field public static final String ITUNER_FRONTEND_SIGNAL_INFO_LISTENER = "android.media.tv.extension.signal.ITunerFrontendSignalInfoListener";
8408    field public static final String IVBI_RATING_INTERFACE = "android.media.tv.extension.rating.IVbiRatingInterface";
8409    field public static final String IVBI_RATING_LISTENER = "android.media.tv.extension.rating.IVbiRatingListener";
8410    field public static final String IVIDEO_SIGNAL_INFO = "android.media.tv.extension.signal.IVideoSignalInfo";
8411    field public static final String IVIDEO_SIGNAL_INFO_LISTENER = "android.media.tv.extension.signal.IVideoSignalInfoListener";
8412    field public static final int REGISTER_FAIL_IMPLEMENTATION_NOT_STANDARDIZED = 2; // 0x2
8413    field public static final int REGISTER_FAIL_NAME_NOT_STANDARDIZED = 1; // 0x1
8414    field public static final int REGISTER_FAIL_REMOTE_EXCEPTION = 3; // 0x3
8415    field public static final int REGISTER_SUCCESS = 0; // 0x0
8416  }
8417
8418  public abstract static class TvRecordingClient.RecordingCallback {
8419    method public void onEvent(String, String, android.os.Bundle);
8420  }
8421
8422  public class TvStreamConfig implements android.os.Parcelable {
8423    method public int describeContents();
8424    method public int getGeneration();
8425    method public int getMaxHeight();
8426    method public int getMaxWidth();
8427    method public int getStreamId();
8428    method public int getType();
8429    method public void writeToParcel(android.os.Parcel, int);
8430    field @NonNull public static final android.os.Parcelable.Creator<android.media.tv.TvStreamConfig> CREATOR;
8431    field public static final int STREAM_TYPE_BUFFER_PRODUCER = 2; // 0x2
8432    field public static final int STREAM_TYPE_INDEPENDENT_VIDEO_SOURCE = 1; // 0x1
8433  }
8434
8435  public static final class TvStreamConfig.Builder {
8436    ctor public TvStreamConfig.Builder();
8437    method public android.media.tv.TvStreamConfig build();
8438    method public android.media.tv.TvStreamConfig.Builder generation(int);
8439    method public android.media.tv.TvStreamConfig.Builder maxHeight(int);
8440    method public android.media.tv.TvStreamConfig.Builder maxWidth(int);
8441    method public android.media.tv.TvStreamConfig.Builder streamId(int);
8442    method public android.media.tv.TvStreamConfig.Builder type(int);
8443  }
8444
8445  public class TvView extends android.view.ViewGroup {
8446    method @RequiresPermission("android.permission.CHANGE_HDMI_CEC_ACTIVE_SOURCE") public void setMain();
8447    method @RequiresPermission(android.Manifest.permission.MODIFY_PARENTAL_CONTROLS) public void unblockContent(android.media.tv.TvContentRating);
8448  }
8449
8450  public abstract static class TvView.TvInputCallback {
8451    method public void onEvent(String, String, android.os.Bundle);
8452  }
8453
8454}
8455
8456package android.media.tv.tuner {
8457
8458  public class DemuxCapabilities {
8459    method public int getAudioFilterCount();
8460    method public int getDemuxCount();
8461    method public int getFilterCapabilities();
8462    method @NonNull public int[] getFilterTypeCapabilityList();
8463    method @NonNull @Size(5) public int[] getLinkCapabilities();
8464    method public int getPcrFilterCount();
8465    method public int getPesFilterCount();
8466    method public int getPlaybackCount();
8467    method public int getRecordCount();
8468    method public int getSectionFilterCount();
8469    method public long getSectionFilterLength();
8470    method public int getTsFilterCount();
8471    method public int getVideoFilterCount();
8472    method public boolean isTimeFilterSupported();
8473  }
8474
8475  public class DemuxInfo {
8476    ctor public DemuxInfo(int);
8477    method public int getFilterTypes();
8478    method public void setFilterTypes(int);
8479  }
8480
8481  public class Descrambler implements java.lang.AutoCloseable {
8482    method public int addPid(int, int, @Nullable android.media.tv.tuner.filter.Filter);
8483    method public void close();
8484    method public static boolean isValidKeyToken(@NonNull byte[]);
8485    method public int removePid(int, int, @Nullable android.media.tv.tuner.filter.Filter);
8486    method public int setKeyToken(@NonNull byte[]);
8487    field public static final int PID_TYPE_MMTP = 2; // 0x2
8488    field public static final int PID_TYPE_T = 1; // 0x1
8489  }
8490
8491  public class Lnb implements java.lang.AutoCloseable {
8492    method public void addCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.LnbCallback);
8493    method public void close();
8494    method public boolean removeCallback(@NonNull android.media.tv.tuner.LnbCallback);
8495    method public int sendDiseqcMessage(@NonNull byte[]);
8496    method public int setSatellitePosition(int);
8497    method public int setTone(int);
8498    method public int setVoltage(int);
8499    field public static final int EVENT_TYPE_DISEQC_RX_OVERFLOW = 0; // 0x0
8500    field public static final int EVENT_TYPE_DISEQC_RX_PARITY_ERROR = 2; // 0x2
8501    field public static final int EVENT_TYPE_DISEQC_RX_TIMEOUT = 1; // 0x1
8502    field public static final int EVENT_TYPE_LNB_OVERLOAD = 3; // 0x3
8503    field public static final int POSITION_A = 1; // 0x1
8504    field public static final int POSITION_B = 2; // 0x2
8505    field public static final int POSITION_UNDEFINED = 0; // 0x0
8506    field public static final int TONE_CONTINUOUS = 1; // 0x1
8507    field public static final int TONE_NONE = 0; // 0x0
8508    field public static final int VOLTAGE_11V = 2; // 0x2
8509    field public static final int VOLTAGE_12V = 3; // 0x3
8510    field public static final int VOLTAGE_13V = 4; // 0x4
8511    field public static final int VOLTAGE_14V = 5; // 0x5
8512    field public static final int VOLTAGE_15V = 6; // 0x6
8513    field public static final int VOLTAGE_18V = 7; // 0x7
8514    field public static final int VOLTAGE_19V = 8; // 0x8
8515    field public static final int VOLTAGE_5V = 1; // 0x1
8516    field public static final int VOLTAGE_NONE = 0; // 0x0
8517  }
8518
8519  public interface LnbCallback {
8520    method public void onDiseqcMessage(@NonNull byte[]);
8521    method public void onEvent(int);
8522  }
8523
8524  public class Tuner implements java.lang.AutoCloseable {
8525    ctor @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public Tuner(@NonNull android.content.Context, @Nullable String, int);
8526    method public int applyFrontend(@NonNull android.media.tv.tuner.frontend.FrontendInfo);
8527    method @FlaggedApi("android.media.tv.flags.tuner_w_apis") @RequiresPermission(allOf={"android.permission.TUNER_RESOURCE_ACCESS", "android.permission.ACCESS_TV_TUNER"}) public int applyFrontendByType(int);
8528    method public int cancelScanning();
8529    method public int cancelTuning();
8530    method public void clearOnTuneEventListener();
8531    method public void clearResourceLostListener();
8532    method public void close();
8533    method public void closeFrontend();
8534    method public int configureDemux(@Nullable android.media.tv.tuner.DemuxInfo);
8535    method public int connectCiCam(int);
8536    method public int connectFrontendToCiCam(int);
8537    method public int disconnectCiCam();
8538    method public int disconnectFrontendToCiCam(int);
8539    method public int getAvSyncHwId(@NonNull android.media.tv.tuner.filter.Filter);
8540    method public long getAvSyncTime(int);
8541    method @Nullable public java.util.List<android.media.tv.tuner.frontend.FrontendInfo> getAvailableFrontendInfos();
8542    method @Nullable public android.media.tv.tuner.DemuxInfo getCurrentDemuxInfo();
8543    method @Nullable public String getCurrentFrontendHardwareInfo();
8544    method @Nullable public android.media.tv.tuner.DemuxCapabilities getDemuxCapabilities();
8545    method @Nullable public android.media.tv.tuner.frontend.FrontendInfo getFrontendInfo();
8546    method @Nullable public android.media.tv.tuner.frontend.FrontendStatus getFrontendStatus(@NonNull int[]);
8547    method @NonNull public java.util.List<android.media.tv.tuner.frontend.FrontendStatusReadiness> getFrontendStatusReadiness(@NonNull int[]);
8548    method @IntRange(from=0xffffffff) public int getMaxNumberOfFrontends(int);
8549    method @RequiresPermission("android.permission.TUNER_RESOURCE_ACCESS") public boolean hasUnusedFrontend(int);
8550    method public boolean isLnaSupported();
8551    method public boolean isLowestPriority(int);
8552    method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_DESCRAMBLER) public android.media.tv.tuner.Descrambler openDescrambler();
8553    method @Nullable public android.media.tv.tuner.dvr.DvrPlayback openDvrPlayback(long, @NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.dvr.OnPlaybackStatusChangedListener);
8554    method @Nullable public android.media.tv.tuner.dvr.DvrRecorder openDvrRecorder(long, @NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.dvr.OnRecordStatusChangedListener);
8555    method @Nullable public android.media.tv.tuner.filter.Filter openFilter(int, int, long, @Nullable java.util.concurrent.Executor, @Nullable android.media.tv.tuner.filter.FilterCallback);
8556    method @Nullable public android.media.tv.tuner.Lnb openLnb(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.LnbCallback);
8557    method @Nullable public android.media.tv.tuner.Lnb openLnbByName(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.LnbCallback);
8558    method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_SHARED_FILTER) public static android.media.tv.tuner.filter.SharedFilter openSharedFilter(@NonNull android.content.Context, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.filter.SharedFilterCallback);
8559    method @Nullable public android.media.tv.tuner.filter.TimeFilter openTimeFilter();
8560    method public int removeOutputPid(@IntRange(from=0) int);
8561    method public int scan(@NonNull android.media.tv.tuner.frontend.FrontendSettings, int, @NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.frontend.ScanCallback);
8562    method public int setLnaEnabled(boolean);
8563    method public int setMaxNumberOfFrontends(int, @IntRange(from=0) int);
8564    method public void setOnTuneEventListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.frontend.OnTuneEventListener);
8565    method public void setResourceLostListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.Tuner.OnResourceLostListener);
8566    method @FlaggedApi("android.media.tv.flags.set_resource_holder_retain") @RequiresPermission("android.permission.TUNER_RESOURCE_ACCESS") public void setResourceOwnershipRetention(boolean);
8567    method public void shareFrontendFromTuner(@NonNull android.media.tv.tuner.Tuner);
8568    method public int transferOwner(@NonNull android.media.tv.tuner.Tuner);
8569    method public int tune(@NonNull android.media.tv.tuner.frontend.FrontendSettings);
8570    method @RequiresPermission("android.permission.TUNER_RESOURCE_ACCESS") public void updateResourcePriority(int, int);
8571    field public static final int INVALID_AV_SYNC_ID = -1; // 0xffffffff
8572    field public static final int INVALID_FILTER_ID = -1; // 0xffffffff
8573    field public static final long INVALID_FILTER_ID_LONG = -1L; // 0xffffffffffffffffL
8574    field public static final int INVALID_FIRST_MACROBLOCK_IN_SLICE = -1; // 0xffffffff
8575    field public static final int INVALID_FRONTEND_ID = -1; // 0xffffffff
8576    field public static final int INVALID_FRONTEND_SETTING_FREQUENCY = -1; // 0xffffffff
8577    field public static final int INVALID_LTS_ID = -1; // 0xffffffff
8578    field public static final int INVALID_MMTP_RECORD_EVENT_MPT_SEQUENCE_NUM = -1; // 0xffffffff
8579    field public static final int INVALID_STREAM_ID = 65535; // 0xffff
8580    field public static final long INVALID_TIMESTAMP = -1L; // 0xffffffffffffffffL
8581    field public static final int INVALID_TS_PID = 65535; // 0xffff
8582    field public static final int RESULT_INVALID_ARGUMENT = 4; // 0x4
8583    field public static final int RESULT_INVALID_STATE = 3; // 0x3
8584    field public static final int RESULT_NOT_INITIALIZED = 2; // 0x2
8585    field public static final int RESULT_OUT_OF_MEMORY = 5; // 0x5
8586    field public static final int RESULT_SUCCESS = 0; // 0x0
8587    field public static final int RESULT_UNAVAILABLE = 1; // 0x1
8588    field public static final int RESULT_UNKNOWN_ERROR = 6; // 0x6
8589    field public static final int SCAN_TYPE_AUTO = 1; // 0x1
8590    field public static final int SCAN_TYPE_BLIND = 2; // 0x2
8591    field public static final int SCAN_TYPE_UNDEFINED = 0; // 0x0
8592    field @NonNull public static final byte[] VOID_KEYTOKEN;
8593  }
8594
8595  public static interface Tuner.OnResourceLostListener {
8596    method public void onResourceLost(@NonNull android.media.tv.tuner.Tuner);
8597  }
8598
8599  public final class TunerVersionChecker {
8600    method public static int getTunerVersion();
8601    field public static final int TUNER_VERSION_1_0 = 65536; // 0x10000
8602    field public static final int TUNER_VERSION_1_1 = 65537; // 0x10001
8603    field public static final int TUNER_VERSION_2_0 = 131072; // 0x20000
8604    field public static final int TUNER_VERSION_3_0 = 196608; // 0x30000
8605    field @FlaggedApi("android.media.tv.flags.tuner_w_apis") public static final int TUNER_VERSION_4_0 = 262144; // 0x40000
8606    field public static final int TUNER_VERSION_UNKNOWN = 0; // 0x0
8607  }
8608
8609}
8610
8611package android.media.tv.tuner.dvr {
8612
8613  public class DvrPlayback implements java.lang.AutoCloseable {
8614    method @Deprecated public int attachFilter(@NonNull android.media.tv.tuner.filter.Filter);
8615    method public void close();
8616    method public int configure(@NonNull android.media.tv.tuner.dvr.DvrSettings);
8617    method @Deprecated public int detachFilter(@NonNull android.media.tv.tuner.filter.Filter);
8618    method public int flush();
8619    method public long read(long);
8620    method public long read(@NonNull byte[], long, long);
8621    method public long seek(long);
8622    method public void setFileDescriptor(@NonNull android.os.ParcelFileDescriptor);
8623    method public int setPlaybackBufferStatusCheckIntervalHint(long);
8624    method public int start();
8625    method public int stop();
8626    field public static final int PLAYBACK_STATUS_ALMOST_EMPTY = 2; // 0x2
8627    field public static final int PLAYBACK_STATUS_ALMOST_FULL = 4; // 0x4
8628    field public static final int PLAYBACK_STATUS_EMPTY = 1; // 0x1
8629    field public static final int PLAYBACK_STATUS_FULL = 8; // 0x8
8630  }
8631
8632  public class DvrRecorder implements java.lang.AutoCloseable {
8633    method public int attachFilter(@NonNull android.media.tv.tuner.filter.Filter);
8634    method public void close();
8635    method public int configure(@NonNull android.media.tv.tuner.dvr.DvrSettings);
8636    method public int detachFilter(@NonNull android.media.tv.tuner.filter.Filter);
8637    method public int flush();
8638    method public void setFileDescriptor(@NonNull android.os.ParcelFileDescriptor);
8639    method public int setRecordBufferStatusCheckIntervalHint(long);
8640    method public int start();
8641    method public int stop();
8642    method public long write(long);
8643    method public long write(@NonNull byte[], long, long);
8644  }
8645
8646  public class DvrSettings {
8647    method @NonNull public static android.media.tv.tuner.dvr.DvrSettings.Builder builder();
8648    method public int getDataFormat();
8649    method public long getHighThreshold();
8650    method public long getLowThreshold();
8651    method public long getPacketSize();
8652    method public int getStatusMask();
8653    field public static final int DATA_FORMAT_ES = 2; // 0x2
8654    field public static final int DATA_FORMAT_PES = 1; // 0x1
8655    field public static final int DATA_FORMAT_SHV_TLV = 3; // 0x3
8656    field public static final int DATA_FORMAT_TS = 0; // 0x0
8657  }
8658
8659  public static final class DvrSettings.Builder {
8660    ctor public DvrSettings.Builder();
8661    method @NonNull public android.media.tv.tuner.dvr.DvrSettings build();
8662    method @NonNull public android.media.tv.tuner.dvr.DvrSettings.Builder setDataFormat(int);
8663    method @NonNull public android.media.tv.tuner.dvr.DvrSettings.Builder setHighThreshold(long);
8664    method @NonNull public android.media.tv.tuner.dvr.DvrSettings.Builder setLowThreshold(long);
8665    method @NonNull public android.media.tv.tuner.dvr.DvrSettings.Builder setPacketSize(long);
8666    method @NonNull public android.media.tv.tuner.dvr.DvrSettings.Builder setStatusMask(int);
8667  }
8668
8669  public interface OnPlaybackStatusChangedListener {
8670    method public void onPlaybackStatusChanged(int);
8671  }
8672
8673  public interface OnRecordStatusChangedListener {
8674    method public void onRecordStatusChanged(int);
8675  }
8676
8677}
8678
8679package android.media.tv.tuner.filter {
8680
8681  public final class AlpFilterConfiguration extends android.media.tv.tuner.filter.FilterConfiguration {
8682    method @NonNull public static android.media.tv.tuner.filter.AlpFilterConfiguration.Builder builder();
8683    method public int getLengthType();
8684    method public int getPacketType();
8685    method public int getType();
8686    field public static final int LENGTH_TYPE_UNDEFINED = 0; // 0x0
8687    field public static final int LENGTH_TYPE_WITHOUT_ADDITIONAL_HEADER = 1; // 0x1
8688    field public static final int LENGTH_TYPE_WITH_ADDITIONAL_HEADER = 2; // 0x2
8689    field public static final int PACKET_TYPE_COMPRESSED = 2; // 0x2
8690    field public static final int PACKET_TYPE_EXTENSION = 6; // 0x6
8691    field public static final int PACKET_TYPE_IPV4 = 0; // 0x0
8692    field public static final int PACKET_TYPE_MPEG2_TS = 7; // 0x7
8693    field public static final int PACKET_TYPE_SIGNALING = 4; // 0x4
8694  }
8695
8696  public static final class AlpFilterConfiguration.Builder {
8697    method @NonNull public android.media.tv.tuner.filter.AlpFilterConfiguration build();
8698    method @NonNull public android.media.tv.tuner.filter.AlpFilterConfiguration.Builder setLengthType(int);
8699    method @NonNull public android.media.tv.tuner.filter.AlpFilterConfiguration.Builder setPacketType(int);
8700    method @NonNull public android.media.tv.tuner.filter.AlpFilterConfiguration.Builder setSettings(@Nullable android.media.tv.tuner.filter.Settings);
8701  }
8702
8703  public class AudioDescriptor {
8704    method public byte getAdFade();
8705    method public byte getAdGainCenter();
8706    method public byte getAdGainFront();
8707    method public byte getAdGainSurround();
8708    method public byte getAdPan();
8709    method public char getAdVersionTextTag();
8710  }
8711
8712  public class AvSettings extends android.media.tv.tuner.filter.Settings {
8713    method @NonNull public static android.media.tv.tuner.filter.AvSettings.Builder builder(int, boolean);
8714    method public int getAudioStreamType();
8715    method public int getVideoStreamType();
8716    method public boolean isPassthrough();
8717    method public boolean useSecureMemory();
8718    field public static final int AUDIO_STREAM_TYPE_AAC = 6; // 0x6
8719    field public static final int AUDIO_STREAM_TYPE_AAC_ADTS = 16; // 0x10
8720    field public static final int AUDIO_STREAM_TYPE_AAC_HE_ADTS = 18; // 0x12
8721    field public static final int AUDIO_STREAM_TYPE_AAC_HE_LATM = 19; // 0x13
8722    field public static final int AUDIO_STREAM_TYPE_AAC_LATM = 17; // 0x11
8723    field public static final int AUDIO_STREAM_TYPE_AC3 = 7; // 0x7
8724    field public static final int AUDIO_STREAM_TYPE_AC4 = 9; // 0x9
8725    field public static final int AUDIO_STREAM_TYPE_DRA = 15; // 0xf
8726    field public static final int AUDIO_STREAM_TYPE_DTS = 10; // 0xa
8727    field public static final int AUDIO_STREAM_TYPE_DTS_HD = 11; // 0xb
8728    field public static final int AUDIO_STREAM_TYPE_EAC3 = 8; // 0x8
8729    field public static final int AUDIO_STREAM_TYPE_MP3 = 2; // 0x2
8730    field public static final int AUDIO_STREAM_TYPE_MPEG1 = 3; // 0x3
8731    field public static final int AUDIO_STREAM_TYPE_MPEG2 = 4; // 0x4
8732    field public static final int AUDIO_STREAM_TYPE_MPEGH = 5; // 0x5
8733    field public static final int AUDIO_STREAM_TYPE_OPUS = 13; // 0xd
8734    field public static final int AUDIO_STREAM_TYPE_PCM = 1; // 0x1
8735    field public static final int AUDIO_STREAM_TYPE_UNDEFINED = 0; // 0x0
8736    field public static final int AUDIO_STREAM_TYPE_VORBIS = 14; // 0xe
8737    field public static final int AUDIO_STREAM_TYPE_WMA = 12; // 0xc
8738    field public static final int VIDEO_STREAM_TYPE_AV1 = 10; // 0xa
8739    field public static final int VIDEO_STREAM_TYPE_AVC = 5; // 0x5
8740    field public static final int VIDEO_STREAM_TYPE_AVS = 11; // 0xb
8741    field public static final int VIDEO_STREAM_TYPE_AVS2 = 12; // 0xc
8742    field public static final int VIDEO_STREAM_TYPE_HEVC = 6; // 0x6
8743    field public static final int VIDEO_STREAM_TYPE_MPEG1 = 2; // 0x2
8744    field public static final int VIDEO_STREAM_TYPE_MPEG2 = 3; // 0x3
8745    field public static final int VIDEO_STREAM_TYPE_MPEG4P2 = 4; // 0x4
8746    field public static final int VIDEO_STREAM_TYPE_RESERVED = 1; // 0x1
8747    field public static final int VIDEO_STREAM_TYPE_UNDEFINED = 0; // 0x0
8748    field public static final int VIDEO_STREAM_TYPE_VC1 = 7; // 0x7
8749    field public static final int VIDEO_STREAM_TYPE_VP8 = 8; // 0x8
8750    field public static final int VIDEO_STREAM_TYPE_VP9 = 9; // 0x9
8751    field public static final int VIDEO_STREAM_TYPE_VVC = 13; // 0xd
8752  }
8753
8754  public static class AvSettings.Builder {
8755    method @NonNull public android.media.tv.tuner.filter.AvSettings build();
8756    method @NonNull public android.media.tv.tuner.filter.AvSettings.Builder setAudioStreamType(int);
8757    method @NonNull public android.media.tv.tuner.filter.AvSettings.Builder setPassthrough(boolean);
8758    method @NonNull public android.media.tv.tuner.filter.AvSettings.Builder setUseSecureMemory(boolean);
8759    method @NonNull public android.media.tv.tuner.filter.AvSettings.Builder setVideoStreamType(int);
8760  }
8761
8762  public class DownloadEvent extends android.media.tv.tuner.filter.FilterEvent {
8763    method public int getDataLength();
8764    method public int getDownloadId();
8765    method public int getItemFragmentIndex();
8766    method public int getItemId();
8767    method public int getLastItemFragmentIndex();
8768    method @IntRange(from=0) public int getMpuSequenceNumber();
8769  }
8770
8771  public class DownloadSettings extends android.media.tv.tuner.filter.Settings {
8772    method @NonNull public static android.media.tv.tuner.filter.DownloadSettings.Builder builder(int);
8773    method public int getDownloadId();
8774    method public boolean useDownloadId();
8775  }
8776
8777  public static class DownloadSettings.Builder {
8778    method @NonNull public android.media.tv.tuner.filter.DownloadSettings build();
8779    method @NonNull public android.media.tv.tuner.filter.DownloadSettings.Builder setDownloadId(int);
8780    method @NonNull public android.media.tv.tuner.filter.DownloadSettings.Builder setUseDownloadId(boolean);
8781  }
8782
8783  public class Filter implements java.lang.AutoCloseable {
8784    method @Nullable public String acquireSharedFilterToken();
8785    method public void close();
8786    method public int configure(@NonNull android.media.tv.tuner.filter.FilterConfiguration);
8787    method public int delayCallbackForDurationMillis(long);
8788    method public int delayCallbackUntilBytesAccumulated(int);
8789    method public int flush();
8790    method public void freeSharedFilterToken(@NonNull String);
8791    method @Deprecated public int getId();
8792    method public long getIdLong();
8793    method public int read(@NonNull byte[], long, long);
8794    method public int setDataSource(@Nullable android.media.tv.tuner.filter.Filter);
8795    method public int setMonitorEventMask(int);
8796    method public int start();
8797    method public int stop();
8798    field public static final int MONITOR_EVENT_IP_CID_CHANGE = 2; // 0x2
8799    field public static final int MONITOR_EVENT_SCRAMBLING_STATUS = 1; // 0x1
8800    field public static final int SCRAMBLING_STATUS_NOT_SCRAMBLED = 2; // 0x2
8801    field public static final int SCRAMBLING_STATUS_SCRAMBLED = 4; // 0x4
8802    field public static final int SCRAMBLING_STATUS_UNKNOWN = 1; // 0x1
8803    field public static final int STATUS_DATA_READY = 1; // 0x1
8804    field public static final int STATUS_HIGH_WATER = 4; // 0x4
8805    field public static final int STATUS_LOW_WATER = 2; // 0x2
8806    field public static final int STATUS_NO_DATA = 16; // 0x10
8807    field public static final int STATUS_OVERFLOW = 8; // 0x8
8808    field public static final int SUBTYPE_AUDIO = 3; // 0x3
8809    field public static final int SUBTYPE_DOWNLOAD = 5; // 0x5
8810    field public static final int SUBTYPE_IP = 13; // 0xd
8811    field public static final int SUBTYPE_IP_PAYLOAD = 12; // 0xc
8812    field public static final int SUBTYPE_MMTP = 10; // 0xa
8813    field public static final int SUBTYPE_NTP = 11; // 0xb
8814    field public static final int SUBTYPE_PAYLOAD_THROUGH = 14; // 0xe
8815    field public static final int SUBTYPE_PCR = 8; // 0x8
8816    field public static final int SUBTYPE_PES = 2; // 0x2
8817    field public static final int SUBTYPE_PTP = 16; // 0x10
8818    field public static final int SUBTYPE_RECORD = 6; // 0x6
8819    field public static final int SUBTYPE_SECTION = 1; // 0x1
8820    field public static final int SUBTYPE_TEMI = 9; // 0x9
8821    field public static final int SUBTYPE_TLV = 15; // 0xf
8822    field public static final int SUBTYPE_TS = 7; // 0x7
8823    field public static final int SUBTYPE_UNDEFINED = 0; // 0x0
8824    field public static final int SUBTYPE_VIDEO = 4; // 0x4
8825    field public static final int TYPE_ALP = 16; // 0x10
8826    field public static final int TYPE_IP = 4; // 0x4
8827    field public static final int TYPE_MMTP = 2; // 0x2
8828    field public static final int TYPE_TLV = 8; // 0x8
8829    field public static final int TYPE_TS = 1; // 0x1
8830    field public static final int TYPE_UNDEFINED = 0; // 0x0
8831  }
8832
8833  public interface FilterCallback {
8834    method public void onFilterEvent(@NonNull android.media.tv.tuner.filter.Filter, @NonNull android.media.tv.tuner.filter.FilterEvent[]);
8835    method public void onFilterStatusChanged(@NonNull android.media.tv.tuner.filter.Filter, int);
8836  }
8837
8838  public abstract class FilterConfiguration {
8839    method @Nullable public android.media.tv.tuner.filter.Settings getSettings();
8840    method public abstract int getType();
8841  }
8842
8843  public abstract class FilterEvent {
8844    ctor public FilterEvent();
8845  }
8846
8847  public final class IpCidChangeEvent extends android.media.tv.tuner.filter.FilterEvent {
8848    method public int getIpCid();
8849  }
8850
8851  public final class IpFilterConfiguration extends android.media.tv.tuner.filter.FilterConfiguration {
8852    method @NonNull public static android.media.tv.tuner.filter.IpFilterConfiguration.Builder builder();
8853    method @NonNull @Size(min=4, max=16) public byte[] getDstIpAddress();
8854    method public int getDstPort();
8855    method @IntRange(from=0, to=61439) public int getIpFilterContextId();
8856    method @NonNull @Size(min=4, max=16) public byte[] getSrcIpAddress();
8857    method public int getSrcPort();
8858    method public int getType();
8859    method public boolean isPassthrough();
8860    field public static final int INVALID_IP_FILTER_CONTEXT_ID = -1; // 0xffffffff
8861  }
8862
8863  public static final class IpFilterConfiguration.Builder {
8864    method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration build();
8865    method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration.Builder setDstIpAddress(@NonNull byte[]);
8866    method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration.Builder setDstPort(int);
8867    method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration.Builder setIpFilterContextId(int);
8868    method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration.Builder setPassthrough(boolean);
8869    method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration.Builder setSettings(@Nullable android.media.tv.tuner.filter.Settings);
8870    method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration.Builder setSrcIpAddress(@NonNull byte[]);
8871    method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration.Builder setSrcPort(int);
8872  }
8873
8874  public class IpPayloadEvent extends android.media.tv.tuner.filter.FilterEvent {
8875    method public int getDataLength();
8876  }
8877
8878  public class MediaEvent extends android.media.tv.tuner.filter.FilterEvent {
8879    method protected void finalize();
8880    method public long getAudioHandle();
8881    method @NonNull public java.util.List<android.media.AudioPresentation> getAudioPresentations();
8882    method public long getAvDataId();
8883    method @FlaggedApi("android.media.tv.flags.tuner_w_apis") public int getDataGroupId();
8884    method public long getDataLength();
8885    method public long getDts();
8886    method @Nullable public android.media.tv.tuner.filter.AudioDescriptor getExtraMetaData();
8887    method @FlaggedApi("android.media.tv.flags.tuner_w_apis") @IntRange(from=0) public int getIndexInDataGroup();
8888    method @Nullable public android.media.MediaCodec.LinearBlock getLinearBlock();
8889    method @IntRange(from=0) public int getMpuSequenceNumber();
8890    method @FlaggedApi("android.media.tv.flags.tuner_w_apis") @IntRange(from=0) public int getNumDataPieces();
8891    method public long getOffset();
8892    method public long getPts();
8893    method public int getScIndexMask();
8894    method public int getStreamId();
8895    method public boolean isDtsPresent();
8896    method public boolean isPrivateData();
8897    method public boolean isPtsPresent();
8898    method public boolean isSecureMemory();
8899    method public void release();
8900  }
8901
8902  public final class MmtpFilterConfiguration extends android.media.tv.tuner.filter.FilterConfiguration {
8903    method @NonNull public static android.media.tv.tuner.filter.MmtpFilterConfiguration.Builder builder();
8904    method public int getMmtpPacketId();
8905    method public int getType();
8906  }
8907
8908  public static final class MmtpFilterConfiguration.Builder {
8909    method @NonNull public android.media.tv.tuner.filter.MmtpFilterConfiguration build();
8910    method @NonNull public android.media.tv.tuner.filter.MmtpFilterConfiguration.Builder setMmtpPacketId(int);
8911    method @NonNull public android.media.tv.tuner.filter.MmtpFilterConfiguration.Builder setSettings(@Nullable android.media.tv.tuner.filter.Settings);
8912  }
8913
8914  public class MmtpRecordEvent extends android.media.tv.tuner.filter.FilterEvent {
8915    method public long getDataLength();
8916    method public int getFirstMacroblockInSlice();
8917    method @IntRange(from=0) public int getMpuSequenceNumber();
8918    method public long getPts();
8919    method public int getScHevcIndexMask();
8920    method public int getTsIndexMask();
8921  }
8922
8923  public class PesEvent extends android.media.tv.tuner.filter.FilterEvent {
8924    method public int getDataLength();
8925    method @IntRange(from=0) public int getMpuSequenceNumber();
8926    method public int getStreamId();
8927  }
8928
8929  public class PesSettings extends android.media.tv.tuner.filter.Settings {
8930    method @NonNull public static android.media.tv.tuner.filter.PesSettings.Builder builder(int);
8931    method public int getStreamId();
8932    method public boolean isRaw();
8933  }
8934
8935  public static class PesSettings.Builder {
8936    method @NonNull public android.media.tv.tuner.filter.PesSettings build();
8937    method @NonNull public android.media.tv.tuner.filter.PesSettings.Builder setRaw(boolean);
8938    method @NonNull public android.media.tv.tuner.filter.PesSettings.Builder setStreamId(int);
8939  }
8940
8941  public class RecordSettings extends android.media.tv.tuner.filter.Settings {
8942    method @NonNull public static android.media.tv.tuner.filter.RecordSettings.Builder builder(int);
8943    method public int getScIndexMask();
8944    method public int getScIndexType();
8945    method public int getTsIndexMask();
8946    field public static final int INDEX_TYPE_NONE = 0; // 0x0
8947    field public static final int INDEX_TYPE_SC = 1; // 0x1
8948    field public static final int INDEX_TYPE_SC_AVC = 3; // 0x3
8949    field public static final int INDEX_TYPE_SC_HEVC = 2; // 0x2
8950    field public static final int INDEX_TYPE_SC_VVC = 4; // 0x4
8951    field public static final int MPT_INDEX_AUDIO = 262144; // 0x40000
8952    field public static final int MPT_INDEX_MPT = 65536; // 0x10000
8953    field public static final int MPT_INDEX_TIMESTAMP_TARGET_AUDIO = 1048576; // 0x100000
8954    field public static final int MPT_INDEX_TIMESTAMP_TARGET_VIDEO = 524288; // 0x80000
8955    field public static final int MPT_INDEX_VIDEO = 131072; // 0x20000
8956    field public static final int SC_HEVC_INDEX_AUD = 2; // 0x2
8957    field public static final int SC_HEVC_INDEX_SLICE_BLA_N_LP = 16; // 0x10
8958    field public static final int SC_HEVC_INDEX_SLICE_BLA_W_RADL = 8; // 0x8
8959    field public static final int SC_HEVC_INDEX_SLICE_CE_BLA_W_LP = 4; // 0x4
8960    field public static final int SC_HEVC_INDEX_SLICE_IDR_N_LP = 64; // 0x40
8961    field public static final int SC_HEVC_INDEX_SLICE_IDR_W_RADL = 32; // 0x20
8962    field public static final int SC_HEVC_INDEX_SLICE_TRAIL_CRA = 128; // 0x80
8963    field public static final int SC_HEVC_INDEX_SPS = 1; // 0x1
8964    field public static final int SC_INDEX_B_FRAME = 4; // 0x4
8965    field public static final int SC_INDEX_B_SLICE = 64; // 0x40
8966    field public static final int SC_INDEX_I_FRAME = 1; // 0x1
8967    field public static final int SC_INDEX_I_SLICE = 16; // 0x10
8968    field public static final int SC_INDEX_P_FRAME = 2; // 0x2
8969    field public static final int SC_INDEX_P_SLICE = 32; // 0x20
8970    field public static final int SC_INDEX_SEQUENCE = 8; // 0x8
8971    field public static final int SC_INDEX_SI_SLICE = 128; // 0x80
8972    field public static final int SC_INDEX_SP_SLICE = 256; // 0x100
8973    field public static final int SC_VVC_INDEX_AUD = 64; // 0x40
8974    field public static final int SC_VVC_INDEX_SLICE_CRA = 4; // 0x4
8975    field public static final int SC_VVC_INDEX_SLICE_GDR = 8; // 0x8
8976    field public static final int SC_VVC_INDEX_SLICE_IDR_N_LP = 2; // 0x2
8977    field public static final int SC_VVC_INDEX_SLICE_IDR_W_RADL = 1; // 0x1
8978    field public static final int SC_VVC_INDEX_SPS = 32; // 0x20
8979    field public static final int SC_VVC_INDEX_VPS = 16; // 0x10
8980    field public static final int TS_INDEX_ADAPTATION_EXTENSION_FLAG = 4096; // 0x1000
8981    field public static final int TS_INDEX_CHANGE_TO_EVEN_SCRAMBLED = 8; // 0x8
8982    field public static final int TS_INDEX_CHANGE_TO_NOT_SCRAMBLED = 4; // 0x4
8983    field public static final int TS_INDEX_CHANGE_TO_ODD_SCRAMBLED = 16; // 0x10
8984    field public static final int TS_INDEX_DISCONTINUITY_INDICATOR = 32; // 0x20
8985    field public static final int TS_INDEX_FIRST_PACKET = 1; // 0x1
8986    field public static final int TS_INDEX_INVALID = 0; // 0x0
8987    field public static final int TS_INDEX_OPCR_FLAG = 512; // 0x200
8988    field public static final int TS_INDEX_PAYLOAD_UNIT_START_INDICATOR = 2; // 0x2
8989    field public static final int TS_INDEX_PCR_FLAG = 256; // 0x100
8990    field public static final int TS_INDEX_PRIORITY_INDICATOR = 128; // 0x80
8991    field public static final int TS_INDEX_PRIVATE_DATA = 2048; // 0x800
8992    field public static final int TS_INDEX_RANDOM_ACCESS_INDICATOR = 64; // 0x40
8993    field public static final int TS_INDEX_SPLICING_POINT_FLAG = 1024; // 0x400
8994  }
8995
8996  public static class RecordSettings.Builder {
8997    method @NonNull public android.media.tv.tuner.filter.RecordSettings build();
8998    method @NonNull public android.media.tv.tuner.filter.RecordSettings.Builder setScIndexMask(int);
8999    method @NonNull public android.media.tv.tuner.filter.RecordSettings.Builder setScIndexType(int);
9000    method @NonNull public android.media.tv.tuner.filter.RecordSettings.Builder setTsIndexMask(int);
9001  }
9002
9003  public final class RestartEvent extends android.media.tv.tuner.filter.FilterEvent {
9004    method public int getStartId();
9005    field public static final int NEW_FILTER_FIRST_START_ID = 0; // 0x0
9006  }
9007
9008  public final class ScramblingStatusEvent extends android.media.tv.tuner.filter.FilterEvent {
9009    method public int getScramblingStatus();
9010  }
9011
9012  public class SectionEvent extends android.media.tv.tuner.filter.FilterEvent {
9013    method @Deprecated public int getDataLength();
9014    method public long getDataLengthLong();
9015    method public int getSectionNumber();
9016    method public int getTableId();
9017    method public int getVersion();
9018  }
9019
9020  public abstract class SectionSettings extends android.media.tv.tuner.filter.Settings {
9021    method public int getLengthFieldBitWidth();
9022    method public boolean isCrcEnabled();
9023    method public boolean isRaw();
9024    method public boolean isRepeat();
9025  }
9026
9027  public abstract static class SectionSettings.Builder<T extends android.media.tv.tuner.filter.SectionSettings.Builder<T>> {
9028    method @NonNull public T setBitWidthOfLengthField(@IntRange(from=0) int);
9029    method @NonNull public T setCrcEnabled(boolean);
9030    method @NonNull public T setRaw(boolean);
9031    method @NonNull public T setRepeat(boolean);
9032  }
9033
9034  public class SectionSettingsWithSectionBits extends android.media.tv.tuner.filter.SectionSettings {
9035    method @NonNull public static android.media.tv.tuner.filter.SectionSettingsWithSectionBits.Builder builder(int);
9036    method @NonNull public byte[] getFilterBytes();
9037    method @NonNull public byte[] getMask();
9038    method @NonNull public byte[] getMode();
9039  }
9040
9041  public static class SectionSettingsWithSectionBits.Builder extends android.media.tv.tuner.filter.SectionSettings.Builder<android.media.tv.tuner.filter.SectionSettingsWithSectionBits.Builder> {
9042    method @NonNull public android.media.tv.tuner.filter.SectionSettingsWithSectionBits build();
9043    method @NonNull public android.media.tv.tuner.filter.SectionSettingsWithSectionBits.Builder setFilter(@NonNull byte[]);
9044    method @NonNull public android.media.tv.tuner.filter.SectionSettingsWithSectionBits.Builder setMask(@NonNull byte[]);
9045    method @NonNull public android.media.tv.tuner.filter.SectionSettingsWithSectionBits.Builder setMode(@NonNull byte[]);
9046  }
9047
9048  public class SectionSettingsWithTableInfo extends android.media.tv.tuner.filter.SectionSettings {
9049    method @NonNull public static android.media.tv.tuner.filter.SectionSettingsWithTableInfo.Builder builder(int);
9050    method public int getTableId();
9051    method public int getVersion();
9052    field public static final int INVALID_TABLE_INFO_VERSION = -1; // 0xffffffff
9053  }
9054
9055  public static class SectionSettingsWithTableInfo.Builder extends android.media.tv.tuner.filter.SectionSettings.Builder<android.media.tv.tuner.filter.SectionSettingsWithTableInfo.Builder> {
9056    method @NonNull public android.media.tv.tuner.filter.SectionSettingsWithTableInfo build();
9057    method @NonNull public android.media.tv.tuner.filter.SectionSettingsWithTableInfo.Builder setTableId(int);
9058    method @NonNull public android.media.tv.tuner.filter.SectionSettingsWithTableInfo.Builder setVersion(int);
9059  }
9060
9061  public abstract class Settings {
9062    method public int getType();
9063  }
9064
9065  public final class SharedFilter implements java.lang.AutoCloseable {
9066    method public void close();
9067    method public int flush();
9068    method public int read(@NonNull byte[], long, long);
9069    method public int start();
9070    method public int stop();
9071    field public static final int STATUS_INACCESSIBLE = 128; // 0x80
9072  }
9073
9074  public interface SharedFilterCallback {
9075    method public void onFilterEvent(@NonNull android.media.tv.tuner.filter.SharedFilter, @NonNull android.media.tv.tuner.filter.FilterEvent[]);
9076    method public void onFilterStatusChanged(@NonNull android.media.tv.tuner.filter.SharedFilter, int);
9077  }
9078
9079  public class TemiEvent extends android.media.tv.tuner.filter.FilterEvent {
9080    method @NonNull public byte[] getDescriptorData();
9081    method public byte getDescriptorTag();
9082    method public long getPts();
9083  }
9084
9085  public class TimeFilter implements java.lang.AutoCloseable {
9086    method public int clearTimestamp();
9087    method public void close();
9088    method public long getSourceTime();
9089    method public long getTimeStamp();
9090    method public int setCurrentTimestamp(long);
9091  }
9092
9093  public final class TlvFilterConfiguration extends android.media.tv.tuner.filter.FilterConfiguration {
9094    method @NonNull public static android.media.tv.tuner.filter.TlvFilterConfiguration.Builder builder();
9095    method public int getPacketType();
9096    method public int getType();
9097    method public boolean isCompressedIpPacket();
9098    method public boolean isPassthrough();
9099    field public static final int PACKET_TYPE_COMPRESSED = 3; // 0x3
9100    field public static final int PACKET_TYPE_IPV4 = 1; // 0x1
9101    field public static final int PACKET_TYPE_IPV6 = 2; // 0x2
9102    field public static final int PACKET_TYPE_NULL = 255; // 0xff
9103    field public static final int PACKET_TYPE_SIGNALING = 254; // 0xfe
9104  }
9105
9106  public static final class TlvFilterConfiguration.Builder {
9107    method @NonNull public android.media.tv.tuner.filter.TlvFilterConfiguration build();
9108    method @NonNull public android.media.tv.tuner.filter.TlvFilterConfiguration.Builder setCompressedIpPacket(boolean);
9109    method @NonNull public android.media.tv.tuner.filter.TlvFilterConfiguration.Builder setPacketType(int);
9110    method @NonNull public android.media.tv.tuner.filter.TlvFilterConfiguration.Builder setPassthrough(boolean);
9111    method @NonNull public android.media.tv.tuner.filter.TlvFilterConfiguration.Builder setSettings(@Nullable android.media.tv.tuner.filter.Settings);
9112  }
9113
9114  public final class TsFilterConfiguration extends android.media.tv.tuner.filter.FilterConfiguration {
9115    method @NonNull public static android.media.tv.tuner.filter.TsFilterConfiguration.Builder builder();
9116    method public int getTpid();
9117    method public int getType();
9118  }
9119
9120  public static final class TsFilterConfiguration.Builder {
9121    method @NonNull public android.media.tv.tuner.filter.TsFilterConfiguration build();
9122    method @NonNull public android.media.tv.tuner.filter.TsFilterConfiguration.Builder setSettings(@Nullable android.media.tv.tuner.filter.Settings);
9123    method @NonNull public android.media.tv.tuner.filter.TsFilterConfiguration.Builder setTpid(int);
9124  }
9125
9126  public class TsRecordEvent extends android.media.tv.tuner.filter.FilterEvent {
9127    method public long getDataLength();
9128    method public int getFirstMacroblockInSlice();
9129    method public int getPacketId();
9130    method public long getPts();
9131    method public int getScIndexMask();
9132    method public int getTsIndexMask();
9133  }
9134
9135}
9136
9137package android.media.tv.tuner.frontend {
9138
9139  public class AnalogFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
9140    method public int getSifStandardCapability();
9141    method public int getSignalTypeCapability();
9142  }
9143
9144  public class AnalogFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
9145    method @NonNull public static android.media.tv.tuner.frontend.AnalogFrontendSettings.Builder builder();
9146    method public int getAftFlag();
9147    method public int getSifStandard();
9148    method public int getSignalType();
9149    method public int getType();
9150    field public static final int AFT_FLAG_FALSE = 2; // 0x2
9151    field public static final int AFT_FLAG_TRUE = 1; // 0x1
9152    field public static final int AFT_FLAG_UNDEFINED = 0; // 0x0
9153    field public static final int SIF_AUTO = 1; // 0x1
9154    field public static final int SIF_BG = 2; // 0x2
9155    field public static final int SIF_BG_A2 = 4; // 0x4
9156    field public static final int SIF_BG_NICAM = 8; // 0x8
9157    field public static final int SIF_DK = 32; // 0x20
9158    field public static final int SIF_DK1_A2 = 64; // 0x40
9159    field public static final int SIF_DK2_A2 = 128; // 0x80
9160    field public static final int SIF_DK3_A2 = 256; // 0x100
9161    field public static final int SIF_DK_NICAM = 512; // 0x200
9162    field public static final int SIF_I = 16; // 0x10
9163    field public static final int SIF_I_NICAM = 32768; // 0x8000
9164    field public static final int SIF_L = 1024; // 0x400
9165    field public static final int SIF_L_NICAM = 65536; // 0x10000
9166    field public static final int SIF_L_PRIME = 131072; // 0x20000
9167    field public static final int SIF_M = 2048; // 0x800
9168    field public static final int SIF_M_A2 = 8192; // 0x2000
9169    field public static final int SIF_M_BTSC = 4096; // 0x1000
9170    field public static final int SIF_M_EIAJ = 16384; // 0x4000
9171    field public static final int SIF_UNDEFINED = 0; // 0x0
9172    field public static final int SIGNAL_TYPE_AUTO = 1; // 0x1
9173    field public static final int SIGNAL_TYPE_NTSC = 32; // 0x20
9174    field public static final int SIGNAL_TYPE_NTSC_443 = 64; // 0x40
9175    field public static final int SIGNAL_TYPE_PAL = 2; // 0x2
9176    field public static final int SIGNAL_TYPE_PAL_60 = 16; // 0x10
9177    field public static final int SIGNAL_TYPE_PAL_M = 4; // 0x4
9178    field public static final int SIGNAL_TYPE_PAL_N = 8; // 0x8
9179    field public static final int SIGNAL_TYPE_SECAM = 128; // 0x80
9180    field public static final int SIGNAL_TYPE_UNDEFINED = 0; // 0x0
9181  }
9182
9183  public static class AnalogFrontendSettings.Builder {
9184    method @NonNull public android.media.tv.tuner.frontend.AnalogFrontendSettings build();
9185    method @NonNull public android.media.tv.tuner.frontend.AnalogFrontendSettings.Builder setAftFlag(int);
9186    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.AnalogFrontendSettings.Builder setFrequency(int);
9187    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.AnalogFrontendSettings.Builder setFrequencyLong(long);
9188    method @NonNull public android.media.tv.tuner.frontend.AnalogFrontendSettings.Builder setSifStandard(int);
9189    method @NonNull public android.media.tv.tuner.frontend.AnalogFrontendSettings.Builder setSignalType(int);
9190  }
9191
9192  public class Atsc3FrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
9193    method public int getBandwidthCapability();
9194    method public int getDemodOutputFormatCapability();
9195    method public int getFecCapability();
9196    method public int getModulationCapability();
9197    method public int getPlpCodeRateCapability();
9198    method public int getTimeInterleaveModeCapability();
9199  }
9200
9201  public class Atsc3FrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
9202    method @NonNull public static android.media.tv.tuner.frontend.Atsc3FrontendSettings.Builder builder();
9203    method public int getBandwidth();
9204    method public int getDemodOutputFormat();
9205    method @NonNull public android.media.tv.tuner.frontend.Atsc3PlpSettings[] getPlpSettings();
9206    method public int getType();
9207    field public static final int BANDWIDTH_AUTO = 1; // 0x1
9208    field public static final int BANDWIDTH_BANDWIDTH_6MHZ = 2; // 0x2
9209    field public static final int BANDWIDTH_BANDWIDTH_7MHZ = 4; // 0x4
9210    field public static final int BANDWIDTH_BANDWIDTH_8MHZ = 8; // 0x8
9211    field public static final int BANDWIDTH_UNDEFINED = 0; // 0x0
9212    field public static final int CODERATE_10_15 = 512; // 0x200
9213    field public static final int CODERATE_11_15 = 1024; // 0x400
9214    field public static final int CODERATE_12_15 = 2048; // 0x800
9215    field public static final int CODERATE_13_15 = 4096; // 0x1000
9216    field public static final int CODERATE_2_15 = 2; // 0x2
9217    field public static final int CODERATE_3_15 = 4; // 0x4
9218    field public static final int CODERATE_4_15 = 8; // 0x8
9219    field public static final int CODERATE_5_15 = 16; // 0x10
9220    field public static final int CODERATE_6_15 = 32; // 0x20
9221    field public static final int CODERATE_7_15 = 64; // 0x40
9222    field public static final int CODERATE_8_15 = 128; // 0x80
9223    field public static final int CODERATE_9_15 = 256; // 0x100
9224    field public static final int CODERATE_AUTO = 1; // 0x1
9225    field public static final int CODERATE_UNDEFINED = 0; // 0x0
9226    field public static final int DEMOD_OUTPUT_FORMAT_ATSC3_LINKLAYER_PACKET = 1; // 0x1
9227    field public static final int DEMOD_OUTPUT_FORMAT_BASEBAND_PACKET = 2; // 0x2
9228    field public static final int DEMOD_OUTPUT_FORMAT_UNDEFINED = 0; // 0x0
9229    field public static final int FEC_AUTO = 1; // 0x1
9230    field public static final int FEC_BCH_LDPC_16K = 2; // 0x2
9231    field public static final int FEC_BCH_LDPC_64K = 4; // 0x4
9232    field public static final int FEC_CRC_LDPC_16K = 8; // 0x8
9233    field public static final int FEC_CRC_LDPC_64K = 16; // 0x10
9234    field public static final int FEC_LDPC_16K = 32; // 0x20
9235    field public static final int FEC_LDPC_64K = 64; // 0x40
9236    field public static final int FEC_UNDEFINED = 0; // 0x0
9237    field public static final int MODULATION_AUTO = 1; // 0x1
9238    field public static final int MODULATION_MOD_1024QAM = 32; // 0x20
9239    field public static final int MODULATION_MOD_16QAM = 4; // 0x4
9240    field public static final int MODULATION_MOD_256QAM = 16; // 0x10
9241    field public static final int MODULATION_MOD_4096QAM = 64; // 0x40
9242    field public static final int MODULATION_MOD_64QAM = 8; // 0x8
9243    field public static final int MODULATION_MOD_QPSK = 2; // 0x2
9244    field public static final int MODULATION_UNDEFINED = 0; // 0x0
9245    field public static final int TIME_INTERLEAVE_MODE_AUTO = 1; // 0x1
9246    field public static final int TIME_INTERLEAVE_MODE_CTI = 2; // 0x2
9247    field public static final int TIME_INTERLEAVE_MODE_HTI = 4; // 0x4
9248    field public static final int TIME_INTERLEAVE_MODE_UNDEFINED = 0; // 0x0
9249  }
9250
9251  public static class Atsc3FrontendSettings.Builder {
9252    method @NonNull public android.media.tv.tuner.frontend.Atsc3FrontendSettings build();
9253    method @NonNull public android.media.tv.tuner.frontend.Atsc3FrontendSettings.Builder setBandwidth(int);
9254    method @NonNull public android.media.tv.tuner.frontend.Atsc3FrontendSettings.Builder setDemodOutputFormat(int);
9255    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.Atsc3FrontendSettings.Builder setFrequency(int);
9256    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.Atsc3FrontendSettings.Builder setFrequencyLong(long);
9257    method @NonNull public android.media.tv.tuner.frontend.Atsc3FrontendSettings.Builder setPlpSettings(@NonNull android.media.tv.tuner.frontend.Atsc3PlpSettings[]);
9258  }
9259
9260  public class Atsc3PlpInfo {
9261    method public boolean getLlsFlag();
9262    method public int getPlpId();
9263  }
9264
9265  public class Atsc3PlpSettings {
9266    method @NonNull public static android.media.tv.tuner.frontend.Atsc3PlpSettings.Builder builder();
9267    method public int getCodeRate();
9268    method public int getFec();
9269    method public int getInterleaveMode();
9270    method public int getModulation();
9271    method public int getPlpId();
9272  }
9273
9274  public static class Atsc3PlpSettings.Builder {
9275    method @NonNull public android.media.tv.tuner.frontend.Atsc3PlpSettings build();
9276    method @NonNull public android.media.tv.tuner.frontend.Atsc3PlpSettings.Builder setCodeRate(int);
9277    method @NonNull public android.media.tv.tuner.frontend.Atsc3PlpSettings.Builder setFec(int);
9278    method @NonNull public android.media.tv.tuner.frontend.Atsc3PlpSettings.Builder setInterleaveMode(int);
9279    method @NonNull public android.media.tv.tuner.frontend.Atsc3PlpSettings.Builder setModulation(int);
9280    method @NonNull public android.media.tv.tuner.frontend.Atsc3PlpSettings.Builder setPlpId(int);
9281  }
9282
9283  public class AtscFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
9284    method public int getModulationCapability();
9285  }
9286
9287  public class AtscFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
9288    method @NonNull public static android.media.tv.tuner.frontend.AtscFrontendSettings.Builder builder();
9289    method public int getModulation();
9290    method public int getType();
9291    field public static final int MODULATION_AUTO = 1; // 0x1
9292    field public static final int MODULATION_MOD_16VSB = 8; // 0x8
9293    field public static final int MODULATION_MOD_8VSB = 4; // 0x4
9294    field public static final int MODULATION_UNDEFINED = 0; // 0x0
9295  }
9296
9297  public static class AtscFrontendSettings.Builder {
9298    method @NonNull public android.media.tv.tuner.frontend.AtscFrontendSettings build();
9299    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.AtscFrontendSettings.Builder setFrequency(int);
9300    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.AtscFrontendSettings.Builder setFrequencyLong(long);
9301    method @NonNull public android.media.tv.tuner.frontend.AtscFrontendSettings.Builder setModulation(int);
9302  }
9303
9304  public final class DtmbFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
9305    method public int getBandwidthCapability();
9306    method public int getCodeRateCapability();
9307    method public int getGuardIntervalCapability();
9308    method public int getModulationCapability();
9309    method public int getTimeInterleaveModeCapability();
9310    method public int getTransmissionModeCapability();
9311  }
9312
9313  public final class DtmbFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
9314    method @NonNull public static android.media.tv.tuner.frontend.DtmbFrontendSettings.Builder builder();
9315    method public int getBandwidth();
9316    method public int getCodeRate();
9317    method public int getGuardInterval();
9318    method public int getModulation();
9319    method public int getTimeInterleaveMode();
9320    method public int getTransmissionMode();
9321    method public int getType();
9322    field public static final int BANDWIDTH_6MHZ = 4; // 0x4
9323    field public static final int BANDWIDTH_8MHZ = 2; // 0x2
9324    field public static final int BANDWIDTH_AUTO = 1; // 0x1
9325    field public static final int BANDWIDTH_UNDEFINED = 0; // 0x0
9326    field public static final int CODERATE_2_5 = 2; // 0x2
9327    field public static final int CODERATE_3_5 = 4; // 0x4
9328    field public static final int CODERATE_4_5 = 8; // 0x8
9329    field public static final int CODERATE_AUTO = 1; // 0x1
9330    field public static final int CODERATE_UNDEFINED = 0; // 0x0
9331    field public static final int GUARD_INTERVAL_AUTO = 1; // 0x1
9332    field public static final int GUARD_INTERVAL_PN_420_CONST = 16; // 0x10
9333    field public static final int GUARD_INTERVAL_PN_420_VARIOUS = 2; // 0x2
9334    field public static final int GUARD_INTERVAL_PN_595_CONST = 4; // 0x4
9335    field public static final int GUARD_INTERVAL_PN_945_CONST = 32; // 0x20
9336    field public static final int GUARD_INTERVAL_PN_945_VARIOUS = 8; // 0x8
9337    field public static final int GUARD_INTERVAL_PN_RESERVED = 64; // 0x40
9338    field public static final int GUARD_INTERVAL_UNDEFINED = 0; // 0x0
9339    field public static final int MODULATION_CONSTELLATION_16QAM = 8; // 0x8
9340    field public static final int MODULATION_CONSTELLATION_32QAM = 16; // 0x10
9341    field public static final int MODULATION_CONSTELLATION_4QAM = 2; // 0x2
9342    field public static final int MODULATION_CONSTELLATION_4QAM_NR = 4; // 0x4
9343    field public static final int MODULATION_CONSTELLATION_64QAM = 32; // 0x20
9344    field public static final int MODULATION_CONSTELLATION_AUTO = 1; // 0x1
9345    field public static final int MODULATION_CONSTELLATION_UNDEFINED = 0; // 0x0
9346    field public static final int TIME_INTERLEAVE_MODE_AUTO = 1; // 0x1
9347    field public static final int TIME_INTERLEAVE_MODE_TIMER_INT_240 = 2; // 0x2
9348    field public static final int TIME_INTERLEAVE_MODE_TIMER_INT_720 = 4; // 0x4
9349    field public static final int TIME_INTERLEAVE_MODE_UNDEFINED = 0; // 0x0
9350    field public static final int TRANSMISSION_MODE_AUTO = 1; // 0x1
9351    field public static final int TRANSMISSION_MODE_C1 = 2; // 0x2
9352    field public static final int TRANSMISSION_MODE_C3780 = 4; // 0x4
9353    field public static final int TRANSMISSION_MODE_UNDEFINED = 0; // 0x0
9354  }
9355
9356  public static final class DtmbFrontendSettings.Builder {
9357    method @NonNull public android.media.tv.tuner.frontend.DtmbFrontendSettings build();
9358    method @NonNull public android.media.tv.tuner.frontend.DtmbFrontendSettings.Builder setBandwidth(int);
9359    method @NonNull public android.media.tv.tuner.frontend.DtmbFrontendSettings.Builder setCodeRate(int);
9360    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.DtmbFrontendSettings.Builder setFrequency(int);
9361    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.DtmbFrontendSettings.Builder setFrequencyLong(long);
9362    method @NonNull public android.media.tv.tuner.frontend.DtmbFrontendSettings.Builder setGuardInterval(int);
9363    method @NonNull public android.media.tv.tuner.frontend.DtmbFrontendSettings.Builder setModulation(int);
9364    method @NonNull public android.media.tv.tuner.frontend.DtmbFrontendSettings.Builder setTimeInterleaveMode(int);
9365    method @NonNull public android.media.tv.tuner.frontend.DtmbFrontendSettings.Builder setTransmissionMode(int);
9366  }
9367
9368  public class DvbcFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
9369    method public int getAnnexCapability();
9370    method public long getCodeRateCapability();
9371    method @Deprecated public int getFecCapability();
9372    method public int getModulationCapability();
9373  }
9374
9375  public class DvbcFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
9376    method @NonNull public static android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder builder();
9377    method public int getAnnex();
9378    method public int getBandwidth();
9379    method public long getInnerFec();
9380    method public int getModulation();
9381    method public int getOuterFec();
9382    method public int getSpectralInversion();
9383    method public int getSymbolRate();
9384    method public int getTimeInterleaveMode();
9385    method public int getType();
9386    field public static final int ANNEX_A = 1; // 0x1
9387    field public static final int ANNEX_B = 2; // 0x2
9388    field public static final int ANNEX_C = 4; // 0x4
9389    field public static final int ANNEX_UNDEFINED = 0; // 0x0
9390    field public static final int BANDWIDTH_5MHZ = 1; // 0x1
9391    field public static final int BANDWIDTH_6MHZ = 2; // 0x2
9392    field public static final int BANDWIDTH_7MHZ = 4; // 0x4
9393    field public static final int BANDWIDTH_8MHZ = 8; // 0x8
9394    field public static final int BANDWIDTH_UNDEFINED = 0; // 0x0
9395    field public static final int MODULATION_AUTO = 1; // 0x1
9396    field public static final int MODULATION_MOD_128QAM = 16; // 0x10
9397    field public static final int MODULATION_MOD_16QAM = 2; // 0x2
9398    field public static final int MODULATION_MOD_256QAM = 32; // 0x20
9399    field public static final int MODULATION_MOD_32QAM = 4; // 0x4
9400    field public static final int MODULATION_MOD_64QAM = 8; // 0x8
9401    field public static final int MODULATION_UNDEFINED = 0; // 0x0
9402    field public static final int OUTER_FEC_OUTER_FEC_NONE = 1; // 0x1
9403    field public static final int OUTER_FEC_OUTER_FEC_RS = 2; // 0x2
9404    field public static final int OUTER_FEC_UNDEFINED = 0; // 0x0
9405    field @Deprecated public static final int SPECTRAL_INVERSION_INVERTED = 2; // 0x2
9406    field @Deprecated public static final int SPECTRAL_INVERSION_NORMAL = 1; // 0x1
9407    field @Deprecated public static final int SPECTRAL_INVERSION_UNDEFINED = 0; // 0x0
9408    field public static final int TIME_INTERLEAVE_MODE_128_1_0 = 2; // 0x2
9409    field public static final int TIME_INTERLEAVE_MODE_128_1_1 = 4; // 0x4
9410    field public static final int TIME_INTERLEAVE_MODE_128_2 = 128; // 0x80
9411    field public static final int TIME_INTERLEAVE_MODE_128_3 = 256; // 0x100
9412    field public static final int TIME_INTERLEAVE_MODE_128_4 = 512; // 0x200
9413    field public static final int TIME_INTERLEAVE_MODE_16_8 = 32; // 0x20
9414    field public static final int TIME_INTERLEAVE_MODE_32_4 = 16; // 0x10
9415    field public static final int TIME_INTERLEAVE_MODE_64_2 = 8; // 0x8
9416    field public static final int TIME_INTERLEAVE_MODE_8_16 = 64; // 0x40
9417    field public static final int TIME_INTERLEAVE_MODE_AUTO = 1; // 0x1
9418    field public static final int TIME_INTERLEAVE_MODE_UNDEFINED = 0; // 0x0
9419  }
9420
9421  public static class DvbcFrontendSettings.Builder {
9422    method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings build();
9423    method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setAnnex(int);
9424    method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setBandwidth(int);
9425    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setFrequency(int);
9426    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setFrequencyLong(long);
9427    method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setInnerFec(long);
9428    method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setModulation(int);
9429    method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setOuterFec(int);
9430    method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setSpectralInversion(int);
9431    method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setSymbolRate(int);
9432    method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setTimeInterleaveMode(int);
9433  }
9434
9435  public class DvbsCodeRate {
9436    method @NonNull public static android.media.tv.tuner.frontend.DvbsCodeRate.Builder builder();
9437    method public int getBitsPer1000Symbol();
9438    method public long getInnerFec();
9439    method public boolean isLinear();
9440    method public boolean isShortFrameEnabled();
9441  }
9442
9443  public static class DvbsCodeRate.Builder {
9444    method @NonNull public android.media.tv.tuner.frontend.DvbsCodeRate build();
9445    method @NonNull public android.media.tv.tuner.frontend.DvbsCodeRate.Builder setBitsPer1000Symbol(int);
9446    method @NonNull public android.media.tv.tuner.frontend.DvbsCodeRate.Builder setInnerFec(long);
9447    method @NonNull public android.media.tv.tuner.frontend.DvbsCodeRate.Builder setLinear(boolean);
9448    method @NonNull public android.media.tv.tuner.frontend.DvbsCodeRate.Builder setShortFrameEnabled(boolean);
9449  }
9450
9451  public class DvbsFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
9452    method public long getInnerFecCapability();
9453    method public int getModulationCapability();
9454    method public int getStandardCapability();
9455  }
9456
9457  public class DvbsFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
9458    method @NonNull public static android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder builder();
9459    method public boolean canHandleDiseqcRxMessage();
9460    method @Nullable public android.media.tv.tuner.frontend.DvbsCodeRate getCodeRate();
9461    method public int getInputStreamId();
9462    method public int getModulation();
9463    method public int getPilot();
9464    method public int getRolloff();
9465    method public int getScanType();
9466    method public int getStandard();
9467    method public int getSymbolRate();
9468    method public int getType();
9469    method public int getVcmMode();
9470    field public static final int MODULATION_AUTO = 1; // 0x1
9471    field public static final int MODULATION_MOD_128APSK = 2048; // 0x800
9472    field public static final int MODULATION_MOD_16APSK = 256; // 0x100
9473    field public static final int MODULATION_MOD_16PSK = 16; // 0x10
9474    field public static final int MODULATION_MOD_16QAM = 8; // 0x8
9475    field public static final int MODULATION_MOD_256APSK = 4096; // 0x1000
9476    field public static final int MODULATION_MOD_32APSK = 512; // 0x200
9477    field public static final int MODULATION_MOD_32PSK = 32; // 0x20
9478    field public static final int MODULATION_MOD_64APSK = 1024; // 0x400
9479    field public static final int MODULATION_MOD_8APSK = 128; // 0x80
9480    field public static final int MODULATION_MOD_8PSK = 4; // 0x4
9481    field public static final int MODULATION_MOD_ACM = 64; // 0x40
9482    field public static final int MODULATION_MOD_QPSK = 2; // 0x2
9483    field public static final int MODULATION_MOD_RESERVED = 8192; // 0x2000
9484    field public static final int MODULATION_UNDEFINED = 0; // 0x0
9485    field public static final int PILOT_AUTO = 3; // 0x3
9486    field public static final int PILOT_OFF = 2; // 0x2
9487    field public static final int PILOT_ON = 1; // 0x1
9488    field public static final int PILOT_UNDEFINED = 0; // 0x0
9489    field public static final int ROLLOFF_0_10 = 5; // 0x5
9490    field public static final int ROLLOFF_0_15 = 4; // 0x4
9491    field public static final int ROLLOFF_0_20 = 3; // 0x3
9492    field public static final int ROLLOFF_0_25 = 2; // 0x2
9493    field public static final int ROLLOFF_0_35 = 1; // 0x1
9494    field public static final int ROLLOFF_0_5 = 6; // 0x6
9495    field public static final int ROLLOFF_UNDEFINED = 0; // 0x0
9496    field public static final int SCAN_TYPE_DIRECT = 1; // 0x1
9497    field public static final int SCAN_TYPE_DISEQC = 2; // 0x2
9498    field public static final int SCAN_TYPE_JESS = 4; // 0x4
9499    field public static final int SCAN_TYPE_UNDEFINED = 0; // 0x0
9500    field public static final int SCAN_TYPE_UNICABLE = 3; // 0x3
9501    field public static final int STANDARD_AUTO = 1; // 0x1
9502    field public static final int STANDARD_S = 2; // 0x2
9503    field public static final int STANDARD_S2 = 4; // 0x4
9504    field public static final int STANDARD_S2X = 8; // 0x8
9505    field public static final int VCM_MODE_AUTO = 1; // 0x1
9506    field public static final int VCM_MODE_MANUAL = 2; // 0x2
9507    field public static final int VCM_MODE_UNDEFINED = 0; // 0x0
9508  }
9509
9510  public static class DvbsFrontendSettings.Builder {
9511    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings build();
9512    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setCanHandleDiseqcRxMessage(boolean);
9513    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setCodeRate(@Nullable android.media.tv.tuner.frontend.DvbsCodeRate);
9514    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setFrequency(int);
9515    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setFrequencyLong(long);
9516    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setInputStreamId(int);
9517    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setModulation(int);
9518    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setPilot(int);
9519    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setRolloff(int);
9520    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setScanType(int);
9521    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setStandard(int);
9522    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setSymbolRate(int);
9523    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setVcmMode(int);
9524  }
9525
9526  public class DvbtFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
9527    method public int getBandwidthCapability();
9528    method public int getCodeRateCapability();
9529    method public int getConstellationCapability();
9530    method public int getGuardIntervalCapability();
9531    method public int getHierarchyCapability();
9532    method public int getTransmissionModeCapability();
9533    method public boolean isMisoSupported();
9534    method public boolean isT2Supported();
9535  }
9536
9537  public class DvbtFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
9538    method @NonNull public static android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder builder();
9539    method public int getBandwidth();
9540    method public int getConstellation();
9541    method public int getGuardInterval();
9542    method public int getHierarchy();
9543    method public int getHighPriorityCodeRate();
9544    method public int getLowPriorityCodeRate();
9545    method public int getPlpGroupId();
9546    method public int getPlpId();
9547    method public int getPlpMode();
9548    method public int getStandard();
9549    method public int getTransmissionMode();
9550    method public int getType();
9551    method public boolean isHighPriority();
9552    method public boolean isMiso();
9553    field public static final int BANDWIDTH_10MHZ = 64; // 0x40
9554    field public static final int BANDWIDTH_1_7MHZ = 32; // 0x20
9555    field public static final int BANDWIDTH_5MHZ = 16; // 0x10
9556    field public static final int BANDWIDTH_6MHZ = 8; // 0x8
9557    field public static final int BANDWIDTH_7MHZ = 4; // 0x4
9558    field public static final int BANDWIDTH_8MHZ = 2; // 0x2
9559    field public static final int BANDWIDTH_AUTO = 1; // 0x1
9560    field public static final int BANDWIDTH_UNDEFINED = 0; // 0x0
9561    field public static final int CODERATE_1_2 = 2; // 0x2
9562    field public static final int CODERATE_2_3 = 4; // 0x4
9563    field public static final int CODERATE_3_4 = 8; // 0x8
9564    field public static final int CODERATE_3_5 = 64; // 0x40
9565    field public static final int CODERATE_4_5 = 128; // 0x80
9566    field public static final int CODERATE_5_6 = 16; // 0x10
9567    field public static final int CODERATE_6_7 = 256; // 0x100
9568    field public static final int CODERATE_7_8 = 32; // 0x20
9569    field public static final int CODERATE_8_9 = 512; // 0x200
9570    field public static final int CODERATE_AUTO = 1; // 0x1
9571    field public static final int CODERATE_UNDEFINED = 0; // 0x0
9572    field public static final int CONSTELLATION_16QAM = 4; // 0x4
9573    field public static final int CONSTELLATION_16QAM_R = 64; // 0x40
9574    field public static final int CONSTELLATION_256QAM = 16; // 0x10
9575    field public static final int CONSTELLATION_256QAM_R = 256; // 0x100
9576    field public static final int CONSTELLATION_64QAM = 8; // 0x8
9577    field public static final int CONSTELLATION_64QAM_R = 128; // 0x80
9578    field public static final int CONSTELLATION_AUTO = 1; // 0x1
9579    field public static final int CONSTELLATION_QPSK = 2; // 0x2
9580    field public static final int CONSTELLATION_QPSK_R = 32; // 0x20
9581    field public static final int CONSTELLATION_UNDEFINED = 0; // 0x0
9582    field public static final int GUARD_INTERVAL_19_128 = 64; // 0x40
9583    field public static final int GUARD_INTERVAL_19_256 = 128; // 0x80
9584    field public static final int GUARD_INTERVAL_1_128 = 32; // 0x20
9585    field public static final int GUARD_INTERVAL_1_16 = 4; // 0x4
9586    field public static final int GUARD_INTERVAL_1_32 = 2; // 0x2
9587    field public static final int GUARD_INTERVAL_1_4 = 16; // 0x10
9588    field public static final int GUARD_INTERVAL_1_8 = 8; // 0x8
9589    field public static final int GUARD_INTERVAL_AUTO = 1; // 0x1
9590    field public static final int GUARD_INTERVAL_UNDEFINED = 0; // 0x0
9591    field public static final int HIERARCHY_1_INDEPTH = 64; // 0x40
9592    field public static final int HIERARCHY_1_NATIVE = 4; // 0x4
9593    field public static final int HIERARCHY_2_INDEPTH = 128; // 0x80
9594    field public static final int HIERARCHY_2_NATIVE = 8; // 0x8
9595    field public static final int HIERARCHY_4_INDEPTH = 256; // 0x100
9596    field public static final int HIERARCHY_4_NATIVE = 16; // 0x10
9597    field public static final int HIERARCHY_AUTO = 1; // 0x1
9598    field public static final int HIERARCHY_NON_INDEPTH = 32; // 0x20
9599    field public static final int HIERARCHY_NON_NATIVE = 2; // 0x2
9600    field public static final int HIERARCHY_UNDEFINED = 0; // 0x0
9601    field public static final int PLP_MODE_AUTO = 1; // 0x1
9602    field public static final int PLP_MODE_MANUAL = 2; // 0x2
9603    field public static final int PLP_MODE_UNDEFINED = 0; // 0x0
9604    field public static final int STANDARD_AUTO = 1; // 0x1
9605    field public static final int STANDARD_T = 2; // 0x2
9606    field public static final int STANDARD_T2 = 4; // 0x4
9607    field public static final int TRANSMISSION_MODE_16K = 32; // 0x20
9608    field public static final int TRANSMISSION_MODE_1K = 16; // 0x10
9609    field public static final int TRANSMISSION_MODE_2K = 2; // 0x2
9610    field public static final int TRANSMISSION_MODE_32K = 64; // 0x40
9611    field public static final int TRANSMISSION_MODE_4K = 8; // 0x8
9612    field public static final int TRANSMISSION_MODE_8K = 4; // 0x4
9613    field public static final int TRANSMISSION_MODE_AUTO = 1; // 0x1
9614    field public static final int TRANSMISSION_MODE_EXTENDED_16K = 256; // 0x100
9615    field public static final int TRANSMISSION_MODE_EXTENDED_32K = 512; // 0x200
9616    field public static final int TRANSMISSION_MODE_EXTENDED_8K = 128; // 0x80
9617    field public static final int TRANSMISSION_MODE_UNDEFINED = 0; // 0x0
9618  }
9619
9620  public static class DvbtFrontendSettings.Builder {
9621    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings build();
9622    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setBandwidth(int);
9623    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setConstellation(int);
9624    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setFrequency(int);
9625    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setFrequencyLong(long);
9626    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setGuardInterval(int);
9627    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setHierarchy(int);
9628    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setHighPriority(boolean);
9629    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setHighPriorityCodeRate(int);
9630    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setLowPriorityCodeRate(int);
9631    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setMiso(boolean);
9632    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setPlpGroupId(int);
9633    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setPlpId(int);
9634    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setPlpMode(int);
9635    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setStandard(int);
9636    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setTransmissionMode(int);
9637  }
9638
9639  public abstract class FrontendCapabilities {
9640    ctor public FrontendCapabilities();
9641  }
9642
9643  public class FrontendInfo {
9644    method @Deprecated public int getAcquireRange();
9645    method public long getAcquireRangeLong();
9646    method public int getExclusiveGroupId();
9647    method @Deprecated @NonNull public android.util.Range<java.lang.Integer> getFrequencyRange();
9648    method @NonNull public android.util.Range<java.lang.Long> getFrequencyRangeLong();
9649    method @NonNull public android.media.tv.tuner.frontend.FrontendCapabilities getFrontendCapabilities();
9650    method public int getId();
9651    method @NonNull public int[] getStatusCapabilities();
9652    method @NonNull public android.util.Range<java.lang.Integer> getSymbolRateRange();
9653    method public int getType();
9654  }
9655
9656  public abstract class FrontendSettings {
9657    method @Deprecated @IntRange(from=1) public int getEndFrequency();
9658    method @IntRange(from=1) public long getEndFrequencyLong();
9659    method @Deprecated public int getFrequency();
9660    method public long getFrequencyLong();
9661    method public int getFrontendSpectralInversion();
9662    method public abstract int getType();
9663    method @Deprecated @IntRange(from=1) public void setEndFrequency(int);
9664    method @IntRange(from=1) public void setEndFrequencyLong(long);
9665    method public void setSpectralInversion(int);
9666    field public static final long FEC_11_15 = 4194304L; // 0x400000L
9667    field public static final long FEC_11_20 = 8388608L; // 0x800000L
9668    field public static final long FEC_11_45 = 16777216L; // 0x1000000L
9669    field public static final long FEC_13_18 = 33554432L; // 0x2000000L
9670    field public static final long FEC_13_45 = 67108864L; // 0x4000000L
9671    field public static final long FEC_14_45 = 134217728L; // 0x8000000L
9672    field public static final long FEC_1_2 = 2L; // 0x2L
9673    field public static final long FEC_1_3 = 4L; // 0x4L
9674    field public static final long FEC_1_4 = 8L; // 0x8L
9675    field public static final long FEC_1_5 = 16L; // 0x10L
9676    field public static final long FEC_23_36 = 268435456L; // 0x10000000L
9677    field public static final long FEC_25_36 = 536870912L; // 0x20000000L
9678    field public static final long FEC_26_45 = 1073741824L; // 0x40000000L
9679    field public static final long FEC_28_45 = 2147483648L; // 0x80000000L
9680    field public static final long FEC_29_45 = 4294967296L; // 0x100000000L
9681    field public static final long FEC_2_3 = 32L; // 0x20L
9682    field public static final long FEC_2_5 = 64L; // 0x40L
9683    field public static final long FEC_2_9 = 128L; // 0x80L
9684    field public static final long FEC_31_45 = 8589934592L; // 0x200000000L
9685    field public static final long FEC_32_45 = 17179869184L; // 0x400000000L
9686    field public static final long FEC_3_4 = 256L; // 0x100L
9687    field public static final long FEC_3_5 = 512L; // 0x200L
9688    field public static final long FEC_4_15 = 2048L; // 0x800L
9689    field public static final long FEC_4_5 = 1024L; // 0x400L
9690    field public static final long FEC_5_6 = 4096L; // 0x1000L
9691    field public static final long FEC_5_9 = 8192L; // 0x2000L
9692    field public static final long FEC_6_7 = 16384L; // 0x4000L
9693    field public static final long FEC_77_90 = 34359738368L; // 0x800000000L
9694    field public static final long FEC_7_15 = 131072L; // 0x20000L
9695    field public static final long FEC_7_8 = 32768L; // 0x8000L
9696    field public static final long FEC_7_9 = 65536L; // 0x10000L
9697    field public static final long FEC_8_15 = 524288L; // 0x80000L
9698    field public static final long FEC_8_9 = 262144L; // 0x40000L
9699    field public static final long FEC_9_10 = 1048576L; // 0x100000L
9700    field public static final long FEC_9_20 = 2097152L; // 0x200000L
9701    field public static final long FEC_AUTO = 1L; // 0x1L
9702    field public static final long FEC_UNDEFINED = 0L; // 0x0L
9703    field public static final int FRONTEND_SPECTRAL_INVERSION_INVERTED = 2; // 0x2
9704    field public static final int FRONTEND_SPECTRAL_INVERSION_NORMAL = 1; // 0x1
9705    field public static final int FRONTEND_SPECTRAL_INVERSION_UNDEFINED = 0; // 0x0
9706    field public static final int TYPE_ANALOG = 1; // 0x1
9707    field public static final int TYPE_ATSC = 2; // 0x2
9708    field public static final int TYPE_ATSC3 = 3; // 0x3
9709    field public static final int TYPE_DTMB = 10; // 0xa
9710    field public static final int TYPE_DVBC = 4; // 0x4
9711    field public static final int TYPE_DVBS = 5; // 0x5
9712    field public static final int TYPE_DVBT = 6; // 0x6
9713    field public static final int TYPE_IPTV = 11; // 0xb
9714    field public static final int TYPE_ISDBS = 7; // 0x7
9715    field public static final int TYPE_ISDBS3 = 8; // 0x8
9716    field public static final int TYPE_ISDBT = 9; // 0x9
9717    field public static final int TYPE_UNDEFINED = 0; // 0x0
9718  }
9719
9720  public class FrontendStatus {
9721    method public int getAgc();
9722    method @NonNull public java.util.List<android.media.tv.tuner.frontend.Atsc3PlpInfo> getAllAtsc3PlpInfo();
9723    method @NonNull public android.media.tv.tuner.frontend.FrontendStatus.Atsc3PlpTuningInfo[] getAtsc3PlpTuningInfo();
9724    method public int getBandwidth();
9725    method public int getBer();
9726    method @NonNull public int[] getBers();
9727    method @NonNull public int[] getCodeRates();
9728    method @NonNull public int[] getDvbtCellIds();
9729    method @NonNull public int[] getExtendedModulations();
9730    method @Deprecated public int getFreqOffset();
9731    method public long getFreqOffsetLong();
9732    method public int getGuardInterval();
9733    method public int getHierarchy();
9734    method public long getInnerFec();
9735    method @NonNull public int[] getInterleaving();
9736    method @IntRange(from=0) public int getIptvAverageJitterMillis();
9737    method @NonNull public String getIptvContentUrl();
9738    method @IntRange(from=0) public long getIptvPacketsLost();
9739    method @IntRange(from=0) public long getIptvPacketsReceived();
9740    method @IntRange(from=0) public int getIptvWorstJitterMillis();
9741    method public int getIsdbtMode();
9742    method public int getIsdbtPartialReceptionFlag();
9743    method @IntRange(from=0, to=255) @NonNull public int[] getIsdbtSegment();
9744    method @NonNull public boolean[] getLayerErrors();
9745    method public int getLnbVoltage();
9746    method public int getMer();
9747    method public int getModulation();
9748    method public int getPer();
9749    method public int getPerBer();
9750    method public int getPlpId();
9751    method public int getRollOff();
9752    method public int getSignalQuality();
9753    method public int getSignalStrength();
9754    method public int getSnr();
9755    method public int getSpectralInversion();
9756    method @FlaggedApi("android.media.tv.flags.tuner_w_apis") @NonNull public android.media.tv.tuner.frontend.StandardExtension getStandardExtension();
9757    method @NonNull public int[] getStreamIds();
9758    method public int getSymbolRate();
9759    method @IntRange(from=0, to=65535) public int getSystemId();
9760    method public int getTransmissionMode();
9761    method @NonNull public int[] getTsDataRate();
9762    method public int getUec();
9763    method public boolean isDemodLocked();
9764    method public boolean isEwbs();
9765    method public boolean isLinear();
9766    method public boolean isLnaOn();
9767    method public boolean isMisoEnabled();
9768    method public boolean isRfLocked();
9769    method public boolean isShortFramesEnabled();
9770    field public static final int FRONTEND_STATUS_TYPE_AGC = 14; // 0xe
9771    field public static final int FRONTEND_STATUS_TYPE_ATSC3_ALL_PLP_INFO = 41; // 0x29
9772    field public static final int FRONTEND_STATUS_TYPE_ATSC3_PLP_INFO = 21; // 0x15
9773    field public static final int FRONTEND_STATUS_TYPE_BANDWIDTH = 25; // 0x19
9774    field public static final int FRONTEND_STATUS_TYPE_BER = 2; // 0x2
9775    field public static final int FRONTEND_STATUS_TYPE_BERS = 23; // 0x17
9776    field public static final int FRONTEND_STATUS_TYPE_CODERATES = 24; // 0x18
9777    field public static final int FRONTEND_STATUS_TYPE_DEMOD_LOCK = 0; // 0x0
9778    field public static final int FRONTEND_STATUS_TYPE_DVBT_CELL_IDS = 40; // 0x28
9779    field public static final int FRONTEND_STATUS_TYPE_EWBS = 13; // 0xd
9780    field public static final int FRONTEND_STATUS_TYPE_FEC = 8; // 0x8
9781    field public static final int FRONTEND_STATUS_TYPE_FREQ_OFFSET = 18; // 0x12
9782    field public static final int FRONTEND_STATUS_TYPE_GUARD_INTERVAL = 26; // 0x1a
9783    field public static final int FRONTEND_STATUS_TYPE_HIERARCHY = 19; // 0x13
9784    field public static final int FRONTEND_STATUS_TYPE_INTERLEAVINGS = 30; // 0x1e
9785    field public static final int FRONTEND_STATUS_TYPE_IPTV_AVERAGE_JITTER_MS = 46; // 0x2e
9786    field public static final int FRONTEND_STATUS_TYPE_IPTV_CONTENT_URL = 42; // 0x2a
9787    field public static final int FRONTEND_STATUS_TYPE_IPTV_PACKETS_LOST = 43; // 0x2b
9788    field public static final int FRONTEND_STATUS_TYPE_IPTV_PACKETS_RECEIVED = 44; // 0x2c
9789    field public static final int FRONTEND_STATUS_TYPE_IPTV_WORST_JITTER_MS = 45; // 0x2d
9790    field public static final int FRONTEND_STATUS_TYPE_ISDBT_MODE = 37; // 0x25
9791    field public static final int FRONTEND_STATUS_TYPE_ISDBT_PARTIAL_RECEPTION_FLAG = 38; // 0x26
9792    field public static final int FRONTEND_STATUS_TYPE_ISDBT_SEGMENTS = 31; // 0x1f
9793    field public static final int FRONTEND_STATUS_TYPE_IS_LINEAR = 35; // 0x23
9794    field public static final int FRONTEND_STATUS_TYPE_IS_MISO_ENABLED = 34; // 0x22
9795    field public static final int FRONTEND_STATUS_TYPE_IS_SHORT_FRAMES_ENABLED = 36; // 0x24
9796    field public static final int FRONTEND_STATUS_TYPE_LAYER_ERROR = 16; // 0x10
9797    field public static final int FRONTEND_STATUS_TYPE_LNA = 15; // 0xf
9798    field public static final int FRONTEND_STATUS_TYPE_LNB_VOLTAGE = 11; // 0xb
9799    field public static final int FRONTEND_STATUS_TYPE_MER = 17; // 0x11
9800    field public static final int FRONTEND_STATUS_TYPE_MODULATION = 9; // 0x9
9801    field public static final int FRONTEND_STATUS_TYPE_MODULATIONS_EXT = 22; // 0x16
9802    field public static final int FRONTEND_STATUS_TYPE_PER = 3; // 0x3
9803    field public static final int FRONTEND_STATUS_TYPE_PLP_ID = 12; // 0xc
9804    field public static final int FRONTEND_STATUS_TYPE_PRE_BER = 4; // 0x4
9805    field public static final int FRONTEND_STATUS_TYPE_RF_LOCK = 20; // 0x14
9806    field public static final int FRONTEND_STATUS_TYPE_ROLL_OFF = 33; // 0x21
9807    field public static final int FRONTEND_STATUS_TYPE_SIGNAL_QUALITY = 5; // 0x5
9808    field public static final int FRONTEND_STATUS_TYPE_SIGNAL_STRENGTH = 6; // 0x6
9809    field public static final int FRONTEND_STATUS_TYPE_SNR = 1; // 0x1
9810    field public static final int FRONTEND_STATUS_TYPE_SPECTRAL = 10; // 0xa
9811    field @FlaggedApi("android.media.tv.flags.tuner_w_apis") public static final int FRONTEND_STATUS_TYPE_STANDARD_EXTENSION = 47; // 0x2f
9812    field public static final int FRONTEND_STATUS_TYPE_STREAM_IDS = 39; // 0x27
9813    field public static final int FRONTEND_STATUS_TYPE_SYMBOL_RATE = 7; // 0x7
9814    field public static final int FRONTEND_STATUS_TYPE_T2_SYSTEM_ID = 29; // 0x1d
9815    field public static final int FRONTEND_STATUS_TYPE_TRANSMISSION_MODE = 27; // 0x1b
9816    field public static final int FRONTEND_STATUS_TYPE_TS_DATA_RATES = 32; // 0x20
9817    field public static final int FRONTEND_STATUS_TYPE_UEC = 28; // 0x1c
9818  }
9819
9820  public static class FrontendStatus.Atsc3PlpTuningInfo {
9821    method public int getPlpId();
9822    method public int getUec();
9823    method public boolean isLocked();
9824  }
9825
9826  public final class FrontendStatusReadiness {
9827    method public int getStatusReadiness();
9828    method public int getStatusType();
9829    field public static final int FRONTEND_STATUS_READINESS_STABLE = 3; // 0x3
9830    field public static final int FRONTEND_STATUS_READINESS_UNAVAILABLE = 1; // 0x1
9831    field public static final int FRONTEND_STATUS_READINESS_UNDEFINED = 0; // 0x0
9832    field public static final int FRONTEND_STATUS_READINESS_UNSTABLE = 2; // 0x2
9833    field public static final int FRONTEND_STATUS_READINESS_UNSUPPORTED = 4; // 0x4
9834  }
9835
9836  public class IptvFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
9837    method public int getProtocolCapability();
9838  }
9839
9840  public final class IptvFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
9841    method @IntRange(from=0) public long getBitrate();
9842    method @NonNull public String getContentUrl();
9843    method @NonNull @Size(min=4, max=16) public byte[] getDstIpAddress();
9844    method public int getDstPort();
9845    method @Nullable public android.media.tv.tuner.frontend.IptvFrontendSettingsFec getFec();
9846    method public int getIgmp();
9847    method public int getProtocol();
9848    method @NonNull @Size(min=4, max=16) public byte[] getSrcIpAddress();
9849    method public int getSrcPort();
9850    method public int getType();
9851    field public static final int IGMP_UNDEFINED = 0; // 0x0
9852    field public static final int IGMP_V1 = 1; // 0x1
9853    field public static final int IGMP_V2 = 2; // 0x2
9854    field public static final int IGMP_V3 = 4; // 0x4
9855    field public static final int PROTOCOL_RTP = 2; // 0x2
9856    field public static final int PROTOCOL_UDP = 1; // 0x1
9857    field public static final int PROTOCOL_UNDEFINED = 0; // 0x0
9858  }
9859
9860  public static final class IptvFrontendSettings.Builder {
9861    ctor public IptvFrontendSettings.Builder();
9862    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings build();
9863    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings.Builder setBitrate(@IntRange(from=0) long);
9864    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings.Builder setContentUrl(@NonNull String);
9865    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings.Builder setDstIpAddress(@NonNull byte[]);
9866    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings.Builder setDstPort(int);
9867    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings.Builder setFec(@Nullable android.media.tv.tuner.frontend.IptvFrontendSettingsFec);
9868    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings.Builder setIgmp(int);
9869    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings.Builder setProtocol(int);
9870    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings.Builder setSrcIpAddress(@NonNull byte[]);
9871    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings.Builder setSrcPort(int);
9872  }
9873
9874  public final class IptvFrontendSettingsFec {
9875    method @IntRange(from=0) public int getFecColNum();
9876    method @IntRange(from=0) public int getFecRowNum();
9877    method public int getFecType();
9878    field public static final int FEC_TYPE_COLUMN = 1; // 0x1
9879    field public static final int FEC_TYPE_COLUMN_ROW = 4; // 0x4
9880    field public static final int FEC_TYPE_ROW = 2; // 0x2
9881    field public static final int FEC_TYPE_UNDEFINED = 0; // 0x0
9882  }
9883
9884  public static final class IptvFrontendSettingsFec.Builder {
9885    ctor public IptvFrontendSettingsFec.Builder();
9886    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettingsFec build();
9887    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettingsFec.Builder setFecColNum(@IntRange(from=0) int);
9888    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettingsFec.Builder setFecRowNum(@IntRange(from=0) int);
9889    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettingsFec.Builder setFecType(int);
9890  }
9891
9892  public class Isdbs3FrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
9893    method public int getCodeRateCapability();
9894    method public int getModulationCapability();
9895  }
9896
9897  public class Isdbs3FrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
9898    method @NonNull public static android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder builder();
9899    method public int getCodeRate();
9900    method public int getModulation();
9901    method public int getRolloff();
9902    method public int getStreamId();
9903    method public int getStreamIdType();
9904    method public int getSymbolRate();
9905    method public int getType();
9906    field public static final int CODERATE_1_2 = 8; // 0x8
9907    field public static final int CODERATE_1_3 = 2; // 0x2
9908    field public static final int CODERATE_2_3 = 32; // 0x20
9909    field public static final int CODERATE_2_5 = 4; // 0x4
9910    field public static final int CODERATE_3_4 = 64; // 0x40
9911    field public static final int CODERATE_3_5 = 16; // 0x10
9912    field public static final int CODERATE_4_5 = 256; // 0x100
9913    field public static final int CODERATE_5_6 = 512; // 0x200
9914    field public static final int CODERATE_7_8 = 1024; // 0x400
9915    field public static final int CODERATE_7_9 = 128; // 0x80
9916    field public static final int CODERATE_9_10 = 2048; // 0x800
9917    field public static final int CODERATE_AUTO = 1; // 0x1
9918    field public static final int CODERATE_UNDEFINED = 0; // 0x0
9919    field public static final int MODULATION_AUTO = 1; // 0x1
9920    field public static final int MODULATION_MOD_16APSK = 16; // 0x10
9921    field public static final int MODULATION_MOD_32APSK = 32; // 0x20
9922    field public static final int MODULATION_MOD_8PSK = 8; // 0x8
9923    field public static final int MODULATION_MOD_BPSK = 2; // 0x2
9924    field public static final int MODULATION_MOD_QPSK = 4; // 0x4
9925    field public static final int MODULATION_UNDEFINED = 0; // 0x0
9926    field public static final int ROLLOFF_0_03 = 1; // 0x1
9927    field public static final int ROLLOFF_UNDEFINED = 0; // 0x0
9928  }
9929
9930  public static class Isdbs3FrontendSettings.Builder {
9931    method @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings build();
9932    method @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setCodeRate(int);
9933    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setFrequency(int);
9934    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setFrequencyLong(long);
9935    method @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setModulation(int);
9936    method @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setRolloff(int);
9937    method @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setStreamId(int);
9938    method @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setStreamIdType(int);
9939    method @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setSymbolRate(int);
9940  }
9941
9942  public class IsdbsFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
9943    method public int getCodeRateCapability();
9944    method public int getModulationCapability();
9945  }
9946
9947  public class IsdbsFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
9948    method @NonNull public static android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder builder();
9949    method public int getCodeRate();
9950    method public int getModulation();
9951    method public int getRolloff();
9952    method public int getStreamId();
9953    method public int getStreamIdType();
9954    method public int getSymbolRate();
9955    method public int getType();
9956    field public static final int CODERATE_1_2 = 2; // 0x2
9957    field public static final int CODERATE_2_3 = 4; // 0x4
9958    field public static final int CODERATE_3_4 = 8; // 0x8
9959    field public static final int CODERATE_5_6 = 16; // 0x10
9960    field public static final int CODERATE_7_8 = 32; // 0x20
9961    field public static final int CODERATE_AUTO = 1; // 0x1
9962    field public static final int CODERATE_UNDEFINED = 0; // 0x0
9963    field public static final int MODULATION_AUTO = 1; // 0x1
9964    field public static final int MODULATION_MOD_BPSK = 2; // 0x2
9965    field public static final int MODULATION_MOD_QPSK = 4; // 0x4
9966    field public static final int MODULATION_MOD_TC8PSK = 8; // 0x8
9967    field public static final int MODULATION_UNDEFINED = 0; // 0x0
9968    field public static final int ROLLOFF_0_35 = 1; // 0x1
9969    field public static final int ROLLOFF_UNDEFINED = 0; // 0x0
9970    field public static final int STREAM_ID_TYPE_ID = 0; // 0x0
9971    field public static final int STREAM_ID_TYPE_RELATIVE_NUMBER = 1; // 0x1
9972  }
9973
9974  public static class IsdbsFrontendSettings.Builder {
9975    method @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings build();
9976    method @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setCodeRate(int);
9977    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setFrequency(int);
9978    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setFrequencyLong(long);
9979    method @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setModulation(int);
9980    method @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setRolloff(int);
9981    method @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setStreamId(int);
9982    method @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setStreamIdType(int);
9983    method @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setSymbolRate(int);
9984  }
9985
9986  public class IsdbtFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
9987    method public int getBandwidthCapability();
9988    method public int getCodeRateCapability();
9989    method public int getGuardIntervalCapability();
9990    method public int getModeCapability();
9991    method public int getModulationCapability();
9992    method public int getTimeInterleaveModeCapability();
9993    method public boolean isFullSegmentSupported();
9994    method public boolean isSegmentAutoSupported();
9995  }
9996
9997  public class IsdbtFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
9998    method @NonNull public static android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder builder();
9999    method public int getBandwidth();
10000    method @Deprecated public int getCodeRate();
10001    method public int getGuardInterval();
10002    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.IsdbtLayerSettings[] getLayerSettings();
10003    method public int getMode();
10004    method @Deprecated public int getModulation();
10005    method public int getPartialReceptionFlag();
10006    method public int getServiceAreaId();
10007    method public int getType();
10008    field public static final int BANDWIDTH_6MHZ = 8; // 0x8
10009    field public static final int BANDWIDTH_7MHZ = 4; // 0x4
10010    field public static final int BANDWIDTH_8MHZ = 2; // 0x2
10011    field public static final int BANDWIDTH_AUTO = 1; // 0x1
10012    field public static final int BANDWIDTH_UNDEFINED = 0; // 0x0
10013    field public static final int MODE_1 = 2; // 0x2
10014    field public static final int MODE_2 = 4; // 0x4
10015    field public static final int MODE_3 = 8; // 0x8
10016    field public static final int MODE_AUTO = 1; // 0x1
10017    field public static final int MODE_UNDEFINED = 0; // 0x0
10018    field public static final int MODULATION_AUTO = 1; // 0x1
10019    field public static final int MODULATION_MOD_16QAM = 8; // 0x8
10020    field public static final int MODULATION_MOD_64QAM = 16; // 0x10
10021    field public static final int MODULATION_MOD_DQPSK = 2; // 0x2
10022    field public static final int MODULATION_MOD_QPSK = 4; // 0x4
10023    field public static final int MODULATION_UNDEFINED = 0; // 0x0
10024    field public static final int PARTIAL_RECEPTION_FLAG_FALSE = 2; // 0x2
10025    field public static final int PARTIAL_RECEPTION_FLAG_TRUE = 4; // 0x4
10026    field public static final int PARTIAL_RECEPTION_FLAG_UNDEFINED = 0; // 0x0
10027    field public static final int TIME_INTERLEAVE_MODE_1_0 = 2; // 0x2
10028    field public static final int TIME_INTERLEAVE_MODE_1_16 = 16; // 0x10
10029    field public static final int TIME_INTERLEAVE_MODE_1_4 = 4; // 0x4
10030    field public static final int TIME_INTERLEAVE_MODE_1_8 = 8; // 0x8
10031    field public static final int TIME_INTERLEAVE_MODE_2_0 = 32; // 0x20
10032    field public static final int TIME_INTERLEAVE_MODE_2_2 = 64; // 0x40
10033    field public static final int TIME_INTERLEAVE_MODE_2_4 = 128; // 0x80
10034    field public static final int TIME_INTERLEAVE_MODE_2_8 = 256; // 0x100
10035    field public static final int TIME_INTERLEAVE_MODE_3_0 = 512; // 0x200
10036    field public static final int TIME_INTERLEAVE_MODE_3_1 = 1024; // 0x400
10037    field public static final int TIME_INTERLEAVE_MODE_3_2 = 2048; // 0x800
10038    field public static final int TIME_INTERLEAVE_MODE_3_4 = 4096; // 0x1000
10039    field public static final int TIME_INTERLEAVE_MODE_AUTO = 1; // 0x1
10040    field public static final int TIME_INTERLEAVE_MODE_UNDEFINED = 0; // 0x0
10041  }
10042
10043  public static class IsdbtFrontendSettings.Builder {
10044    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings build();
10045    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setBandwidth(int);
10046    method @Deprecated @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setCodeRate(int);
10047    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setFrequency(int);
10048    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setFrequencyLong(long);
10049    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setGuardInterval(int);
10050    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setLayerSettings(@NonNull android.media.tv.tuner.frontend.IsdbtFrontendSettings.IsdbtLayerSettings[]);
10051    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setMode(int);
10052    method @Deprecated @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setModulation(int);
10053    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setPartialReceptionFlag(int);
10054    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setServiceAreaId(int);
10055  }
10056
10057  public static final class IsdbtFrontendSettings.IsdbtLayerSettings {
10058    method @NonNull public static android.media.tv.tuner.frontend.IsdbtFrontendSettings.IsdbtLayerSettings.Builder builder();
10059    method public int getCodeRate();
10060    method public int getModulation();
10061    method @IntRange(from=0, to=255) public int getNumberOfSegments();
10062    method public int getTimeInterleaveMode();
10063  }
10064
10065  public static final class IsdbtFrontendSettings.IsdbtLayerSettings.Builder {
10066    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.IsdbtLayerSettings build();
10067    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.IsdbtLayerSettings.Builder setCodeRate(int);
10068    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.IsdbtLayerSettings.Builder setModulation(int);
10069    method @IntRange(from=0, to=255) @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.IsdbtLayerSettings.Builder setNumberOfSegments(int);
10070    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.IsdbtLayerSettings.Builder setTimeInterleaveMode(int);
10071  }
10072
10073  public interface OnTuneEventListener {
10074    method public void onTuneEvent(int);
10075    field public static final int SIGNAL_LOCKED = 0; // 0x0
10076    field public static final int SIGNAL_LOST_LOCK = 2; // 0x2
10077    field public static final int SIGNAL_NO_SIGNAL = 1; // 0x1
10078  }
10079
10080  public interface ScanCallback {
10081    method public void onAnalogSifStandardReported(int);
10082    method public void onAtsc3PlpInfosReported(@NonNull android.media.tv.tuner.frontend.Atsc3PlpInfo[]);
10083    method public default void onDvbcAnnexReported(int);
10084    method public void onDvbsStandardReported(int);
10085    method public default void onDvbtCellIdsReported(@NonNull int[]);
10086    method public void onDvbtStandardReported(int);
10087    method public default void onFrequenciesLongReported(@NonNull long[]);
10088    method @Deprecated public void onFrequenciesReported(@NonNull int[]);
10089    method public void onGroupIdsReported(@NonNull int[]);
10090    method public void onHierarchyReported(int);
10091    method public void onInputStreamIdsReported(@NonNull int[]);
10092    method public void onLocked();
10093    method public default void onModulationReported(int);
10094    method public void onPlpIdsReported(@NonNull int[]);
10095    method public default void onPriorityReported(boolean);
10096    method public void onProgress(@IntRange(from=0, to=100) int);
10097    method public void onScanStopped();
10098    method public void onSignalTypeReported(int);
10099    method public void onSymbolRatesReported(@NonNull int[]);
10100    method public default void onUnlocked();
10101  }
10102
10103  @FlaggedApi("android.media.tv.flags.tuner_w_apis") public final class StandardExtension {
10104    method public int getDvbsStandardExtension();
10105    method public int getDvbtStandardExtension();
10106  }
10107
10108}
10109
10110package android.media.voice {
10111
10112  public final class KeyphraseModelManager {
10113    method @RequiresPermission(android.Manifest.permission.MANAGE_VOICE_KEYPHRASES) public void deleteKeyphraseSoundModel(int, @NonNull java.util.Locale);
10114    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_VOICE_KEYPHRASES) public android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel getKeyphraseSoundModel(int, @NonNull java.util.Locale);
10115    method @RequiresPermission(android.Manifest.permission.MANAGE_VOICE_KEYPHRASES) public void updateKeyphraseSoundModel(@NonNull android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel);
10116  }
10117
10118}
10119
10120package android.metrics {
10121
10122  public class LogMaker {
10123    ctor public LogMaker(int);
10124    ctor public LogMaker(Object[]);
10125    method public android.metrics.LogMaker addTaggedData(int, Object);
10126    method public android.metrics.LogMaker clearCategory();
10127    method public android.metrics.LogMaker clearPackageName();
10128    method public android.metrics.LogMaker clearSubtype();
10129    method public android.metrics.LogMaker clearTaggedData(int);
10130    method public android.metrics.LogMaker clearType();
10131    method public void deserialize(Object[]);
10132    method public int getCategory();
10133    method public long getCounterBucket();
10134    method public String getCounterName();
10135    method public int getCounterValue();
10136    method public String getPackageName();
10137    method public int getProcessId();
10138    method public int getSubtype();
10139    method public Object getTaggedData(int);
10140    method public long getTimestamp();
10141    method public int getType();
10142    method public int getUid();
10143    method public boolean isLongCounterBucket();
10144    method public boolean isSubsetOf(android.metrics.LogMaker);
10145    method public boolean isValidValue(Object);
10146    method public Object[] serialize();
10147    method public android.metrics.LogMaker setCategory(int);
10148    method public android.metrics.LogMaker setPackageName(String);
10149    method public android.metrics.LogMaker setSubtype(int);
10150    method public android.metrics.LogMaker setType(int);
10151  }
10152
10153  public class MetricsReader {
10154    ctor public MetricsReader();
10155    method public void checkpoint();
10156    method public boolean hasNext();
10157    method public android.metrics.LogMaker next();
10158    method public void read(long);
10159    method public void reset();
10160  }
10161
10162}
10163
10164package android.net {
10165
10166  public final class MatchAllNetworkSpecifier extends android.net.NetworkSpecifier implements android.os.Parcelable {
10167    ctor public MatchAllNetworkSpecifier();
10168    method public int describeContents();
10169    method public void writeToParcel(@NonNull android.os.Parcel, int);
10170    field @NonNull public static final android.os.Parcelable.Creator<android.net.MatchAllNetworkSpecifier> CREATOR;
10171  }
10172
10173  @Deprecated public class NetworkKey implements android.os.Parcelable {
10174    ctor @Deprecated public NetworkKey(android.net.WifiKey);
10175    method @Deprecated @Nullable public static android.net.NetworkKey createFromScanResult(@NonNull android.net.wifi.ScanResult);
10176    method @Deprecated public int describeContents();
10177    method @Deprecated public void writeToParcel(android.os.Parcel, int);
10178    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.net.NetworkKey> CREATOR;
10179    field @Deprecated public static final int TYPE_WIFI = 1; // 0x1
10180    field @Deprecated public final int type;
10181    field @Deprecated public final android.net.WifiKey wifiKey;
10182  }
10183
10184  public abstract class NetworkRecommendationProvider {
10185    ctor public NetworkRecommendationProvider(android.content.Context, java.util.concurrent.Executor);
10186    method public final android.os.IBinder getBinder();
10187    method public abstract void onRequestScores(android.net.NetworkKey[]);
10188  }
10189
10190  @Deprecated public class NetworkScoreManager {
10191    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.SCORE_NETWORKS, android.Manifest.permission.REQUEST_NETWORK_SCORES}) public boolean clearScores() throws java.lang.SecurityException;
10192    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.SCORE_NETWORKS, android.Manifest.permission.REQUEST_NETWORK_SCORES}) public void disableScoring() throws java.lang.SecurityException;
10193    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.SCORE_NETWORKS, android.Manifest.permission.REQUEST_NETWORK_SCORES}) public String getActiveScorerPackage();
10194    method @Deprecated @RequiresPermission(android.Manifest.permission.REQUEST_NETWORK_SCORES) public void registerNetworkScoreCallback(int, int, @NonNull java.util.concurrent.Executor, @NonNull android.net.NetworkScoreManager.NetworkScoreCallback) throws java.lang.SecurityException;
10195    method @Deprecated @RequiresPermission(android.Manifest.permission.REQUEST_NETWORK_SCORES) public boolean requestScores(@NonNull java.util.Collection<android.net.NetworkKey>) throws java.lang.SecurityException;
10196    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.SCORE_NETWORKS, android.Manifest.permission.REQUEST_NETWORK_SCORES}) public boolean setActiveScorer(String) throws java.lang.SecurityException;
10197    method @Deprecated @RequiresPermission(android.Manifest.permission.SCORE_NETWORKS) public boolean updateScores(@NonNull android.net.ScoredNetwork[]) throws java.lang.SecurityException;
10198    field @Deprecated public static final String ACTION_CHANGE_ACTIVE = "android.net.scoring.CHANGE_ACTIVE";
10199    field @Deprecated public static final String ACTION_CUSTOM_ENABLE = "android.net.scoring.CUSTOM_ENABLE";
10200    field @Deprecated public static final String ACTION_RECOMMEND_NETWORKS = "android.net.action.RECOMMEND_NETWORKS";
10201    field @Deprecated public static final String ACTION_SCORER_CHANGED = "android.net.scoring.SCORER_CHANGED";
10202    field @Deprecated public static final String ACTION_SCORE_NETWORKS = "android.net.scoring.SCORE_NETWORKS";
10203    field @Deprecated public static final String EXTRA_NETWORKS_TO_SCORE = "networksToScore";
10204    field @Deprecated public static final String EXTRA_NEW_SCORER = "newScorer";
10205    field @Deprecated public static final String EXTRA_PACKAGE_NAME = "packageName";
10206    field @Deprecated public static final int SCORE_FILTER_CURRENT_NETWORK = 1; // 0x1
10207    field @Deprecated public static final int SCORE_FILTER_NONE = 0; // 0x0
10208    field @Deprecated public static final int SCORE_FILTER_SCAN_RESULTS = 2; // 0x2
10209  }
10210
10211  @Deprecated public abstract static class NetworkScoreManager.NetworkScoreCallback {
10212    ctor @Deprecated public NetworkScoreManager.NetworkScoreCallback();
10213    method @Deprecated public abstract void onScoresInvalidated();
10214    method @Deprecated public abstract void onScoresUpdated(@NonNull java.util.Collection<android.net.ScoredNetwork>);
10215  }
10216
10217  public abstract class NetworkSpecifier {
10218    method public boolean canBeSatisfiedBy(@Nullable android.net.NetworkSpecifier);
10219    method @Nullable public android.net.NetworkSpecifier redact();
10220  }
10221
10222  public class NetworkStack {
10223    method @Nullable public static android.os.IBinder getService();
10224    field public static final String PERMISSION_MAINLINE_NETWORK_STACK = "android.permission.MAINLINE_NETWORK_STACK";
10225  }
10226
10227  @Deprecated public class RssiCurve implements android.os.Parcelable {
10228    ctor @Deprecated public RssiCurve(int, int, byte[]);
10229    ctor @Deprecated public RssiCurve(int, int, byte[], int);
10230    method @Deprecated public int describeContents();
10231    method @Deprecated public byte lookupScore(int);
10232    method @Deprecated public byte lookupScore(int, boolean);
10233    method @Deprecated public void writeToParcel(android.os.Parcel, int);
10234    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.net.RssiCurve> CREATOR;
10235    field @Deprecated public final int activeNetworkRssiBoost;
10236    field @Deprecated public final int bucketWidth;
10237    field @Deprecated public final byte[] rssiBuckets;
10238    field @Deprecated public final int start;
10239  }
10240
10241  @Deprecated public class ScoredNetwork implements android.os.Parcelable {
10242    ctor @Deprecated public ScoredNetwork(android.net.NetworkKey, android.net.RssiCurve);
10243    ctor @Deprecated public ScoredNetwork(android.net.NetworkKey, android.net.RssiCurve, boolean);
10244    ctor @Deprecated public ScoredNetwork(android.net.NetworkKey, android.net.RssiCurve, boolean, @Nullable android.os.Bundle);
10245    method @Deprecated public int calculateBadge(int);
10246    method @Deprecated public int describeContents();
10247    method @Deprecated public void writeToParcel(android.os.Parcel, int);
10248    field @Deprecated public static final String ATTRIBUTES_KEY_BADGING_CURVE = "android.net.attributes.key.BADGING_CURVE";
10249    field @Deprecated public static final String ATTRIBUTES_KEY_HAS_CAPTIVE_PORTAL = "android.net.attributes.key.HAS_CAPTIVE_PORTAL";
10250    field @Deprecated public static final String ATTRIBUTES_KEY_RANKING_SCORE_OFFSET = "android.net.attributes.key.RANKING_SCORE_OFFSET";
10251    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.net.ScoredNetwork> CREATOR;
10252    field @Deprecated @Nullable public final android.os.Bundle attributes;
10253    field @Deprecated public final boolean meteredHint;
10254    field @Deprecated public final android.net.NetworkKey networkKey;
10255    field @Deprecated public final android.net.RssiCurve rssiCurve;
10256  }
10257
10258  public abstract class Uri implements java.lang.Comparable<android.net.Uri> android.os.Parcelable {
10259    method @NonNull public String toSafeString();
10260  }
10261
10262  public class VpnService extends android.app.Service {
10263    method @RequiresPermission(android.Manifest.permission.CONTROL_VPN) public static void prepareAndAuthorize(android.content.Context);
10264  }
10265
10266  public class WebAddress {
10267    ctor public WebAddress(String) throws android.net.ParseException;
10268  }
10269
10270  @Deprecated public class WifiKey implements android.os.Parcelable {
10271    ctor @Deprecated public WifiKey(String, String);
10272    method @Deprecated public int describeContents();
10273    method @Deprecated public void writeToParcel(android.os.Parcel, int);
10274    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.net.WifiKey> CREATOR;
10275    field @Deprecated public final String bssid;
10276    field @Deprecated public final String ssid;
10277  }
10278
10279}
10280
10281package android.net.metrics {
10282
10283  @Deprecated public final class ApfProgramEvent implements android.net.metrics.IpConnectivityLog.Event {
10284    method @Deprecated public int describeContents();
10285    method @Deprecated public void writeToParcel(android.os.Parcel, int);
10286  }
10287
10288  @Deprecated public static final class ApfProgramEvent.Builder {
10289    ctor @Deprecated public ApfProgramEvent.Builder();
10290    method @Deprecated @NonNull public android.net.metrics.ApfProgramEvent build();
10291    method @Deprecated @NonNull public android.net.metrics.ApfProgramEvent.Builder setActualLifetime(long);
10292    method @Deprecated @NonNull public android.net.metrics.ApfProgramEvent.Builder setCurrentRas(int);
10293    method @Deprecated @NonNull public android.net.metrics.ApfProgramEvent.Builder setFilteredRas(int);
10294    method @Deprecated @NonNull public android.net.metrics.ApfProgramEvent.Builder setFlags(boolean, boolean);
10295    method @Deprecated @NonNull public android.net.metrics.ApfProgramEvent.Builder setLifetime(long);
10296    method @Deprecated @NonNull public android.net.metrics.ApfProgramEvent.Builder setProgramLength(int);
10297  }
10298
10299  @Deprecated public final class ApfStats implements android.net.metrics.IpConnectivityLog.Event {
10300    method @Deprecated public int describeContents();
10301    method @Deprecated public void writeToParcel(android.os.Parcel, int);
10302  }
10303
10304  @Deprecated public static final class ApfStats.Builder {
10305    ctor @Deprecated public ApfStats.Builder();
10306    method @Deprecated @NonNull public android.net.metrics.ApfStats build();
10307    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setDroppedRas(int);
10308    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setDurationMs(long);
10309    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setMatchingRas(int);
10310    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setMaxProgramSize(int);
10311    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setParseErrors(int);
10312    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setProgramUpdates(int);
10313    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setProgramUpdatesAll(int);
10314    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setProgramUpdatesAllowingMulticast(int);
10315    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setReceivedRas(int);
10316    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setZeroLifetimeRas(int);
10317  }
10318
10319  @Deprecated public final class DhcpClientEvent implements android.net.metrics.IpConnectivityLog.Event {
10320    method @Deprecated public int describeContents();
10321    method @Deprecated public void writeToParcel(android.os.Parcel, int);
10322  }
10323
10324  @Deprecated public static final class DhcpClientEvent.Builder {
10325    ctor @Deprecated public DhcpClientEvent.Builder();
10326    method @Deprecated @NonNull public android.net.metrics.DhcpClientEvent build();
10327    method @Deprecated @NonNull public android.net.metrics.DhcpClientEvent.Builder setDurationMs(int);
10328    method @Deprecated @NonNull public android.net.metrics.DhcpClientEvent.Builder setMsg(String);
10329  }
10330
10331  @Deprecated public final class DhcpErrorEvent implements android.net.metrics.IpConnectivityLog.Event {
10332    ctor @Deprecated public DhcpErrorEvent(int);
10333    method @Deprecated public int describeContents();
10334    method @Deprecated public static int errorCodeWithOption(int, int);
10335    method @Deprecated public void writeToParcel(android.os.Parcel, int);
10336    field @Deprecated public static final int BOOTP_TOO_SHORT = 67174400; // 0x4010000
10337    field @Deprecated public static final int BUFFER_UNDERFLOW = 83951616; // 0x5010000
10338    field @Deprecated public static final int DHCP_BAD_MAGIC_COOKIE = 67239936; // 0x4020000
10339    field @Deprecated public static final int DHCP_ERROR = 4; // 0x4
10340    field @Deprecated public static final int DHCP_INVALID_OPTION_LENGTH = 67305472; // 0x4030000
10341    field @Deprecated public static final int DHCP_NO_COOKIE = 67502080; // 0x4060000
10342    field @Deprecated public static final int DHCP_NO_MSG_TYPE = 67371008; // 0x4040000
10343    field @Deprecated public static final int DHCP_UNKNOWN_MSG_TYPE = 67436544; // 0x4050000
10344    field @Deprecated public static final int L2_ERROR = 1; // 0x1
10345    field @Deprecated public static final int L2_TOO_SHORT = 16842752; // 0x1010000
10346    field @Deprecated public static final int L2_WRONG_ETH_TYPE = 16908288; // 0x1020000
10347    field @Deprecated public static final int L3_ERROR = 2; // 0x2
10348    field @Deprecated public static final int L3_INVALID_IP = 33751040; // 0x2030000
10349    field @Deprecated public static final int L3_NOT_IPV4 = 33685504; // 0x2020000
10350    field @Deprecated public static final int L3_TOO_SHORT = 33619968; // 0x2010000
10351    field @Deprecated public static final int L4_ERROR = 3; // 0x3
10352    field @Deprecated public static final int L4_NOT_UDP = 50397184; // 0x3010000
10353    field @Deprecated public static final int L4_WRONG_PORT = 50462720; // 0x3020000
10354    field @Deprecated public static final int MISC_ERROR = 5; // 0x5
10355    field @Deprecated public static final int PARSING_ERROR = 84082688; // 0x5030000
10356    field @Deprecated public static final int RECEIVE_ERROR = 84017152; // 0x5020000
10357  }
10358
10359  @Deprecated public class IpConnectivityLog {
10360    ctor @Deprecated public IpConnectivityLog();
10361    method @Deprecated public boolean log(long, @NonNull android.net.metrics.IpConnectivityLog.Event);
10362    method @Deprecated public boolean log(@NonNull String, @NonNull android.net.metrics.IpConnectivityLog.Event);
10363    method @Deprecated public boolean log(@NonNull android.net.Network, @NonNull int[], @NonNull android.net.metrics.IpConnectivityLog.Event);
10364    method @Deprecated public boolean log(int, @NonNull int[], @NonNull android.net.metrics.IpConnectivityLog.Event);
10365    method @Deprecated public boolean log(@NonNull android.net.metrics.IpConnectivityLog.Event);
10366  }
10367
10368  @Deprecated public static interface IpConnectivityLog.Event extends android.os.Parcelable {
10369  }
10370
10371  @Deprecated public final class IpManagerEvent implements android.net.metrics.IpConnectivityLog.Event {
10372    ctor @Deprecated public IpManagerEvent(int, long);
10373    method @Deprecated public int describeContents();
10374    method @Deprecated public void writeToParcel(android.os.Parcel, int);
10375    field @Deprecated public static final int COMPLETE_LIFECYCLE = 3; // 0x3
10376    field @Deprecated public static final int ERROR_INTERFACE_NOT_FOUND = 8; // 0x8
10377    field @Deprecated public static final int ERROR_INVALID_PROVISIONING = 7; // 0x7
10378    field @Deprecated public static final int ERROR_STARTING_IPREACHABILITYMONITOR = 6; // 0x6
10379    field @Deprecated public static final int ERROR_STARTING_IPV4 = 4; // 0x4
10380    field @Deprecated public static final int ERROR_STARTING_IPV6 = 5; // 0x5
10381    field @Deprecated public static final int PROVISIONING_FAIL = 2; // 0x2
10382    field @Deprecated public static final int PROVISIONING_OK = 1; // 0x1
10383  }
10384
10385  @Deprecated public final class IpReachabilityEvent implements android.net.metrics.IpConnectivityLog.Event {
10386    ctor @Deprecated public IpReachabilityEvent(int);
10387    method @Deprecated public int describeContents();
10388    method @Deprecated public void writeToParcel(android.os.Parcel, int);
10389    field @Deprecated public static final int NUD_FAILED = 512; // 0x200
10390    field @Deprecated public static final int NUD_FAILED_ORGANIC = 1024; // 0x400
10391    field @Deprecated public static final int PROBE = 256; // 0x100
10392    field @Deprecated public static final int PROVISIONING_LOST = 768; // 0x300
10393    field @Deprecated public static final int PROVISIONING_LOST_ORGANIC = 1280; // 0x500
10394  }
10395
10396  @Deprecated public final class NetworkEvent implements android.net.metrics.IpConnectivityLog.Event {
10397    ctor @Deprecated public NetworkEvent(int, long);
10398    ctor @Deprecated public NetworkEvent(int);
10399    method @Deprecated public int describeContents();
10400    method @Deprecated public void writeToParcel(android.os.Parcel, int);
10401    field @Deprecated public static final int NETWORK_CAPTIVE_PORTAL_FOUND = 4; // 0x4
10402    field @Deprecated public static final int NETWORK_CONNECTED = 1; // 0x1
10403    field @Deprecated public static final int NETWORK_CONSECUTIVE_DNS_TIMEOUT_FOUND = 12; // 0xc
10404    field @Deprecated public static final int NETWORK_DISCONNECTED = 7; // 0x7
10405    field @Deprecated public static final int NETWORK_FIRST_VALIDATION_PORTAL_FOUND = 10; // 0xa
10406    field @Deprecated public static final int NETWORK_FIRST_VALIDATION_SUCCESS = 8; // 0x8
10407    field @Deprecated public static final int NETWORK_LINGER = 5; // 0x5
10408    field @Deprecated public static final int NETWORK_PARTIAL_CONNECTIVITY = 13; // 0xd
10409    field @Deprecated public static final int NETWORK_REVALIDATION_PORTAL_FOUND = 11; // 0xb
10410    field @Deprecated public static final int NETWORK_REVALIDATION_SUCCESS = 9; // 0x9
10411    field @Deprecated public static final int NETWORK_UNLINGER = 6; // 0x6
10412    field @Deprecated public static final int NETWORK_VALIDATED = 2; // 0x2
10413    field @Deprecated public static final int NETWORK_VALIDATION_FAILED = 3; // 0x3
10414  }
10415
10416  @Deprecated public final class RaEvent implements android.net.metrics.IpConnectivityLog.Event {
10417    method @Deprecated public int describeContents();
10418    method @Deprecated public void writeToParcel(android.os.Parcel, int);
10419  }
10420
10421  @Deprecated public static final class RaEvent.Builder {
10422    ctor @Deprecated public RaEvent.Builder();
10423    method @Deprecated @NonNull public android.net.metrics.RaEvent build();
10424    method @Deprecated @NonNull public android.net.metrics.RaEvent.Builder updateDnsslLifetime(long);
10425    method @Deprecated @NonNull public android.net.metrics.RaEvent.Builder updatePrefixPreferredLifetime(long);
10426    method @Deprecated @NonNull public android.net.metrics.RaEvent.Builder updatePrefixValidLifetime(long);
10427    method @Deprecated @NonNull public android.net.metrics.RaEvent.Builder updateRdnssLifetime(long);
10428    method @Deprecated @NonNull public android.net.metrics.RaEvent.Builder updateRouteInfoLifetime(long);
10429    method @Deprecated @NonNull public android.net.metrics.RaEvent.Builder updateRouterLifetime(long);
10430  }
10431
10432  @Deprecated public final class ValidationProbeEvent implements android.net.metrics.IpConnectivityLog.Event {
10433    method @Deprecated public int describeContents();
10434    method @Deprecated @NonNull public static String getProbeName(int);
10435    method @Deprecated public void writeToParcel(android.os.Parcel, int);
10436    field @Deprecated public static final int DNS_FAILURE = 0; // 0x0
10437    field @Deprecated public static final int DNS_SUCCESS = 1; // 0x1
10438    field @Deprecated public static final int PROBE_DNS = 0; // 0x0
10439    field @Deprecated public static final int PROBE_FALLBACK = 4; // 0x4
10440    field @Deprecated public static final int PROBE_HTTP = 1; // 0x1
10441    field @Deprecated public static final int PROBE_HTTPS = 2; // 0x2
10442    field @Deprecated public static final int PROBE_PAC = 3; // 0x3
10443    field @Deprecated public static final int PROBE_PRIVDNS = 5; // 0x5
10444  }
10445
10446  @Deprecated public static final class ValidationProbeEvent.Builder {
10447    ctor @Deprecated public ValidationProbeEvent.Builder();
10448    method @Deprecated @NonNull public android.net.metrics.ValidationProbeEvent build();
10449    method @Deprecated @NonNull public android.net.metrics.ValidationProbeEvent.Builder setDurationMs(long);
10450    method @Deprecated @NonNull public android.net.metrics.ValidationProbeEvent.Builder setProbeType(int, boolean);
10451    method @Deprecated @NonNull public android.net.metrics.ValidationProbeEvent.Builder setReturnCode(int);
10452  }
10453
10454}
10455
10456package android.net.sip {
10457
10458  @Deprecated public class SipAudioCall {
10459    method @Deprecated @Nullable public android.net.rtp.AudioGroup getAudioGroup();
10460    method @Deprecated public void setAudioGroup(@NonNull android.net.rtp.AudioGroup);
10461  }
10462
10463  @Deprecated public class SipManager {
10464    method @Deprecated @NonNull public java.util.List<android.net.sip.SipProfile> getProfiles() throws android.net.sip.SipException;
10465    field @Deprecated public static final String ACTION_SIP_CALL_OPTION_CHANGED = "android.net.sip.action.SIP_CALL_OPTION_CHANGED";
10466    field @Deprecated public static final String ACTION_SIP_INCOMING_CALL = "android.net.sip.action.SIP_INCOMING_CALL";
10467    field @Deprecated public static final String ACTION_SIP_REMOVE_PROFILE = "android.net.sip.action.SIP_REMOVE_PROFILE";
10468    field @Deprecated public static final String ACTION_SIP_SERVICE_UP = "android.net.sip.action.SIP_SERVICE_UP";
10469    field @Deprecated public static final String ACTION_START_SIP = "android.net.sip.action.START_SIP";
10470  }
10471
10472  @Deprecated public class SipProfile implements java.lang.Cloneable android.os.Parcelable java.io.Serializable {
10473    method @Deprecated public int getCallingUid();
10474  }
10475
10476}
10477
10478package android.net.util {
10479
10480  public final class SocketUtils {
10481    method public static void bindSocketToInterface(@NonNull java.io.FileDescriptor, @NonNull String) throws android.system.ErrnoException;
10482    method public static void closeSocket(@Nullable java.io.FileDescriptor) throws java.io.IOException;
10483    method @NonNull public static java.net.SocketAddress makeNetlinkSocketAddress(int, int);
10484    method @NonNull public static java.net.SocketAddress makePacketSocketAddress(int, int);
10485    method @Deprecated @NonNull public static java.net.SocketAddress makePacketSocketAddress(int, @NonNull byte[]);
10486    method @NonNull public static java.net.SocketAddress makePacketSocketAddress(int, int, @NonNull byte[]);
10487  }
10488
10489}
10490
10491package android.net.wifi {
10492
10493  public final class WifiKeystore {
10494    method @NonNull public static byte[] get(@NonNull String);
10495    method @NonNull public static String[] list(@NonNull String);
10496    method public static boolean put(@NonNull String, @NonNull byte[]);
10497    method public static boolean remove(@NonNull String);
10498  }
10499
10500  public final class WifiMigration {
10501    method @Nullable public static java.io.InputStream convertAndRetrieveSharedConfigStoreFile(int);
10502    method @Nullable public static java.io.InputStream convertAndRetrieveUserConfigStoreFile(int, @NonNull android.os.UserHandle);
10503    method @NonNull public static android.net.wifi.WifiMigration.SettingsMigrationData loadFromSettings(@NonNull android.content.Context);
10504    method public static void removeSharedConfigStoreFile(int);
10505    method public static void removeUserConfigStoreFile(int, @NonNull android.os.UserHandle);
10506    field public static final int STORE_FILE_SHARED_GENERAL = 0; // 0x0
10507    field public static final int STORE_FILE_SHARED_SOFTAP = 1; // 0x1
10508    field public static final int STORE_FILE_USER_GENERAL = 2; // 0x2
10509    field public static final int STORE_FILE_USER_NETWORK_SUGGESTIONS = 3; // 0x3
10510  }
10511
10512  public static final class WifiMigration.SettingsMigrationData implements android.os.Parcelable {
10513    method public int describeContents();
10514    method @Nullable public String getP2pDeviceName();
10515    method public boolean isP2pFactoryResetPending();
10516    method public boolean isScanAlwaysAvailable();
10517    method public boolean isScanThrottleEnabled();
10518    method public boolean isSoftApTimeoutEnabled();
10519    method public boolean isVerboseLoggingEnabled();
10520    method public boolean isWakeUpEnabled();
10521    method public void writeToParcel(@NonNull android.os.Parcel, int);
10522    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiMigration.SettingsMigrationData> CREATOR;
10523  }
10524
10525  public static final class WifiMigration.SettingsMigrationData.Builder {
10526    ctor public WifiMigration.SettingsMigrationData.Builder();
10527    method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData build();
10528    method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData.Builder setP2pDeviceName(@Nullable String);
10529    method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData.Builder setP2pFactoryResetPending(boolean);
10530    method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData.Builder setScanAlwaysAvailable(boolean);
10531    method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData.Builder setScanThrottleEnabled(boolean);
10532    method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData.Builder setSoftApTimeoutEnabled(boolean);
10533    method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData.Builder setVerboseLoggingEnabled(boolean);
10534    method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData.Builder setWakeUpEnabled(boolean);
10535  }
10536
10537}
10538
10539package android.net.wifi.nl80211 {
10540
10541  public final class DeviceWiphyCapabilities implements android.os.Parcelable {
10542    ctor public DeviceWiphyCapabilities();
10543    method public int describeContents();
10544    method @FlaggedApi("android.net.wifi.flags.get_device_cross_akm_roaming_support") public int getMaxNumberAkms();
10545    method public int getMaxNumberRxSpatialStreams();
10546    method public int getMaxNumberTxSpatialStreams();
10547    method public boolean isChannelWidthSupported(int);
10548    method public boolean isWifiStandardSupported(int);
10549    method public void setWifiStandardSupport(int, boolean);
10550    method public void writeToParcel(@NonNull android.os.Parcel, int);
10551    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.nl80211.DeviceWiphyCapabilities> CREATOR;
10552  }
10553
10554  public final class NativeScanResult implements android.os.Parcelable {
10555    ctor public NativeScanResult();
10556    method public int describeContents();
10557    method @Nullable public android.net.MacAddress getBssid();
10558    method public int getCapabilities();
10559    method public int getFrequencyMhz();
10560    method @NonNull public byte[] getInformationElements();
10561    method @NonNull public java.util.List<android.net.wifi.nl80211.RadioChainInfo> getRadioChainInfos();
10562    method public int getSignalMbm();
10563    method @NonNull public byte[] getSsid();
10564    method public long getTsf();
10565    method public boolean isAssociated();
10566    method public void writeToParcel(@NonNull android.os.Parcel, int);
10567    field public static final int BSS_CAPABILITY_APSD = 2048; // 0x800
10568    field public static final int BSS_CAPABILITY_CF_POLLABLE = 4; // 0x4
10569    field public static final int BSS_CAPABILITY_CF_POLL_REQUEST = 8; // 0x8
10570    field public static final int BSS_CAPABILITY_CHANNEL_AGILITY = 128; // 0x80
10571    field public static final int BSS_CAPABILITY_DELAYED_BLOCK_ACK = 16384; // 0x4000
10572    field public static final int BSS_CAPABILITY_DMG_ESS = 3; // 0x3
10573    field public static final int BSS_CAPABILITY_DMG_IBSS = 1; // 0x1
10574    field public static final int BSS_CAPABILITY_DSSS_OFDM = 8192; // 0x2000
10575    field public static final int BSS_CAPABILITY_ESS = 1; // 0x1
10576    field public static final int BSS_CAPABILITY_IBSS = 2; // 0x2
10577    field public static final int BSS_CAPABILITY_IMMEDIATE_BLOCK_ACK = 32768; // 0x8000
10578    field public static final int BSS_CAPABILITY_PBCC = 64; // 0x40
10579    field public static final int BSS_CAPABILITY_PRIVACY = 16; // 0x10
10580    field public static final int BSS_CAPABILITY_QOS = 512; // 0x200
10581    field public static final int BSS_CAPABILITY_RADIO_MANAGEMENT = 4096; // 0x1000
10582    field public static final int BSS_CAPABILITY_SHORT_PREAMBLE = 32; // 0x20
10583    field public static final int BSS_CAPABILITY_SHORT_SLOT_TIME = 1024; // 0x400
10584    field public static final int BSS_CAPABILITY_SPECTRUM_MANAGEMENT = 256; // 0x100
10585    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.nl80211.NativeScanResult> CREATOR;
10586  }
10587
10588  public final class NativeWifiClient implements android.os.Parcelable {
10589    ctor public NativeWifiClient(@Nullable android.net.MacAddress);
10590    method public int describeContents();
10591    method @Nullable public android.net.MacAddress getMacAddress();
10592    method public void writeToParcel(@NonNull android.os.Parcel, int);
10593    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.nl80211.NativeWifiClient> CREATOR;
10594  }
10595
10596  public final class PnoNetwork implements android.os.Parcelable {
10597    ctor public PnoNetwork();
10598    method public int describeContents();
10599    method @NonNull public int[] getFrequenciesMhz();
10600    method @NonNull public byte[] getSsid();
10601    method public boolean isHidden();
10602    method public void setFrequenciesMhz(@NonNull int[]);
10603    method public void setHidden(boolean);
10604    method public void setSsid(@NonNull byte[]);
10605    method public void writeToParcel(@NonNull android.os.Parcel, int);
10606    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.nl80211.PnoNetwork> CREATOR;
10607  }
10608
10609  public final class PnoSettings implements android.os.Parcelable {
10610    ctor public PnoSettings();
10611    method public int describeContents();
10612    method public long getIntervalMillis();
10613    method public int getMin2gRssiDbm();
10614    method public int getMin5gRssiDbm();
10615    method public int getMin6gRssiDbm();
10616    method @NonNull public java.util.List<android.net.wifi.nl80211.PnoNetwork> getPnoNetworks();
10617    method public int getScanIntervalMultiplier();
10618    method public int getScanIterations();
10619    method public void setIntervalMillis(long);
10620    method public void setMin2gRssiDbm(int);
10621    method public void setMin5gRssiDbm(int);
10622    method public void setMin6gRssiDbm(int);
10623    method public void setPnoNetworks(@NonNull java.util.List<android.net.wifi.nl80211.PnoNetwork>);
10624    method public void setScanIntervalMultiplier(int);
10625    method public void setScanIterations(int);
10626    method public void writeToParcel(@NonNull android.os.Parcel, int);
10627    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.nl80211.PnoSettings> CREATOR;
10628  }
10629
10630  public final class RadioChainInfo implements android.os.Parcelable {
10631    ctor public RadioChainInfo(int, int);
10632    method public int describeContents();
10633    method public int getChainId();
10634    method public int getLevelDbm();
10635    method public void writeToParcel(@NonNull android.os.Parcel, int);
10636    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.nl80211.RadioChainInfo> CREATOR;
10637  }
10638
10639  public class WifiNl80211Manager {
10640    ctor public WifiNl80211Manager(@NonNull android.content.Context, @NonNull android.os.IBinder);
10641    method public void abortScan(@NonNull String);
10642    method public void enableVerboseLogging(boolean);
10643    method @NonNull public int[] getChannelsMhzForBand(int);
10644    method @Nullable public android.net.wifi.nl80211.DeviceWiphyCapabilities getDeviceWiphyCapabilities(@NonNull String);
10645    method public int getMaxSsidsPerScan(@NonNull String);
10646    method @NonNull public java.util.List<android.net.wifi.nl80211.NativeScanResult> getScanResults(@NonNull String, int);
10647    method @Nullable public android.net.wifi.nl80211.WifiNl80211Manager.TxPacketCounters getTxPacketCounters(@NonNull String);
10648    method public void notifyCountryCodeChanged(@Nullable String);
10649    method @Nullable public static android.net.wifi.nl80211.WifiNl80211Manager.OemSecurityType parseOemSecurityTypeElement(int, int, @NonNull byte[]);
10650    method @Deprecated public boolean registerApCallback(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.nl80211.WifiNl80211Manager.SoftApCallback);
10651    method public boolean registerCountryCodeChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.nl80211.WifiNl80211Manager.CountryCodeChangedListener);
10652    method public void sendMgmtFrame(@NonNull String, @NonNull byte[], int, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.nl80211.WifiNl80211Manager.SendMgmtFrameCallback);
10653    method public void setOnServiceDeadCallback(@NonNull Runnable);
10654    method public boolean setupInterfaceForClientMode(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.nl80211.WifiNl80211Manager.ScanEventCallback, @NonNull android.net.wifi.nl80211.WifiNl80211Manager.ScanEventCallback);
10655    method public boolean setupInterfaceForSoftApMode(@NonNull String);
10656    method @Deprecated @Nullable public android.net.wifi.nl80211.WifiNl80211Manager.SignalPollResult signalPoll(@NonNull String);
10657    method public boolean startPnoScan(@NonNull String, @NonNull android.net.wifi.nl80211.PnoSettings, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.nl80211.WifiNl80211Manager.PnoScanRequestCallback);
10658    method @Deprecated public boolean startScan(@NonNull String, int, @Nullable java.util.Set<java.lang.Integer>, @Nullable java.util.List<byte[]>);
10659    method @Deprecated public boolean startScan(@NonNull String, int, @Nullable java.util.Set<java.lang.Integer>, @Nullable java.util.List<byte[]>, @Nullable android.os.Bundle);
10660    method public int startScan2(@NonNull String, int, @Nullable java.util.Set<java.lang.Integer>, @Nullable java.util.List<byte[]>, @Nullable android.os.Bundle);
10661    method public boolean stopPnoScan(@NonNull String);
10662    method public boolean tearDownClientInterface(@NonNull String);
10663    method public boolean tearDownInterfaces();
10664    method public boolean tearDownSoftApInterface(@NonNull String);
10665    method public void unregisterCountryCodeChangedListener(@NonNull android.net.wifi.nl80211.WifiNl80211Manager.CountryCodeChangedListener);
10666    field public static final String EXTRA_SCANNING_PARAM_VENDOR_IES = "android.net.wifi.nl80211.extra.SCANNING_PARAM_VENDOR_IES";
10667    field public static final String SCANNING_PARAM_ENABLE_6GHZ_RNR = "android.net.wifi.nl80211.SCANNING_PARAM_ENABLE_6GHZ_RNR";
10668    field public static final int SCAN_TYPE_PNO_SCAN = 1; // 0x1
10669    field public static final int SCAN_TYPE_SINGLE_SCAN = 0; // 0x0
10670    field public static final int SEND_MGMT_FRAME_ERROR_ALREADY_STARTED = 5; // 0x5
10671    field public static final int SEND_MGMT_FRAME_ERROR_MCS_UNSUPPORTED = 2; // 0x2
10672    field public static final int SEND_MGMT_FRAME_ERROR_NO_ACK = 3; // 0x3
10673    field public static final int SEND_MGMT_FRAME_ERROR_TIMEOUT = 4; // 0x4
10674    field public static final int SEND_MGMT_FRAME_ERROR_UNKNOWN = 1; // 0x1
10675  }
10676
10677  public static interface WifiNl80211Manager.CountryCodeChangedListener {
10678    method public void onCountryCodeChanged(@NonNull String);
10679  }
10680
10681  public static class WifiNl80211Manager.OemSecurityType {
10682    ctor public WifiNl80211Manager.OemSecurityType(int, @NonNull java.util.List<java.lang.Integer>, @NonNull java.util.List<java.lang.Integer>, int);
10683    field public final int groupCipher;
10684    field @NonNull public final java.util.List<java.lang.Integer> keyManagement;
10685    field @NonNull public final java.util.List<java.lang.Integer> pairwiseCipher;
10686    field public final int protocol;
10687  }
10688
10689  public static interface WifiNl80211Manager.PnoScanRequestCallback {
10690    method public void onPnoRequestFailed();
10691    method public void onPnoRequestSucceeded();
10692  }
10693
10694  public static interface WifiNl80211Manager.ScanEventCallback {
10695    method @Deprecated public void onScanFailed();
10696    method public default void onScanFailed(int);
10697    method public void onScanResultReady();
10698  }
10699
10700  public static interface WifiNl80211Manager.SendMgmtFrameCallback {
10701    method public void onAck(int);
10702    method public void onFailure(int);
10703  }
10704
10705  @Deprecated public static class WifiNl80211Manager.SignalPollResult {
10706    field @Deprecated public final int associationFrequencyMHz;
10707    field @Deprecated public final int currentRssiDbm;
10708    field @Deprecated public final int rxBitrateMbps;
10709    field @Deprecated public final int txBitrateMbps;
10710  }
10711
10712  @Deprecated public static interface WifiNl80211Manager.SoftApCallback {
10713    method @Deprecated public void onConnectedClientsChanged(@NonNull android.net.wifi.nl80211.NativeWifiClient, boolean);
10714    method @Deprecated public void onFailure();
10715    method @Deprecated public void onSoftApChannelSwitched(int, int);
10716  }
10717
10718  public static class WifiNl80211Manager.TxPacketCounters {
10719    field public final int txPacketFailed;
10720    field public final int txPacketSucceeded;
10721  }
10722
10723}
10724
10725package android.net.wifi.sharedconnectivity.app {
10726
10727  public final class HotspotNetwork implements android.os.Parcelable {
10728    method public int describeContents();
10729    method public long getDeviceId();
10730    method @NonNull public android.os.Bundle getExtras();
10731    method public int getHostNetworkType();
10732    method @Nullable public String getHotspotBssid();
10733    method @NonNull public java.util.Set<java.lang.Integer> getHotspotSecurityTypes();
10734    method @Nullable public String getHotspotSsid();
10735    method @NonNull public String getNetworkName();
10736    method @NonNull public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo getNetworkProviderInfo();
10737    method public void writeToParcel(@NonNull android.os.Parcel, int);
10738    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.sharedconnectivity.app.HotspotNetwork> CREATOR;
10739    field public static final int NETWORK_TYPE_CELLULAR = 1; // 0x1
10740    field public static final int NETWORK_TYPE_ETHERNET = 3; // 0x3
10741    field public static final int NETWORK_TYPE_UNKNOWN = 0; // 0x0
10742    field public static final int NETWORK_TYPE_WIFI = 2; // 0x2
10743  }
10744
10745  public static final class HotspotNetwork.Builder {
10746    ctor public HotspotNetwork.Builder();
10747    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork.Builder addHotspotSecurityType(int);
10748    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork build();
10749    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork.Builder setDeviceId(long);
10750    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork.Builder setExtras(@NonNull android.os.Bundle);
10751    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork.Builder setHostNetworkType(int);
10752    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork.Builder setHotspotBssid(@NonNull String);
10753    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork.Builder setHotspotSsid(@NonNull String);
10754    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork.Builder setNetworkName(@NonNull String);
10755    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork.Builder setNetworkProviderInfo(@NonNull android.net.wifi.sharedconnectivity.app.NetworkProviderInfo);
10756  }
10757
10758  public final class HotspotNetworkConnectionStatus implements android.os.Parcelable {
10759    method public int describeContents();
10760    method @NonNull public android.os.Bundle getExtras();
10761    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork getHotspotNetwork();
10762    method public int getStatus();
10763    method public void writeToParcel(@NonNull android.os.Parcel, int);
10764    field public static final int CONNECTION_STATUS_CONNECT_TO_HOTSPOT_FAILED = 9; // 0x9
10765    field public static final int CONNECTION_STATUS_ENABLING_HOTSPOT = 1; // 0x1
10766    field public static final int CONNECTION_STATUS_ENABLING_HOTSPOT_FAILED = 7; // 0x7
10767    field public static final int CONNECTION_STATUS_ENABLING_HOTSPOT_TIMEOUT = 8; // 0x8
10768    field public static final int CONNECTION_STATUS_NO_CELL_DATA = 6; // 0x6
10769    field public static final int CONNECTION_STATUS_PROVISIONING_FAILED = 3; // 0x3
10770    field public static final int CONNECTION_STATUS_TETHERING_TIMEOUT = 4; // 0x4
10771    field public static final int CONNECTION_STATUS_TETHERING_UNSUPPORTED = 5; // 0x5
10772    field public static final int CONNECTION_STATUS_UNKNOWN = 0; // 0x0
10773    field public static final int CONNECTION_STATUS_UNKNOWN_ERROR = 2; // 0x2
10774    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.sharedconnectivity.app.HotspotNetworkConnectionStatus> CREATOR;
10775  }
10776
10777  public static final class HotspotNetworkConnectionStatus.Builder {
10778    ctor public HotspotNetworkConnectionStatus.Builder();
10779    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetworkConnectionStatus build();
10780    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetworkConnectionStatus.Builder setExtras(@NonNull android.os.Bundle);
10781    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetworkConnectionStatus.Builder setHotspotNetwork(@NonNull android.net.wifi.sharedconnectivity.app.HotspotNetwork);
10782    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetworkConnectionStatus.Builder setStatus(int);
10783  }
10784
10785  public final class KnownNetwork implements android.os.Parcelable {
10786    method public int describeContents();
10787    method @NonNull public android.os.Bundle getExtras();
10788    method @Nullable public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo getNetworkProviderInfo();
10789    method public int getNetworkSource();
10790    method @NonNull public java.util.Set<java.lang.Integer> getSecurityTypes();
10791    method @NonNull public String getSsid();
10792    method public void writeToParcel(@NonNull android.os.Parcel, int);
10793    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.sharedconnectivity.app.KnownNetwork> CREATOR;
10794    field public static final int NETWORK_SOURCE_CLOUD_SELF = 2; // 0x2
10795    field public static final int NETWORK_SOURCE_NEARBY_SELF = 1; // 0x1
10796    field public static final int NETWORK_SOURCE_UNKNOWN = 0; // 0x0
10797  }
10798
10799  public static final class KnownNetwork.Builder {
10800    ctor public KnownNetwork.Builder();
10801    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetwork.Builder addSecurityType(int);
10802    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetwork build();
10803    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetwork.Builder setExtras(@NonNull android.os.Bundle);
10804    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetwork.Builder setNetworkProviderInfo(@Nullable android.net.wifi.sharedconnectivity.app.NetworkProviderInfo);
10805    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetwork.Builder setNetworkSource(int);
10806    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetwork.Builder setSsid(@NonNull String);
10807  }
10808
10809  public final class KnownNetworkConnectionStatus implements android.os.Parcelable {
10810    method public int describeContents();
10811    method @NonNull public android.os.Bundle getExtras();
10812    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetwork getKnownNetwork();
10813    method public int getStatus();
10814    method public void writeToParcel(@NonNull android.os.Parcel, int);
10815    field public static final int CONNECTION_STATUS_SAVED = 1; // 0x1
10816    field public static final int CONNECTION_STATUS_SAVE_FAILED = 2; // 0x2
10817    field public static final int CONNECTION_STATUS_UNKNOWN = 0; // 0x0
10818    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.sharedconnectivity.app.KnownNetworkConnectionStatus> CREATOR;
10819  }
10820
10821  public static final class KnownNetworkConnectionStatus.Builder {
10822    ctor public KnownNetworkConnectionStatus.Builder();
10823    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetworkConnectionStatus build();
10824    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetworkConnectionStatus.Builder setExtras(@NonNull android.os.Bundle);
10825    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetworkConnectionStatus.Builder setKnownNetwork(@NonNull android.net.wifi.sharedconnectivity.app.KnownNetwork);
10826    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetworkConnectionStatus.Builder setStatus(int);
10827  }
10828
10829  public final class NetworkProviderInfo implements android.os.Parcelable {
10830    method public int describeContents();
10831    method @IntRange(from=0, to=100) public int getBatteryPercentage();
10832    method @IntRange(from=0, to=4) public int getConnectionStrength();
10833    method @NonNull public String getDeviceName();
10834    method public int getDeviceType();
10835    method @NonNull public android.os.Bundle getExtras();
10836    method @NonNull public String getModelName();
10837    method @FlaggedApi("android.net.wifi.flags.network_provider_battery_charging_status") public boolean isBatteryCharging();
10838    method public void writeToParcel(@NonNull android.os.Parcel, int);
10839    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.sharedconnectivity.app.NetworkProviderInfo> CREATOR;
10840    field public static final int DEVICE_TYPE_AUTO = 5; // 0x5
10841    field public static final int DEVICE_TYPE_LAPTOP = 3; // 0x3
10842    field public static final int DEVICE_TYPE_PHONE = 1; // 0x1
10843    field public static final int DEVICE_TYPE_TABLET = 2; // 0x2
10844    field public static final int DEVICE_TYPE_UNKNOWN = 0; // 0x0
10845    field public static final int DEVICE_TYPE_WATCH = 4; // 0x4
10846  }
10847
10848  public static final class NetworkProviderInfo.Builder {
10849    ctor public NetworkProviderInfo.Builder(@NonNull String, @NonNull String);
10850    method @NonNull public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo build();
10851    method @FlaggedApi("android.net.wifi.flags.network_provider_battery_charging_status") @NonNull public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo.Builder setBatteryCharging(boolean);
10852    method @NonNull public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo.Builder setBatteryPercentage(@IntRange(from=0, to=100) int);
10853    method @NonNull public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo.Builder setConnectionStrength(@IntRange(from=0, to=4) int);
10854    method @NonNull public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo.Builder setDeviceName(@NonNull String);
10855    method @NonNull public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo.Builder setDeviceType(int);
10856    method @NonNull public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo.Builder setExtras(@NonNull android.os.Bundle);
10857    method @NonNull public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo.Builder setModelName(@NonNull String);
10858  }
10859
10860  public interface SharedConnectivityClientCallback {
10861    method public void onHotspotNetworkConnectionStatusChanged(@NonNull android.net.wifi.sharedconnectivity.app.HotspotNetworkConnectionStatus);
10862    method public void onHotspotNetworksUpdated(@NonNull java.util.List<android.net.wifi.sharedconnectivity.app.HotspotNetwork>);
10863    method public void onKnownNetworkConnectionStatusChanged(@NonNull android.net.wifi.sharedconnectivity.app.KnownNetworkConnectionStatus);
10864    method public void onKnownNetworksUpdated(@NonNull java.util.List<android.net.wifi.sharedconnectivity.app.KnownNetwork>);
10865    method public void onRegisterCallbackFailed(@NonNull Exception);
10866    method public void onServiceConnected();
10867    method public void onServiceDisconnected();
10868    method public void onSharedConnectivitySettingsChanged(@NonNull android.net.wifi.sharedconnectivity.app.SharedConnectivitySettingsState);
10869  }
10870
10871  public class SharedConnectivityManager {
10872    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public boolean connectHotspotNetwork(@NonNull android.net.wifi.sharedconnectivity.app.HotspotNetwork);
10873    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public boolean connectKnownNetwork(@NonNull android.net.wifi.sharedconnectivity.app.KnownNetwork);
10874    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public boolean disconnectHotspotNetwork(@NonNull android.net.wifi.sharedconnectivity.app.HotspotNetwork);
10875    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public boolean forgetKnownNetwork(@NonNull android.net.wifi.sharedconnectivity.app.KnownNetwork);
10876    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public android.net.wifi.sharedconnectivity.app.HotspotNetworkConnectionStatus getHotspotNetworkConnectionStatus();
10877    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public java.util.List<android.net.wifi.sharedconnectivity.app.HotspotNetwork> getHotspotNetworks();
10878    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public android.net.wifi.sharedconnectivity.app.KnownNetworkConnectionStatus getKnownNetworkConnectionStatus();
10879    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public java.util.List<android.net.wifi.sharedconnectivity.app.KnownNetwork> getKnownNetworks();
10880    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public android.net.wifi.sharedconnectivity.app.SharedConnectivitySettingsState getSettingsState();
10881    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public void registerCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.sharedconnectivity.app.SharedConnectivityClientCallback);
10882    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public boolean unregisterCallback(@NonNull android.net.wifi.sharedconnectivity.app.SharedConnectivityClientCallback);
10883  }
10884
10885  public final class SharedConnectivitySettingsState implements android.os.Parcelable {
10886    method public int describeContents();
10887    method @NonNull public android.os.Bundle getExtras();
10888    method @Nullable public android.app.PendingIntent getInstantTetherSettingsPendingIntent();
10889    method public boolean isInstantTetherEnabled();
10890    method public void writeToParcel(@NonNull android.os.Parcel, int);
10891    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.sharedconnectivity.app.SharedConnectivitySettingsState> CREATOR;
10892  }
10893
10894  public static final class SharedConnectivitySettingsState.Builder {
10895    ctor public SharedConnectivitySettingsState.Builder();
10896    method @NonNull public android.net.wifi.sharedconnectivity.app.SharedConnectivitySettingsState build();
10897    method @NonNull public android.net.wifi.sharedconnectivity.app.SharedConnectivitySettingsState.Builder setExtras(@NonNull android.os.Bundle);
10898    method @NonNull public android.net.wifi.sharedconnectivity.app.SharedConnectivitySettingsState.Builder setInstantTetherEnabled(boolean);
10899    method @NonNull public android.net.wifi.sharedconnectivity.app.SharedConnectivitySettingsState.Builder setInstantTetherSettingsPendingIntent(@NonNull android.app.PendingIntent);
10900  }
10901
10902}
10903
10904package android.net.wifi.sharedconnectivity.service {
10905
10906  public abstract class SharedConnectivityService extends android.app.Service {
10907    ctor public SharedConnectivityService();
10908    method public static boolean areHotspotNetworksEnabledForService(@NonNull android.content.Context);
10909    method public static boolean areKnownNetworksEnabledForService(@NonNull android.content.Context);
10910    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
10911    method public abstract void onConnectHotspotNetwork(@NonNull android.net.wifi.sharedconnectivity.app.HotspotNetwork);
10912    method public abstract void onConnectKnownNetwork(@NonNull android.net.wifi.sharedconnectivity.app.KnownNetwork);
10913    method public abstract void onDisconnectHotspotNetwork(@NonNull android.net.wifi.sharedconnectivity.app.HotspotNetwork);
10914    method public abstract void onForgetKnownNetwork(@NonNull android.net.wifi.sharedconnectivity.app.KnownNetwork);
10915    method public final void setHotspotNetworks(@NonNull java.util.List<android.net.wifi.sharedconnectivity.app.HotspotNetwork>);
10916    method public final void setKnownNetworks(@NonNull java.util.List<android.net.wifi.sharedconnectivity.app.KnownNetwork>);
10917    method public final void setSettingsState(@NonNull android.net.wifi.sharedconnectivity.app.SharedConnectivitySettingsState);
10918    method public final void updateHotspotNetworkConnectionStatus(@NonNull android.net.wifi.sharedconnectivity.app.HotspotNetworkConnectionStatus);
10919    method public final void updateKnownNetworkConnectionStatus(@NonNull android.net.wifi.sharedconnectivity.app.KnownNetworkConnectionStatus);
10920  }
10921
10922}
10923
10924package android.nfc.cardemulation {
10925
10926  @FlaggedApi("android.nfc.enable_nfc_mainline") public final class AidGroup implements android.os.Parcelable {
10927    ctor @FlaggedApi("android.nfc.enable_nfc_mainline") public AidGroup(@NonNull java.util.List<java.lang.String>, @Nullable String);
10928    method @FlaggedApi("android.nfc.enable_nfc_mainline") @Nullable public static android.nfc.cardemulation.AidGroup createFromXml(@NonNull org.xmlpull.v1.XmlPullParser) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException;
10929    method @FlaggedApi("android.nfc.enable_nfc_mainline") public int describeContents();
10930    method @FlaggedApi("android.nfc.enable_nfc_mainline") public void dump(@NonNull android.util.proto.ProtoOutputStream);
10931    method @FlaggedApi("android.nfc.enable_nfc_mainline") @NonNull public java.util.List<java.lang.String> getAids();
10932    method @FlaggedApi("android.nfc.enable_nfc_mainline") @NonNull public String getCategory();
10933    method @FlaggedApi("android.nfc.enable_nfc_mainline") public void writeAsXml(@NonNull org.xmlpull.v1.XmlSerializer) throws java.io.IOException;
10934    method @FlaggedApi("android.nfc.enable_nfc_mainline") public void writeToParcel(@NonNull android.os.Parcel, int);
10935    field @FlaggedApi("android.nfc.enable_nfc_mainline") @NonNull public static final android.os.Parcelable.Creator<android.nfc.cardemulation.AidGroup> CREATOR;
10936  }
10937
10938  @FlaggedApi("android.nfc.enable_nfc_mainline") public final class ApduServiceInfo implements android.os.Parcelable {
10939    ctor @FlaggedApi("android.nfc.enable_nfc_mainline") public ApduServiceInfo(@NonNull android.content.pm.PackageManager, @NonNull android.content.pm.ResolveInfo, boolean) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException;
10940    method @FlaggedApi("android.nfc.nfc_read_polling_loop") public void addPollingLoopFilter(@NonNull String, boolean);
10941    method @FlaggedApi("android.nfc.nfc_read_polling_loop") public void addPollingLoopPatternFilter(@NonNull String, boolean);
10942    method @FlaggedApi("android.nfc.enable_nfc_mainline") public int describeContents();
10943    method @FlaggedApi("android.nfc.enable_nfc_mainline") public void dump(@NonNull android.os.ParcelFileDescriptor, @NonNull java.io.PrintWriter, @NonNull String[]);
10944    method @FlaggedApi("android.nfc.enable_nfc_mainline") public void dumpDebug(@NonNull android.util.proto.ProtoOutputStream);
10945    method @FlaggedApi("android.nfc.enable_nfc_mainline") @NonNull public java.util.List<android.nfc.cardemulation.AidGroup> getAidGroups();
10946    method @FlaggedApi("android.nfc.enable_nfc_mainline") @NonNull public java.util.List<java.lang.String> getAids();
10947    method @FlaggedApi("android.nfc.enable_nfc_mainline") @NonNull public String getCategoryForAid(@NonNull String);
10948    method @FlaggedApi("android.nfc.enable_nfc_mainline") @NonNull public android.content.ComponentName getComponent();
10949    method @FlaggedApi("android.nfc.enable_nfc_mainline") @NonNull public String getDescription();
10950    method @FlaggedApi("android.nfc.enable_nfc_mainline") @NonNull public android.nfc.cardemulation.AidGroup getDynamicAidGroupForCategory(@NonNull String);
10951    method @FlaggedApi("android.nfc.enable_nfc_mainline") @Nullable public String getOffHostSecureElement();
10952    method @FlaggedApi("android.nfc.nfc_read_polling_loop") @NonNull public java.util.List<java.lang.String> getPollingLoopFilters();
10953    method @FlaggedApi("android.nfc.nfc_read_polling_loop") @NonNull public java.util.List<java.util.regex.Pattern> getPollingLoopPatternFilters();
10954    method @FlaggedApi("android.nfc.enable_nfc_mainline") @NonNull public java.util.List<java.lang.String> getPrefixAids();
10955    method @FlaggedApi("android.nfc.enable_nfc_mainline") @NonNull public String getSettingsActivityName();
10956    method @FlaggedApi("android.nfc.nfc_read_polling_loop") public boolean getShouldAutoTransact(@NonNull String);
10957    method @FlaggedApi("android.nfc.enable_nfc_mainline") @NonNull public java.util.List<java.lang.String> getSubsetAids();
10958    method @FlaggedApi("android.nfc.enable_nfc_mainline") public int getUid();
10959    method @FlaggedApi("android.nfc.enable_nfc_mainline") public boolean hasCategory(@NonNull String);
10960    method @FlaggedApi("android.nfc.enable_nfc_mainline") public boolean isCategoryOtherServiceEnabled();
10961    method @FlaggedApi("android.nfc.enable_nfc_mainline") public boolean isOnHost();
10962    method @FlaggedApi("android.nfc.enable_nfc_mainline") @NonNull public CharSequence loadAppLabel(@NonNull android.content.pm.PackageManager);
10963    method @FlaggedApi("android.nfc.enable_nfc_mainline") @NonNull public android.graphics.drawable.Drawable loadBanner(@NonNull android.content.pm.PackageManager);
10964    method @FlaggedApi("android.nfc.enable_nfc_mainline") @NonNull public android.graphics.drawable.Drawable loadIcon(@NonNull android.content.pm.PackageManager);
10965    method @FlaggedApi("android.nfc.enable_nfc_mainline") @NonNull public CharSequence loadLabel(@NonNull android.content.pm.PackageManager);
10966    method @FlaggedApi("android.nfc.enable_nfc_mainline") @NonNull public boolean removeDynamicAidGroupForCategory(@NonNull String);
10967    method @FlaggedApi("android.nfc.nfc_read_polling_loop") public void removePollingLoopFilter(@NonNull String);
10968    method @FlaggedApi("android.nfc.nfc_read_polling_loop") public void removePollingLoopPatternFilter(@NonNull String);
10969    method @FlaggedApi("android.nfc.enable_nfc_mainline") public boolean requiresScreenOn();
10970    method @FlaggedApi("android.nfc.enable_nfc_mainline") public boolean requiresUnlock();
10971    method @FlaggedApi("android.nfc.enable_nfc_mainline") public void resetOffHostSecureElement();
10972    method @FlaggedApi("android.nfc.enable_nfc_mainline") public void setCategoryOtherServiceEnabled(boolean);
10973    method @FlaggedApi("android.nfc.enable_nfc_mainline") public void setDynamicAidGroup(@NonNull android.nfc.cardemulation.AidGroup);
10974    method @FlaggedApi("android.nfc.enable_nfc_mainline") public void setOffHostSecureElement(@NonNull String);
10975    method @FlaggedApi("android.nfc.nfc_observe_mode") public void setShouldDefaultToObserveMode(boolean);
10976    method @FlaggedApi("android.nfc.nfc_associated_role_services") public boolean shareRolePriority();
10977    method @FlaggedApi("android.nfc.nfc_observe_mode") public boolean shouldDefaultToObserveMode();
10978    method @FlaggedApi("android.nfc.enable_nfc_mainline") public void writeToParcel(@NonNull android.os.Parcel, int);
10979    field @FlaggedApi("android.nfc.enable_nfc_mainline") @NonNull public static final android.os.Parcelable.Creator<android.nfc.cardemulation.ApduServiceInfo> CREATOR;
10980    field @FlaggedApi("android.permission.flags.wallet_role_icon_property_enabled") public static final String PROPERTY_WALLET_PREFERRED_BANNER_AND_LABEL = "android.nfc.cardemulation.PROPERTY_WALLET_PREFERRED_BANNER_AND_LABEL";
10981  }
10982
10983  @FlaggedApi("android.nfc.enable_nfc_mainline") public final class NfcFServiceInfo implements android.os.Parcelable {
10984    ctor @FlaggedApi("android.nfc.enable_nfc_mainline") public NfcFServiceInfo(@NonNull android.content.pm.PackageManager, @NonNull android.content.pm.ResolveInfo) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException;
10985    method @FlaggedApi("android.nfc.enable_nfc_mainline") public int describeContents();
10986    method @FlaggedApi("android.nfc.enable_nfc_mainline") public void dump(@NonNull android.os.ParcelFileDescriptor, @NonNull java.io.PrintWriter, @NonNull String[]);
10987    method @FlaggedApi("android.nfc.enable_nfc_mainline") public void dumpDebug(@NonNull android.util.proto.ProtoOutputStream);
10988    method @FlaggedApi("android.nfc.enable_nfc_mainline") @NonNull public android.content.ComponentName getComponent();
10989    method @FlaggedApi("android.nfc.enable_nfc_mainline") @NonNull public String getDescription();
10990    method @FlaggedApi("android.nfc.enable_nfc_mainline") @NonNull public String getNfcid2();
10991    method @FlaggedApi("android.nfc.enable_nfc_mainline") @NonNull public String getSystemCode();
10992    method @FlaggedApi("android.nfc.enable_nfc_mainline") @NonNull public String getT3tPmm();
10993    method @FlaggedApi("android.nfc.enable_nfc_mainline") public int getUid();
10994    method @FlaggedApi("android.nfc.enable_nfc_mainline") @NonNull public android.graphics.drawable.Drawable loadIcon(@NonNull android.content.pm.PackageManager);
10995    method @FlaggedApi("android.nfc.enable_nfc_mainline") @NonNull public CharSequence loadLabel(@NonNull android.content.pm.PackageManager);
10996    method @FlaggedApi("android.nfc.enable_nfc_mainline") public void setDynamicNfcid2(@NonNull String);
10997    method @FlaggedApi("android.nfc.enable_nfc_mainline") public void setDynamicSystemCode(@NonNull String);
10998    method @FlaggedApi("android.nfc.enable_nfc_mainline") public void writeToParcel(@NonNull android.os.Parcel, int);
10999    field @FlaggedApi("android.nfc.enable_nfc_mainline") @NonNull public static final android.os.Parcelable.Creator<android.nfc.cardemulation.NfcFServiceInfo> CREATOR;
11000  }
11001
11002}
11003
11004package android.os {
11005
11006  public class BatteryManager {
11007    method @RequiresPermission(android.Manifest.permission.POWER_SAVER) public boolean setChargingStateUpdateDelayMillis(int);
11008    field @RequiresPermission(android.Manifest.permission.BATTERY_STATS) public static final int BATTERY_PROPERTY_CHARGING_POLICY = 9; // 0x9
11009    field @RequiresPermission(android.Manifest.permission.BATTERY_STATS) public static final int BATTERY_PROPERTY_FIRST_USAGE_DATE = 8; // 0x8
11010    field @RequiresPermission(android.Manifest.permission.BATTERY_STATS) public static final int BATTERY_PROPERTY_MANUFACTURING_DATE = 7; // 0x7
11011    field @FlaggedApi("android.os.battery_part_status_api") @RequiresPermission(android.Manifest.permission.BATTERY_STATS) public static final int BATTERY_PROPERTY_PART_STATUS = 12; // 0xc
11012    field @FlaggedApi("android.os.battery_part_status_api") @RequiresPermission(android.Manifest.permission.BATTERY_STATS) public static final int BATTERY_PROPERTY_SERIAL_NUMBER = 11; // 0xb
11013    field public static final int CHARGING_POLICY_ADAPTIVE_AC = 3; // 0x3
11014    field public static final int CHARGING_POLICY_ADAPTIVE_AON = 2; // 0x2
11015    field public static final int CHARGING_POLICY_ADAPTIVE_LONGLIFE = 4; // 0x4
11016    field public static final int CHARGING_POLICY_DEFAULT = 1; // 0x1
11017    field public static final String EXTRA_EVENTS = "android.os.extra.EVENTS";
11018    field public static final String EXTRA_EVENT_TIMESTAMP = "android.os.extra.EVENT_TIMESTAMP";
11019    field @FlaggedApi("android.os.battery_part_status_api") public static final int PART_STATUS_ORIGINAL = 1; // 0x1
11020    field @FlaggedApi("android.os.battery_part_status_api") public static final int PART_STATUS_REPLACED = 2; // 0x2
11021    field @FlaggedApi("android.os.battery_part_status_api") public static final int PART_STATUS_UNSUPPORTED = 0; // 0x0
11022  }
11023
11024  public final class BatterySaverPolicyConfig implements android.os.Parcelable {
11025    method public int describeContents();
11026    method public float getAdjustBrightnessFactor();
11027    method public boolean getAdvertiseIsEnabled();
11028    method public boolean getDeferFullBackup();
11029    method public boolean getDeferKeyValueBackup();
11030    method @NonNull public java.util.Map<java.lang.String,java.lang.String> getDeviceSpecificSettings();
11031    method public boolean getDisableAnimation();
11032    method public boolean getDisableAod();
11033    method public boolean getDisableLaunchBoost();
11034    method public boolean getDisableOptionalSensors();
11035    method @Deprecated public boolean getDisableSoundTrigger();
11036    method public boolean getDisableVibration();
11037    method public boolean getEnableAdjustBrightness();
11038    method public boolean getEnableDataSaver();
11039    method public boolean getEnableFirewall();
11040    method public boolean getEnableNightMode();
11041    method public boolean getEnableQuickDoze();
11042    method public boolean getForceAllAppsStandby();
11043    method public boolean getForceBackgroundCheck();
11044    method public int getLocationMode();
11045    method public int getSoundTriggerMode();
11046    method public void writeToParcel(android.os.Parcel, int);
11047    field @NonNull public static final android.os.Parcelable.Creator<android.os.BatterySaverPolicyConfig> CREATOR;
11048  }
11049
11050  public static final class BatterySaverPolicyConfig.Builder {
11051    ctor public BatterySaverPolicyConfig.Builder();
11052    ctor public BatterySaverPolicyConfig.Builder(@NonNull android.os.BatterySaverPolicyConfig);
11053    method @NonNull public android.os.BatterySaverPolicyConfig.Builder addDeviceSpecificSetting(@NonNull String, @NonNull String);
11054    method @NonNull public android.os.BatterySaverPolicyConfig build();
11055    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setAdjustBrightnessFactor(float);
11056    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setAdvertiseIsEnabled(boolean);
11057    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDeferFullBackup(boolean);
11058    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDeferKeyValueBackup(boolean);
11059    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableAnimation(boolean);
11060    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableAod(boolean);
11061    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableLaunchBoost(boolean);
11062    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableOptionalSensors(boolean);
11063    method @Deprecated @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableSoundTrigger(boolean);
11064    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableVibration(boolean);
11065    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setEnableAdjustBrightness(boolean);
11066    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setEnableDataSaver(boolean);
11067    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setEnableFirewall(boolean);
11068    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setEnableNightMode(boolean);
11069    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setEnableQuickDoze(boolean);
11070    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setForceAllAppsStandby(boolean);
11071    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setForceBackgroundCheck(boolean);
11072    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setLocationMode(int);
11073    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setSoundTriggerMode(int);
11074  }
11075
11076  public final class BatteryStatsManager {
11077    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.BATTERY_STATS, android.Manifest.permission.UPDATE_DEVICE_STATS}) public android.os.connectivity.CellularBatteryStats getCellularBatteryStats();
11078    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.BATTERY_STATS, android.Manifest.permission.UPDATE_DEVICE_STATS}) public android.os.connectivity.WifiBatteryStats getWifiBatteryStats();
11079    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportBleScanReset();
11080    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportBleScanResults(@NonNull android.os.WorkSource, int);
11081    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportBleScanStarted(@NonNull android.os.WorkSource, boolean);
11082    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportBleScanStopped(@NonNull android.os.WorkSource, boolean);
11083    method @Deprecated @RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT) public void reportBluetoothOff(int, int, @NonNull String);
11084    method @Deprecated @RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT) public void reportBluetoothOn(int, int, @NonNull String);
11085    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportFullWifiLockAcquiredFromSource(@NonNull android.os.WorkSource);
11086    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportFullWifiLockReleasedFromSource(@NonNull android.os.WorkSource);
11087    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportMobileRadioPowerState(boolean, int);
11088    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiBatchedScanStartedFromSource(@NonNull android.os.WorkSource, @IntRange(from=0) int);
11089    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiBatchedScanStoppedFromSource(@NonNull android.os.WorkSource);
11090    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiMulticastDisabled(@NonNull android.os.WorkSource);
11091    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiMulticastEnabled(@NonNull android.os.WorkSource);
11092    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiOff();
11093    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiOn();
11094    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiRadioPowerState(boolean, int);
11095    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiRssiChanged(@IntRange(from=0xffffff81, to=0) int);
11096    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiScanStartedFromSource(@NonNull android.os.WorkSource);
11097    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiScanStoppedFromSource(@NonNull android.os.WorkSource);
11098    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiState(int, @Nullable String);
11099    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiSupplicantStateChanged(int, boolean);
11100    field public static final int WIFI_STATE_OFF = 0; // 0x0
11101    field public static final int WIFI_STATE_OFF_SCANNING = 1; // 0x1
11102    field public static final int WIFI_STATE_ON_CONNECTED_P2P = 5; // 0x5
11103    field public static final int WIFI_STATE_ON_CONNECTED_STA = 4; // 0x4
11104    field public static final int WIFI_STATE_ON_CONNECTED_STA_P2P = 6; // 0x6
11105    field public static final int WIFI_STATE_ON_DISCONNECTED = 3; // 0x3
11106    field public static final int WIFI_STATE_ON_NO_NETWORKS = 2; // 0x2
11107    field public static final int WIFI_STATE_SOFT_AP = 7; // 0x7
11108    field public static final int WIFI_SUPPL_STATE_ASSOCIATED = 7; // 0x7
11109    field public static final int WIFI_SUPPL_STATE_ASSOCIATING = 6; // 0x6
11110    field public static final int WIFI_SUPPL_STATE_AUTHENTICATING = 5; // 0x5
11111    field public static final int WIFI_SUPPL_STATE_COMPLETED = 10; // 0xa
11112    field public static final int WIFI_SUPPL_STATE_DISCONNECTED = 1; // 0x1
11113    field public static final int WIFI_SUPPL_STATE_DORMANT = 11; // 0xb
11114    field public static final int WIFI_SUPPL_STATE_FOUR_WAY_HANDSHAKE = 8; // 0x8
11115    field public static final int WIFI_SUPPL_STATE_GROUP_HANDSHAKE = 9; // 0x9
11116    field public static final int WIFI_SUPPL_STATE_INACTIVE = 3; // 0x3
11117    field public static final int WIFI_SUPPL_STATE_INTERFACE_DISABLED = 2; // 0x2
11118    field public static final int WIFI_SUPPL_STATE_INVALID = 0; // 0x0
11119    field public static final int WIFI_SUPPL_STATE_SCANNING = 4; // 0x4
11120    field public static final int WIFI_SUPPL_STATE_UNINITIALIZED = 12; // 0xc
11121  }
11122
11123  public class Binder implements android.os.IBinder {
11124    method public int handleShellCommand(@NonNull android.os.ParcelFileDescriptor, @NonNull android.os.ParcelFileDescriptor, @NonNull android.os.ParcelFileDescriptor, @NonNull String[]);
11125    method public final void markVintfStability();
11126    method public static void setProxyTransactListener(@Nullable android.os.Binder.ProxyTransactListener);
11127  }
11128
11129  public static interface Binder.ProxyTransactListener {
11130    method public void onTransactEnded(@Nullable Object);
11131    method @Nullable public Object onTransactStarted(@NonNull android.os.IBinder, int);
11132  }
11133
11134  public final class BugreportManager {
11135    method @RequiresPermission(android.Manifest.permission.DUMP) @WorkerThread public void preDumpUiData();
11136    method @RequiresPermission(android.Manifest.permission.DUMP) public void requestBugreport(@NonNull android.os.BugreportParams, @Nullable CharSequence, @Nullable CharSequence);
11137    method @RequiresPermission(android.Manifest.permission.DUMP) @WorkerThread public void retrieveBugreport(@NonNull String, @NonNull android.os.ParcelFileDescriptor, @NonNull java.util.concurrent.Executor, @NonNull android.os.BugreportManager.BugreportCallback);
11138    method @RequiresPermission(android.Manifest.permission.DUMP) @WorkerThread 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);
11139  }
11140
11141  public abstract static class BugreportManager.BugreportCallback {
11142    method public void onFinished(@NonNull String);
11143  }
11144
11145  public final class BugreportParams {
11146    ctor public BugreportParams(int);
11147    ctor public BugreportParams(int, int);
11148    method public int getFlags();
11149    method public int getMode();
11150    field public static final int BUGREPORT_FLAG_DEFER_CONSENT = 2; // 0x2
11151    field @FlaggedApi("android.app.admin.flags.onboarding_bugreport_v2_enabled") public static final int BUGREPORT_FLAG_KEEP_BUGREPORT_ON_RETRIEVAL = 4; // 0x4
11152    field public static final int BUGREPORT_FLAG_USE_PREDUMPED_UI_DATA = 1; // 0x1
11153    field public static final int BUGREPORT_MODE_FULL = 0; // 0x0
11154    field public static final int BUGREPORT_MODE_INTERACTIVE = 1; // 0x1
11155    field @FlaggedApi("android.app.admin.flags.onboarding_bugreport_v2_enabled") public static final int BUGREPORT_MODE_ONBOARDING = 7; // 0x7
11156    field public static final int BUGREPORT_MODE_REMOTE = 2; // 0x2
11157    field public static final int BUGREPORT_MODE_TELEPHONY = 4; // 0x4
11158    field public static final int BUGREPORT_MODE_WEAR = 3; // 0x3
11159    field public static final int BUGREPORT_MODE_WIFI = 5; // 0x5
11160  }
11161
11162  public static class Build.VERSION {
11163    field @NonNull public static final java.util.Set<java.lang.String> KNOWN_CODENAMES;
11164    field @NonNull public static final String PREVIEW_SDK_FINGERPRINT;
11165  }
11166
11167  public final class ConfigUpdate {
11168    field public static final String ACTION_UPDATE_CARRIER_ID_DB = "android.os.action.UPDATE_CARRIER_ID_DB";
11169    field public static final String ACTION_UPDATE_CARRIER_PROVISIONING_URLS = "android.intent.action.UPDATE_CARRIER_PROVISIONING_URLS";
11170    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final String ACTION_UPDATE_CONFIG = "android.os.action.UPDATE_CONFIG";
11171    field public static final String ACTION_UPDATE_CONVERSATION_ACTIONS = "android.intent.action.UPDATE_CONVERSATION_ACTIONS";
11172    field public static final String ACTION_UPDATE_CT_LOGS = "android.intent.action.UPDATE_CT_LOGS";
11173    field public static final String ACTION_UPDATE_EMERGENCY_NUMBER_DB = "android.os.action.UPDATE_EMERGENCY_NUMBER_DB";
11174    field public static final String ACTION_UPDATE_INTENT_FIREWALL = "android.intent.action.UPDATE_INTENT_FIREWALL";
11175    field public static final String ACTION_UPDATE_LANG_ID = "android.intent.action.UPDATE_LANG_ID";
11176    field public static final String ACTION_UPDATE_NETWORK_WATCHLIST = "android.intent.action.UPDATE_NETWORK_WATCHLIST";
11177    field public static final String ACTION_UPDATE_PINS = "android.intent.action.UPDATE_PINS";
11178    field public static final String ACTION_UPDATE_SMART_SELECTION = "android.intent.action.UPDATE_SMART_SELECTION";
11179    field public static final String ACTION_UPDATE_SMS_SHORT_CODES = "android.intent.action.UPDATE_SMS_SHORT_CODES";
11180    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final String EXTRA_DOMAIN = "android.os.extra.DOMAIN";
11181    field public static final String EXTRA_REQUIRED_HASH = "android.os.extra.REQUIRED_HASH";
11182    field public static final String EXTRA_VERSION = "android.os.extra.VERSION";
11183  }
11184
11185  public class DeviceIdleManager {
11186    method @RequiresPermission(android.Manifest.permission.DEVICE_POWER) public void endIdle(@NonNull String);
11187  }
11188
11189  public class Environment {
11190    method @NonNull public static java.io.File getDataCePackageDirectoryForUser(@NonNull java.util.UUID, @NonNull android.os.UserHandle, @NonNull String);
11191    method @NonNull public static java.io.File getDataDePackageDirectoryForUser(@NonNull java.util.UUID, @NonNull android.os.UserHandle, @NonNull String);
11192    method @FlaggedApi("android.crashrecovery.flags.enable_crashrecovery") @NonNull public static java.io.File getDataSystemDeviceProtectedDirectory();
11193    method @NonNull public static java.util.Collection<java.io.File> getInternalMediaDirectories();
11194    method @NonNull public static java.io.File getOdmDirectory();
11195    method @NonNull public static java.io.File getOemDirectory();
11196    method @NonNull public static java.io.File getProductDirectory();
11197    method @Deprecated @NonNull public static java.io.File getProductServicesDirectory();
11198    method @NonNull public static java.io.File getSystemExtDirectory();
11199    method @NonNull public static java.io.File getVendorDirectory();
11200  }
11201
11202  public class HidlMemory implements java.io.Closeable {
11203    ctor public HidlMemory(@NonNull String, @IntRange(from=0) long, @Nullable android.os.NativeHandle);
11204    method public void close() throws java.io.IOException;
11205    method @NonNull public android.os.HidlMemory dup() throws java.io.IOException;
11206    method protected void finalize();
11207    method @Nullable public android.os.NativeHandle getHandle();
11208    method @NonNull public String getName();
11209    method public long getSize();
11210    method @Nullable public android.os.NativeHandle releaseHandle();
11211  }
11212
11213  public class HidlSupport {
11214    method public static boolean deepEquals(Object, Object);
11215    method public static int deepHashCode(Object);
11216    method public static int getPidIfSharable();
11217    method public static boolean interfacesEqual(android.os.IHwInterface, Object);
11218  }
11219
11220  public abstract class HwBinder implements android.os.IHwBinder {
11221    ctor public HwBinder();
11222    method public static final void configureRpcThreadpool(long, boolean);
11223    method public static void enableInstrumentation();
11224    method public static final android.os.IHwBinder getService(String, String) throws java.util.NoSuchElementException, android.os.RemoteException;
11225    method public static final android.os.IHwBinder getService(String, String, boolean) throws java.util.NoSuchElementException, android.os.RemoteException;
11226    method public static final void joinRpcThreadpool();
11227    method public abstract void onTransact(int, android.os.HwParcel, android.os.HwParcel, int) throws android.os.RemoteException;
11228    method public final void registerService(String) throws android.os.RemoteException;
11229    method public final void transact(int, android.os.HwParcel, android.os.HwParcel, int) throws android.os.RemoteException;
11230  }
11231
11232  public class HwBlob {
11233    ctor public HwBlob(int);
11234    method public final void copyToBoolArray(long, boolean[], int);
11235    method public final void copyToDoubleArray(long, double[], int);
11236    method public final void copyToFloatArray(long, float[], int);
11237    method public final void copyToInt16Array(long, short[], int);
11238    method public final void copyToInt32Array(long, int[], int);
11239    method public final void copyToInt64Array(long, long[], int);
11240    method public final void copyToInt8Array(long, byte[], int);
11241    method public final boolean getBool(long);
11242    method public final double getDouble(long);
11243    method public final long getFieldHandle(long);
11244    method public final float getFloat(long);
11245    method public final short getInt16(long);
11246    method public final int getInt32(long);
11247    method public final long getInt64(long);
11248    method public final byte getInt8(long);
11249    method public final String getString(long);
11250    method public final long handle();
11251    method public final void putBlob(long, android.os.HwBlob);
11252    method public final void putBool(long, boolean);
11253    method public final void putBoolArray(long, boolean[]);
11254    method public final void putDouble(long, double);
11255    method public final void putDoubleArray(long, double[]);
11256    method public final void putFloat(long, float);
11257    method public final void putFloatArray(long, float[]);
11258    method public final void putHidlMemory(long, @NonNull android.os.HidlMemory);
11259    method public final void putInt16(long, short);
11260    method public final void putInt16Array(long, short[]);
11261    method public final void putInt32(long, int);
11262    method public final void putInt32Array(long, int[]);
11263    method public final void putInt64(long, long);
11264    method public final void putInt64Array(long, long[]);
11265    method public final void putInt8(long, byte);
11266    method public final void putInt8Array(long, byte[]);
11267    method public final void putNativeHandle(long, @Nullable android.os.NativeHandle);
11268    method public final void putString(long, String);
11269    method public static Boolean[] wrapArray(@NonNull boolean[]);
11270    method public static Long[] wrapArray(@NonNull long[]);
11271    method public static Byte[] wrapArray(@NonNull byte[]);
11272    method public static Short[] wrapArray(@NonNull short[]);
11273    method public static Integer[] wrapArray(@NonNull int[]);
11274    method public static Float[] wrapArray(@NonNull float[]);
11275    method public static Double[] wrapArray(@NonNull double[]);
11276  }
11277
11278  public class HwParcel {
11279    ctor public HwParcel();
11280    method public final void enforceInterface(String);
11281    method public final boolean readBool();
11282    method public final java.util.ArrayList<java.lang.Boolean> readBoolVector();
11283    method public final android.os.HwBlob readBuffer(long);
11284    method public final double readDouble();
11285    method public final java.util.ArrayList<java.lang.Double> readDoubleVector();
11286    method public final android.os.HwBlob readEmbeddedBuffer(long, long, long, boolean);
11287    method @NonNull public final android.os.HidlMemory readEmbeddedHidlMemory(long, long, long);
11288    method @Nullable public final android.os.NativeHandle readEmbeddedNativeHandle(long, long);
11289    method public final float readFloat();
11290    method public final java.util.ArrayList<java.lang.Float> readFloatVector();
11291    method @NonNull public final android.os.HidlMemory readHidlMemory();
11292    method public final short readInt16();
11293    method public final java.util.ArrayList<java.lang.Short> readInt16Vector();
11294    method public final int readInt32();
11295    method public final java.util.ArrayList<java.lang.Integer> readInt32Vector();
11296    method public final long readInt64();
11297    method public final java.util.ArrayList<java.lang.Long> readInt64Vector();
11298    method public final byte readInt8();
11299    method public final java.util.ArrayList<java.lang.Byte> readInt8Vector();
11300    method @Nullable public final android.os.NativeHandle readNativeHandle();
11301    method @NonNull public final java.util.ArrayList<android.os.NativeHandle> readNativeHandleVector();
11302    method public final String readString();
11303    method public final java.util.ArrayList<java.lang.String> readStringVector();
11304    method public final android.os.IHwBinder readStrongBinder();
11305    method public final void release();
11306    method public final void releaseTemporaryStorage();
11307    method public final void send();
11308    method public final void verifySuccess();
11309    method public final void writeBool(boolean);
11310    method public final void writeBoolVector(java.util.ArrayList<java.lang.Boolean>);
11311    method public final void writeBuffer(android.os.HwBlob);
11312    method public final void writeDouble(double);
11313    method public final void writeDoubleVector(java.util.ArrayList<java.lang.Double>);
11314    method public final void writeFloat(float);
11315    method public final void writeFloatVector(java.util.ArrayList<java.lang.Float>);
11316    method public final void writeHidlMemory(@NonNull android.os.HidlMemory);
11317    method public final void writeInt16(short);
11318    method public final void writeInt16Vector(java.util.ArrayList<java.lang.Short>);
11319    method public final void writeInt32(int);
11320    method public final void writeInt32Vector(java.util.ArrayList<java.lang.Integer>);
11321    method public final void writeInt64(long);
11322    method public final void writeInt64Vector(java.util.ArrayList<java.lang.Long>);
11323    method public final void writeInt8(byte);
11324    method public final void writeInt8Vector(java.util.ArrayList<java.lang.Byte>);
11325    method public final void writeInterfaceToken(String);
11326    method public final void writeNativeHandle(@Nullable android.os.NativeHandle);
11327    method public final void writeNativeHandleVector(@NonNull java.util.ArrayList<android.os.NativeHandle>);
11328    method public final void writeStatus(int);
11329    method public final void writeString(String);
11330    method public final void writeStringVector(java.util.ArrayList<java.lang.String>);
11331    method public final void writeStrongBinder(android.os.IHwBinder);
11332    field public static final int STATUS_SUCCESS = 0; // 0x0
11333  }
11334
11335  public interface IHwBinder {
11336    method public boolean linkToDeath(android.os.IHwBinder.DeathRecipient, long);
11337    method public android.os.IHwInterface queryLocalInterface(String);
11338    method public void transact(int, android.os.HwParcel, android.os.HwParcel, int) throws android.os.RemoteException;
11339    method public boolean unlinkToDeath(android.os.IHwBinder.DeathRecipient);
11340  }
11341
11342  public static interface IHwBinder.DeathRecipient {
11343    method public void serviceDied(long);
11344  }
11345
11346  public interface IHwInterface {
11347    method public android.os.IHwBinder asBinder();
11348  }
11349
11350  public class IncidentManager {
11351    method @RequiresPermission(android.Manifest.permission.APPROVE_INCIDENT_REPORTS) public void approveReport(android.net.Uri);
11352    method @RequiresPermission("android.permission.REQUEST_INCIDENT_REPORT_APPROVAL") public void cancelAuthorization(android.os.IncidentManager.AuthListener);
11353    method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void deleteIncidentReports(android.net.Uri);
11354    method @RequiresPermission(android.Manifest.permission.APPROVE_INCIDENT_REPORTS) public void denyReport(android.net.Uri);
11355    method @Nullable @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public android.os.IncidentManager.IncidentReport getIncidentReport(android.net.Uri);
11356    method @NonNull @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public java.util.List<android.net.Uri> getIncidentReportList(String);
11357    method @RequiresPermission(android.Manifest.permission.APPROVE_INCIDENT_REPORTS) public java.util.List<android.os.IncidentManager.PendingReport> getPendingReports();
11358    method public void registerSection(int, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.os.IncidentManager.DumpCallback);
11359    method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void reportIncident(android.os.IncidentReportArgs);
11360    method @RequiresPermission("android.permission.REQUEST_INCIDENT_REPORT_APPROVAL") public void requestAuthorization(int, String, int, android.os.IncidentManager.AuthListener);
11361    method public void unregisterSection(int);
11362    field public static final int FLAG_ALLOW_CONSENTLESS_BUGREPORT = 2; // 0x2
11363    field public static final int FLAG_CONFIRMATION_DIALOG = 1; // 0x1
11364    field public static final int PRIVACY_POLICY_AUTO = 200; // 0xc8
11365    field public static final int PRIVACY_POLICY_EXPLICIT = 100; // 0x64
11366    field public static final int PRIVACY_POLICY_LOCAL = 0; // 0x0
11367  }
11368
11369  public static class IncidentManager.AuthListener {
11370    ctor public IncidentManager.AuthListener();
11371    method public void onReportApproved();
11372    method public void onReportDenied();
11373  }
11374
11375  public static class IncidentManager.DumpCallback {
11376    ctor public IncidentManager.DumpCallback();
11377    method public void onDumpSection(int, @NonNull java.io.OutputStream);
11378  }
11379
11380  public static class IncidentManager.IncidentReport implements java.io.Closeable android.os.Parcelable {
11381    ctor public IncidentManager.IncidentReport(android.os.Parcel);
11382    method public void close();
11383    method public int describeContents();
11384    method public java.io.InputStream getInputStream() throws java.io.IOException;
11385    method public long getPrivacyPolicy();
11386    method public long getTimestamp();
11387    method public void writeToParcel(android.os.Parcel, int);
11388    field @NonNull public static final android.os.Parcelable.Creator<android.os.IncidentManager.IncidentReport> CREATOR;
11389  }
11390
11391  public static class IncidentManager.PendingReport {
11392    ctor public IncidentManager.PendingReport(@NonNull android.net.Uri);
11393    method public int getFlags();
11394    method @NonNull public String getRequestingPackage();
11395    method public long getTimestamp();
11396    method @NonNull public android.net.Uri getUri();
11397  }
11398
11399  public final class IncidentReportArgs implements android.os.Parcelable {
11400    ctor public IncidentReportArgs();
11401    ctor public IncidentReportArgs(android.os.Parcel);
11402    method public void addHeader(byte[]);
11403    method public void addSection(int);
11404    method public boolean containsSection(int);
11405    method public int describeContents();
11406    method public boolean isAll();
11407    method public void readFromParcel(android.os.Parcel);
11408    method public int sectionCount();
11409    method public void setAll(boolean);
11410    method public void setPrivacyPolicy(int);
11411    method public void writeToParcel(android.os.Parcel, int);
11412    field @NonNull public static final android.os.Parcelable.Creator<android.os.IncidentReportArgs> CREATOR;
11413  }
11414
11415  public final class NativeHandle implements java.io.Closeable {
11416    ctor public NativeHandle();
11417    ctor public NativeHandle(@NonNull java.io.FileDescriptor, boolean);
11418    ctor public NativeHandle(@NonNull java.io.FileDescriptor[], @NonNull int[], boolean);
11419    method public void close() throws java.io.IOException;
11420    method @NonNull public android.os.NativeHandle dup() throws java.io.IOException;
11421    method @NonNull public java.io.FileDescriptor getFileDescriptor();
11422    method @NonNull public java.io.FileDescriptor[] getFileDescriptors();
11423    method @NonNull public int[] getInts();
11424    method public boolean hasSingleFileDescriptor();
11425  }
11426
11427  public final class NewUserRequest {
11428    method @Nullable public String getAccountName();
11429    method @Nullable public android.os.PersistableBundle getAccountOptions();
11430    method @Nullable public String getAccountType();
11431    method @Nullable public String getName();
11432    method @Nullable public android.graphics.Bitmap getUserIcon();
11433    method @NonNull public String getUserType();
11434    method public boolean isAdmin();
11435    method public boolean isEphemeral();
11436  }
11437
11438  public static final class NewUserRequest.Builder {
11439    ctor public NewUserRequest.Builder();
11440    method @NonNull public android.os.NewUserRequest build();
11441    method @NonNull public android.os.NewUserRequest.Builder setAccountName(@Nullable String);
11442    method @NonNull public android.os.NewUserRequest.Builder setAccountOptions(@Nullable android.os.PersistableBundle);
11443    method @NonNull public android.os.NewUserRequest.Builder setAccountType(@Nullable String);
11444    method @NonNull public android.os.NewUserRequest.Builder setAdmin();
11445    method @NonNull public android.os.NewUserRequest.Builder setEphemeral();
11446    method @NonNull public android.os.NewUserRequest.Builder setName(@Nullable String);
11447    method @NonNull public android.os.NewUserRequest.Builder setUserIcon(@Nullable android.graphics.Bitmap);
11448    method @NonNull public android.os.NewUserRequest.Builder setUserType(@NonNull String);
11449  }
11450
11451  public final class NewUserResponse {
11452    method public int getOperationResult();
11453    method @Nullable public android.os.UserHandle getUser();
11454    method public boolean isSuccessful();
11455  }
11456
11457  public interface Parcelable {
11458    method public default int getStability();
11459    field public static final int PARCELABLE_STABILITY_LOCAL = 0; // 0x0
11460    field public static final int PARCELABLE_STABILITY_VINTF = 1; // 0x1
11461  }
11462
11463  public final class ParcelableHolder implements android.os.Parcelable {
11464    ctor public ParcelableHolder(int);
11465    method public int describeContents();
11466    method @Nullable public <T extends android.os.Parcelable> T getParcelable(@NonNull Class<T>);
11467    method public int getStability();
11468    method public void readFromParcel(@NonNull android.os.Parcel);
11469    method public void setParcelable(@Nullable android.os.Parcelable);
11470    method public void writeToParcel(@NonNull android.os.Parcel, int);
11471    field @NonNull public static final android.os.Parcelable.Creator<android.os.ParcelableHolder> CREATOR;
11472  }
11473
11474  public class PowerExemptionManager {
11475    method @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public void addToTemporaryAllowList(@NonNull String, int, @Nullable String, long);
11476    method @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public long addToTemporaryAllowListForEvent(@NonNull String, int, @Nullable String, int);
11477    field public static final int EVENT_MMS = 2; // 0x2
11478    field public static final int EVENT_SMS = 1; // 0x1
11479    field public static final int EVENT_UNSPECIFIED = 0; // 0x0
11480    field public static final int REASON_ACCOUNT_TRANSFER = 104; // 0x68
11481    field public static final int REASON_ACTIVITY_RECOGNITION = 103; // 0x67
11482    field public static final int REASON_BLUETOOTH_BROADCAST = 203; // 0xcb
11483    field public static final int REASON_GEOFENCING = 100; // 0x64
11484    field public static final int REASON_LOCATION_PROVIDER = 312; // 0x138
11485    field public static final int REASON_OTHER = 1; // 0x1
11486    field public static final int REASON_PUSH_MESSAGING = 101; // 0x65
11487    field public static final int REASON_PUSH_MESSAGING_OVER_QUOTA = 102; // 0x66
11488    field public static final int REASON_REFRESH_SAFETY_SOURCES = 208; // 0xd0
11489    field public static final int REASON_UNKNOWN = 0; // 0x0
11490    field public static final int TEMPORARY_ALLOW_LIST_TYPE_FOREGROUND_SERVICE_ALLOWED = 0; // 0x0
11491    field public static final int TEMPORARY_ALLOW_LIST_TYPE_FOREGROUND_SERVICE_NOT_ALLOWED = 1; // 0x1
11492    field public static final int TEMPORARY_ALLOW_LIST_TYPE_NONE = -1; // 0xffffffff
11493  }
11494
11495  public final class PowerManager {
11496    method @RequiresPermission(allOf={android.Manifest.permission.READ_DREAM_STATE, android.Manifest.permission.WRITE_DREAM_STATE}) public void dream(long);
11497    method @RequiresPermission(android.Manifest.permission.DEVICE_POWER) public boolean forceSuspend();
11498    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_LOW_POWER_STANDBY, android.Manifest.permission.DEVICE_POWER}) public java.util.List<android.os.PowerManager.LowPowerStandbyPortDescription> getActiveLowPowerStandbyPorts();
11499    method @NonNull public android.os.BatterySaverPolicyConfig getFullPowerSavePolicy();
11500    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_LOW_POWER_STANDBY, android.Manifest.permission.DEVICE_POWER}) public android.os.PowerManager.LowPowerStandbyPolicy getLowPowerStandbyPolicy();
11501    method public int getPowerSaveModeTrigger();
11502    method @RequiresPermission(android.Manifest.permission.READ_DREAM_STATE) public boolean isAmbientDisplayAvailable();
11503    method @RequiresPermission(android.Manifest.permission.READ_DREAM_STATE) public boolean isAmbientDisplaySuppressed();
11504    method @RequiresPermission(android.Manifest.permission.READ_DREAM_STATE) public boolean isAmbientDisplaySuppressedForToken(@NonNull String);
11505    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_LOW_POWER_STANDBY, android.Manifest.permission.DEVICE_POWER}) public boolean isLowPowerStandbySupported();
11506    method @NonNull @RequiresPermission(android.Manifest.permission.SET_LOW_POWER_STANDBY_PORTS) public android.os.PowerManager.LowPowerStandbyPortsLock newLowPowerStandbyPortsLock(@NonNull java.util.List<android.os.PowerManager.LowPowerStandbyPortDescription>);
11507    method @RequiresPermission(anyOf={android.Manifest.permission.DEVICE_POWER, android.Manifest.permission.POWER_SAVER}) public boolean setAdaptivePowerSaveEnabled(boolean);
11508    method @RequiresPermission(anyOf={android.Manifest.permission.DEVICE_POWER, android.Manifest.permission.POWER_SAVER}) public boolean setAdaptivePowerSavePolicy(@NonNull android.os.BatterySaverPolicyConfig);
11509    method @RequiresPermission(anyOf={android.Manifest.permission.BATTERY_PREDICTION, android.Manifest.permission.DEVICE_POWER}) public void setBatteryDischargePrediction(@NonNull java.time.Duration, boolean);
11510    method @RequiresPermission(android.Manifest.permission.POWER_SAVER) public boolean setDynamicPowerSaveHint(boolean, int);
11511    method @RequiresPermission(anyOf={android.Manifest.permission.DEVICE_POWER, android.Manifest.permission.POWER_SAVER}) public boolean setFullPowerSavePolicy(@NonNull android.os.BatterySaverPolicyConfig);
11512    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_LOW_POWER_STANDBY, android.Manifest.permission.DEVICE_POWER}) public void setLowPowerStandbyActiveDuringMaintenance(boolean);
11513    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_LOW_POWER_STANDBY, android.Manifest.permission.DEVICE_POWER}) public void setLowPowerStandbyEnabled(boolean);
11514    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_LOW_POWER_STANDBY, android.Manifest.permission.DEVICE_POWER}) public void setLowPowerStandbyPolicy(@Nullable android.os.PowerManager.LowPowerStandbyPolicy);
11515    method @RequiresPermission(anyOf={android.Manifest.permission.DEVICE_POWER, android.Manifest.permission.POWER_SAVER}) public boolean setPowerSaveModeEnabled(boolean);
11516    method @RequiresPermission(android.Manifest.permission.WRITE_DREAM_STATE) public void suppressAmbientDisplay(@NonNull String, boolean);
11517    method @RequiresPermission(anyOf={android.Manifest.permission.DEVICE_POWER, android.Manifest.permission.USER_ACTIVITY}) public void userActivity(long, int, int);
11518    field @RequiresPermission(android.Manifest.permission.MANAGE_LOW_POWER_STANDBY) public static final String ACTION_LOW_POWER_STANDBY_PORTS_CHANGED = "android.os.action.LOW_POWER_STANDBY_PORTS_CHANGED";
11519    field public static final int POWER_SAVE_MODE_TRIGGER_DYNAMIC = 1; // 0x1
11520    field public static final int POWER_SAVE_MODE_TRIGGER_PERCENTAGE = 0; // 0x0
11521    field @Deprecated public static final String REBOOT_USERSPACE = "userspace";
11522    field public static final int SOUND_TRIGGER_MODE_ALL_DISABLED = 2; // 0x2
11523    field public static final int SOUND_TRIGGER_MODE_ALL_ENABLED = 0; // 0x0
11524    field public static final int SOUND_TRIGGER_MODE_CRITICAL_ONLY = 1; // 0x1
11525    field public static final int USER_ACTIVITY_EVENT_ACCESSIBILITY = 3; // 0x3
11526    field public static final int USER_ACTIVITY_EVENT_BUTTON = 1; // 0x1
11527    field public static final int USER_ACTIVITY_EVENT_OTHER = 0; // 0x0
11528    field public static final int USER_ACTIVITY_EVENT_TOUCH = 2; // 0x2
11529    field public static final int USER_ACTIVITY_FLAG_INDIRECT = 2; // 0x2
11530    field public static final int USER_ACTIVITY_FLAG_NO_CHANGE_LIGHTS = 1; // 0x1
11531  }
11532
11533  public static final class PowerManager.LowPowerStandbyPolicy {
11534    ctor public PowerManager.LowPowerStandbyPolicy(@NonNull String, @NonNull java.util.Set<java.lang.String>, int, @NonNull java.util.Set<java.lang.String>);
11535    method @NonNull public java.util.Set<java.lang.String> getAllowedFeatures();
11536    method public int getAllowedReasons();
11537    method @NonNull public java.util.Set<java.lang.String> getExemptPackages();
11538    method @NonNull public String getIdentifier();
11539  }
11540
11541  public static final class PowerManager.LowPowerStandbyPortDescription {
11542    ctor public PowerManager.LowPowerStandbyPortDescription(int, int, int);
11543    ctor public PowerManager.LowPowerStandbyPortDescription(int, int, int, @Nullable java.net.InetAddress);
11544    method @Nullable public java.net.InetAddress getLocalAddress();
11545    method public int getPortMatcher();
11546    method public int getPortNumber();
11547    method public int getProtocol();
11548    field public static final int MATCH_PORT_LOCAL = 1; // 0x1
11549    field public static final int MATCH_PORT_REMOTE = 2; // 0x2
11550    field public static final int PROTOCOL_TCP = 6; // 0x6
11551    field public static final int PROTOCOL_UDP = 17; // 0x11
11552  }
11553
11554  public final class PowerManager.LowPowerStandbyPortsLock {
11555    method @RequiresPermission(android.Manifest.permission.SET_LOW_POWER_STANDBY_PORTS) public void acquire();
11556    method protected void finalize();
11557    method @RequiresPermission(android.Manifest.permission.SET_LOW_POWER_STANDBY_PORTS) public void release();
11558  }
11559
11560  @Deprecated public class PowerWhitelistManager {
11561    method @Deprecated @RequiresPermission(android.Manifest.permission.DEVICE_POWER) public void addToWhitelist(@NonNull String);
11562    method @Deprecated @RequiresPermission(android.Manifest.permission.DEVICE_POWER) public void addToWhitelist(@NonNull java.util.List<java.lang.String>);
11563    method @Deprecated @RequiresPermission(android.Manifest.permission.DEVICE_POWER) public void removeFromWhitelist(@NonNull String);
11564    method @Deprecated @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public void whitelistAppTemporarily(@NonNull String, long, int, @Nullable String);
11565    method @Deprecated @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public void whitelistAppTemporarily(@NonNull String, long);
11566    method @Deprecated @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public long whitelistAppTemporarilyForEvent(@NonNull String, int, @Nullable String);
11567    method @Deprecated @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public long whitelistAppTemporarilyForEvent(@NonNull String, int, int, @Nullable String);
11568    field @Deprecated public static final int EVENT_MMS = 2; // 0x2
11569    field @Deprecated public static final int EVENT_SMS = 1; // 0x1
11570    field @Deprecated public static final int EVENT_UNSPECIFIED = 0; // 0x0
11571    field @Deprecated public static final int REASON_ACTIVITY_RECOGNITION = 103; // 0x67
11572    field @Deprecated public static final int REASON_GEOFENCING = 100; // 0x64
11573    field @Deprecated public static final int REASON_LOCATION_PROVIDER = 312; // 0x138
11574    field @Deprecated public static final int REASON_OTHER = 1; // 0x1
11575    field @Deprecated public static final int REASON_PUSH_MESSAGING = 101; // 0x65
11576    field @Deprecated public static final int REASON_PUSH_MESSAGING_OVER_QUOTA = 102; // 0x66
11577    field @Deprecated public static final int REASON_UNKNOWN = 0; // 0x0
11578    field @Deprecated public static final int TEMPORARY_ALLOWLIST_TYPE_FOREGROUND_SERVICE_ALLOWED = 0; // 0x0
11579    field @Deprecated public static final int TEMPORARY_ALLOWLIST_TYPE_FOREGROUND_SERVICE_NOT_ALLOWED = 1; // 0x1
11580  }
11581
11582  public class RecoverySystem {
11583    method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void cancelScheduledUpdate(android.content.Context) throws java.io.IOException;
11584    method @RequiresPermission(anyOf={android.Manifest.permission.RECOVERY, android.Manifest.permission.REBOOT}) public static void clearPrepareForUnattendedUpdate(@NonNull android.content.Context) throws java.io.IOException;
11585    method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void installPackage(android.content.Context, java.io.File, boolean) throws java.io.IOException;
11586    method @RequiresPermission(anyOf={android.Manifest.permission.RECOVERY, android.Manifest.permission.REBOOT}) public static boolean isPreparedForUnattendedUpdate(@NonNull android.content.Context) throws java.io.IOException;
11587    method @RequiresPermission(anyOf={android.Manifest.permission.RECOVERY, android.Manifest.permission.REBOOT}) public static void prepareForUnattendedUpdate(@NonNull android.content.Context, @NonNull String, @Nullable android.content.IntentSender) throws java.io.IOException;
11588    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;
11589    method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void processPackage(android.content.Context, java.io.File, android.os.RecoverySystem.ProgressListener) throws java.io.IOException;
11590    method @Deprecated @RequiresPermission(android.Manifest.permission.RECOVERY) public static void rebootAndApply(@NonNull android.content.Context, @NonNull String, @NonNull String) throws java.io.IOException;
11591    method @RequiresPermission(anyOf={android.Manifest.permission.RECOVERY, android.Manifest.permission.REBOOT}) public static int rebootAndApply(@NonNull android.content.Context, @NonNull String, boolean) throws java.io.IOException;
11592    method @FlaggedApi("android.crashrecovery.flags.enable_crashrecovery") @RequiresPermission(android.Manifest.permission.RECOVERY) public static void rebootPromptAndWipeUserData(@NonNull android.content.Context, @NonNull String) throws java.io.IOException;
11593    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;
11594    method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void scheduleUpdateOnBoot(android.content.Context, java.io.File) throws java.io.IOException;
11595    method @Deprecated public static boolean verifyPackageCompatibility(java.io.File) throws java.io.IOException;
11596    field public static final int RESUME_ON_REBOOT_REBOOT_ERROR_INVALID_PACKAGE_NAME = 2000; // 0x7d0
11597    field public static final int RESUME_ON_REBOOT_REBOOT_ERROR_LSKF_NOT_CAPTURED = 3000; // 0xbb8
11598    field public static final int RESUME_ON_REBOOT_REBOOT_ERROR_PROVIDER_PREPARATION_FAILURE = 5000; // 0x1388
11599    field public static final int RESUME_ON_REBOOT_REBOOT_ERROR_SLOT_MISMATCH = 4000; // 0xfa0
11600    field public static final int RESUME_ON_REBOOT_REBOOT_ERROR_UNSPECIFIED = 1000; // 0x3e8
11601  }
11602
11603  public final class RemoteCallback implements android.os.Parcelable {
11604    ctor public RemoteCallback(android.os.RemoteCallback.OnResultListener);
11605    ctor public RemoteCallback(@NonNull android.os.RemoteCallback.OnResultListener, @Nullable android.os.Handler);
11606    method public int describeContents();
11607    method public void sendResult(@Nullable android.os.Bundle);
11608    method public void writeToParcel(android.os.Parcel, int);
11609    field @NonNull public static final android.os.Parcelable.Creator<android.os.RemoteCallback> CREATOR;
11610  }
11611
11612  public static interface RemoteCallback.OnResultListener {
11613    method public void onResult(@Nullable android.os.Bundle);
11614  }
11615
11616  public class ServiceSpecificException extends java.lang.RuntimeException {
11617    ctor public ServiceSpecificException(int, @Nullable String);
11618    ctor public ServiceSpecificException(int);
11619    field public final int errorCode;
11620  }
11621
11622  public class SystemConfigManager {
11623    method @NonNull @RequiresPermission(android.Manifest.permission.READ_CARRIER_APP_INFO) public java.util.Set<java.lang.String> getDisabledUntilUsedPreinstalledCarrierApps();
11624    method @NonNull @RequiresPermission(android.Manifest.permission.READ_CARRIER_APP_INFO) public java.util.Map<java.lang.String,java.util.List<java.lang.String>> getDisabledUntilUsedPreinstalledCarrierAssociatedApps();
11625    method @NonNull @RequiresPermission(android.Manifest.permission.GET_RUNTIME_PERMISSIONS) public int[] getSystemPermissionUids(@NonNull String);
11626  }
11627
11628  public class SystemProperties {
11629    method @NonNull public static String get(@NonNull String);
11630    method @NonNull public static String get(@NonNull String, @Nullable String);
11631    method public static boolean getBoolean(@NonNull String, boolean);
11632    method public static int getInt(@NonNull String, int);
11633    method public static long getLong(@NonNull String, long);
11634  }
11635
11636  public class SystemUpdateManager {
11637    method @RequiresPermission(anyOf={android.Manifest.permission.READ_SYSTEM_UPDATE_INFO, android.Manifest.permission.RECOVERY}) public android.os.Bundle retrieveSystemUpdateInfo();
11638    method @RequiresPermission(android.Manifest.permission.RECOVERY) public void updateSystemUpdateInfo(android.os.PersistableBundle);
11639    field public static final String KEY_IS_SECURITY_UPDATE = "is_security_update";
11640    field public static final String KEY_STATUS = "status";
11641    field public static final String KEY_TARGET_BUILD_FINGERPRINT = "target_build_fingerprint";
11642    field public static final String KEY_TARGET_SECURITY_PATCH_LEVEL = "target_security_patch_level";
11643    field public static final String KEY_TITLE = "title";
11644    field public static final int STATUS_IDLE = 1; // 0x1
11645    field public static final int STATUS_IN_PROGRESS = 3; // 0x3
11646    field public static final int STATUS_UNKNOWN = 0; // 0x0
11647    field public static final int STATUS_WAITING_DOWNLOAD = 2; // 0x2
11648    field public static final int STATUS_WAITING_INSTALL = 4; // 0x4
11649    field public static final int STATUS_WAITING_REBOOT = 5; // 0x5
11650  }
11651
11652  public final class Trace {
11653    field public static final long TRACE_TAG_AIDL = 16777216L; // 0x1000000L
11654  }
11655
11656  public class UpdateEngine {
11657    ctor public UpdateEngine();
11658    method @NonNull @WorkerThread public android.os.UpdateEngine.AllocateSpaceResult allocateSpace(@NonNull String, @NonNull String[]);
11659    method public void applyPayload(String, long, long, String[]);
11660    method public void applyPayload(@NonNull android.content.res.AssetFileDescriptor, @NonNull String[]);
11661    method public boolean bind(android.os.UpdateEngineCallback, android.os.Handler);
11662    method public boolean bind(android.os.UpdateEngineCallback);
11663    method public void cancel();
11664    method @WorkerThread public int cleanupAppliedPayload();
11665    method public void resetShouldSwitchSlotOnReboot();
11666    method public void resetStatus();
11667    method public void resume();
11668    method public void setShouldSwitchSlotOnReboot(@NonNull String);
11669    method public void suspend();
11670    method public boolean unbind();
11671    method public boolean verifyPayloadMetadata(String);
11672  }
11673
11674  public static final class UpdateEngine.AllocateSpaceResult {
11675    method public int getErrorCode();
11676    method public long getFreeSpaceRequired();
11677  }
11678
11679  public static final class UpdateEngine.ErrorCodeConstants {
11680    ctor public UpdateEngine.ErrorCodeConstants();
11681    field public static final int DEVICE_CORRUPTED = 61; // 0x3d
11682    field public static final int DOWNLOAD_PAYLOAD_VERIFICATION_ERROR = 12; // 0xc
11683    field public static final int DOWNLOAD_TRANSFER_ERROR = 9; // 0x9
11684    field public static final int ERROR = 1; // 0x1
11685    field public static final int FILESYSTEM_COPIER_ERROR = 4; // 0x4
11686    field public static final int INSTALL_DEVICE_OPEN_ERROR = 7; // 0x7
11687    field public static final int KERNEL_DEVICE_OPEN_ERROR = 8; // 0x8
11688    field public static final int NOT_ENOUGH_SPACE = 60; // 0x3c
11689    field public static final int PAYLOAD_HASH_MISMATCH_ERROR = 10; // 0xa
11690    field public static final int PAYLOAD_MISMATCHED_TYPE_ERROR = 6; // 0x6
11691    field public static final int PAYLOAD_SIZE_MISMATCH_ERROR = 11; // 0xb
11692    field public static final int PAYLOAD_TIMESTAMP_ERROR = 51; // 0x33
11693    field public static final int POST_INSTALL_RUNNER_ERROR = 5; // 0x5
11694    field public static final int SUCCESS = 0; // 0x0
11695    field public static final int UPDATED_BUT_NOT_ACTIVE = 52; // 0x34
11696  }
11697
11698  public static final class UpdateEngine.UpdateStatusConstants {
11699    ctor public UpdateEngine.UpdateStatusConstants();
11700    field public static final int ATTEMPTING_ROLLBACK = 8; // 0x8
11701    field public static final int CHECKING_FOR_UPDATE = 1; // 0x1
11702    field public static final int DISABLED = 9; // 0x9
11703    field public static final int DOWNLOADING = 3; // 0x3
11704    field public static final int FINALIZING = 5; // 0x5
11705    field public static final int IDLE = 0; // 0x0
11706    field public static final int REPORTING_ERROR_EVENT = 7; // 0x7
11707    field public static final int UPDATED_NEED_REBOOT = 6; // 0x6
11708    field public static final int UPDATE_AVAILABLE = 2; // 0x2
11709    field public static final int VERIFYING = 4; // 0x4
11710  }
11711
11712  public abstract class UpdateEngineCallback {
11713    ctor public UpdateEngineCallback();
11714    method public abstract void onPayloadApplicationComplete(int);
11715    method public abstract void onStatusUpdate(int, float);
11716  }
11717
11718  public final class UserHandle implements android.os.Parcelable {
11719    method @NonNull public static String formatUid(int);
11720    method public static int getAppId(int);
11721    method public int getIdentifier();
11722    method public static int getSharedAppGid(int);
11723    method public int getUid(int);
11724    method @Deprecated public boolean isOwner();
11725    method public boolean isSystem();
11726    method public static int myUserId();
11727    method public static android.os.UserHandle of(int);
11728    field @NonNull public static final android.os.UserHandle ALL;
11729    field @NonNull public static final android.os.UserHandle CURRENT;
11730    field @NonNull public static final android.os.UserHandle SYSTEM;
11731  }
11732
11733  public class UserManager {
11734    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean canHaveRestrictedProfile();
11735    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void clearSeedAccountData();
11736    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public android.os.UserHandle createProfile(@NonNull String, @NonNull String, @NonNull java.util.Set<java.lang.String>) throws android.os.UserManager.UserOperationException;
11737    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public android.os.NewUserResponse createUser(@NonNull android.os.NewUserRequest);
11738    method @NonNull public java.util.List<android.os.UserHandle> getAllProfiles();
11739    method @NonNull public java.util.List<android.os.UserHandle> getEnabledProfiles();
11740    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS}) public android.os.UserHandle getMainUser();
11741    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS}) public android.os.UserHandle getPreviousForegroundUser();
11742    method @NonNull public String getProfileLabel();
11743    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS}) public android.os.UserHandle getProfileParent(@NonNull android.os.UserHandle);
11744    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS}) public int getRemainingCreatableProfileCount(@NonNull String);
11745    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS}) public int getRemainingCreatableUserCount(@NonNull String);
11746    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS}) public android.os.UserHandle getRestrictedProfileParent();
11747    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public String getSeedAccountName();
11748    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public android.os.PersistableBundle getSeedAccountOptions();
11749    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public String getSeedAccountType();
11750    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public long[] getSerialNumbersOfUsers(boolean);
11751    method @NonNull public android.graphics.drawable.Drawable getUserBadge();
11752    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public java.util.List<android.os.UserHandle> getUserHandles(boolean);
11753    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.GET_ACCOUNTS_PRIVILEGED}) public android.graphics.Bitmap getUserIcon();
11754    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.QUERY_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS}, conditional=true) public android.content.pm.UserProperties getUserProperties(@NonNull android.os.UserHandle);
11755    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.QUERY_USERS}) public int getUserRestrictionSource(String, android.os.UserHandle);
11756    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.QUERY_USERS}) public java.util.List<android.os.UserManager.EnforcingUser> getUserRestrictionSources(String, android.os.UserHandle);
11757    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS}) public int getUserSwitchability();
11758    method @NonNull @RequiresPermission(anyOf={"android.permission.INTERACT_ACROSS_USERS", "android.permission.MANAGE_USERS"}) public java.util.Set<android.os.UserHandle> getVisibleUsers();
11759    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean hasRestrictedProfiles();
11760    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS}, conditional=true) public boolean hasUserRestrictionForUser(@NonNull String, @NonNull android.os.UserHandle);
11761    method public boolean isCloneProfile();
11762    method @Deprecated public boolean isCredentialSharableWithParent();
11763    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS}) public boolean isGuestUser();
11764    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS}) public boolean isMainUser();
11765    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.QUERY_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS}, conditional=true) public boolean isManagedProfile(int);
11766    method @Deprecated public boolean isMediaSharedWithParent();
11767    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS}) public boolean isPrimaryUser();
11768    method @FlaggedApi("android.os.allow_private_profile") public boolean isPrivateProfile();
11769    method public static boolean isRemoveResultSuccessful(int);
11770    method public boolean isRestrictedProfile();
11771    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS}, conditional=true) public boolean isRestrictedProfile(@NonNull android.os.UserHandle);
11772    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.QUERY_USERS}) public boolean isSameProfileGroup(@NonNull android.os.UserHandle, @NonNull android.os.UserHandle);
11773    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS, android.Manifest.permission.GET_ACCOUNTS_PRIVILEGED}) public boolean isUserNameSet();
11774    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS}) public boolean isUserOfType(@NonNull String);
11775    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS}, conditional=true) public boolean isUserUnlockingOrUnlocked(@NonNull android.os.UserHandle);
11776    method public boolean isUserVisible();
11777    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public boolean removeUser(@NonNull android.os.UserHandle);
11778    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public int removeUserWhenPossible(@NonNull android.os.UserHandle, boolean);
11779    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public void setBootUser(@NonNull android.os.UserHandle);
11780    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void setUserIcon(@NonNull android.graphics.Bitmap) throws android.os.UserManager.UserOperationException;
11781    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void setUserName(@Nullable String);
11782    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public boolean someUserHasAccount(@NonNull String, @NonNull String);
11783    field @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public static final String ACTION_CREATE_SUPERVISED_USER = "android.os.action.CREATE_SUPERVISED_USER";
11784    field public static final String ACTION_USER_RESTRICTIONS_CHANGED = "android.os.action.USER_RESTRICTIONS_CHANGED";
11785    field @Deprecated public static final String DISALLOW_OEM_UNLOCK = "no_oem_unlock";
11786    field public static final String DISALLOW_RUN_IN_BACKGROUND = "no_run_in_background";
11787    field public static final int REMOVE_RESULT_ALREADY_BEING_REMOVED = 2; // 0x2
11788    field public static final int REMOVE_RESULT_DEFERRED = 1; // 0x1
11789    field public static final int REMOVE_RESULT_ERROR_MAIN_USER_PERMANENT_ADMIN = -5; // 0xfffffffb
11790    field public static final int REMOVE_RESULT_ERROR_SYSTEM_USER = -4; // 0xfffffffc
11791    field public static final int REMOVE_RESULT_ERROR_UNKNOWN = -1; // 0xffffffff
11792    field public static final int REMOVE_RESULT_ERROR_USER_NOT_FOUND = -3; // 0xfffffffd
11793    field public static final int REMOVE_RESULT_ERROR_USER_RESTRICTION = -2; // 0xfffffffe
11794    field public static final int REMOVE_RESULT_REMOVED = 0; // 0x0
11795    field public static final int RESTRICTION_NOT_SET = 0; // 0x0
11796    field public static final int RESTRICTION_SOURCE_DEVICE_OWNER = 2; // 0x2
11797    field public static final int RESTRICTION_SOURCE_PROFILE_OWNER = 4; // 0x4
11798    field public static final int RESTRICTION_SOURCE_SYSTEM = 1; // 0x1
11799    field public static final int SWITCHABILITY_STATUS_OK = 0; // 0x0
11800    field public static final int SWITCHABILITY_STATUS_SYSTEM_USER_LOCKED = 4; // 0x4
11801    field public static final int SWITCHABILITY_STATUS_USER_IN_CALL = 1; // 0x1
11802    field public static final int SWITCHABILITY_STATUS_USER_SWITCH_DISALLOWED = 2; // 0x2
11803    field public static final int USER_OPERATION_ERROR_USER_ACCOUNT_ALREADY_EXISTS = 7; // 0x7
11804    field public static final String USER_TYPE_FULL_GUEST = "android.os.usertype.full.GUEST";
11805    field public static final String USER_TYPE_FULL_SECONDARY = "android.os.usertype.full.SECONDARY";
11806    field public static final String USER_TYPE_FULL_SYSTEM = "android.os.usertype.full.SYSTEM";
11807    field public static final String USER_TYPE_SYSTEM_HEADLESS = "android.os.usertype.system.HEADLESS";
11808  }
11809
11810  public static final class UserManager.EnforcingUser implements android.os.Parcelable {
11811    method public int describeContents();
11812    method public android.os.UserHandle getUserHandle();
11813    method public int getUserRestrictionSource();
11814    method public void writeToParcel(android.os.Parcel, int);
11815    field @NonNull public static final android.os.Parcelable.Creator<android.os.UserManager.EnforcingUser> CREATOR;
11816  }
11817
11818  public abstract class VibrationEffect implements android.os.Parcelable {
11819    method @FlaggedApi("android.os.vibrator.vendor_vibration_effects") @NonNull @RequiresPermission(android.Manifest.permission.VIBRATE_VENDOR_EFFECTS) public static android.os.VibrationEffect createVendorEffect(@NonNull android.os.PersistableBundle);
11820  }
11821
11822  public abstract class Vibrator {
11823    method @RequiresPermission(android.Manifest.permission.ACCESS_VIBRATOR_STATE) public void addVibratorStateListener(@NonNull android.os.Vibrator.OnVibratorStateChangedListener);
11824    method @RequiresPermission(android.Manifest.permission.ACCESS_VIBRATOR_STATE) public void addVibratorStateListener(@NonNull java.util.concurrent.Executor, @NonNull android.os.Vibrator.OnVibratorStateChangedListener);
11825    method @FlaggedApi("android.os.vibrator.vendor_vibration_effects") public boolean areVendorEffectsSupported();
11826    method @FlaggedApi("android.os.vibrator.vendor_vibration_effects") public boolean areVendorSessionsSupported();
11827    method @RequiresPermission(android.Manifest.permission.ACCESS_VIBRATOR_STATE) public boolean isVibrating();
11828    method @RequiresPermission(android.Manifest.permission.ACCESS_VIBRATOR_STATE) public void removeVibratorStateListener(@NonNull android.os.Vibrator.OnVibratorStateChangedListener);
11829    method @FlaggedApi("android.os.vibrator.vendor_vibration_effects") @RequiresPermission(allOf={android.Manifest.permission.VIBRATE, android.Manifest.permission.VIBRATE_VENDOR_EFFECTS, android.Manifest.permission.START_VIBRATION_SESSIONS}) public void startVendorSession(@NonNull android.os.VibrationAttributes, @Nullable String, @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull android.os.vibrator.VendorVibrationSession.Callback);
11830  }
11831
11832  public static interface Vibrator.OnVibratorStateChangedListener {
11833    method public void onVibratorStateChanged(boolean);
11834  }
11835
11836  public class WorkSource implements android.os.Parcelable {
11837    ctor public WorkSource(int);
11838    ctor public WorkSource(int, @NonNull String);
11839    method public android.os.WorkSource.WorkChain createWorkChain();
11840    method @Nullable public String getPackageName(int);
11841    method public int getUid(int);
11842    method @Nullable public java.util.List<android.os.WorkSource.WorkChain> getWorkChains();
11843    method public boolean isEmpty();
11844    method public int size();
11845    method @NonNull public android.os.WorkSource withoutNames();
11846  }
11847
11848  public static final class WorkSource.WorkChain implements android.os.Parcelable {
11849    ctor public WorkSource.WorkChain();
11850    method public android.os.WorkSource.WorkChain addNode(int, @Nullable String);
11851    method public int describeContents();
11852    method public String getAttributionTag();
11853    method public int getAttributionUid();
11854    method public void writeToParcel(android.os.Parcel, int);
11855    field @NonNull public static final android.os.Parcelable.Creator<android.os.WorkSource.WorkChain> CREATOR;
11856  }
11857
11858}
11859
11860package android.os.connectivity {
11861
11862  public final class CellularBatteryStats implements android.os.Parcelable {
11863    method public int describeContents();
11864    method public long getEnergyConsumedMaMillis();
11865    method public long getIdleTimeMillis();
11866    method public long getKernelActiveTimeMillis();
11867    method public long getLoggingDurationMillis();
11868    method public long getMonitoredRailChargeConsumedMaMillis();
11869    method public long getNumBytesRx();
11870    method public long getNumBytesTx();
11871    method public long getNumPacketsRx();
11872    method public long getNumPacketsTx();
11873    method public long getRxTimeMillis();
11874    method public long getSleepTimeMillis();
11875    method public long getTimeInRatMicros(int);
11876    method public long getTimeInRxSignalStrengthLevelMicros(@IntRange(from=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_NONE_OR_UNKNOWN, to=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_GREAT) int);
11877    method @FlaggedApi("com.android.server.power.optimization.streamlined_connectivity_battery_stats") public long getTxTimeMillis(@IntRange(from=android.telephony.ModemActivityInfo.TX_POWER_LEVEL_0, to=android.telephony.ModemActivityInfo.TX_POWER_LEVEL_4) int);
11878    method public void writeToParcel(@NonNull android.os.Parcel, int);
11879    field @NonNull public static final android.os.Parcelable.Creator<android.os.connectivity.CellularBatteryStats> CREATOR;
11880  }
11881
11882  public final class WifiActivityEnergyInfo implements android.os.Parcelable {
11883    ctor public WifiActivityEnergyInfo(long, int, @IntRange(from=0) long, @IntRange(from=0) long, @IntRange(from=0) long, @IntRange(from=0) long);
11884    method public int describeContents();
11885    method @IntRange(from=0) public long getControllerEnergyUsedMicroJoules();
11886    method @IntRange(from=0) public long getControllerIdleDurationMillis();
11887    method @IntRange(from=0) public long getControllerRxDurationMillis();
11888    method @IntRange(from=0) public long getControllerScanDurationMillis();
11889    method @IntRange(from=0) public long getControllerTxDurationMillis();
11890    method public int getStackState();
11891    method public long getTimeSinceBootMillis();
11892    method public void writeToParcel(@NonNull android.os.Parcel, int);
11893    field @NonNull public static final android.os.Parcelable.Creator<android.os.connectivity.WifiActivityEnergyInfo> CREATOR;
11894    field public static final int STACK_STATE_INVALID = 0; // 0x0
11895    field public static final int STACK_STATE_STATE_ACTIVE = 1; // 0x1
11896    field public static final int STACK_STATE_STATE_IDLE = 3; // 0x3
11897    field public static final int STACK_STATE_STATE_SCANNING = 2; // 0x2
11898  }
11899
11900  public final class WifiBatteryStats implements android.os.Parcelable {
11901    method public int describeContents();
11902    method public long getAppScanRequestCount();
11903    method public long getEnergyConsumedMaMillis();
11904    method public long getIdleTimeMillis();
11905    method public long getKernelActiveTimeMillis();
11906    method public long getLoggingDurationMillis();
11907    method public long getMonitoredRailChargeConsumedMaMillis();
11908    method public long getNumBytesRx();
11909    method public long getNumBytesTx();
11910    method public long getNumPacketsRx();
11911    method public long getNumPacketsTx();
11912    method public long getRxTimeMillis();
11913    method public long getScanTimeMillis();
11914    method public long getSleepTimeMillis();
11915    method public long getTxTimeMillis();
11916    method public void writeToParcel(@NonNull android.os.Parcel, int);
11917    field @NonNull public static final android.os.Parcelable.Creator<android.os.connectivity.WifiBatteryStats> CREATOR;
11918  }
11919
11920}
11921
11922package android.os.image {
11923
11924  public class DynamicSystemClient {
11925    ctor public DynamicSystemClient(@NonNull android.content.Context);
11926    method @RequiresPermission(android.Manifest.permission.INSTALL_DYNAMIC_SYSTEM) public void bind();
11927    method public void setOnStatusChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.os.image.DynamicSystemClient.OnStatusChangedListener);
11928    method public void setOnStatusChangedListener(@NonNull android.os.image.DynamicSystemClient.OnStatusChangedListener);
11929    method @RequiresPermission(android.Manifest.permission.INSTALL_DYNAMIC_SYSTEM) public void start(@NonNull android.net.Uri, long);
11930    method @RequiresPermission(android.Manifest.permission.INSTALL_DYNAMIC_SYSTEM) public void start(@NonNull android.net.Uri, long, long);
11931    method @RequiresPermission(android.Manifest.permission.INSTALL_DYNAMIC_SYSTEM) public void unbind();
11932    field public static final int CAUSE_ERROR_EXCEPTION = 6; // 0x6
11933    field public static final int CAUSE_ERROR_INVALID_URL = 4; // 0x4
11934    field public static final int CAUSE_ERROR_IO = 3; // 0x3
11935    field public static final int CAUSE_ERROR_IPC = 5; // 0x5
11936    field public static final int CAUSE_INSTALL_CANCELLED = 2; // 0x2
11937    field public static final int CAUSE_INSTALL_COMPLETED = 1; // 0x1
11938    field public static final int CAUSE_NOT_SPECIFIED = 0; // 0x0
11939    field public static final int STATUS_IN_PROGRESS = 2; // 0x2
11940    field public static final int STATUS_IN_USE = 4; // 0x4
11941    field public static final int STATUS_NOT_STARTED = 1; // 0x1
11942    field public static final int STATUS_READY = 3; // 0x3
11943    field public static final int STATUS_UNKNOWN = 0; // 0x0
11944  }
11945
11946  public static interface DynamicSystemClient.OnStatusChangedListener {
11947    method public void onStatusChanged(int, int, long, @Nullable Throwable);
11948  }
11949
11950}
11951
11952package android.os.storage {
11953
11954  public class StorageManager {
11955    method @WorkerThread public void allocateBytes(@NonNull java.util.UUID, long, @RequiresPermission int) throws java.io.IOException;
11956    method @WorkerThread public void allocateBytes(java.io.FileDescriptor, long, @RequiresPermission int) throws java.io.IOException;
11957    method @WorkerThread public long getAllocatableBytes(@NonNull java.util.UUID, @RequiresPermission int) throws java.io.IOException;
11958    method @RequiresPermission(android.Manifest.permission.WRITE_MEDIA_STORAGE) public int getExternalStorageMountMode(int, @NonNull String);
11959    method @FlaggedApi("android.os.storage_lifetime_api") @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getInternalStorageRemainingLifetime();
11960    method public static boolean hasIsolatedStorage();
11961    method public void updateExternalStorageFileQuotaType(@NonNull java.io.File, int) throws java.io.IOException;
11962    field @RequiresPermission(android.Manifest.permission.ALLOCATE_AGGRESSIVE) public static final int FLAG_ALLOCATE_AGGRESSIVE = 1; // 0x1
11963    field public static final int MOUNT_MODE_EXTERNAL_ANDROID_WRITABLE = 4; // 0x4
11964    field public static final int MOUNT_MODE_EXTERNAL_DEFAULT = 1; // 0x1
11965    field public static final int MOUNT_MODE_EXTERNAL_INSTALLER = 2; // 0x2
11966    field public static final int MOUNT_MODE_EXTERNAL_NONE = 0; // 0x0
11967    field public static final int MOUNT_MODE_EXTERNAL_PASS_THROUGH = 3; // 0x3
11968    field public static final int QUOTA_TYPE_MEDIA_AUDIO = 2; // 0x2
11969    field public static final int QUOTA_TYPE_MEDIA_IMAGE = 1; // 0x1
11970    field public static final int QUOTA_TYPE_MEDIA_NONE = 0; // 0x0
11971    field public static final int QUOTA_TYPE_MEDIA_VIDEO = 3; // 0x3
11972  }
11973
11974  public final class StorageVolume implements android.os.Parcelable {
11975    method @NonNull public String getId();
11976    method public boolean isExternallyManaged();
11977  }
11978
11979}
11980
11981package android.os.vibrator {
11982
11983  @FlaggedApi("android.os.vibrator.vendor_vibration_effects") public final class VendorVibrationSession implements java.lang.AutoCloseable {
11984    method public void cancel();
11985    method public void close();
11986    method @RequiresPermission(android.Manifest.permission.VIBRATE) public void vibrate(@NonNull android.os.VibrationEffect, @Nullable String);
11987    field public static final int STATUS_CANCELED = 4; // 0x4
11988    field public static final int STATUS_IGNORED = 2; // 0x2
11989    field public static final int STATUS_SUCCESS = 1; // 0x1
11990    field public static final int STATUS_UNKNOWN = 0; // 0x0
11991    field public static final int STATUS_UNKNOWN_ERROR = 5; // 0x5
11992    field public static final int STATUS_UNSUPPORTED = 3; // 0x3
11993  }
11994
11995  public static interface VendorVibrationSession.Callback {
11996    method public void onFinished(int);
11997    method public void onFinishing();
11998    method public void onStarted(@NonNull android.os.vibrator.VendorVibrationSession);
11999  }
12000
12001}
12002
12003package android.os.vibrator.persistence {
12004
12005  @FlaggedApi("android.os.vibrator.vibration_xml_apis") public final class ParsedVibration {
12006    method @FlaggedApi("android.os.vibrator.vibration_xml_apis") @Nullable public android.os.VibrationEffect resolve(@NonNull android.os.Vibrator);
12007  }
12008
12009  @FlaggedApi("android.os.vibrator.vibration_xml_apis") public final class VibrationXmlParser {
12010    method @FlaggedApi("android.os.vibrator.vibration_xml_apis") @NonNull public static android.os.vibrator.persistence.ParsedVibration parse(@NonNull java.io.InputStream) throws java.io.IOException;
12011    method @FlaggedApi("android.os.vibrator.vibration_xml_apis") @NonNull public static android.os.VibrationEffect parseVibrationEffect(@NonNull java.io.InputStream) throws java.io.IOException;
12012  }
12013
12014}
12015
12016package android.permission {
12017
12018  public final class AdminPermissionControlParams implements android.os.Parcelable {
12019    method public boolean canAdminGrantSensorsPermissions();
12020    method public int describeContents();
12021    method public int getGrantState();
12022    method @NonNull public String getGranteePackageName();
12023    method @NonNull public String getPermission();
12024    method public void writeToParcel(@NonNull android.os.Parcel, int);
12025    field @NonNull public static final android.os.Parcelable.Creator<android.permission.AdminPermissionControlParams> CREATOR;
12026  }
12027
12028  public final class PermissionControllerManager {
12029    method @RequiresPermission(anyOf={android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS, android.Manifest.permission.RESTORE_RUNTIME_PERMISSIONS}) public void applyStagedRuntimePermissionBackup(@NonNull String, @NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>);
12030    method @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public void getHibernationEligibility(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.IntConsumer);
12031    method @RequiresPermission(android.Manifest.permission.GET_RUNTIME_PERMISSIONS) public void getRuntimePermissionBackup(@NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<byte[]>);
12032    method public void getUnusedAppCount(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.IntConsumer);
12033    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);
12034    method @RequiresPermission(anyOf={android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS, android.Manifest.permission.RESTORE_RUNTIME_PERMISSIONS}) public void stageAndApplyRuntimePermissionsBackup(@NonNull byte[], @NonNull android.os.UserHandle);
12035    field public static final int COUNT_ONLY_WHEN_GRANTED = 1; // 0x1
12036    field public static final int COUNT_WHEN_SYSTEM = 2; // 0x2
12037    field public static final int HIBERNATION_ELIGIBILITY_ELIGIBLE = 0; // 0x0
12038    field public static final int HIBERNATION_ELIGIBILITY_EXEMPT_BY_SYSTEM = 1; // 0x1
12039    field public static final int HIBERNATION_ELIGIBILITY_EXEMPT_BY_USER = 2; // 0x2
12040    field public static final int HIBERNATION_ELIGIBILITY_UNKNOWN = -1; // 0xffffffff
12041    field public static final int REASON_INSTALLER_POLICY_VIOLATION = 2; // 0x2
12042    field public static final int REASON_MALWARE = 1; // 0x1
12043  }
12044
12045  public abstract static class PermissionControllerManager.OnRevokeRuntimePermissionsCallback {
12046    ctor public PermissionControllerManager.OnRevokeRuntimePermissionsCallback();
12047    method public abstract void onRevokeRuntimePermissions(@NonNull java.util.Map<java.lang.String,java.util.List<java.lang.String>>);
12048  }
12049
12050  public abstract class PermissionControllerService extends android.app.Service {
12051    ctor public PermissionControllerService();
12052    method @Deprecated @NonNull @RequiresPermission("android.permission.MANAGE_COMPANION_DEVICES") public String getPrivilegesDescriptionStringForProfile(@NonNull String);
12053    method @BinderThread public void onApplyStagedRuntimePermissionBackup(@NonNull String, @NonNull android.os.UserHandle, @NonNull java.util.function.Consumer<java.lang.Boolean>);
12054    method @NonNull public final android.os.IBinder onBind(android.content.Intent);
12055    method @BinderThread public abstract void onCountPermissionApps(@NonNull java.util.List<java.lang.String>, int, @NonNull java.util.function.IntConsumer);
12056    method @BinderThread public abstract void onGetAppPermissions(@NonNull String, @NonNull java.util.function.Consumer<java.util.List<android.permission.RuntimePermissionPresentationInfo>>);
12057    method @BinderThread public void onGetGroupOfPlatformPermission(@NonNull String, @NonNull java.util.function.Consumer<java.lang.String>);
12058    method @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public void onGetHibernationEligibility(@NonNull String, @NonNull java.util.function.IntConsumer);
12059    method @BinderThread public abstract void onGetPermissionUsages(boolean, long, @NonNull java.util.function.Consumer<java.util.List<android.permission.RuntimePermissionUsageInfo>>);
12060    method @BinderThread public void onGetPlatformPermissionsForGroup(@NonNull String, @NonNull java.util.function.Consumer<java.util.List<java.lang.String>>);
12061    method @BinderThread public abstract void onGetRuntimePermissionsBackup(@NonNull android.os.UserHandle, @NonNull java.io.OutputStream, @NonNull Runnable);
12062    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public void onGetUnusedAppCount(@NonNull java.util.function.IntConsumer);
12063    method @BinderThread public abstract void onGrantOrUpgradeDefaultRuntimePermissions(@NonNull Runnable);
12064    method @Deprecated @BinderThread public void onOneTimePermissionSessionTimeout(@NonNull String);
12065    method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") @BinderThread public void onOneTimePermissionSessionTimeout(@NonNull String, int);
12066    method @Deprecated @BinderThread public void onRestoreDelayedRuntimePermissionsBackup(@NonNull String, @NonNull android.os.UserHandle, @NonNull java.util.function.Consumer<java.lang.Boolean>);
12067    method @Deprecated @BinderThread public void onRestoreRuntimePermissionsBackup(@NonNull android.os.UserHandle, @NonNull java.io.InputStream, @NonNull Runnable);
12068    method @BinderThread public abstract void onRevokeRuntimePermission(@NonNull String, @NonNull String, @NonNull Runnable);
12069    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>>>);
12070    method @Deprecated @BinderThread public void onRevokeSelfPermissionsOnKill(@NonNull String, @NonNull java.util.List<java.lang.String>, @NonNull Runnable);
12071    method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") @BinderThread public void onRevokeSelfPermissionsOnKill(@NonNull String, @NonNull java.util.List<java.lang.String>, int, @NonNull Runnable);
12072    method @Deprecated @BinderThread public abstract void onSetRuntimePermissionGrantStateByDeviceAdmin(@NonNull String, @NonNull String, @NonNull String, int, @NonNull java.util.function.Consumer<java.lang.Boolean>);
12073    method @BinderThread public void onSetRuntimePermissionGrantStateByDeviceAdmin(@NonNull String, @NonNull android.permission.AdminPermissionControlParams, @NonNull java.util.function.Consumer<java.lang.Boolean>);
12074    method @BinderThread public void onStageAndApplyRuntimePermissionsBackup(@NonNull android.os.UserHandle, @NonNull java.io.InputStream, @NonNull Runnable);
12075    method @BinderThread public void onUpdateUserSensitivePermissionFlags(int, @NonNull java.util.concurrent.Executor, @NonNull Runnable);
12076    method @BinderThread public void onUpdateUserSensitivePermissionFlags(int, @NonNull Runnable);
12077    field public static final String SERVICE_INTERFACE = "android.permission.PermissionControllerService";
12078  }
12079
12080  public final class PermissionGroupUsage implements android.os.Parcelable {
12081    method public int describeContents();
12082    method @Nullable public CharSequence getAttributionLabel();
12083    method @Nullable public CharSequence getAttributionTag();
12084    method public long getLastAccessTimeMillis();
12085    method @NonNull public String getPackageName();
12086    method @NonNull public String getPermissionGroupName();
12087    method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") @NonNull public String getPersistentDeviceId();
12088    method @Nullable public CharSequence getProxyLabel();
12089    method public int getUid();
12090    method public boolean isActive();
12091    method public boolean isPhoneCall();
12092    method public void writeToParcel(@NonNull android.os.Parcel, int);
12093    field @NonNull public static final android.os.Parcelable.Creator<android.permission.PermissionGroupUsage> CREATOR;
12094  }
12095
12096  public final class PermissionManager {
12097    method public int checkDeviceIdentifierAccess(@Nullable String, @Nullable String, @Nullable String, int, int);
12098    method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") public int checkPermission(@NonNull String, @NonNull String, @NonNull String);
12099    method @RequiresPermission(value=android.Manifest.permission.UPDATE_APP_OPS_STATS, conditional=true) public int checkPermissionForDataDelivery(@NonNull String, @NonNull android.content.AttributionSource, @Nullable String);
12100    method @RequiresPermission(value=android.Manifest.permission.UPDATE_APP_OPS_STATS, conditional=true) public int checkPermissionForDataDeliveryFromDataSource(@NonNull String, @NonNull android.content.AttributionSource, @Nullable String);
12101    method public int checkPermissionForPreflight(@NonNull String, @NonNull android.content.AttributionSource);
12102    method @RequiresPermission(value=android.Manifest.permission.UPDATE_APP_OPS_STATS, conditional=true) public int checkPermissionForStartDataDelivery(@NonNull String, @NonNull android.content.AttributionSource, @Nullable String);
12103    method public void finishDataDelivery(@NonNull String, @NonNull android.content.AttributionSource);
12104    method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") @NonNull @RequiresPermission(anyOf={android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS, android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS, android.Manifest.permission.GET_RUNTIME_PERMISSIONS}) public java.util.Map<java.lang.String,android.permission.PermissionManager.PermissionState> getAllPermissionStates(@NonNull String, @NonNull String);
12105    method @NonNull @RequiresPermission(android.Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY) public java.util.Set<java.lang.String> getAutoRevokeExemptionGrantedPackages();
12106    method @NonNull @RequiresPermission(android.Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY) public java.util.Set<java.lang.String> getAutoRevokeExemptionRequestedPackages();
12107    method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") @RequiresPermission(anyOf={android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS, android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS, android.Manifest.permission.GET_RUNTIME_PERMISSIONS}) public int getPermissionFlags(@NonNull String, @NonNull String, @NonNull String);
12108    method @IntRange(from=0) @RequiresPermission(anyOf={android.Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY, android.Manifest.permission.UPGRADE_RUNTIME_PERMISSIONS}) public int getRuntimePermissionsVersion();
12109    method @NonNull public java.util.List<android.permission.PermissionManager.SplitPermissionInfo> getSplitPermissions();
12110    method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) public void grantRuntimePermission(@NonNull String, @NonNull String, @NonNull String);
12111    method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") @RequiresPermission(android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS) public void revokeRuntimePermission(@NonNull String, @NonNull String, @NonNull String, @Nullable String);
12112    method @RequiresPermission(anyOf={android.Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY, android.Manifest.permission.UPGRADE_RUNTIME_PERMISSIONS}) public void setRuntimePermissionsVersion(@IntRange(from=0) int);
12113    method @Deprecated @RequiresPermission(android.Manifest.permission.MANAGE_ONE_TIME_PERMISSION_SESSIONS) public void startOneTimePermissionSession(@NonNull String, long, int, int);
12114    method @RequiresPermission(android.Manifest.permission.MANAGE_ONE_TIME_PERMISSION_SESSIONS) public void startOneTimePermissionSession(@NonNull String, long, long, int, int);
12115    method @RequiresPermission(android.Manifest.permission.MANAGE_ONE_TIME_PERMISSION_SESSIONS) public void stopOneTimePermissionSession(@NonNull String);
12116    method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") @RequiresPermission(anyOf={android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS, android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS}) public void updatePermissionFlags(@NonNull String, @NonNull String, @NonNull String, int, int);
12117    field @RequiresPermission(android.Manifest.permission.START_REVIEW_PERMISSION_DECISIONS) public static final String ACTION_REVIEW_PERMISSION_DECISIONS = "android.permission.action.REVIEW_PERMISSION_DECISIONS";
12118    field public static final String EXTRA_PERMISSION_USAGES = "android.permission.extra.PERMISSION_USAGES";
12119    field public static final int PERMISSION_GRANTED = 0; // 0x0
12120    field public static final int PERMISSION_HARD_DENIED = 2; // 0x2
12121    field public static final int PERMISSION_SOFT_DENIED = 1; // 0x1
12122  }
12123
12124  @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") public static final class PermissionManager.PermissionState implements android.os.Parcelable {
12125    method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") public int describeContents();
12126    method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") public int getFlags();
12127    method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") public boolean isGranted();
12128    method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") public void writeToParcel(@NonNull android.os.Parcel, int);
12129    field @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") @NonNull public static final android.os.Parcelable.Creator<android.permission.PermissionManager.PermissionState> CREATOR;
12130  }
12131
12132  public static final class PermissionManager.SplitPermissionInfo {
12133    method @NonNull public java.util.List<java.lang.String> getNewPermissions();
12134    method @NonNull public String getSplitPermission();
12135    method public int getTargetSdk();
12136  }
12137
12138  public final class RuntimePermissionPresentationInfo implements android.os.Parcelable {
12139    ctor public RuntimePermissionPresentationInfo(@NonNull CharSequence, boolean, boolean);
12140    method public int describeContents();
12141    method @NonNull public CharSequence getLabel();
12142    method public boolean isGranted();
12143    method public boolean isStandard();
12144    method public void writeToParcel(android.os.Parcel, int);
12145    field @NonNull public static final android.os.Parcelable.Creator<android.permission.RuntimePermissionPresentationInfo> CREATOR;
12146  }
12147
12148  public final class RuntimePermissionUsageInfo implements android.os.Parcelable {
12149    ctor public RuntimePermissionUsageInfo(@NonNull String, int);
12150    method public int describeContents();
12151    method public int getAppAccessCount();
12152    method @NonNull public String getName();
12153    method public void writeToParcel(android.os.Parcel, int);
12154    field @NonNull public static final android.os.Parcelable.Creator<android.permission.RuntimePermissionUsageInfo> CREATOR;
12155  }
12156
12157}
12158
12159package android.permissionpresenterservice {
12160
12161  @Deprecated public abstract class RuntimePermissionPresenterService extends android.app.Service {
12162    ctor @Deprecated public RuntimePermissionPresenterService();
12163    method @Deprecated public final void attachBaseContext(android.content.Context);
12164    method @Deprecated public final android.os.IBinder onBind(android.content.Intent);
12165    method @Deprecated public abstract java.util.List<android.content.pm.permission.RuntimePermissionPresentationInfo> onGetAppPermissions(@NonNull String);
12166    field @Deprecated public static final String SERVICE_INTERFACE = "android.permissionpresenterservice.RuntimePermissionPresenterService";
12167  }
12168
12169}
12170
12171package android.preference {
12172
12173  @Deprecated public class PreferenceManager {
12174    method @Deprecated public boolean isStorageCredentialProtected();
12175    method @Deprecated public void setStorageCredentialProtected();
12176  }
12177
12178}
12179
12180package android.print {
12181
12182  public final class PrintManager {
12183    method @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICE_RECOMMENDATIONS) public void addPrintServiceRecommendationsChangeListener(@NonNull android.print.PrintManager.PrintServiceRecommendationsChangeListener, @Nullable android.os.Handler);
12184    method @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICES) public void addPrintServicesChangeListener(@NonNull android.print.PrintManager.PrintServicesChangeListener, @Nullable android.os.Handler);
12185    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICE_RECOMMENDATIONS) public java.util.List<android.printservice.recommendation.RecommendationInfo> getPrintServiceRecommendations();
12186    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICES) public java.util.List<android.printservice.PrintServiceInfo> getPrintServices(int);
12187    method @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICE_RECOMMENDATIONS) public void removePrintServiceRecommendationsChangeListener(@NonNull android.print.PrintManager.PrintServiceRecommendationsChangeListener);
12188    method @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICES) public void removePrintServicesChangeListener(@NonNull android.print.PrintManager.PrintServicesChangeListener);
12189    field public static final int ENABLED_SERVICES = 1; // 0x1
12190  }
12191
12192  public static interface PrintManager.PrintServiceRecommendationsChangeListener {
12193    method public void onPrintServiceRecommendationsChanged();
12194  }
12195
12196  public static interface PrintManager.PrintServicesChangeListener {
12197    method public void onPrintServicesChanged();
12198  }
12199
12200}
12201
12202package android.printservice {
12203
12204  public final class PrintServiceInfo implements android.os.Parcelable {
12205    method public int describeContents();
12206    method @NonNull public android.content.ComponentName getComponentName();
12207    method public void writeToParcel(android.os.Parcel, int);
12208    field @NonNull public static final android.os.Parcelable.Creator<android.printservice.PrintServiceInfo> CREATOR;
12209  }
12210
12211}
12212
12213package android.printservice.recommendation {
12214
12215  public final class RecommendationInfo implements android.os.Parcelable {
12216    ctor public RecommendationInfo(@NonNull CharSequence, @NonNull CharSequence, @NonNull java.util.List<java.net.InetAddress>, boolean);
12217    ctor @Deprecated public RecommendationInfo(@NonNull CharSequence, @NonNull CharSequence, @IntRange(from=0) int, boolean);
12218    method public int describeContents();
12219    method @NonNull public java.util.List<java.net.InetAddress> getDiscoveredPrinters();
12220    method public CharSequence getName();
12221    method public int getNumDiscoveredPrinters();
12222    method public CharSequence getPackageName();
12223    method public boolean recommendsMultiVendorService();
12224    method public void writeToParcel(android.os.Parcel, int);
12225    field @NonNull public static final android.os.Parcelable.Creator<android.printservice.recommendation.RecommendationInfo> CREATOR;
12226  }
12227
12228  public abstract class RecommendationService extends android.app.Service {
12229    ctor public RecommendationService();
12230    method public final android.os.IBinder onBind(android.content.Intent);
12231    method public abstract void onConnected();
12232    method public abstract void onDisconnected();
12233    method public final void updateRecommendations(@Nullable java.util.List<android.printservice.recommendation.RecommendationInfo>);
12234    field public static final String SERVICE_INTERFACE = "android.printservice.recommendation.RecommendationService";
12235  }
12236
12237}
12238
12239package android.provider {
12240
12241  @FlaggedApi("com.android.server.telecom.flags.telecom_mainline_blocked_numbers_manager") public final class BlockedNumbersManager {
12242    method @FlaggedApi("com.android.server.telecom.flags.telecom_mainline_blocked_numbers_manager") @RequiresPermission(allOf={android.Manifest.permission.READ_BLOCKED_NUMBERS, android.Manifest.permission.WRITE_BLOCKED_NUMBERS}) public void endBlockSuppression();
12243    method @FlaggedApi("com.android.server.telecom.flags.telecom_mainline_blocked_numbers_manager") @NonNull @RequiresPermission(allOf={android.Manifest.permission.READ_BLOCKED_NUMBERS, android.Manifest.permission.WRITE_BLOCKED_NUMBERS}) public android.provider.BlockedNumbersManager.BlockSuppressionStatus getBlockSuppressionStatus();
12244    method @FlaggedApi("com.android.server.telecom.flags.telecom_mainline_blocked_numbers_manager") @RequiresPermission(allOf={android.Manifest.permission.READ_BLOCKED_NUMBERS, android.Manifest.permission.WRITE_BLOCKED_NUMBERS}) public boolean getBlockedNumberSetting(@NonNull String);
12245    method @FlaggedApi("com.android.server.telecom.flags.telecom_mainline_blocked_numbers_manager") @RequiresPermission(allOf={android.Manifest.permission.READ_BLOCKED_NUMBERS, android.Manifest.permission.WRITE_BLOCKED_NUMBERS}) public void notifyEmergencyContact();
12246    method @FlaggedApi("com.android.server.telecom.flags.telecom_mainline_blocked_numbers_manager") @RequiresPermission(allOf={android.Manifest.permission.READ_BLOCKED_NUMBERS, android.Manifest.permission.WRITE_BLOCKED_NUMBERS}) public void setBlockedNumberSetting(@NonNull String, boolean);
12247    method @FlaggedApi("com.android.server.telecom.flags.telecom_mainline_blocked_numbers_manager") @RequiresPermission(allOf={android.Manifest.permission.READ_BLOCKED_NUMBERS, android.Manifest.permission.WRITE_BLOCKED_NUMBERS}) public boolean shouldShowEmergencyCallNotification();
12248    method @FlaggedApi("com.android.server.telecom.flags.telecom_mainline_blocked_numbers_manager") @RequiresPermission(allOf={android.Manifest.permission.READ_BLOCKED_NUMBERS, android.Manifest.permission.WRITE_BLOCKED_NUMBERS}) public int shouldSystemBlockNumber(@NonNull String, int, boolean);
12249    field @FlaggedApi("com.android.server.telecom.flags.telecom_mainline_blocked_numbers_manager") public static final String ACTION_BLOCK_SUPPRESSION_STATE_CHANGED = "android.provider.action.BLOCK_SUPPRESSION_STATE_CHANGED";
12250    field @FlaggedApi("com.android.server.telecom.flags.telecom_mainline_blocked_numbers_manager") public static final String ENHANCED_SETTING_KEY_BLOCK_PAYPHONE = "block_payphone_calls_setting";
12251    field @FlaggedApi("com.android.server.telecom.flags.telecom_mainline_blocked_numbers_manager") public static final String ENHANCED_SETTING_KEY_BLOCK_PRIVATE = "block_private_number_calls_setting";
12252    field @FlaggedApi("com.android.server.telecom.flags.telecom_mainline_blocked_numbers_manager") public static final String ENHANCED_SETTING_KEY_BLOCK_UNAVAILABLE = "block_unavailable_calls_setting";
12253    field @FlaggedApi("com.android.server.telecom.flags.telecom_mainline_blocked_numbers_manager") public static final String ENHANCED_SETTING_KEY_BLOCK_UNKNOWN = "block_unknown_calls_setting";
12254    field @FlaggedApi("com.android.server.telecom.flags.telecom_mainline_blocked_numbers_manager") public static final String ENHANCED_SETTING_KEY_BLOCK_UNREGISTERED = "block_numbers_not_in_contacts_setting";
12255    field @FlaggedApi("com.android.server.telecom.flags.telecom_mainline_blocked_numbers_manager") public static final String ENHANCED_SETTING_KEY_SHOW_EMERGENCY_CALL_NOTIFICATION = "show_emergency_call_notification";
12256  }
12257
12258  @FlaggedApi("com.android.server.telecom.flags.telecom_mainline_blocked_numbers_manager") public static final class BlockedNumbersManager.BlockSuppressionStatus {
12259    ctor public BlockedNumbersManager.BlockSuppressionStatus(boolean, long);
12260    method public boolean getIsSuppressed();
12261    method public long getUntilTimestampMillis();
12262  }
12263
12264  public class CallLog {
12265    method @RequiresPermission(allOf={android.Manifest.permission.WRITE_CALL_LOG, android.Manifest.permission.INTERACT_ACROSS_USERS}) public static void storeCallComposerPicture(@NonNull android.content.Context, @NonNull java.io.InputStream, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.net.Uri,android.provider.CallLog.CallComposerLoggingException>);
12266  }
12267
12268  public static class CallLog.CallComposerLoggingException extends java.lang.Throwable {
12269    ctor public CallLog.CallComposerLoggingException(int);
12270    method public int getErrorCode();
12271    field public static final int ERROR_INPUT_CLOSED = 3; // 0x3
12272    field public static final int ERROR_REMOTE_END_CLOSED = 1; // 0x1
12273    field public static final int ERROR_STORAGE_FULL = 2; // 0x2
12274    field public static final int ERROR_UNKNOWN = 0; // 0x0
12275  }
12276
12277  @Deprecated public static final class ContactsContract.MetadataSync implements android.provider.BaseColumns android.provider.ContactsContract.MetadataSyncColumns {
12278    field @Deprecated public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contact_metadata";
12279    field @Deprecated public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contact_metadata";
12280    field @Deprecated public static final android.net.Uri CONTENT_URI;
12281    field @Deprecated public static final String METADATA_AUTHORITY = "com.android.contacts.metadata";
12282    field @Deprecated public static final android.net.Uri METADATA_AUTHORITY_URI;
12283  }
12284
12285  @Deprecated protected static interface ContactsContract.MetadataSyncColumns {
12286    field @Deprecated public static final String ACCOUNT_NAME = "account_name";
12287    field @Deprecated public static final String ACCOUNT_TYPE = "account_type";
12288    field @Deprecated public static final String DATA = "data";
12289    field @Deprecated public static final String DATA_SET = "data_set";
12290    field @Deprecated public static final String DELETED = "deleted";
12291    field @Deprecated public static final String RAW_CONTACT_BACKUP_ID = "raw_contact_backup_id";
12292  }
12293
12294  @Deprecated public static final class ContactsContract.MetadataSyncState implements android.provider.BaseColumns android.provider.ContactsContract.MetadataSyncStateColumns {
12295    field @Deprecated public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contact_metadata_sync_state";
12296    field @Deprecated public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contact_metadata_sync_state";
12297    field @Deprecated public static final android.net.Uri CONTENT_URI;
12298  }
12299
12300  @Deprecated protected static interface ContactsContract.MetadataSyncStateColumns {
12301    field @Deprecated public static final String ACCOUNT_NAME = "account_name";
12302    field @Deprecated public static final String ACCOUNT_TYPE = "account_type";
12303    field @Deprecated public static final String DATA_SET = "data_set";
12304    field @Deprecated public static final String STATE = "state";
12305  }
12306
12307  @FlaggedApi("android.provider.new_default_account_api_enabled") public static final class ContactsContract.RawContacts.DefaultAccount {
12308    method @FlaggedApi("android.provider.new_default_account_api_enabled") @NonNull @RequiresPermission(android.Manifest.permission.SET_DEFAULT_ACCOUNT_FOR_CONTACTS) public static java.util.List<android.accounts.Account> getEligibleCloudAccounts(@NonNull android.content.ContentResolver);
12309    method @FlaggedApi("android.provider.new_default_account_api_enabled") @RequiresPermission(allOf={android.Manifest.permission.READ_CONTACTS, android.Manifest.permission.SET_DEFAULT_ACCOUNT_FOR_CONTACTS}) public static int getNumberOfMovableLocalContacts(@NonNull android.content.ContentResolver);
12310    method @FlaggedApi("android.provider.new_default_account_api_enabled") @RequiresPermission(allOf={android.Manifest.permission.READ_CONTACTS, android.Manifest.permission.SET_DEFAULT_ACCOUNT_FOR_CONTACTS}) public static int getNumberOfMovableSimContacts(@NonNull android.content.ContentResolver);
12311    method @FlaggedApi("android.provider.new_default_account_api_enabled") @RequiresPermission(allOf={android.Manifest.permission.WRITE_CONTACTS, android.Manifest.permission.SET_DEFAULT_ACCOUNT_FOR_CONTACTS}) public static void moveLocalContactsToCloudDefaultAccount(@NonNull android.content.ContentResolver);
12312    method @FlaggedApi("android.provider.new_default_account_api_enabled") @RequiresPermission(allOf={android.Manifest.permission.WRITE_CONTACTS, android.Manifest.permission.SET_DEFAULT_ACCOUNT_FOR_CONTACTS}) public static void moveSimContactsToCloudDefaultAccount(@NonNull android.content.ContentResolver);
12313    method @FlaggedApi("android.provider.new_default_account_api_enabled") @RequiresPermission(android.Manifest.permission.SET_DEFAULT_ACCOUNT_FOR_CONTACTS) public static void setDefaultAccountForNewContacts(@NonNull android.content.ContentResolver, @NonNull android.provider.ContactsContract.RawContacts.DefaultAccount.DefaultAccountAndState);
12314  }
12315
12316  public static final class ContactsContract.Settings implements android.provider.ContactsContract.SettingsColumns {
12317    method @Deprecated @FlaggedApi("android.provider.new_default_account_api_enabled") @RequiresPermission(android.Manifest.permission.SET_DEFAULT_ACCOUNT_FOR_CONTACTS) public static void setDefaultAccount(@NonNull android.content.ContentResolver, @Nullable android.accounts.Account);
12318  }
12319
12320  public static final class ContactsContract.SimContacts {
12321    method @RequiresPermission("android.contacts.permission.MANAGE_SIM_ACCOUNTS") public static void addSimAccount(@NonNull android.content.ContentResolver, @NonNull String, @NonNull String, int, int);
12322    method @RequiresPermission("android.contacts.permission.MANAGE_SIM_ACCOUNTS") public static void removeSimAccounts(@NonNull android.content.ContentResolver, int);
12323  }
12324
12325  public final class DocumentsContract {
12326    method @NonNull public static android.net.Uri buildDocumentUriAsUser(@NonNull String, @NonNull String, @NonNull android.os.UserHandle);
12327    method public static boolean isManageMode(@NonNull android.net.Uri);
12328    method @NonNull public static android.net.Uri setManageMode(@NonNull android.net.Uri);
12329    field public static final String ACTION_DOCUMENT_ROOT_SETTINGS = "android.provider.action.DOCUMENT_ROOT_SETTINGS";
12330    field public static final String ACTION_MANAGE_DOCUMENT = "android.provider.action.MANAGE_DOCUMENT";
12331    field public static final String DOWNLOADS_PROVIDER_AUTHORITY = "downloads";
12332    field public static final String EXTERNAL_STORAGE_PROVIDER_AUTHORITY = "com.android.externalstorage.documents";
12333    field public static final String EXTRA_SHOW_ADVANCED = "android.provider.extra.SHOW_ADVANCED";
12334  }
12335
12336  public static final class DocumentsContract.Root {
12337    field public static final int FLAG_ADVANCED = 65536; // 0x10000
12338    field public static final int FLAG_HAS_SETTINGS = 131072; // 0x20000
12339    field public static final int FLAG_REMOVABLE_SD = 262144; // 0x40000
12340    field public static final int FLAG_REMOVABLE_USB = 524288; // 0x80000
12341  }
12342
12343  @FlaggedApi("android.provider.user_keys") public final class E2eeContactKeysManager {
12344    method @RequiresPermission(allOf={android.Manifest.permission.WRITE_VERIFICATION_STATE_E2EE_CONTACT_KEYS, android.Manifest.permission.WRITE_CONTACTS}) public boolean updateE2eeContactKeyLocalVerificationState(@NonNull String, @NonNull String, @NonNull String, @NonNull String, int);
12345    method @RequiresPermission(allOf={android.Manifest.permission.WRITE_VERIFICATION_STATE_E2EE_CONTACT_KEYS, android.Manifest.permission.WRITE_CONTACTS}) public boolean updateE2eeContactKeyRemoteVerificationState(@NonNull String, @NonNull String, @NonNull String, @NonNull String, int);
12346    method @RequiresPermission(allOf={android.Manifest.permission.WRITE_VERIFICATION_STATE_E2EE_CONTACT_KEYS, android.Manifest.permission.WRITE_CONTACTS}) public boolean updateE2eeSelfKeyRemoteVerificationState(@NonNull String, @NonNull String, @NonNull String, int);
12347  }
12348
12349  public abstract class SearchIndexableData {
12350    ctor public SearchIndexableData();
12351    ctor public SearchIndexableData(android.content.Context);
12352    field public String className;
12353    field public android.content.Context context;
12354    field public boolean enabled;
12355    field public int iconResId;
12356    field public String intentAction;
12357    field public String intentTargetClass;
12358    field public String intentTargetPackage;
12359    field public String key;
12360    field public java.util.Locale locale;
12361    field public String packageName;
12362    field public int rank;
12363    field public int userId;
12364  }
12365
12366  public class SearchIndexableResource extends android.provider.SearchIndexableData {
12367    ctor public SearchIndexableResource(int, int, String, int);
12368    ctor public SearchIndexableResource(android.content.Context);
12369    field public int xmlResId;
12370  }
12371
12372  public class SearchIndexablesContract {
12373    ctor public SearchIndexablesContract();
12374    field public static final int COLUMN_INDEX_NON_INDEXABLE_KEYS_KEY_VALUE = 0; // 0x0
12375    field public static final int COLUMN_INDEX_RAW_CLASS_NAME = 7; // 0x7
12376    field public static final int COLUMN_INDEX_RAW_ENTRIES = 4; // 0x4
12377    field public static final int COLUMN_INDEX_RAW_ICON_RESID = 8; // 0x8
12378    field public static final int COLUMN_INDEX_RAW_INTENT_ACTION = 9; // 0x9
12379    field public static final int COLUMN_INDEX_RAW_INTENT_TARGET_CLASS = 11; // 0xb
12380    field public static final int COLUMN_INDEX_RAW_INTENT_TARGET_PACKAGE = 10; // 0xa
12381    field public static final int COLUMN_INDEX_RAW_KEY = 12; // 0xc
12382    field public static final int COLUMN_INDEX_RAW_KEYWORDS = 5; // 0x5
12383    field public static final int COLUMN_INDEX_RAW_RANK = 0; // 0x0
12384    field public static final int COLUMN_INDEX_RAW_SCREEN_TITLE = 6; // 0x6
12385    field public static final int COLUMN_INDEX_RAW_SUMMARY_OFF = 3; // 0x3
12386    field public static final int COLUMN_INDEX_RAW_SUMMARY_ON = 2; // 0x2
12387    field public static final int COLUMN_INDEX_RAW_TITLE = 1; // 0x1
12388    field public static final int COLUMN_INDEX_RAW_USER_ID = 13; // 0xd
12389    field public static final int COLUMN_INDEX_XML_RES_CLASS_NAME = 2; // 0x2
12390    field public static final int COLUMN_INDEX_XML_RES_ICON_RESID = 3; // 0x3
12391    field public static final int COLUMN_INDEX_XML_RES_INTENT_ACTION = 4; // 0x4
12392    field public static final int COLUMN_INDEX_XML_RES_INTENT_TARGET_CLASS = 6; // 0x6
12393    field public static final int COLUMN_INDEX_XML_RES_INTENT_TARGET_PACKAGE = 5; // 0x5
12394    field public static final int COLUMN_INDEX_XML_RES_RANK = 0; // 0x0
12395    field public static final int COLUMN_INDEX_XML_RES_RESID = 1; // 0x1
12396    field public static final String DYNAMIC_INDEXABLES_RAW = "dynamic_indexables_raw";
12397    field public static final String DYNAMIC_INDEXABLES_RAW_PATH = "settings/dynamic_indexables_raw";
12398    field public static final String INDEXABLES_RAW = "indexables_raw";
12399    field public static final String[] INDEXABLES_RAW_COLUMNS;
12400    field public static final String INDEXABLES_RAW_PATH = "settings/indexables_raw";
12401    field public static final String INDEXABLES_XML_RES = "indexables_xml_res";
12402    field public static final String[] INDEXABLES_XML_RES_COLUMNS;
12403    field public static final String INDEXABLES_XML_RES_PATH = "settings/indexables_xml_res";
12404    field public static final String NON_INDEXABLES_KEYS = "non_indexables_key";
12405    field public static final String[] NON_INDEXABLES_KEYS_COLUMNS;
12406    field public static final String NON_INDEXABLES_KEYS_PATH = "settings/non_indexables_key";
12407    field public static final String PROVIDER_INTERFACE = "android.content.action.SEARCH_INDEXABLES_PROVIDER";
12408    field public static final String SLICE_URI_PAIRS = "slice_uri_pairs";
12409    field @NonNull public static final String[] SLICE_URI_PAIRS_COLUMNS;
12410    field public static final String SLICE_URI_PAIRS_PATH = "settings/slice_uri_pairs";
12411  }
12412
12413  public static class SearchIndexablesContract.BaseColumns {
12414    field public static final String COLUMN_CLASS_NAME = "className";
12415    field public static final String COLUMN_ICON_RESID = "iconResId";
12416    field public static final String COLUMN_INTENT_ACTION = "intentAction";
12417    field public static final String COLUMN_INTENT_TARGET_CLASS = "intentTargetClass";
12418    field public static final String COLUMN_INTENT_TARGET_PACKAGE = "intentTargetPackage";
12419    field public static final String COLUMN_RANK = "rank";
12420  }
12421
12422  public static final class SearchIndexablesContract.NonIndexableKey extends android.provider.SearchIndexablesContract.BaseColumns {
12423    field public static final String COLUMN_KEY_VALUE = "key";
12424    field public static final String MIME_TYPE = "vnd.android.cursor.dir/non_indexables_key";
12425  }
12426
12427  public static final class SearchIndexablesContract.RawData extends android.provider.SearchIndexablesContract.BaseColumns {
12428    field public static final String COLUMN_ENTRIES = "entries";
12429    field public static final String COLUMN_KEY = "key";
12430    field public static final String COLUMN_KEYWORDS = "keywords";
12431    field public static final String COLUMN_SCREEN_TITLE = "screenTitle";
12432    field public static final String COLUMN_SUMMARY_OFF = "summaryOff";
12433    field public static final String COLUMN_SUMMARY_ON = "summaryOn";
12434    field public static final String COLUMN_TITLE = "title";
12435    field public static final String COLUMN_USER_ID = "user_id";
12436    field public static final String MIME_TYPE = "vnd.android.cursor.dir/indexables_raw";
12437  }
12438
12439  public static final class SearchIndexablesContract.SliceUriPairColumns {
12440    field public static final String KEY = "key";
12441    field public static final String SLICE_URI = "slice_uri";
12442  }
12443
12444  public static final class SearchIndexablesContract.XmlResource extends android.provider.SearchIndexablesContract.BaseColumns {
12445    field public static final String COLUMN_XML_RESID = "xmlResId";
12446    field public static final String MIME_TYPE = "vnd.android.cursor.dir/indexables_xml_res";
12447  }
12448
12449  public abstract class SearchIndexablesProvider extends android.content.ContentProvider {
12450    ctor public SearchIndexablesProvider();
12451    method public final int delete(android.net.Uri, String, String[]);
12452    method public String getType(android.net.Uri);
12453    method public final android.net.Uri insert(android.net.Uri, android.content.ContentValues);
12454    method public android.database.Cursor query(android.net.Uri, String[], String, String[], String);
12455    method @Nullable public android.database.Cursor queryDynamicRawData(@Nullable String[]);
12456    method public abstract android.database.Cursor queryNonIndexableKeys(String[]);
12457    method public abstract android.database.Cursor queryRawData(String[]);
12458    method @Nullable public android.database.Cursor querySliceUriPairs();
12459    method public abstract android.database.Cursor queryXmlResources(String[]);
12460    method public final int update(android.net.Uri, android.content.ContentValues, String, String[]);
12461  }
12462
12463  public final class Settings {
12464    method @Deprecated public static boolean checkAndNoteWriteSettingsOperation(@NonNull android.content.Context, int, @NonNull String, boolean);
12465    method public static boolean checkAndNoteWriteSettingsOperation(@NonNull android.content.Context, int, @NonNull String, @Nullable String, boolean);
12466    field public static final String ACTION_ACCESSIBILITY_DETAILS_SETTINGS = "android.settings.ACCESSIBILITY_DETAILS_SETTINGS";
12467    field @RequiresPermission(android.Manifest.permission.LAUNCH_PERMISSION_SETTINGS) public static final String ACTION_APP_PERMISSIONS_SETTINGS = "android.settings.APP_PERMISSIONS_SETTINGS";
12468    field public static final String ACTION_BEDTIME_SETTINGS = "android.settings.BEDTIME_SETTINGS";
12469    field public static final String ACTION_BUGREPORT_HANDLER_SETTINGS = "android.settings.BUGREPORT_HANDLER_SETTINGS";
12470    field public static final String ACTION_ENTERPRISE_PRIVACY_SETTINGS = "android.settings.ENTERPRISE_PRIVACY_SETTINGS";
12471    field public static final String ACTION_LOCATION_CONTROLLER_EXTRA_PACKAGE_SETTINGS = "android.settings.LOCATION_CONTROLLER_EXTRA_PACKAGE_SETTINGS";
12472    field public static final String ACTION_MANAGE_APP_OVERLAY_PERMISSION = "android.settings.MANAGE_APP_OVERLAY_PERMISSION";
12473    field public static final String ACTION_MANAGE_DOMAIN_URLS = "android.settings.MANAGE_DOMAIN_URLS";
12474    field public static final String ACTION_MANAGE_MORE_DEFAULT_APPS_SETTINGS = "android.settings.MANAGE_MORE_DEFAULT_APPS_SETTINGS";
12475    field @FlaggedApi("android.nfc.nfc_action_manage_services_settings") public static final String ACTION_MANAGE_OTHER_NFC_SERVICES_SETTINGS = "android.settings.MANAGE_OTHER_NFC_SERVICES_SETTINGS";
12476    field public static final String ACTION_NOTIFICATION_POLICY_ACCESS_DETAIL_SETTINGS = "android.settings.NOTIFICATION_POLICY_ACCESS_DETAIL_SETTINGS";
12477    field public static final String ACTION_REQUEST_ENABLE_CONTENT_CAPTURE = "android.settings.REQUEST_ENABLE_CONTENT_CAPTURE";
12478    field public static final String ACTION_SHOW_ADMIN_SUPPORT_DETAILS = "android.settings.SHOW_ADMIN_SUPPORT_DETAILS";
12479    field public static final String ACTION_SHOW_RESTRICTED_SETTING_DIALOG = "android.settings.SHOW_RESTRICTED_SETTING_DIALOG";
12480    field @FlaggedApi("com.android.internal.telephony.flags.action_sim_preference_settings") public static final String ACTION_SIM_PREFERENCE_SETTINGS = "android.settings.SIM_PREFERENCE_SETTINGS";
12481    field public static final String ACTION_TETHER_PROVISIONING_UI = "android.settings.TETHER_PROVISIONING_UI";
12482    field public static final String ACTION_TETHER_SETTINGS = "android.settings.TETHER_SETTINGS";
12483    field public static final String ACTION_TETHER_UNSUPPORTED_CARRIER_UI = "android.settings.TETHER_UNSUPPORTED_CARRIER_UI";
12484    field public static final String ACTION_USER_SETTINGS = "android.settings.USER_SETTINGS";
12485  }
12486
12487  public static final class Settings.Global extends android.provider.Settings.NameValueTable {
12488    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public static boolean putString(@NonNull android.content.ContentResolver, @NonNull String, @Nullable String, @Nullable String, boolean);
12489    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public static void resetToDefaults(@NonNull android.content.ContentResolver, @Nullable String);
12490    field public static final String AIRPLANE_MODE_TOGGLEABLE_RADIOS = "airplane_mode_toggleable_radios";
12491    field public static final String APP_STANDBY_ENABLED = "app_standby_enabled";
12492    field @Deprecated public static final String AUTOFILL_COMPAT_MODE_ALLOWED_PACKAGES = "autofill_compat_mode_allowed_packages";
12493    field public static final String CARRIER_APP_NAMES = "carrier_app_names";
12494    field public static final String CARRIER_APP_WHITELIST = "carrier_app_whitelist";
12495    field public static final String DEFAULT_SM_DP_PLUS = "default_sm_dp_plus";
12496    field public static final String DEVICE_DEMO_MODE = "device_demo_mode";
12497    field public static final String DEVICE_PROVISIONING_MOBILE_DATA_ENABLED = "device_provisioning_mobile_data";
12498    field public static final String EUICC_PROVISIONED = "euicc_provisioned";
12499    field public static final String EUICC_SUPPORTED_COUNTRIES = "euicc_supported_countries";
12500    field public static final String EUICC_UNSUPPORTED_COUNTRIES = "euicc_unsupported_countries";
12501    field public static final String INSTALL_CARRIER_APP_NOTIFICATION_PERSISTENT = "install_carrier_app_notification_persistent";
12502    field public static final String INSTALL_CARRIER_APP_NOTIFICATION_SLEEP_MILLIS = "install_carrier_app_notification_sleep_millis";
12503    field public static final String OTA_DISABLE_AUTOMATIC_UPDATE = "ota_disable_automatic_update";
12504    field public static final String REQUIRE_PASSWORD_TO_DECRYPT = "require_password_to_decrypt";
12505    field public static final String TETHER_OFFLOAD_DISABLED = "tether_offload_disabled";
12506    field public static final String TETHER_SUPPORTED = "tether_supported";
12507    field public static final String THEATER_MODE_ON = "theater_mode_on";
12508    field public static final String WEBVIEW_MULTIPROCESS = "webview_multiprocess";
12509    field public static final String WIFI_BADGING_THRESHOLDS = "wifi_badging_thresholds";
12510    field @Deprecated public static final String WIFI_WAKEUP_ENABLED = "wifi_wakeup_enabled";
12511  }
12512
12513  public static final class Settings.Secure extends android.provider.Settings.NameValueTable {
12514    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public static boolean putString(@NonNull android.content.ContentResolver, @NonNull String, @Nullable String, @Nullable String, boolean);
12515    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public static void resetToDefaults(@NonNull android.content.ContentResolver, @Nullable String);
12516    field @Deprecated public static final String ACCESSIBILITY_DISPLAY_MAGNIFICATION_NAVBAR_ENABLED = "accessibility_display_magnification_navbar_enabled";
12517    field public static final String ASSIST_GESTURE_SETUP_COMPLETE = "assist_gesture_setup_complete";
12518    field public static final String AUTOFILL_FEATURE_FIELD_CLASSIFICATION = "autofill_field_classification";
12519    field public static final String AUTOFILL_USER_DATA_MAX_CATEGORY_COUNT = "autofill_user_data_max_category_count";
12520    field public static final String AUTOFILL_USER_DATA_MAX_FIELD_CLASSIFICATION_IDS_SIZE = "autofill_user_data_max_field_classification_size";
12521    field public static final String AUTOFILL_USER_DATA_MAX_USER_DATA_SIZE = "autofill_user_data_max_user_data_size";
12522    field public static final String AUTOFILL_USER_DATA_MAX_VALUE_LENGTH = "autofill_user_data_max_value_length";
12523    field public static final String AUTOFILL_USER_DATA_MIN_VALUE_LENGTH = "autofill_user_data_min_value_length";
12524    field public static final String AUTO_REVOKE_DISABLED = "auto_revoke_disabled";
12525    field public static final String COMPLETED_CATEGORY_PREFIX = "suggested.completed_category.";
12526    field public static final String DOZE_ALWAYS_ON = "doze_always_on";
12527    field public static final String HUSH_GESTURE_USED = "hush_gesture_used";
12528    field public static final String INSTANT_APPS_ENABLED = "instant_apps_enabled";
12529    field public static final String LAST_SETUP_SHOWN = "last_setup_shown";
12530    field @Deprecated public static final String LOCATION_ACCESS_CHECK_DELAY_MILLIS = "location_access_check_delay_millis";
12531    field @Deprecated public static final String LOCATION_ACCESS_CHECK_INTERVAL_MILLIS = "location_access_check_interval_millis";
12532    field public static final int LOCATION_MODE_ON = 3; // 0x3
12533    field @Deprecated public static final String LOCATION_PERMISSIONS_UPGRADE_TO_Q_MODE = "location_permissions_upgrade_to_q_mode";
12534    field public static final String LOCK_SCREEN_ALLOW_PRIVATE_NOTIFICATIONS = "lock_screen_allow_private_notifications";
12535    field public static final String LOCK_SCREEN_SHOW_NOTIFICATIONS = "lock_screen_show_notifications";
12536    field public static final String ODI_CAPTIONS_ENABLED = "odi_captions_enabled";
12537    field public static final String THEME_CUSTOMIZATION_OVERLAY_PACKAGES = "theme_customization_overlay_packages";
12538    field public static final String UI_TRANSLATION_ENABLED = "ui_translation_enabled";
12539    field public static final String USER_SETUP_COMPLETE = "user_setup_complete";
12540    field public static final int USER_SETUP_PERSONALIZATION_COMPLETE = 10; // 0xa
12541    field public static final int USER_SETUP_PERSONALIZATION_NOT_STARTED = 0; // 0x0
12542    field public static final int USER_SETUP_PERSONALIZATION_PAUSED = 2; // 0x2
12543    field public static final int USER_SETUP_PERSONALIZATION_STARTED = 1; // 0x1
12544    field public static final String USER_SETUP_PERSONALIZATION_STATE = "user_setup_personalization_state";
12545    field public static final String VOLUME_HUSH_GESTURE = "volume_hush_gesture";
12546    field public static final int VOLUME_HUSH_MUTE = 2; // 0x2
12547    field public static final int VOLUME_HUSH_OFF = 0; // 0x0
12548    field public static final int VOLUME_HUSH_VIBRATE = 1; // 0x1
12549  }
12550
12551  public static final class Settings.System extends android.provider.Settings.NameValueTable {
12552    method @RequiresPermission(android.Manifest.permission.MODIFY_SETTINGS_OVERRIDEABLE_BY_RESTORE) public static boolean putString(@NonNull android.content.ContentResolver, @NonNull String, @Nullable String, boolean);
12553    method @FlaggedApi("android.provider.system_settings_default") @RequiresPermission(android.Manifest.permission.MODIFY_SETTINGS_OVERRIDEABLE_BY_RESTORE) public static boolean putString(@NonNull android.content.ContentResolver, @NonNull String, @Nullable String, boolean, boolean);
12554    method @FlaggedApi("android.provider.system_settings_default") public static void resetToDefaults(@NonNull android.content.ContentResolver, @Nullable String);
12555  }
12556
12557  public static final class SimPhonebookContract.SimRecords {
12558    field public static final String QUERY_ARG_PIN2 = "android:query-arg-pin2";
12559  }
12560
12561  public static final class Telephony.Carriers implements android.provider.BaseColumns {
12562    field public static final String APN_SET_ID = "apn_set_id";
12563    field public static final int CARRIER_EDITED = 4; // 0x4
12564    field public static final String EDITED_STATUS = "edited";
12565    field public static final int MATCH_ALL_APN_SET_ID = -1; // 0xffffffff
12566    field public static final String MAX_CONNECTIONS = "max_conns";
12567    field public static final String MODEM_PERSIST = "modem_cognitive";
12568    field @Deprecated public static final String MTU = "mtu";
12569    field public static final int NO_APN_SET_ID = 0; // 0x0
12570    field public static final String TIME_LIMIT_FOR_MAX_CONNECTIONS = "max_conns_time";
12571    field public static final int UNEDITED = 0; // 0x0
12572    field public static final int USER_DELETED = 2; // 0x2
12573    field public static final int USER_EDITED = 1; // 0x1
12574    field public static final String WAIT_TIME_RETRY = "wait_time";
12575  }
12576
12577  public static final class Telephony.CellBroadcasts implements android.provider.BaseColumns {
12578    field @NonNull public static final String AUTHORITY_LEGACY = "cellbroadcast-legacy";
12579    field @NonNull public static final android.net.Uri AUTHORITY_LEGACY_URI;
12580    field @NonNull public static final String CALL_METHOD_GET_PREFERENCE = "get_preference";
12581    field public static final String CID = "cid";
12582    field public static final String CMAS_CATEGORY = "cmas_category";
12583    field public static final String CMAS_CERTAINTY = "cmas_certainty";
12584    field public static final String CMAS_MESSAGE_CLASS = "cmas_message_class";
12585    field public static final String CMAS_RESPONSE_TYPE = "cmas_response_type";
12586    field public static final String CMAS_SEVERITY = "cmas_severity";
12587    field public static final String CMAS_URGENCY = "cmas_urgency";
12588    field @NonNull public static final android.net.Uri CONTENT_URI;
12589    field public static final String DATA_CODING_SCHEME = "dcs";
12590    field public static final String DEFAULT_SORT_ORDER = "date DESC";
12591    field public static final String DELIVERY_TIME = "date";
12592    field public static final String ETWS_IS_PRIMARY = "etws_is_primary";
12593    field public static final String ETWS_WARNING_TYPE = "etws_warning_type";
12594    field public static final String GEOGRAPHICAL_SCOPE = "geo_scope";
12595    field public static final String GEOMETRIES = "geometries";
12596    field public static final String LAC = "lac";
12597    field public static final String LANGUAGE_CODE = "language";
12598    field public static final String LOCATION_CHECK_TIME = "location_check_time";
12599    field public static final String MAXIMUM_WAIT_TIME = "maximum_wait_time";
12600    field public static final String MESSAGE_BODY = "body";
12601    field public static final String MESSAGE_BROADCASTED = "message_broadcasted";
12602    field public static final String MESSAGE_DISPLAYED = "message_displayed";
12603    field public static final String MESSAGE_FORMAT = "format";
12604    field @NonNull @RequiresPermission(android.Manifest.permission.READ_CELL_BROADCASTS) public static final android.net.Uri MESSAGE_HISTORY_URI;
12605    field public static final String MESSAGE_PRIORITY = "priority";
12606    field public static final String MESSAGE_READ = "read";
12607    field public static final String PLMN = "plmn";
12608    field public static final String RECEIVED_TIME = "received_time";
12609    field public static final String SERIAL_NUMBER = "serial_number";
12610    field public static final String SERVICE_CATEGORY = "service_category";
12611    field public static final String SLOT_INDEX = "slot_index";
12612    field public static final String SUBSCRIPTION_ID = "sub_id";
12613  }
12614
12615  public static final class Telephony.CellBroadcasts.Preference {
12616    field @NonNull public static final String ENABLE_ALERT_VIBRATION_PREF = "enable_alert_vibrate";
12617    field @NonNull public static final String ENABLE_AREA_UPDATE_INFO_PREF = "enable_area_update_info_alerts";
12618    field @NonNull public static final String ENABLE_CMAS_AMBER_PREF = "enable_cmas_amber_alerts";
12619    field @NonNull public static final String ENABLE_CMAS_EXTREME_THREAT_PREF = "enable_cmas_extreme_threat_alerts";
12620    field @NonNull public static final String ENABLE_CMAS_IN_SECOND_LANGUAGE_PREF = "receive_cmas_in_second_language";
12621    field @NonNull public static final String ENABLE_CMAS_PRESIDENTIAL_PREF = "enable_cmas_presidential_alerts";
12622    field @NonNull public static final String ENABLE_CMAS_SEVERE_THREAT_PREF = "enable_cmas_severe_threat_alerts";
12623    field @NonNull public static final String ENABLE_EMERGENCY_PERF = "enable_emergency_alerts";
12624    field @NonNull public static final String ENABLE_PUBLIC_SAFETY_PREF = "enable_public_safety_messages";
12625    field @NonNull public static final String ENABLE_STATE_LOCAL_TEST_PREF = "enable_state_local_test_alerts";
12626    field @NonNull public static final String ENABLE_TEST_ALERT_PREF = "enable_test_alerts";
12627  }
12628
12629  public static final class Telephony.Sms.Intents {
12630    field public static final String ACTION_SMS_EMERGENCY_CB_RECEIVED = "android.provider.action.SMS_EMERGENCY_CB_RECEIVED";
12631  }
12632
12633  public final class TimeZoneRulesDataContract {
12634    field public static final String AUTHORITY = "com.android.timezone";
12635  }
12636
12637  public static final class TimeZoneRulesDataContract.Operation {
12638    field public static final String COLUMN_DISTRO_MAJOR_VERSION = "distro_major_version";
12639    field public static final String COLUMN_DISTRO_MINOR_VERSION = "distro_minor_version";
12640    field public static final String COLUMN_REVISION = "revision";
12641    field public static final String COLUMN_RULES_VERSION = "rules_version";
12642    field public static final String COLUMN_TYPE = "type";
12643    field public static final android.net.Uri CONTENT_URI;
12644    field public static final String TYPE_INSTALL = "INSTALL";
12645    field public static final String TYPE_NO_OP = "NOOP";
12646    field public static final String TYPE_UNINSTALL = "UNINSTALL";
12647  }
12648
12649}
12650
12651package android.se.omapi {
12652
12653  public final class Reader {
12654    method @RequiresPermission(android.Manifest.permission.SECURE_ELEMENT_PRIVILEGED_OPERATION) public boolean reset();
12655  }
12656
12657}
12658
12659package android.security {
12660
12661  public final class FileIntegrityManager {
12662    method @FlaggedApi("android.security.fsverity_api") @Nullable public byte[] getFsVerityDigest(@NonNull java.io.File) throws java.io.IOException;
12663    method @FlaggedApi("android.security.fsverity_api") public void setupFsVerity(@NonNull java.io.File) throws java.io.IOException;
12664  }
12665
12666  public final class KeyChain {
12667    method @Nullable @WorkerThread public static String getWifiKeyGrantAsUser(@NonNull android.content.Context, @NonNull android.os.UserHandle, @NonNull String);
12668    method @WorkerThread public static boolean hasWifiKeyGrantAsUser(@NonNull android.content.Context, @NonNull android.os.UserHandle, @NonNull String);
12669  }
12670
12671}
12672
12673package android.security.advancedprotection {
12674
12675  @FlaggedApi("android.security.aapm_api") public final class AdvancedProtectionFeature implements android.os.Parcelable {
12676    ctor public AdvancedProtectionFeature(@NonNull String);
12677    method public int describeContents();
12678    method @NonNull public String getId();
12679    method public void writeToParcel(@NonNull android.os.Parcel, int);
12680    field @NonNull public static final android.os.Parcelable.Creator<android.security.advancedprotection.AdvancedProtectionFeature> CREATOR;
12681  }
12682
12683  @FlaggedApi("android.security.aapm_api") public final class AdvancedProtectionManager {
12684    method @NonNull public android.content.Intent createSupportIntent(@NonNull String, @Nullable String);
12685    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_ADVANCED_PROTECTION_MODE) public java.util.List<android.security.advancedprotection.AdvancedProtectionFeature> getAdvancedProtectionFeatures();
12686    method @RequiresPermission(android.Manifest.permission.MANAGE_ADVANCED_PROTECTION_MODE) public void setAdvancedProtectionEnabled(boolean);
12687    field @FlaggedApi("android.security.aapm_api") public static final String ACTION_SHOW_ADVANCED_PROTECTION_SUPPORT_DIALOG = "android.security.advancedprotection.action.SHOW_ADVANCED_PROTECTION_SUPPORT_DIALOG";
12688    field public static final String EXTRA_SUPPORT_DIALOG_FEATURE = "android.security.advancedprotection.extra.SUPPORT_DIALOG_FEATURE";
12689    field public static final String EXTRA_SUPPORT_DIALOG_TYPE = "android.security.advancedprotection.extra.SUPPORT_DIALOG_TYPE";
12690    field public static final String FEATURE_ID_DISALLOW_CELLULAR_2G = "android.security.advancedprotection.feature_disallow_2g";
12691    field public static final String FEATURE_ID_DISALLOW_INSTALL_UNKNOWN_SOURCES = "android.security.advancedprotection.feature_disallow_install_unknown_sources";
12692    field public static final String FEATURE_ID_DISALLOW_USB = "android.security.advancedprotection.feature_disallow_usb";
12693    field public static final String FEATURE_ID_DISALLOW_WEP = "android.security.advancedprotection.feature_disallow_wep";
12694    field public static final String FEATURE_ID_ENABLE_MTE = "android.security.advancedprotection.feature_enable_mte";
12695    field public static final String SUPPORT_DIALOG_TYPE_BLOCKED_INTERACTION = "android.security.advancedprotection.type_blocked_interaction";
12696    field public static final String SUPPORT_DIALOG_TYPE_DISABLED_SETTING = "android.security.advancedprotection.type_disabled_setting";
12697  }
12698
12699}
12700
12701package android.security.authenticationpolicy {
12702
12703  @FlaggedApi("android.security.secure_lockdown") public final class AuthenticationPolicyManager {
12704    method @FlaggedApi("android.security.secure_lockdown") @RequiresPermission(android.Manifest.permission.MANAGE_SECURE_LOCK_DEVICE) public int disableSecureLockDevice(@NonNull android.security.authenticationpolicy.DisableSecureLockDeviceParams);
12705    method @FlaggedApi("android.security.secure_lockdown") @RequiresPermission(android.Manifest.permission.MANAGE_SECURE_LOCK_DEVICE) public int enableSecureLockDevice(@NonNull android.security.authenticationpolicy.EnableSecureLockDeviceParams);
12706    field @FlaggedApi("android.security.secure_lockdown") public static final int ERROR_ALREADY_ENABLED = 6; // 0x6
12707    field @FlaggedApi("android.security.secure_lockdown") public static final int ERROR_INSUFFICIENT_BIOMETRICS = 5; // 0x5
12708    field @FlaggedApi("android.security.secure_lockdown") public static final int ERROR_INVALID_PARAMS = 3; // 0x3
12709    field @FlaggedApi("android.security.secure_lockdown") public static final int ERROR_NO_BIOMETRICS_ENROLLED = 4; // 0x4
12710    field @FlaggedApi("android.security.secure_lockdown") public static final int ERROR_UNKNOWN = 0; // 0x0
12711    field @FlaggedApi("android.security.secure_lockdown") public static final int ERROR_UNSUPPORTED = 2; // 0x2
12712    field @FlaggedApi("android.security.secure_lockdown") public static final int SUCCESS = 1; // 0x1
12713  }
12714
12715  @FlaggedApi("android.security.secure_lockdown") public final class DisableSecureLockDeviceParams implements android.os.Parcelable {
12716    ctor public DisableSecureLockDeviceParams(@NonNull CharSequence);
12717    method public int describeContents();
12718    method public void writeToParcel(@NonNull android.os.Parcel, int);
12719    field @NonNull public static final android.os.Parcelable.Creator<android.security.authenticationpolicy.DisableSecureLockDeviceParams> CREATOR;
12720  }
12721
12722  @FlaggedApi("android.security.secure_lockdown") public final class EnableSecureLockDeviceParams implements android.os.Parcelable {
12723    ctor public EnableSecureLockDeviceParams(@NonNull CharSequence);
12724    method public int describeContents();
12725    method public void writeToParcel(@NonNull android.os.Parcel, int);
12726    field @NonNull public static final android.os.Parcelable.Creator<android.security.authenticationpolicy.EnableSecureLockDeviceParams> CREATOR;
12727  }
12728
12729}
12730
12731package android.security.intrusiondetection {
12732
12733  @FlaggedApi("android.security.afl_api") public final class IntrusionDetectionEvent implements android.os.Parcelable {
12734    ctor public IntrusionDetectionEvent(@NonNull android.app.admin.SecurityLog.SecurityEvent);
12735    ctor public IntrusionDetectionEvent(@NonNull android.app.admin.DnsEvent);
12736    ctor public IntrusionDetectionEvent(@NonNull android.app.admin.ConnectEvent);
12737    method @FlaggedApi("android.security.afl_api") public int describeContents();
12738    method @NonNull public android.app.admin.ConnectEvent getConnectEvent();
12739    method @NonNull public android.app.admin.DnsEvent getDnsEvent();
12740    method @NonNull public android.app.admin.SecurityLog.SecurityEvent getSecurityEvent();
12741    method @NonNull public int getType();
12742    method public void writeToParcel(@NonNull android.os.Parcel, int);
12743    field @NonNull public static final android.os.Parcelable.Creator<android.security.intrusiondetection.IntrusionDetectionEvent> CREATOR;
12744    field public static final int NETWORK_EVENT_CONNECT = 2; // 0x2
12745    field public static final int NETWORK_EVENT_DNS = 1; // 0x1
12746    field public static final int SECURITY_EVENT = 0; // 0x0
12747  }
12748
12749  @FlaggedApi("android.security.afl_api") public class IntrusionDetectionEventTransport {
12750    ctor public IntrusionDetectionEventTransport();
12751    method public boolean addData(@NonNull java.util.List<android.security.intrusiondetection.IntrusionDetectionEvent>);
12752    method @NonNull public android.os.IBinder getBinder();
12753    method public boolean initialize();
12754    method public boolean release();
12755  }
12756
12757  @FlaggedApi("android.security.afl_api") public class IntrusionDetectionManager {
12758    method @RequiresPermission(android.Manifest.permission.READ_INTRUSION_DETECTION_STATE) public void addStateCallback(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
12759    method @RequiresPermission(android.Manifest.permission.MANAGE_INTRUSION_DETECTION_STATE) public void disable(@NonNull java.util.concurrent.Executor, @NonNull android.security.intrusiondetection.IntrusionDetectionManager.CommandCallback);
12760    method @RequiresPermission(android.Manifest.permission.MANAGE_INTRUSION_DETECTION_STATE) public void enable(@NonNull java.util.concurrent.Executor, @NonNull android.security.intrusiondetection.IntrusionDetectionManager.CommandCallback);
12761    method @RequiresPermission(android.Manifest.permission.READ_INTRUSION_DETECTION_STATE) public void removeStateCallback(@NonNull java.util.function.Consumer<java.lang.Integer>);
12762    field public static final int ERROR_DATA_SOURCE_UNAVAILABLE = 4; // 0x4
12763    field public static final int ERROR_PERMISSION_DENIED = 1; // 0x1
12764    field public static final int ERROR_TRANSPORT_UNAVAILABLE = 3; // 0x3
12765    field public static final int ERROR_UNKNOWN = 0; // 0x0
12766    field public static final int STATE_DISABLED = 1; // 0x1
12767    field public static final int STATE_ENABLED = 2; // 0x2
12768    field public static final int STATE_UNKNOWN = 0; // 0x0
12769  }
12770
12771  public static interface IntrusionDetectionManager.CommandCallback {
12772    method public void onFailure(int);
12773    method public void onSuccess();
12774  }
12775
12776}
12777
12778package android.security.keystore {
12779
12780  public class AndroidKeyStoreProvider extends java.security.Provider {
12781    method @NonNull public static java.security.KeyStore getKeyStoreForUid(int) throws java.security.KeyStoreException, java.security.NoSuchProviderException;
12782  }
12783
12784  public abstract class AttestationUtils {
12785    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static java.security.cert.X509Certificate[] attestDeviceIds(android.content.Context, @NonNull int[], @NonNull byte[]) throws android.security.keystore.DeviceIdAttestationException;
12786    field public static final int ID_TYPE_IMEI = 2; // 0x2
12787    field public static final int ID_TYPE_MEID = 3; // 0x3
12788    field public static final int ID_TYPE_SERIAL = 1; // 0x1
12789    field public static final int USE_INDIVIDUAL_ATTESTATION = 4; // 0x4
12790  }
12791
12792  public class DeviceIdAttestationException extends java.lang.Exception {
12793    ctor public DeviceIdAttestationException(@Nullable String);
12794    ctor public DeviceIdAttestationException(@Nullable String, @Nullable Throwable);
12795  }
12796
12797  public final class KeyGenParameterSpec implements java.security.spec.AlgorithmParameterSpec {
12798    method @NonNull public int[] getAttestationIds();
12799    method public int getNamespace();
12800  }
12801
12802  public static final class KeyGenParameterSpec.Builder {
12803    method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setAttestationIds(@NonNull int[]);
12804    method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setNamespace(int);
12805    method @Deprecated @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setUid(int);
12806  }
12807
12808  public abstract class KeyProperties {
12809    field public static final int NAMESPACE_APPLICATION = -1; // 0xffffffff
12810    field public static final int NAMESPACE_WIFI = 102; // 0x66
12811  }
12812
12813}
12814
12815package android.security.keystore.recovery {
12816
12817  public class DecryptionFailedException extends java.security.GeneralSecurityException {
12818    ctor public DecryptionFailedException(String);
12819  }
12820
12821  public class InternalRecoveryServiceException extends java.security.GeneralSecurityException {
12822    ctor public InternalRecoveryServiceException(String);
12823    ctor public InternalRecoveryServiceException(String, Throwable);
12824  }
12825
12826  public final class KeyChainProtectionParams implements android.os.Parcelable {
12827    method public void clearSecret();
12828    method public int describeContents();
12829    method @NonNull public android.security.keystore.recovery.KeyDerivationParams getKeyDerivationParams();
12830    method public int getLockScreenUiFormat();
12831    method @NonNull public byte[] getSecret();
12832    method public int getUserSecretType();
12833    method public void writeToParcel(android.os.Parcel, int);
12834    field @NonNull public static final android.os.Parcelable.Creator<android.security.keystore.recovery.KeyChainProtectionParams> CREATOR;
12835    field public static final int TYPE_LOCKSCREEN = 100; // 0x64
12836    field public static final int UI_FORMAT_PASSWORD = 2; // 0x2
12837    field public static final int UI_FORMAT_PATTERN = 3; // 0x3
12838    field public static final int UI_FORMAT_PIN = 1; // 0x1
12839  }
12840
12841  public static class KeyChainProtectionParams.Builder {
12842    ctor public KeyChainProtectionParams.Builder();
12843    method @NonNull public android.security.keystore.recovery.KeyChainProtectionParams build();
12844    method @NonNull public android.security.keystore.recovery.KeyChainProtectionParams.Builder setKeyDerivationParams(@NonNull android.security.keystore.recovery.KeyDerivationParams);
12845    method @NonNull public android.security.keystore.recovery.KeyChainProtectionParams.Builder setLockScreenUiFormat(int);
12846    method @NonNull public android.security.keystore.recovery.KeyChainProtectionParams.Builder setSecret(@NonNull byte[]);
12847    method @NonNull public android.security.keystore.recovery.KeyChainProtectionParams.Builder setUserSecretType(int);
12848  }
12849
12850  public final class KeyChainSnapshot implements android.os.Parcelable {
12851    method public int describeContents();
12852    method public long getCounterId();
12853    method @NonNull public byte[] getEncryptedRecoveryKeyBlob();
12854    method @NonNull public java.util.List<android.security.keystore.recovery.KeyChainProtectionParams> getKeyChainProtectionParams();
12855    method public int getMaxAttempts();
12856    method @NonNull public byte[] getServerParams();
12857    method public int getSnapshotVersion();
12858    method @NonNull public java.security.cert.CertPath getTrustedHardwareCertPath();
12859    method @NonNull public java.util.List<android.security.keystore.recovery.WrappedApplicationKey> getWrappedApplicationKeys();
12860    method public void writeToParcel(android.os.Parcel, int);
12861    field @NonNull public static final android.os.Parcelable.Creator<android.security.keystore.recovery.KeyChainSnapshot> CREATOR;
12862  }
12863
12864  public final class KeyDerivationParams implements android.os.Parcelable {
12865    method @NonNull public static android.security.keystore.recovery.KeyDerivationParams createScryptParams(@NonNull byte[], int);
12866    method @NonNull public static android.security.keystore.recovery.KeyDerivationParams createSha256Params(@NonNull byte[]);
12867    method public int describeContents();
12868    method public int getAlgorithm();
12869    method public int getMemoryDifficulty();
12870    method @NonNull public byte[] getSalt();
12871    method public void writeToParcel(android.os.Parcel, int);
12872    field public static final int ALGORITHM_SCRYPT = 2; // 0x2
12873    field public static final int ALGORITHM_SHA256 = 1; // 0x1
12874    field @NonNull public static final android.os.Parcelable.Creator<android.security.keystore.recovery.KeyDerivationParams> CREATOR;
12875  }
12876
12877  public class LockScreenRequiredException extends java.security.GeneralSecurityException {
12878    ctor public LockScreenRequiredException(String);
12879  }
12880
12881  public class RecoveryController {
12882    method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public android.security.keystore.recovery.RecoverySession createRecoverySession();
12883    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;
12884    method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public java.security.Key generateKey(@NonNull String, @Nullable byte[]) throws android.security.keystore.recovery.InternalRecoveryServiceException, android.security.keystore.recovery.LockScreenRequiredException;
12885    method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public java.util.List<java.lang.String> getAliases() throws android.security.keystore.recovery.InternalRecoveryServiceException;
12886    method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public static android.security.keystore.recovery.RecoveryController getInstance(@NonNull android.content.Context);
12887    method @Nullable @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public java.security.Key getKey(@NonNull String) throws android.security.keystore.recovery.InternalRecoveryServiceException, java.security.UnrecoverableKeyException;
12888    method @Nullable @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public android.security.keystore.recovery.KeyChainSnapshot getKeyChainSnapshot() throws android.security.keystore.recovery.InternalRecoveryServiceException;
12889    method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public int[] getRecoverySecretTypes() throws android.security.keystore.recovery.InternalRecoveryServiceException;
12890    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public int getRecoveryStatus(@NonNull String) throws android.security.keystore.recovery.InternalRecoveryServiceException;
12891    method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public java.util.Map<java.lang.String,java.security.cert.X509Certificate> getRootCertificates();
12892    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;
12893    method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public java.security.Key importKey(@NonNull String, @NonNull byte[], @Nullable byte[]) throws android.security.keystore.recovery.InternalRecoveryServiceException, android.security.keystore.recovery.LockScreenRequiredException;
12894    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;
12895    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public static boolean isRecoverableKeyStoreEnabled(@NonNull android.content.Context);
12896    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void removeKey(@NonNull String) throws android.security.keystore.recovery.InternalRecoveryServiceException;
12897    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void setRecoverySecretTypes(@NonNull int[]) throws android.security.keystore.recovery.InternalRecoveryServiceException;
12898    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void setRecoveryStatus(@NonNull String, int) throws android.security.keystore.recovery.InternalRecoveryServiceException;
12899    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void setServerParams(@NonNull byte[]) throws android.security.keystore.recovery.InternalRecoveryServiceException;
12900    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void setSnapshotCreatedPendingIntent(@Nullable android.app.PendingIntent) throws android.security.keystore.recovery.InternalRecoveryServiceException;
12901    field public static final int RECOVERY_STATUS_PERMANENT_FAILURE = 3; // 0x3
12902    field public static final int RECOVERY_STATUS_SYNCED = 0; // 0x0
12903    field public static final int RECOVERY_STATUS_SYNC_IN_PROGRESS = 1; // 0x1
12904  }
12905
12906  public class RecoverySession implements java.lang.AutoCloseable {
12907    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void close();
12908    method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public java.util.Map<java.lang.String,java.security.Key> recoverKeyChainSnapshot(@NonNull byte[], @NonNull java.util.List<android.security.keystore.recovery.WrappedApplicationKey>) throws android.security.keystore.recovery.DecryptionFailedException, android.security.keystore.recovery.InternalRecoveryServiceException, android.security.keystore.recovery.SessionExpiredException;
12909    method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public byte[] start(@NonNull String, @NonNull java.security.cert.CertPath, @NonNull byte[], @NonNull byte[], @NonNull java.util.List<android.security.keystore.recovery.KeyChainProtectionParams>) throws java.security.cert.CertificateException, android.security.keystore.recovery.InternalRecoveryServiceException;
12910  }
12911
12912  public class SessionExpiredException extends java.security.GeneralSecurityException {
12913    ctor public SessionExpiredException(String);
12914  }
12915
12916  public final class WrappedApplicationKey implements android.os.Parcelable {
12917    method public int describeContents();
12918    method @NonNull public String getAlias();
12919    method @NonNull public byte[] getEncryptedKeyMaterial();
12920    method @Nullable public byte[] getMetadata();
12921    method public void writeToParcel(android.os.Parcel, int);
12922    field @NonNull public static final android.os.Parcelable.Creator<android.security.keystore.recovery.WrappedApplicationKey> CREATOR;
12923  }
12924
12925  public static class WrappedApplicationKey.Builder {
12926    ctor public WrappedApplicationKey.Builder();
12927    method @NonNull public android.security.keystore.recovery.WrappedApplicationKey build();
12928    method @NonNull public android.security.keystore.recovery.WrappedApplicationKey.Builder setAlias(@NonNull String);
12929    method @NonNull public android.security.keystore.recovery.WrappedApplicationKey.Builder setEncryptedKeyMaterial(@NonNull byte[]);
12930    method @NonNull public android.security.keystore.recovery.WrappedApplicationKey.Builder setMetadata(@Nullable byte[]);
12931  }
12932
12933}
12934
12935package android.service.ambientcontext {
12936
12937  public final class AmbientContextDetectionResult implements android.os.Parcelable {
12938    method public int describeContents();
12939    method @NonNull public java.util.List<android.app.ambientcontext.AmbientContextEvent> getEvents();
12940    method @NonNull public String getPackageName();
12941    method public void writeToParcel(@NonNull android.os.Parcel, int);
12942    field @NonNull public static final android.os.Parcelable.Creator<android.service.ambientcontext.AmbientContextDetectionResult> CREATOR;
12943  }
12944
12945  public static final class AmbientContextDetectionResult.Builder {
12946    ctor public AmbientContextDetectionResult.Builder(@NonNull String);
12947    method @NonNull public android.service.ambientcontext.AmbientContextDetectionResult.Builder addEvent(@NonNull android.app.ambientcontext.AmbientContextEvent);
12948    method @NonNull public android.service.ambientcontext.AmbientContextDetectionResult.Builder addEvents(@NonNull java.util.List<android.app.ambientcontext.AmbientContextEvent>);
12949    method @NonNull public android.service.ambientcontext.AmbientContextDetectionResult build();
12950    method @NonNull public android.service.ambientcontext.AmbientContextDetectionResult.Builder clearEvents();
12951  }
12952
12953  public abstract class AmbientContextDetectionService extends android.app.Service {
12954    ctor public AmbientContextDetectionService();
12955    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
12956    method @BinderThread public abstract void onQueryServiceStatus(@NonNull int[], @NonNull String, @NonNull java.util.function.Consumer<android.service.ambientcontext.AmbientContextDetectionServiceStatus>);
12957    method @BinderThread public abstract void onStartDetection(@NonNull android.app.ambientcontext.AmbientContextEventRequest, @NonNull String, @NonNull java.util.function.Consumer<android.service.ambientcontext.AmbientContextDetectionResult>, @NonNull java.util.function.Consumer<android.service.ambientcontext.AmbientContextDetectionServiceStatus>);
12958    method public abstract void onStopDetection(@NonNull String);
12959    field public static final String SERVICE_INTERFACE = "android.service.ambientcontext.AmbientContextDetectionService";
12960  }
12961
12962  public final class AmbientContextDetectionServiceStatus implements android.os.Parcelable {
12963    method public int describeContents();
12964    method @NonNull public String getPackageName();
12965    method public int getStatusCode();
12966    method public void writeToParcel(@NonNull android.os.Parcel, int);
12967    field @NonNull public static final android.os.Parcelable.Creator<android.service.ambientcontext.AmbientContextDetectionServiceStatus> CREATOR;
12968  }
12969
12970  public static final class AmbientContextDetectionServiceStatus.Builder {
12971    ctor public AmbientContextDetectionServiceStatus.Builder(@NonNull String);
12972    method @NonNull public android.service.ambientcontext.AmbientContextDetectionServiceStatus build();
12973    method @NonNull public android.service.ambientcontext.AmbientContextDetectionServiceStatus.Builder setStatusCode(int);
12974  }
12975
12976}
12977
12978package android.service.appprediction {
12979
12980  public abstract class AppPredictionService extends android.app.Service {
12981    ctor public AppPredictionService();
12982    method @MainThread public abstract void onAppTargetEvent(@NonNull android.app.prediction.AppPredictionSessionId, @NonNull android.app.prediction.AppTargetEvent);
12983    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
12984    method public void onCreatePredictionSession(@NonNull android.app.prediction.AppPredictionContext, @NonNull android.app.prediction.AppPredictionSessionId);
12985    method @MainThread public void onDestroyPredictionSession(@NonNull android.app.prediction.AppPredictionSessionId);
12986    method @MainThread public abstract void onLaunchLocationShown(@NonNull android.app.prediction.AppPredictionSessionId, @NonNull String, @NonNull java.util.List<android.app.prediction.AppTargetId>);
12987    method @MainThread public abstract void onRequestPredictionUpdate(@NonNull android.app.prediction.AppPredictionSessionId);
12988    method @FlaggedApi("android.service.appprediction.flags.service_features_api") @MainThread public void onRequestServiceFeatures(@NonNull android.app.prediction.AppPredictionSessionId, @NonNull java.util.function.Consumer<android.os.Bundle>);
12989    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>>);
12990    method @MainThread public void onStartPredictionUpdates();
12991    method @MainThread public void onStopPredictionUpdates();
12992    method public final void updatePredictions(@NonNull android.app.prediction.AppPredictionSessionId, @NonNull java.util.List<android.app.prediction.AppTarget>);
12993  }
12994
12995}
12996
12997package android.service.assist.classification {
12998
12999  public final class FieldClassification implements android.os.Parcelable {
13000    ctor public FieldClassification(@NonNull android.view.autofill.AutofillId, @NonNull java.util.Set<java.lang.String>, @NonNull java.util.Set<java.lang.String>);
13001    method @NonNull public java.util.Set<java.lang.String> getGroupHints();
13002  }
13003
13004  public final class FieldClassificationRequest implements android.os.Parcelable {
13005    ctor public FieldClassificationRequest(@NonNull android.app.assist.AssistStructure);
13006    method public int describeContents();
13007    method @NonNull public android.app.assist.AssistStructure getAssistStructure();
13008    method public void writeToParcel(@NonNull android.os.Parcel, int);
13009    field @NonNull public static final android.os.Parcelable.Creator<android.service.assist.classification.FieldClassificationRequest> CREATOR;
13010  }
13011
13012  public final class FieldClassificationResponse implements android.os.Parcelable {
13013    ctor public FieldClassificationResponse(@NonNull java.util.Set<android.service.assist.classification.FieldClassification>);
13014    method public int describeContents();
13015    method @NonNull public java.util.Set<android.service.assist.classification.FieldClassification> getClassifications();
13016    method public void writeToParcel(@NonNull android.os.Parcel, int);
13017    field @NonNull public static final android.os.Parcelable.Creator<android.service.assist.classification.FieldClassificationResponse> CREATOR;
13018  }
13019
13020  public abstract class FieldClassificationService extends android.app.Service {
13021    ctor public FieldClassificationService();
13022    method public final android.os.IBinder onBind(android.content.Intent);
13023    method public abstract void onClassificationRequest(@NonNull android.service.assist.classification.FieldClassificationRequest, @NonNull android.os.CancellationSignal, @NonNull android.os.OutcomeReceiver<android.service.assist.classification.FieldClassificationResponse,java.lang.Exception>);
13024    method public void onConnected();
13025    method public void onDisconnected();
13026    field public static final String SERVICE_INTERFACE = "android.service.assist.classification.FieldClassificationService";
13027  }
13028
13029}
13030
13031package android.service.attention {
13032
13033  public abstract class AttentionService extends android.app.Service {
13034    ctor public AttentionService();
13035    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
13036    method public abstract void onCancelAttentionCheck(@NonNull android.service.attention.AttentionService.AttentionCallback);
13037    method public abstract void onCheckAttention(@NonNull android.service.attention.AttentionService.AttentionCallback);
13038    method public void onStartProximityUpdates(@NonNull android.service.attention.AttentionService.ProximityUpdateCallback);
13039    method public void onStopProximityUpdates();
13040    field public static final int ATTENTION_FAILURE_CAMERA_PERMISSION_ABSENT = 6; // 0x6
13041    field public static final int ATTENTION_FAILURE_CANCELLED = 3; // 0x3
13042    field public static final int ATTENTION_FAILURE_PREEMPTED = 4; // 0x4
13043    field public static final int ATTENTION_FAILURE_TIMED_OUT = 5; // 0x5
13044    field public static final int ATTENTION_FAILURE_UNKNOWN = 2; // 0x2
13045    field public static final int ATTENTION_SUCCESS_ABSENT = 0; // 0x0
13046    field public static final int ATTENTION_SUCCESS_PRESENT = 1; // 0x1
13047    field public static final double PROXIMITY_UNKNOWN = -1.0;
13048    field public static final String SERVICE_INTERFACE = "android.service.attention.AttentionService";
13049  }
13050
13051  public static final class AttentionService.AttentionCallback {
13052    method public void onFailure(int);
13053    method public void onSuccess(int, long);
13054  }
13055
13056  public static final class AttentionService.ProximityUpdateCallback {
13057    method public void onProximityUpdate(double);
13058  }
13059
13060}
13061
13062package android.service.autofill {
13063
13064  public abstract class AutofillFieldClassificationService extends android.app.Service {
13065    ctor public AutofillFieldClassificationService();
13066    method public android.os.IBinder onBind(android.content.Intent);
13067    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);
13068    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>);
13069    field public static final String REQUIRED_ALGORITHM_CREDIT_CARD = "CREDIT_CARD";
13070    field public static final String REQUIRED_ALGORITHM_EDIT_DISTANCE = "EDIT_DISTANCE";
13071    field public static final String REQUIRED_ALGORITHM_EXACT_MATCH = "EXACT_MATCH";
13072    field public static final String SERVICE_INTERFACE = "android.service.autofill.AutofillFieldClassificationService";
13073    field public static final String SERVICE_META_DATA_KEY_AVAILABLE_ALGORITHMS = "android.autofill.field_classification.available_algorithms";
13074    field public static final String SERVICE_META_DATA_KEY_DEFAULT_ALGORITHM = "android.autofill.field_classification.default_algorithm";
13075  }
13076
13077  public static final class Dataset.Builder {
13078    ctor @Deprecated public Dataset.Builder(@NonNull android.service.autofill.InlinePresentation);
13079    method @NonNull public android.service.autofill.Dataset.Builder setContent(@NonNull android.view.autofill.AutofillId, @Nullable android.content.ClipData);
13080    method @Deprecated @NonNull public android.service.autofill.Dataset.Builder setFieldInlinePresentation(@NonNull android.view.autofill.AutofillId, @Nullable android.view.autofill.AutofillValue, @Nullable java.util.regex.Pattern, @NonNull android.service.autofill.InlinePresentation);
13081  }
13082
13083  public abstract class InlineSuggestionRenderService extends android.app.Service {
13084    ctor public InlineSuggestionRenderService();
13085    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
13086    method @NonNull public android.os.Bundle onGetInlineSuggestionsRendererInfo();
13087    method @Nullable public android.view.View onRenderSuggestion(@NonNull android.service.autofill.InlinePresentation, int, int);
13088    method public final void startIntentSender(@NonNull android.content.IntentSender);
13089    field public static final String SERVICE_INTERFACE = "android.service.autofill.InlineSuggestionRenderService";
13090  }
13091
13092}
13093
13094package android.service.autofill.augmented {
13095
13096  public abstract class AugmentedAutofillService extends android.app.Service {
13097    ctor public AugmentedAutofillService();
13098    method protected final void dump(java.io.FileDescriptor, java.io.PrintWriter, String[]);
13099    method protected void dump(@NonNull java.io.PrintWriter, @NonNull String[]);
13100    method @Nullable public final android.service.autofill.FillEventHistory getFillEventHistory();
13101    method public final android.os.IBinder onBind(android.content.Intent);
13102    method public void onConnected();
13103    method public void onDisconnected();
13104    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);
13105    method public final boolean requestAutofill(@NonNull android.content.ComponentName, @NonNull android.view.autofill.AutofillId);
13106    field public static final String SERVICE_INTERFACE = "android.service.autofill.augmented.AugmentedAutofillService";
13107  }
13108
13109  public final class FillCallback {
13110    method public void onSuccess(@Nullable android.service.autofill.augmented.FillResponse);
13111  }
13112
13113  public final class FillController {
13114    method public void autofill(@NonNull java.util.List<android.util.Pair<android.view.autofill.AutofillId,android.view.autofill.AutofillValue>>);
13115  }
13116
13117  public final class FillRequest {
13118    method @NonNull public android.content.ComponentName getActivityComponent();
13119    method @NonNull public android.view.autofill.AutofillId getFocusedId();
13120    method @NonNull public android.view.autofill.AutofillValue getFocusedValue();
13121    method @Nullable public android.app.assist.AssistStructure.ViewNode getFocusedViewNode();
13122    method @Nullable public android.view.inputmethod.InlineSuggestionsRequest getInlineSuggestionsRequest();
13123    method @Nullable public android.service.autofill.augmented.PresentationParams getPresentationParams();
13124    method public int getTaskId();
13125  }
13126
13127  public final class FillResponse {
13128  }
13129
13130  public static final class FillResponse.Builder {
13131    ctor public FillResponse.Builder();
13132    method @NonNull public android.service.autofill.augmented.FillResponse build();
13133    method @NonNull public android.service.autofill.augmented.FillResponse.Builder setClientState(@NonNull android.os.Bundle);
13134    method @NonNull public android.service.autofill.augmented.FillResponse.Builder setFillWindow(@NonNull android.service.autofill.augmented.FillWindow);
13135    method @NonNull public android.service.autofill.augmented.FillResponse.Builder setInlineSuggestions(@NonNull java.util.List<android.service.autofill.Dataset>);
13136  }
13137
13138  public final class FillWindow implements java.lang.AutoCloseable {
13139    ctor public FillWindow();
13140    method public void close();
13141    method public void destroy();
13142    method public boolean update(@NonNull android.service.autofill.augmented.PresentationParams.Area, @NonNull android.view.View, long);
13143  }
13144
13145  public abstract class PresentationParams {
13146    method @Nullable public android.service.autofill.augmented.PresentationParams.Area getSuggestionArea();
13147  }
13148
13149  public abstract static class PresentationParams.Area {
13150    method @NonNull public android.graphics.Rect getBounds();
13151  }
13152
13153}
13154
13155package android.service.carrier {
13156
13157  public abstract class ApnService extends android.app.Service {
13158    ctor public ApnService();
13159    method @NonNull public android.os.IBinder onBind(@Nullable android.content.Intent);
13160    method @NonNull @WorkerThread public abstract java.util.List<android.content.ContentValues> onRestoreApns(int);
13161  }
13162
13163  public final class CarrierMessagingServiceWrapper implements java.lang.AutoCloseable {
13164    ctor public CarrierMessagingServiceWrapper();
13165    method public boolean bindToCarrierMessagingService(@NonNull android.content.Context, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull Runnable);
13166    method public void close();
13167    method public void disconnect();
13168    method public void downloadMms(@NonNull android.net.Uri, int, @NonNull android.net.Uri, @NonNull java.util.concurrent.Executor, @NonNull android.service.carrier.CarrierMessagingServiceWrapper.CarrierMessagingCallback);
13169    method public void receiveSms(@NonNull android.service.carrier.MessagePdu, @NonNull String, int, int, @NonNull java.util.concurrent.Executor, @NonNull android.service.carrier.CarrierMessagingServiceWrapper.CarrierMessagingCallback);
13170    method public void sendDataSms(@NonNull byte[], int, @NonNull String, int, int, @NonNull java.util.concurrent.Executor, @NonNull android.service.carrier.CarrierMessagingServiceWrapper.CarrierMessagingCallback);
13171    method public void sendMms(@NonNull android.net.Uri, int, @NonNull android.net.Uri, @NonNull java.util.concurrent.Executor, @NonNull android.service.carrier.CarrierMessagingServiceWrapper.CarrierMessagingCallback);
13172    method public void sendMultipartTextSms(@NonNull java.util.List<java.lang.String>, int, @NonNull String, int, @NonNull java.util.concurrent.Executor, @NonNull android.service.carrier.CarrierMessagingServiceWrapper.CarrierMessagingCallback);
13173    method public void sendTextSms(@NonNull String, int, @NonNull String, int, @NonNull java.util.concurrent.Executor, @NonNull android.service.carrier.CarrierMessagingServiceWrapper.CarrierMessagingCallback);
13174  }
13175
13176  public static interface CarrierMessagingServiceWrapper.CarrierMessagingCallback {
13177    method public default void onDownloadMmsComplete(int);
13178    method public default void onReceiveSmsComplete(int);
13179    method public default void onSendMmsComplete(int, @Nullable byte[]);
13180    method public default void onSendMultipartSmsComplete(int, @Nullable int[]);
13181    method public default void onSendSmsComplete(int, int);
13182  }
13183
13184}
13185
13186package android.service.cloudsearch {
13187
13188  public abstract class CloudSearchService extends android.app.Service {
13189    ctor public CloudSearchService();
13190    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
13191    method public abstract void onSearch(@NonNull android.app.cloudsearch.SearchRequest);
13192    method public final void returnResults(@NonNull String, @NonNull android.app.cloudsearch.SearchResponse);
13193  }
13194
13195}
13196
13197package android.service.contentcapture {
13198
13199  public final class ActivityEvent implements android.os.Parcelable {
13200    method public int describeContents();
13201    method @NonNull public android.app.assist.ActivityId getActivityId();
13202    method @NonNull public android.content.ComponentName getComponentName();
13203    method public int getEventType();
13204    method public void writeToParcel(@NonNull android.os.Parcel, int);
13205    field @NonNull public static final android.os.Parcelable.Creator<android.service.contentcapture.ActivityEvent> CREATOR;
13206    field public static final int TYPE_ACTIVITY_DESTROYED = 24; // 0x18
13207    field public static final int TYPE_ACTIVITY_PAUSED = 2; // 0x2
13208    field public static final int TYPE_ACTIVITY_RESUMED = 1; // 0x1
13209    field public static final int TYPE_ACTIVITY_STOPPED = 23; // 0x17
13210  }
13211
13212  public abstract class ContentCaptureService extends android.app.Service {
13213    ctor public ContentCaptureService();
13214    method public final void disableSelf();
13215    method public void onActivityEvent(@NonNull android.service.contentcapture.ActivityEvent);
13216    method public void onActivitySnapshot(@NonNull android.view.contentcapture.ContentCaptureSessionId, @NonNull android.service.contentcapture.SnapshotData);
13217    method public final android.os.IBinder onBind(android.content.Intent);
13218    method public void onConnected();
13219    method public void onContentCaptureEvent(@NonNull android.view.contentcapture.ContentCaptureSessionId, @NonNull android.view.contentcapture.ContentCaptureEvent);
13220    method public void onCreateContentCaptureSession(@NonNull android.view.contentcapture.ContentCaptureContext, @NonNull android.view.contentcapture.ContentCaptureSessionId);
13221    method public void onDataRemovalRequest(@NonNull android.view.contentcapture.DataRemovalRequest);
13222    method public void onDataShareRequest(@NonNull android.view.contentcapture.DataShareRequest, @NonNull android.service.contentcapture.DataShareCallback);
13223    method public void onDestroyContentCaptureSession(@NonNull android.view.contentcapture.ContentCaptureSessionId);
13224    method public void onDisconnected();
13225    method public final void setContentCaptureConditions(@NonNull String, @Nullable java.util.Set<android.view.contentcapture.ContentCaptureCondition>);
13226    method public final void setContentCaptureWhitelist(@Nullable java.util.Set<java.lang.String>, @Nullable java.util.Set<android.content.ComponentName>);
13227    field public static final String SERVICE_INTERFACE = "android.service.contentcapture.ContentCaptureService";
13228    field public static final String SERVICE_META_DATA = "android.content_capture";
13229  }
13230
13231  public interface DataShareCallback {
13232    method public void onAccept(@NonNull java.util.concurrent.Executor, @NonNull android.service.contentcapture.DataShareReadAdapter);
13233    method public void onReject();
13234  }
13235
13236  public interface DataShareReadAdapter {
13237    method public void onError(int);
13238    method public void onStart(@NonNull android.os.ParcelFileDescriptor);
13239  }
13240
13241  public final class SnapshotData implements android.os.Parcelable {
13242    method public int describeContents();
13243    method @Nullable public android.app.assist.AssistContent getAssistContent();
13244    method @NonNull public android.os.Bundle getAssistData();
13245    method @NonNull public android.app.assist.AssistStructure getAssistStructure();
13246    method public void writeToParcel(@NonNull android.os.Parcel, int);
13247    field @NonNull public static final android.os.Parcelable.Creator<android.service.contentcapture.SnapshotData> CREATOR;
13248  }
13249
13250}
13251
13252package android.service.contentsuggestions {
13253
13254  public abstract class ContentSuggestionsService extends android.app.Service {
13255    ctor public ContentSuggestionsService();
13256    method public final android.os.IBinder onBind(android.content.Intent);
13257    method public abstract void onClassifyContentSelections(@NonNull android.app.contentsuggestions.ClassificationsRequest, @NonNull android.app.contentsuggestions.ContentSuggestionsManager.ClassificationsCallback);
13258    method public abstract void onNotifyInteraction(@NonNull String, @NonNull android.os.Bundle);
13259    method public abstract void onProcessContextImage(int, @Nullable android.graphics.Bitmap, @NonNull android.os.Bundle);
13260    method public abstract void onSuggestContentSelections(@NonNull android.app.contentsuggestions.SelectionsRequest, @NonNull android.app.contentsuggestions.ContentSuggestionsManager.SelectionsCallback);
13261    field public static final String SERVICE_INTERFACE = "android.service.contentsuggestions.ContentSuggestionsService";
13262  }
13263
13264}
13265
13266package android.service.dataloader {
13267
13268  public abstract class DataLoaderService extends android.app.Service {
13269    ctor public DataLoaderService();
13270    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
13271    method @Nullable public android.service.dataloader.DataLoaderService.DataLoader onCreateDataLoader(@NonNull android.content.pm.DataLoaderParams);
13272  }
13273
13274  public static interface DataLoaderService.DataLoader {
13275    method public boolean onCreate(@NonNull android.content.pm.DataLoaderParams, @NonNull android.service.dataloader.DataLoaderService.FileSystemConnector);
13276    method public boolean onPrepareImage(@NonNull java.util.Collection<android.content.pm.InstallationFile>, @NonNull java.util.Collection<java.lang.String>);
13277  }
13278
13279  public static final class DataLoaderService.FileSystemConnector {
13280    method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void writeData(@NonNull String, long, long, @NonNull android.os.ParcelFileDescriptor) throws java.io.IOException;
13281  }
13282
13283}
13284
13285package android.service.displayhash {
13286
13287  public final class DisplayHashParams implements android.os.Parcelable {
13288    method public int describeContents();
13289    method @Nullable public android.util.Size getBufferSize();
13290    method public boolean isGrayscaleBuffer();
13291    method public void writeToParcel(@NonNull android.os.Parcel, int);
13292    field @NonNull public static final android.os.Parcelable.Creator<android.service.displayhash.DisplayHashParams> CREATOR;
13293  }
13294
13295  public static final class DisplayHashParams.Builder {
13296    ctor public DisplayHashParams.Builder();
13297    method @NonNull public android.service.displayhash.DisplayHashParams build();
13298    method @NonNull public android.service.displayhash.DisplayHashParams.Builder setBufferSize(int, int);
13299    method @NonNull public android.service.displayhash.DisplayHashParams.Builder setGrayscaleBuffer(boolean);
13300  }
13301
13302  public abstract class DisplayHashingService extends android.app.Service {
13303    ctor public DisplayHashingService();
13304    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
13305    method public abstract void onGenerateDisplayHash(@NonNull byte[], @NonNull android.hardware.HardwareBuffer, @NonNull android.graphics.Rect, @NonNull String, @NonNull android.view.displayhash.DisplayHashResultCallback);
13306    method @NonNull public abstract java.util.Map<java.lang.String,android.service.displayhash.DisplayHashParams> onGetDisplayHashAlgorithms();
13307    method public abstract int onGetIntervalBetweenRequestsMillis();
13308    method @Nullable public abstract android.view.displayhash.VerifiedDisplayHash onVerifyDisplayHash(@NonNull byte[], @NonNull android.view.displayhash.DisplayHash);
13309    field public static final String SERVICE_INTERFACE = "android.service.displayhash.DisplayHashingService";
13310  }
13311
13312}
13313
13314package android.service.euicc {
13315
13316  public final class DownloadSubscriptionResult implements android.os.Parcelable {
13317    ctor public DownloadSubscriptionResult(int, int, int);
13318    method public int describeContents();
13319    method public int getCardId();
13320    method public int getResolvableErrors();
13321    method public int getResult();
13322    method public void writeToParcel(android.os.Parcel, int);
13323    field @NonNull public static final android.os.Parcelable.Creator<android.service.euicc.DownloadSubscriptionResult> CREATOR;
13324  }
13325
13326  public final class EuiccProfileInfo implements android.os.Parcelable {
13327    method public int describeContents();
13328    method public android.service.carrier.CarrierIdentifier getCarrierIdentifier();
13329    method public String getIccid();
13330    method @Nullable public String getNickname();
13331    method public int getPolicyRules();
13332    method public int getProfileClass();
13333    method public String getProfileName();
13334    method public String getServiceProviderName();
13335    method public int getState();
13336    method @Nullable public java.util.List<android.telephony.UiccAccessRule> getUiccAccessRules();
13337    method public boolean hasPolicyRule(int);
13338    method public boolean hasPolicyRules();
13339    method public void writeToParcel(android.os.Parcel, int);
13340    field @NonNull public static final android.os.Parcelable.Creator<android.service.euicc.EuiccProfileInfo> CREATOR;
13341    field public static final int POLICY_RULE_DELETE_AFTER_DISABLING = 4; // 0x4
13342    field public static final int POLICY_RULE_DO_NOT_DELETE = 2; // 0x2
13343    field public static final int POLICY_RULE_DO_NOT_DISABLE = 1; // 0x1
13344    field public static final int PROFILE_CLASS_OPERATIONAL = 2; // 0x2
13345    field public static final int PROFILE_CLASS_PROVISIONING = 1; // 0x1
13346    field public static final int PROFILE_CLASS_TESTING = 0; // 0x0
13347    field public static final int PROFILE_STATE_DISABLED = 0; // 0x0
13348    field public static final int PROFILE_STATE_ENABLED = 1; // 0x1
13349  }
13350
13351  public static final class EuiccProfileInfo.Builder {
13352    ctor public EuiccProfileInfo.Builder(String);
13353    ctor public EuiccProfileInfo.Builder(android.service.euicc.EuiccProfileInfo);
13354    method public android.service.euicc.EuiccProfileInfo build();
13355    method public android.service.euicc.EuiccProfileInfo.Builder setCarrierIdentifier(android.service.carrier.CarrierIdentifier);
13356    method public android.service.euicc.EuiccProfileInfo.Builder setIccid(String);
13357    method public android.service.euicc.EuiccProfileInfo.Builder setNickname(String);
13358    method public android.service.euicc.EuiccProfileInfo.Builder setPolicyRules(int);
13359    method public android.service.euicc.EuiccProfileInfo.Builder setProfileClass(int);
13360    method public android.service.euicc.EuiccProfileInfo.Builder setProfileName(String);
13361    method public android.service.euicc.EuiccProfileInfo.Builder setServiceProviderName(String);
13362    method public android.service.euicc.EuiccProfileInfo.Builder setState(int);
13363    method public android.service.euicc.EuiccProfileInfo.Builder setUiccAccessRule(@Nullable java.util.List<android.telephony.UiccAccessRule>);
13364  }
13365
13366  public abstract class EuiccService extends android.app.Service {
13367    ctor public EuiccService();
13368    method public void dump(@NonNull java.io.PrintWriter);
13369    method public int encodeSmdxSubjectAndReasonCode(@Nullable String, @Nullable String);
13370    method @CallSuper public android.os.IBinder onBind(android.content.Intent);
13371    method public abstract int onDeleteSubscription(int, String);
13372    method @Deprecated public android.service.euicc.DownloadSubscriptionResult onDownloadSubscription(int, @NonNull android.telephony.euicc.DownloadableSubscription, boolean, boolean, @Nullable android.os.Bundle);
13373    method @NonNull public android.service.euicc.DownloadSubscriptionResult onDownloadSubscription(int, int, @NonNull android.telephony.euicc.DownloadableSubscription, boolean, boolean, @NonNull android.os.Bundle);
13374    method @Deprecated public int onDownloadSubscription(int, @NonNull android.telephony.euicc.DownloadableSubscription, boolean, boolean);
13375    method @Deprecated public abstract int onEraseSubscriptions(int);
13376    method public int onEraseSubscriptions(int, int);
13377    method @FlaggedApi("com.android.internal.telephony.flags.esim_available_memory") public long onGetAvailableMemoryInBytes(int);
13378    method public abstract android.service.euicc.GetDefaultDownloadableSubscriptionListResult onGetDefaultDownloadableSubscriptionList(int, boolean);
13379    method public abstract android.service.euicc.GetDownloadableSubscriptionMetadataResult onGetDownloadableSubscriptionMetadata(int, android.telephony.euicc.DownloadableSubscription, boolean);
13380    method @NonNull public android.service.euicc.GetDownloadableSubscriptionMetadataResult onGetDownloadableSubscriptionMetadata(int, int, @NonNull android.telephony.euicc.DownloadableSubscription, boolean);
13381    method public abstract String onGetEid(int);
13382    method @NonNull public abstract android.telephony.euicc.EuiccInfo onGetEuiccInfo(int);
13383    method @NonNull public abstract android.service.euicc.GetEuiccProfileInfoListResult onGetEuiccProfileInfoList(int);
13384    method public abstract int onGetOtaStatus(int);
13385    method public abstract int onRetainSubscriptionsForFactoryReset(int);
13386    method public abstract void onStartOtaIfNecessary(int, android.service.euicc.EuiccService.OtaStatusChangedCallback);
13387    method @Deprecated public abstract int onSwitchToSubscription(int, @Nullable String, boolean);
13388    method public int onSwitchToSubscriptionWithPort(int, int, @Nullable String, boolean);
13389    method public abstract int onUpdateSubscriptionNickname(int, String, String);
13390    field public static final String ACTION_BIND_CARRIER_PROVISIONING_SERVICE = "android.service.euicc.action.BIND_CARRIER_PROVISIONING_SERVICE";
13391    field @RequiresPermission(android.Manifest.permission.BIND_EUICC_SERVICE) public static final String ACTION_CONVERT_TO_EMBEDDED_SUBSCRIPTION = "android.service.euicc.action.CONVERT_TO_EMBEDDED_SUBSCRIPTION";
13392    field public static final String ACTION_DELETE_SUBSCRIPTION_PRIVILEGED = "android.service.euicc.action.DELETE_SUBSCRIPTION_PRIVILEGED";
13393    field @RequiresPermission(android.Manifest.permission.BIND_EUICC_SERVICE) public static final String ACTION_MANAGE_EMBEDDED_SUBSCRIPTIONS = "android.service.euicc.action.MANAGE_EMBEDDED_SUBSCRIPTIONS";
13394    field @RequiresPermission(android.Manifest.permission.BIND_EUICC_SERVICE) public static final String ACTION_PROVISION_EMBEDDED_SUBSCRIPTION = "android.service.euicc.action.PROVISION_EMBEDDED_SUBSCRIPTION";
13395    field public static final String ACTION_RENAME_SUBSCRIPTION_PRIVILEGED = "android.service.euicc.action.RENAME_SUBSCRIPTION_PRIVILEGED";
13396    field @Deprecated public static final String ACTION_RESOLVE_CONFIRMATION_CODE = "android.service.euicc.action.RESOLVE_CONFIRMATION_CODE";
13397    field public static final String ACTION_RESOLVE_DEACTIVATE_SIM = "android.service.euicc.action.RESOLVE_DEACTIVATE_SIM";
13398    field public static final String ACTION_RESOLVE_NO_PRIVILEGES = "android.service.euicc.action.RESOLVE_NO_PRIVILEGES";
13399    field public static final String ACTION_RESOLVE_RESOLVABLE_ERRORS = "android.service.euicc.action.RESOLVE_RESOLVABLE_ERRORS";
13400    field public static final String ACTION_START_CARRIER_ACTIVATION = "android.service.euicc.action.START_CARRIER_ACTIVATION";
13401    field public static final String ACTION_START_EUICC_ACTIVATION = "android.service.euicc.action.START_EUICC_ACTIVATION";
13402    field public static final String ACTION_TOGGLE_SUBSCRIPTION_PRIVILEGED = "android.service.euicc.action.TOGGLE_SUBSCRIPTION_PRIVILEGED";
13403    field @RequiresPermission(android.Manifest.permission.BIND_EUICC_SERVICE) public static final String ACTION_TRANSFER_EMBEDDED_SUBSCRIPTIONS = "android.service.euicc.action.TRANSFER_EMBEDDED_SUBSCRIPTIONS";
13404    field public static final String CATEGORY_EUICC_UI = "android.service.euicc.category.EUICC_UI";
13405    field public static final String EUICC_SERVICE_INTERFACE = "android.service.euicc.EuiccService";
13406    field public static final String EXTRA_RESOLUTION_ALLOW_POLICY_RULES = "android.service.euicc.extra.RESOLUTION_ALLOW_POLICY_RULES";
13407    field public static final String EXTRA_RESOLUTION_CALLING_PACKAGE = "android.service.euicc.extra.RESOLUTION_CALLING_PACKAGE";
13408    field public static final String EXTRA_RESOLUTION_CARD_ID = "android.service.euicc.extra.RESOLUTION_CARD_ID";
13409    field public static final String EXTRA_RESOLUTION_CONFIRMATION_CODE = "android.service.euicc.extra.RESOLUTION_CONFIRMATION_CODE";
13410    field public static final String EXTRA_RESOLUTION_CONFIRMATION_CODE_RETRIED = "android.service.euicc.extra.RESOLUTION_CONFIRMATION_CODE_RETRIED";
13411    field public static final String EXTRA_RESOLUTION_CONSENT = "android.service.euicc.extra.RESOLUTION_CONSENT";
13412    field public static final String EXTRA_RESOLUTION_PORT_INDEX = "android.service.euicc.extra.RESOLUTION_PORT_INDEX";
13413    field public static final String EXTRA_RESOLUTION_SUBSCRIPTION_ID = "android.service.euicc.extra.RESOLUTION_SUBSCRIPTION_ID";
13414    field public static final String EXTRA_RESOLUTION_USE_PORT_INDEX = "android.service.euicc.extra.RESOLUTION_USE_PORT_INDEX";
13415    field public static final String EXTRA_RESOLVABLE_ERRORS = "android.service.euicc.extra.RESOLVABLE_ERRORS";
13416    field public static final int RESOLVABLE_ERROR_CONFIRMATION_CODE = 1; // 0x1
13417    field public static final int RESOLVABLE_ERROR_POLICY_RULES = 2; // 0x2
13418    field public static final int RESULT_FIRST_USER = 1; // 0x1
13419    field public static final int RESULT_MUST_DEACTIVATE_SIM = -1; // 0xffffffff
13420    field @Deprecated public static final int RESULT_NEED_CONFIRMATION_CODE = -2; // 0xfffffffe
13421    field public static final int RESULT_OK = 0; // 0x0
13422    field public static final int RESULT_RESOLVABLE_ERRORS = -2; // 0xfffffffe
13423  }
13424
13425  public abstract static class EuiccService.OtaStatusChangedCallback {
13426    ctor public EuiccService.OtaStatusChangedCallback();
13427    method public abstract void onOtaStatusChanged(int);
13428  }
13429
13430  public final class GetDefaultDownloadableSubscriptionListResult implements android.os.Parcelable {
13431    ctor public GetDefaultDownloadableSubscriptionListResult(int, @Nullable android.telephony.euicc.DownloadableSubscription[]);
13432    method public int describeContents();
13433    method @Nullable public java.util.List<android.telephony.euicc.DownloadableSubscription> getDownloadableSubscriptions();
13434    method public int getResult();
13435    method public void writeToParcel(android.os.Parcel, int);
13436    field @NonNull public static final android.os.Parcelable.Creator<android.service.euicc.GetDefaultDownloadableSubscriptionListResult> CREATOR;
13437  }
13438
13439  public final class GetDownloadableSubscriptionMetadataResult implements android.os.Parcelable {
13440    ctor public GetDownloadableSubscriptionMetadataResult(int, @Nullable android.telephony.euicc.DownloadableSubscription);
13441    method public int describeContents();
13442    method @Nullable public android.telephony.euicc.DownloadableSubscription getDownloadableSubscription();
13443    method public int getResult();
13444    method public void writeToParcel(android.os.Parcel, int);
13445    field @NonNull public static final android.os.Parcelable.Creator<android.service.euicc.GetDownloadableSubscriptionMetadataResult> CREATOR;
13446  }
13447
13448  public final class GetEuiccProfileInfoListResult implements android.os.Parcelable {
13449    ctor public GetEuiccProfileInfoListResult(int, @Nullable android.service.euicc.EuiccProfileInfo[], boolean);
13450    method public int describeContents();
13451    method public boolean getIsRemovable();
13452    method @Nullable public java.util.List<android.service.euicc.EuiccProfileInfo> getProfiles();
13453    method public int getResult();
13454    method public void writeToParcel(android.os.Parcel, int);
13455    field @NonNull public static final android.os.Parcelable.Creator<android.service.euicc.GetEuiccProfileInfoListResult> CREATOR;
13456  }
13457
13458}
13459
13460package android.service.games {
13461
13462  public final class CreateGameSessionRequest implements android.os.Parcelable {
13463    ctor public CreateGameSessionRequest(int, @NonNull String);
13464    method public int describeContents();
13465    method @NonNull public String getGamePackageName();
13466    method public int getTaskId();
13467    method public void writeToParcel(@NonNull android.os.Parcel, int);
13468    field @NonNull public static final android.os.Parcelable.Creator<android.service.games.CreateGameSessionRequest> CREATOR;
13469  }
13470
13471  public class GameService extends android.app.Service {
13472    ctor public GameService();
13473    method @RequiresPermission(android.Manifest.permission.MANAGE_GAME_ACTIVITY) public final void createGameSession(@IntRange(from=0) int);
13474    method @Nullable public final android.os.IBinder onBind(@Nullable android.content.Intent);
13475    method public void onConnected();
13476    method public void onDisconnected();
13477    method public void onGameStarted(@NonNull android.service.games.GameStartedEvent);
13478    field public static final String ACTION_GAME_SERVICE = "android.service.games.action.GAME_SERVICE";
13479    field public static final String SERVICE_META_DATA = "android.game_service";
13480  }
13481
13482  public abstract class GameSession {
13483    ctor public GameSession();
13484    method public void onCreate();
13485    method public void onDestroy();
13486    method public void onGameTaskFocusChanged(boolean);
13487    method public void onTransientSystemBarVisibilityFromRevealGestureChanged(boolean);
13488    method @RequiresPermission(android.Manifest.permission.MANAGE_GAME_ACTIVITY) public final boolean restartGame();
13489    method public void setTaskOverlayView(@NonNull android.view.View, @NonNull android.view.ViewGroup.LayoutParams);
13490    method @RequiresPermission(android.Manifest.permission.MANAGE_GAME_ACTIVITY) public final void startActivityFromGameSessionForResult(@NonNull android.content.Intent, @Nullable android.os.Bundle, @NonNull java.util.concurrent.Executor, @NonNull android.service.games.GameSessionActivityCallback);
13491    method @RequiresPermission(android.Manifest.permission.MANAGE_GAME_ACTIVITY) public void takeScreenshot(@NonNull java.util.concurrent.Executor, @NonNull android.service.games.GameSession.ScreenshotCallback);
13492  }
13493
13494  public static interface GameSession.ScreenshotCallback {
13495    method public void onFailure(int);
13496    method public void onSuccess();
13497    field public static final int ERROR_TAKE_SCREENSHOT_INTERNAL_ERROR = 0; // 0x0
13498  }
13499
13500  public interface GameSessionActivityCallback {
13501    method public void onActivityResult(int, @Nullable android.content.Intent);
13502    method public default void onActivityStartFailed(@NonNull Throwable);
13503  }
13504
13505  public abstract class GameSessionService extends android.app.Service {
13506    ctor public GameSessionService();
13507    method @Nullable public final android.os.IBinder onBind(@Nullable android.content.Intent);
13508    method @NonNull public abstract android.service.games.GameSession onNewSession(@NonNull android.service.games.CreateGameSessionRequest);
13509    field public static final String ACTION_GAME_SESSION_SERVICE = "android.service.games.action.GAME_SESSION_SERVICE";
13510  }
13511
13512  public final class GameStartedEvent implements android.os.Parcelable {
13513    ctor public GameStartedEvent(@IntRange(from=0) int, @NonNull String);
13514    method public int describeContents();
13515    method @NonNull public String getPackageName();
13516    method @IntRange(from=0) public int getTaskId();
13517    method public void writeToParcel(@NonNull android.os.Parcel, int);
13518    field @NonNull public static final android.os.Parcelable.Creator<android.service.games.GameStartedEvent> CREATOR;
13519  }
13520
13521}
13522
13523package android.service.notification {
13524
13525  public final class Adjustment implements android.os.Parcelable {
13526    ctor public Adjustment(String, String, android.os.Bundle, CharSequence, int);
13527    ctor public Adjustment(@NonNull String, @NonNull String, @NonNull android.os.Bundle, @NonNull CharSequence, @NonNull android.os.UserHandle);
13528    ctor protected Adjustment(android.os.Parcel);
13529    method public int describeContents();
13530    method @NonNull public CharSequence getExplanation();
13531    method @NonNull public String getKey();
13532    method @NonNull public String getPackage();
13533    method @NonNull public android.os.Bundle getSignals();
13534    method public int getUser();
13535    method @NonNull public android.os.UserHandle getUserHandle();
13536    method public void writeToParcel(android.os.Parcel, int);
13537    field @NonNull public static final android.os.Parcelable.Creator<android.service.notification.Adjustment> CREATOR;
13538    field public static final String KEY_CONTEXTUAL_ACTIONS = "key_contextual_actions";
13539    field public static final String KEY_IMPORTANCE = "key_importance";
13540    field public static final String KEY_IMPORTANCE_PROPOSAL = "key_importance_proposal";
13541    field public static final String KEY_NOT_CONVERSATION = "key_not_conversation";
13542    field public static final String KEY_PEOPLE = "key_people";
13543    field public static final String KEY_RANKING_SCORE = "key_ranking_score";
13544    field public static final String KEY_SENSITIVE_CONTENT = "key_sensitive_content";
13545    field public static final String KEY_SNOOZE_CRITERIA = "key_snooze_criteria";
13546    field public static final String KEY_TEXT_REPLIES = "key_text_replies";
13547    field @FlaggedApi("android.service.notification.notification_classification") public static final String KEY_TYPE = "key_type";
13548    field public static final String KEY_USER_SENTIMENT = "key_user_sentiment";
13549    field @FlaggedApi("android.service.notification.notification_classification") public static final int TYPE_CONTENT_RECOMMENDATION = 4; // 0x4
13550    field @FlaggedApi("android.service.notification.notification_classification") public static final int TYPE_NEWS = 3; // 0x3
13551    field @FlaggedApi("android.service.notification.notification_classification") public static final int TYPE_OTHER = 0; // 0x0
13552    field @FlaggedApi("android.service.notification.notification_classification") public static final int TYPE_PROMOTION = 1; // 0x1
13553    field @FlaggedApi("android.service.notification.notification_classification") public static final int TYPE_SOCIAL_MEDIA = 2; // 0x2
13554  }
13555
13556  public abstract class NotificationAssistantService extends android.service.notification.NotificationListenerService {
13557    ctor public NotificationAssistantService();
13558    method public final void adjustNotification(@NonNull android.service.notification.Adjustment);
13559    method public final void adjustNotifications(@NonNull java.util.List<android.service.notification.Adjustment>);
13560    method public void onActionInvoked(@NonNull String, @NonNull android.app.Notification.Action, int);
13561    method public void onAllowedAdjustmentsChanged();
13562    method @NonNull public final android.os.IBinder onBind(@Nullable android.content.Intent);
13563    method public void onNotificationClicked(@NonNull String);
13564    method public void onNotificationDirectReplied(@NonNull String);
13565    method @Nullable public abstract android.service.notification.Adjustment onNotificationEnqueued(@NonNull android.service.notification.StatusBarNotification);
13566    method @Nullable public android.service.notification.Adjustment onNotificationEnqueued(@NonNull android.service.notification.StatusBarNotification, @NonNull android.app.NotificationChannel);
13567    method @Nullable public android.service.notification.Adjustment onNotificationEnqueued(@NonNull android.service.notification.StatusBarNotification, @NonNull android.app.NotificationChannel, @NonNull android.service.notification.NotificationListenerService.RankingMap);
13568    method public void onNotificationExpansionChanged(@NonNull String, boolean, boolean);
13569    method public void onNotificationFeedbackReceived(@NonNull String, @NonNull android.service.notification.NotificationListenerService.RankingMap, @NonNull android.os.Bundle);
13570    method public abstract void onNotificationSnoozedUntilContext(@NonNull android.service.notification.StatusBarNotification, @NonNull String);
13571    method public void onNotificationVisibilityChanged(@NonNull String, boolean);
13572    method public void onNotificationsSeen(@NonNull java.util.List<java.lang.String>);
13573    method public void onPanelHidden();
13574    method public void onPanelRevealed(int);
13575    method public void onSuggestedReplySent(@NonNull String, @NonNull CharSequence, int);
13576    method @FlaggedApi("android.service.notification.notification_classification") public final void setAdjustmentTypeSupportedState(@NonNull String, boolean);
13577    method public final void unsnoozeNotification(@NonNull String);
13578    field public static final String ACTION_NOTIFICATION_ASSISTANT_DETAIL_SETTINGS = "android.service.notification.action.NOTIFICATION_ASSISTANT_DETAIL_SETTINGS";
13579    field @FlaggedApi("android.service.notification.notification_classification") public static final String ACTION_NOTIFICATION_ASSISTANT_FEEDBACK_SETTINGS = "android.service.notification.action.NOTIFICATION_ASSISTANT_FEEDBACK_SETTINGS";
13580    field @FlaggedApi("android.service.notification.notification_classification") public static final String EXTRA_NOTIFICATION_KEY = "android.service.notification.extra.NOTIFICATION_KEY";
13581    field public static final String FEEDBACK_RATING = "feedback.rating";
13582    field public static final String SERVICE_INTERFACE = "android.service.notification.NotificationAssistantService";
13583    field public static final int SOURCE_FROM_APP = 0; // 0x0
13584    field public static final int SOURCE_FROM_ASSISTANT = 1; // 0x1
13585  }
13586
13587  public abstract class NotificationListenerService extends android.app.Service {
13588    method @UiThread public void onNotificationRemoved(@NonNull android.service.notification.StatusBarNotification, @NonNull android.service.notification.NotificationListenerService.RankingMap, @NonNull android.service.notification.NotificationStats, int);
13589  }
13590
13591  public static class NotificationListenerService.Ranking {
13592    method public int getProposedImportance();
13593    method public boolean hasSensitiveContent();
13594  }
13595
13596  public final class NotificationStats implements android.os.Parcelable {
13597    ctor public NotificationStats();
13598    ctor protected NotificationStats(android.os.Parcel);
13599    method public int describeContents();
13600    method public int getDismissalSentiment();
13601    method public int getDismissalSurface();
13602    method public boolean hasDirectReplied();
13603    method public boolean hasExpanded();
13604    method public boolean hasInteracted();
13605    method public boolean hasSeen();
13606    method @FlaggedApi("android.app.lifetime_extension_refactor") public boolean hasSmartReplied();
13607    method public boolean hasSnoozed();
13608    method public boolean hasViewedSettings();
13609    method public void setDirectReplied();
13610    method public void setDismissalSentiment(int);
13611    method public void setDismissalSurface(int);
13612    method public void setExpanded();
13613    method public void setSeen();
13614    method @FlaggedApi("android.app.lifetime_extension_refactor") public void setSmartReplied();
13615    method public void setSnoozed();
13616    method public void setViewedSettings();
13617    method public void writeToParcel(android.os.Parcel, int);
13618    field @NonNull public static final android.os.Parcelable.Creator<android.service.notification.NotificationStats> CREATOR;
13619    field public static final int DISMISSAL_AOD = 2; // 0x2
13620    field public static final int DISMISSAL_NOT_DISMISSED = -1; // 0xffffffff
13621    field public static final int DISMISSAL_OTHER = 0; // 0x0
13622    field public static final int DISMISSAL_PEEK = 1; // 0x1
13623    field public static final int DISMISSAL_SHADE = 3; // 0x3
13624    field public static final int DISMISS_SENTIMENT_NEGATIVE = 0; // 0x0
13625    field public static final int DISMISS_SENTIMENT_NEUTRAL = 1; // 0x1
13626    field public static final int DISMISS_SENTIMENT_POSITIVE = 2; // 0x2
13627    field public static final int DISMISS_SENTIMENT_UNKNOWN = -1000; // 0xfffffc18
13628  }
13629
13630  public final class SnoozeCriterion implements android.os.Parcelable {
13631    ctor public SnoozeCriterion(String, CharSequence, CharSequence);
13632    ctor protected SnoozeCriterion(android.os.Parcel);
13633    method public int describeContents();
13634    method public CharSequence getConfirmation();
13635    method public CharSequence getExplanation();
13636    method public String getId();
13637    method public void writeToParcel(android.os.Parcel, int);
13638    field @NonNull public static final android.os.Parcelable.Creator<android.service.notification.SnoozeCriterion> CREATOR;
13639  }
13640
13641}
13642
13643package android.service.oemlock {
13644
13645  public class OemLockManager {
13646    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_CARRIER_OEM_UNLOCK_STATE) public String getLockName();
13647    method @RequiresPermission(android.Manifest.permission.MANAGE_CARRIER_OEM_UNLOCK_STATE) public boolean isOemUnlockAllowedByCarrier();
13648    method @RequiresPermission(android.Manifest.permission.MANAGE_USER_OEM_UNLOCK_STATE) public boolean isOemUnlockAllowedByUser();
13649    method @RequiresPermission(android.Manifest.permission.MANAGE_CARRIER_OEM_UNLOCK_STATE) public void setOemUnlockAllowedByCarrier(boolean, @Nullable byte[]);
13650    method @RequiresPermission(android.Manifest.permission.MANAGE_USER_OEM_UNLOCK_STATE) public void setOemUnlockAllowedByUser(boolean);
13651  }
13652
13653}
13654
13655package android.service.persistentdata {
13656
13657  @FlaggedApi("android.security.frp_enforcement") public class PersistentDataBlockManager {
13658    method @FlaggedApi("android.security.frp_enforcement") @RequiresPermission(android.Manifest.permission.CONFIGURE_FACTORY_RESET_PROTECTION) public boolean deactivateFactoryResetProtection(@NonNull byte[]);
13659    method @RequiresPermission(android.Manifest.permission.ACCESS_PDB_STATE) public int getDataBlockSize();
13660    method @RequiresPermission(anyOf={android.Manifest.permission.READ_OEM_UNLOCK_STATE, "android.permission.OEM_UNLOCK_STATE"}) public int getFlashLockState();
13661    method public long getMaximumDataBlockSize();
13662    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_OEM_UNLOCK_STATE, "android.permission.OEM_UNLOCK_STATE"}) public boolean getOemUnlockEnabled();
13663    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_PDB_STATE) public String getPersistentDataPackageName();
13664    method @Nullable public byte[] read();
13665    method @FlaggedApi("android.security.frp_enforcement") public boolean setFactoryResetProtectionSecret(@NonNull byte[]);
13666    method @Deprecated @RequiresPermission("android.permission.OEM_UNLOCK_STATE") public void setOemUnlockEnabled(boolean);
13667    method @RequiresPermission("android.permission.OEM_UNLOCK_STATE") public void wipe();
13668    method public int write(@Nullable byte[]);
13669    field public static final int FLASH_LOCK_LOCKED = 1; // 0x1
13670    field public static final int FLASH_LOCK_UNKNOWN = -1; // 0xffffffff
13671    field public static final int FLASH_LOCK_UNLOCKED = 0; // 0x0
13672  }
13673
13674}
13675
13676package android.service.quicksettings {
13677
13678  public class TileService extends android.app.Service {
13679    method public final void setStatusIcon(android.graphics.drawable.Icon, String);
13680  }
13681
13682}
13683
13684package android.service.remotelockscreenvalidation {
13685
13686  public abstract class RemoteLockscreenValidationService extends android.app.Service {
13687    ctor public RemoteLockscreenValidationService();
13688    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
13689    method public abstract void onValidateLockscreenGuess(@NonNull byte[], @NonNull android.os.OutcomeReceiver<android.app.RemoteLockscreenValidationResult,java.lang.Exception>);
13690    field public static final String SERVICE_INTERFACE = "android.service.remotelockscreenvalidation.RemoteLockscreenValidationService";
13691  }
13692
13693}
13694
13695package android.service.resolver {
13696
13697  public abstract class ResolverRankerService extends android.app.Service {
13698    ctor public ResolverRankerService();
13699    method public android.os.IBinder onBind(android.content.Intent);
13700    method public void onPredictSharingProbabilities(java.util.List<android.service.resolver.ResolverTarget>);
13701    method public void onTrainRankingModel(java.util.List<android.service.resolver.ResolverTarget>, int);
13702    field public static final String BIND_PERMISSION = "android.permission.BIND_RESOLVER_RANKER_SERVICE";
13703    field public static final String HOLD_PERMISSION = "android.permission.PROVIDE_RESOLVER_RANKER_SERVICE";
13704    field public static final String SERVICE_INTERFACE = "android.service.resolver.ResolverRankerService";
13705  }
13706
13707  public final class ResolverTarget implements android.os.Parcelable {
13708    ctor public ResolverTarget();
13709    method public int describeContents();
13710    method public float getChooserScore();
13711    method public float getLaunchScore();
13712    method public float getRecencyScore();
13713    method public float getSelectProbability();
13714    method public float getTimeSpentScore();
13715    method public void setChooserScore(float);
13716    method public void setLaunchScore(float);
13717    method public void setRecencyScore(float);
13718    method public void setSelectProbability(float);
13719    method public void setTimeSpentScore(float);
13720    method public void writeToParcel(android.os.Parcel, int);
13721    field @NonNull public static final android.os.Parcelable.Creator<android.service.resolver.ResolverTarget> CREATOR;
13722  }
13723
13724}
13725
13726package android.service.resumeonreboot {
13727
13728  public abstract class ResumeOnRebootService extends android.app.Service {
13729    ctor public ResumeOnRebootService();
13730    method @Nullable public android.os.IBinder onBind(@Nullable android.content.Intent);
13731    method @NonNull public abstract byte[] onUnwrap(@NonNull byte[]) throws java.io.IOException;
13732    method @NonNull public abstract byte[] onWrap(@NonNull byte[], long) throws java.io.IOException;
13733    field public static final String SERVICE_INTERFACE = "android.service.resumeonreboot.ResumeOnRebootService";
13734  }
13735
13736}
13737
13738package android.service.rotationresolver {
13739
13740  public final class RotationResolutionRequest implements android.os.Parcelable {
13741    ctor public RotationResolutionRequest(@NonNull String, int, int, boolean, long);
13742    method public int describeContents();
13743    method public int getCurrentRotation();
13744    method @NonNull public String getForegroundPackageName();
13745    method public int getProposedRotation();
13746    method public long getTimeoutMillis();
13747    method public boolean shouldUseCamera();
13748    method public void writeToParcel(@NonNull android.os.Parcel, int);
13749    field @NonNull public static final android.os.Parcelable.Creator<android.service.rotationresolver.RotationResolutionRequest> CREATOR;
13750  }
13751
13752  public abstract class RotationResolverService extends android.app.Service {
13753    ctor public RotationResolverService();
13754    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
13755    method public abstract void onResolveRotation(@NonNull android.service.rotationresolver.RotationResolutionRequest, @Nullable android.os.CancellationSignal, @NonNull android.service.rotationresolver.RotationResolverService.RotationResolverCallback);
13756    field public static final int ROTATION_RESULT_FAILURE_CANCELLED = 0; // 0x0
13757    field public static final int ROTATION_RESULT_FAILURE_NOT_SUPPORTED = 4; // 0x4
13758    field public static final int ROTATION_RESULT_FAILURE_PREEMPTED = 2; // 0x2
13759    field public static final int ROTATION_RESULT_FAILURE_TIMED_OUT = 1; // 0x1
13760    field public static final int ROTATION_RESULT_FAILURE_UNKNOWN = 3; // 0x3
13761    field public static final String SERVICE_INTERFACE = "android.service.rotationresolver.RotationResolverService";
13762  }
13763
13764  public static interface RotationResolverService.RotationResolverCallback {
13765    method public void onFailure(int);
13766    method public void onSuccess(int);
13767  }
13768
13769}
13770
13771package android.service.search {
13772
13773  public abstract class SearchUiService extends android.app.Service {
13774    ctor public SearchUiService();
13775    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
13776    method @MainThread public abstract void onDestroy(@NonNull android.app.search.SearchSessionId);
13777    method @MainThread public abstract void onNotifyEvent(@NonNull android.app.search.SearchSessionId, @NonNull android.app.search.Query, @NonNull android.app.search.SearchTargetEvent);
13778    method @MainThread public abstract void onQuery(@NonNull android.app.search.SearchSessionId, @NonNull android.app.search.Query, @NonNull java.util.function.Consumer<java.util.List<android.app.search.SearchTarget>>);
13779    method public void onSearchSessionCreated(@NonNull android.app.search.SearchContext, @NonNull android.app.search.SearchSessionId);
13780    method @MainThread public void onStartUpdateEmptyQueryResult();
13781    method @MainThread public void onStopUpdateEmptyQueryResult();
13782    method public final void updateEmptyQueryResult(@NonNull android.app.search.SearchSessionId, @NonNull java.util.List<android.app.search.SearchTarget>);
13783  }
13784
13785}
13786
13787package android.service.settings.suggestions {
13788
13789  public final class Suggestion implements android.os.Parcelable {
13790    method public int describeContents();
13791    method public int getFlags();
13792    method public android.graphics.drawable.Icon getIcon();
13793    method public String getId();
13794    method public android.app.PendingIntent getPendingIntent();
13795    method public CharSequence getSummary();
13796    method public CharSequence getTitle();
13797    method public void writeToParcel(android.os.Parcel, int);
13798    field @NonNull public static final android.os.Parcelable.Creator<android.service.settings.suggestions.Suggestion> CREATOR;
13799    field public static final int FLAG_HAS_BUTTON = 1; // 0x1
13800  }
13801
13802  public static class Suggestion.Builder {
13803    ctor public Suggestion.Builder(String);
13804    method public android.service.settings.suggestions.Suggestion build();
13805    method public android.service.settings.suggestions.Suggestion.Builder setFlags(int);
13806    method public android.service.settings.suggestions.Suggestion.Builder setIcon(android.graphics.drawable.Icon);
13807    method public android.service.settings.suggestions.Suggestion.Builder setPendingIntent(android.app.PendingIntent);
13808    method public android.service.settings.suggestions.Suggestion.Builder setSummary(CharSequence);
13809    method public android.service.settings.suggestions.Suggestion.Builder setTitle(CharSequence);
13810  }
13811
13812  public abstract class SuggestionService extends android.app.Service {
13813    ctor public SuggestionService();
13814    method public android.os.IBinder onBind(android.content.Intent);
13815    method public abstract java.util.List<android.service.settings.suggestions.Suggestion> onGetSuggestions();
13816    method public abstract void onSuggestionDismissed(android.service.settings.suggestions.Suggestion);
13817    method public abstract void onSuggestionLaunched(android.service.settings.suggestions.Suggestion);
13818  }
13819
13820}
13821
13822package android.service.smartspace {
13823
13824  public abstract class SmartspaceService extends android.app.Service {
13825    ctor public SmartspaceService();
13826    method @MainThread public abstract void notifySmartspaceEvent(@NonNull android.app.smartspace.SmartspaceSessionId, @NonNull android.app.smartspace.SmartspaceTargetEvent);
13827    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
13828    method public abstract void onCreateSmartspaceSession(@NonNull android.app.smartspace.SmartspaceConfig, @NonNull android.app.smartspace.SmartspaceSessionId);
13829    method @MainThread public abstract void onDestroy(@NonNull android.app.smartspace.SmartspaceSessionId);
13830    method public abstract void onDestroySmartspaceSession(@NonNull android.app.smartspace.SmartspaceSessionId);
13831    method @MainThread public abstract void onRequestSmartspaceUpdate(@NonNull android.app.smartspace.SmartspaceSessionId);
13832    method public final void updateSmartspaceTargets(@NonNull android.app.smartspace.SmartspaceSessionId, @NonNull java.util.List<android.app.smartspace.SmartspaceTarget>);
13833  }
13834
13835}
13836
13837package android.service.storage {
13838
13839  public abstract class ExternalStorageService extends android.app.Service {
13840    ctor public ExternalStorageService();
13841    method public void onAnrDelayStarted(@NonNull String, int, int, int);
13842    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
13843    method public abstract void onEndSession(@NonNull String) throws java.io.IOException;
13844    method public void onFreeCache(@NonNull java.util.UUID, long) throws java.io.IOException;
13845    method public abstract void onStartSession(@NonNull String, int, @NonNull android.os.ParcelFileDescriptor, @NonNull java.io.File, @NonNull java.io.File) throws java.io.IOException;
13846    method public abstract void onVolumeStateChanged(@NonNull android.os.storage.StorageVolume) throws java.io.IOException;
13847    field public static final int FLAG_SESSION_ATTRIBUTE_INDEXABLE = 2; // 0x2
13848    field public static final int FLAG_SESSION_TYPE_FUSE = 1; // 0x1
13849    field public static final String SERVICE_INTERFACE = "android.service.storage.ExternalStorageService";
13850  }
13851
13852}
13853
13854package android.service.textclassifier {
13855
13856  public abstract class TextClassifierService extends android.app.Service {
13857    ctor public TextClassifierService();
13858    method @NonNull public static android.view.textclassifier.TextClassifier getDefaultTextClassifierImplementation(@NonNull android.content.Context);
13859    method @Deprecated public final android.view.textclassifier.TextClassifier getLocalTextClassifier();
13860    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
13861    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>);
13862    method public void onConnected();
13863    method @MainThread public void onCreateTextClassificationSession(@NonNull android.view.textclassifier.TextClassificationContext, @NonNull android.view.textclassifier.TextClassificationSessionId);
13864    method @MainThread public void onDestroyTextClassificationSession(@NonNull android.view.textclassifier.TextClassificationSessionId);
13865    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>);
13866    method public void onDisconnected();
13867    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>);
13868    method @Deprecated @MainThread public void onSelectionEvent(@Nullable android.view.textclassifier.TextClassificationSessionId, @NonNull android.view.textclassifier.SelectionEvent);
13869    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>);
13870    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>);
13871    method @MainThread public void onTextClassifierEvent(@Nullable android.view.textclassifier.TextClassificationSessionId, @NonNull android.view.textclassifier.TextClassifierEvent);
13872    field public static final String SERVICE_INTERFACE = "android.service.textclassifier.TextClassifierService";
13873  }
13874
13875  public static interface TextClassifierService.Callback<T> {
13876    method public void onFailure(@NonNull CharSequence);
13877    method public void onSuccess(T);
13878  }
13879
13880}
13881
13882package android.service.timezone {
13883
13884  public abstract class TimeZoneProviderService extends android.app.Service {
13885    ctor public TimeZoneProviderService();
13886    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
13887    method public abstract void onStartUpdates(long);
13888    method public abstract void onStopUpdates();
13889    method public final void reportPermanentFailure(@NonNull Throwable);
13890    method public final void reportSuggestion(@NonNull android.service.timezone.TimeZoneProviderSuggestion);
13891    method public final void reportSuggestion(@NonNull android.service.timezone.TimeZoneProviderSuggestion, @NonNull android.service.timezone.TimeZoneProviderStatus);
13892    method public final void reportUncertain();
13893    method public final void reportUncertain(@NonNull android.service.timezone.TimeZoneProviderStatus);
13894    field public static final String PRIMARY_LOCATION_TIME_ZONE_PROVIDER_SERVICE_INTERFACE = "android.service.timezone.PrimaryLocationTimeZoneProviderService";
13895    field public static final String SECONDARY_LOCATION_TIME_ZONE_PROVIDER_SERVICE_INTERFACE = "android.service.timezone.SecondaryLocationTimeZoneProviderService";
13896  }
13897
13898  public final class TimeZoneProviderStatus implements android.os.Parcelable {
13899    method public int describeContents();
13900    method public int getConnectivityDependencyStatus();
13901    method public int getLocationDetectionDependencyStatus();
13902    method public int getTimeZoneResolutionOperationStatus();
13903    method public void writeToParcel(@NonNull android.os.Parcel, int);
13904    field @NonNull public static final android.os.Parcelable.Creator<android.service.timezone.TimeZoneProviderStatus> CREATOR;
13905    field public static final int DEPENDENCY_STATUS_BLOCKED_BY_ENVIRONMENT = 4; // 0x4
13906    field public static final int DEPENDENCY_STATUS_BLOCKED_BY_SETTINGS = 6; // 0x6
13907    field public static final int DEPENDENCY_STATUS_DEGRADED_BY_SETTINGS = 5; // 0x5
13908    field public static final int DEPENDENCY_STATUS_NOT_APPLICABLE = 1; // 0x1
13909    field public static final int DEPENDENCY_STATUS_OK = 2; // 0x2
13910    field public static final int DEPENDENCY_STATUS_TEMPORARILY_UNAVAILABLE = 3; // 0x3
13911    field public static final int OPERATION_STATUS_FAILED = 3; // 0x3
13912    field public static final int OPERATION_STATUS_NOT_APPLICABLE = 1; // 0x1
13913    field public static final int OPERATION_STATUS_OK = 2; // 0x2
13914  }
13915
13916  public static final class TimeZoneProviderStatus.Builder {
13917    ctor public TimeZoneProviderStatus.Builder();
13918    method @NonNull public android.service.timezone.TimeZoneProviderStatus build();
13919    method @NonNull public android.service.timezone.TimeZoneProviderStatus.Builder setConnectivityDependencyStatus(int);
13920    method @NonNull public android.service.timezone.TimeZoneProviderStatus.Builder setLocationDetectionDependencyStatus(int);
13921    method @NonNull public android.service.timezone.TimeZoneProviderStatus.Builder setTimeZoneResolutionOperationStatus(int);
13922  }
13923
13924  public final class TimeZoneProviderSuggestion implements android.os.Parcelable {
13925    method public int describeContents();
13926    method public long getElapsedRealtimeMillis();
13927    method @NonNull public java.util.List<java.lang.String> getTimeZoneIds();
13928    method public void writeToParcel(@NonNull android.os.Parcel, int);
13929    field @NonNull public static final android.os.Parcelable.Creator<android.service.timezone.TimeZoneProviderSuggestion> CREATOR;
13930  }
13931
13932  public static final class TimeZoneProviderSuggestion.Builder {
13933    ctor public TimeZoneProviderSuggestion.Builder();
13934    method @NonNull public android.service.timezone.TimeZoneProviderSuggestion build();
13935    method @NonNull public android.service.timezone.TimeZoneProviderSuggestion.Builder setElapsedRealtimeMillis(long);
13936    method @NonNull public android.service.timezone.TimeZoneProviderSuggestion.Builder setTimeZoneIds(@NonNull java.util.List<java.lang.String>);
13937  }
13938
13939}
13940
13941package android.service.tracing {
13942
13943  public class TraceReportService extends android.app.Service {
13944    ctor public TraceReportService();
13945    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
13946    method public void onReportTrace(@NonNull android.service.tracing.TraceReportService.TraceParams);
13947  }
13948
13949  public static final class TraceReportService.TraceParams {
13950    method @NonNull public android.os.ParcelFileDescriptor getFd();
13951    method @NonNull public java.util.UUID getUuid();
13952  }
13953
13954}
13955
13956package android.service.translation {
13957
13958  public abstract class TranslationService extends android.app.Service {
13959    ctor public TranslationService();
13960    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
13961    method public void onConnected();
13962    method public abstract void onCreateTranslationSession(@NonNull android.view.translation.TranslationContext, int, @NonNull java.util.function.Consumer<java.lang.Boolean>);
13963    method public void onDisconnected();
13964    method public abstract void onFinishTranslationSession(int);
13965    method public abstract void onTranslationCapabilitiesRequest(int, int, @NonNull java.util.function.Consumer<java.util.Set<android.view.translation.TranslationCapability>>);
13966    method public abstract void onTranslationRequest(@NonNull android.view.translation.TranslationRequest, int, @Nullable android.os.CancellationSignal, @NonNull java.util.function.Consumer<android.view.translation.TranslationResponse>);
13967    method public final void updateTranslationCapability(@NonNull android.view.translation.TranslationCapability);
13968    field public static final String SERVICE_INTERFACE = "android.service.translation.TranslationService";
13969    field public static final String SERVICE_META_DATA = "android.translation_service";
13970  }
13971
13972}
13973
13974package android.service.trust {
13975
13976  public final class GrantTrustResult implements android.os.Parcelable {
13977    ctor public GrantTrustResult(int);
13978    method public int describeContents();
13979    method public int getStatus();
13980    method @NonNull public static String statusToString(int);
13981    method public void writeToParcel(@NonNull android.os.Parcel, int);
13982    field @NonNull public static final android.os.Parcelable.Creator<android.service.trust.GrantTrustResult> CREATOR;
13983    field public static final int STATUS_UNKNOWN = 0; // 0x0
13984    field public static final int STATUS_UNLOCKED_BY_GRANT = 1; // 0x1
13985  }
13986
13987  public class TrustAgentService extends android.app.Service {
13988    ctor public TrustAgentService();
13989    method public final void addEscrowToken(byte[], android.os.UserHandle);
13990    method @Deprecated public final void grantTrust(CharSequence, long, boolean);
13991    method @Deprecated public final void grantTrust(CharSequence, long, int);
13992    method public final void grantTrust(@NonNull CharSequence, long, int, @Nullable java.util.function.Consumer<android.service.trust.GrantTrustResult>);
13993    method public final void isEscrowTokenActive(long, android.os.UserHandle);
13994    method public final void lockUser();
13995    method public final android.os.IBinder onBind(android.content.Intent);
13996    method public boolean onConfigure(java.util.List<android.os.PersistableBundle>);
13997    method public void onDeviceLocked();
13998    method public void onDeviceUnlockLockout(long);
13999    method public void onDeviceUnlocked();
14000    method public void onEscrowTokenAdded(byte[], long, android.os.UserHandle);
14001    method public void onEscrowTokenRemoved(long, boolean);
14002    method public void onEscrowTokenStateReceived(long, int);
14003    method public void onTrustTimeout();
14004    method public void onUnlockAttempt(boolean);
14005    method public void onUserMayRequestUnlock();
14006    method public void onUserRequestedUnlock(boolean);
14007    method public final void removeEscrowToken(long, android.os.UserHandle);
14008    method public final void revokeTrust();
14009    method public final void setManagingTrust(boolean);
14010    method public final void showKeyguardErrorMessage(@NonNull CharSequence);
14011    method public final void unlockUserWithToken(long, byte[], android.os.UserHandle);
14012    field public static final int FLAG_GRANT_TRUST_DISMISS_KEYGUARD = 2; // 0x2
14013    field public static final int FLAG_GRANT_TRUST_DISPLAY_MESSAGE = 8; // 0x8
14014    field public static final int FLAG_GRANT_TRUST_INITIATED_BY_USER = 1; // 0x1
14015    field public static final int FLAG_GRANT_TRUST_TEMPORARY_AND_RENEWABLE = 4; // 0x4
14016    field public static final String SERVICE_INTERFACE = "android.service.trust.TrustAgentService";
14017    field public static final int TOKEN_STATE_ACTIVE = 1; // 0x1
14018    field public static final int TOKEN_STATE_INACTIVE = 0; // 0x0
14019    field public static final String TRUST_AGENT_META_DATA = "android.service.trust.trustagent";
14020  }
14021
14022}
14023
14024package android.service.voice {
14025
14026  public class AlwaysOnHotwordDetector implements android.service.voice.HotwordDetector {
14027    method @Nullable public android.content.Intent createEnrollIntent();
14028    method @Nullable public android.content.Intent createReEnrollIntent();
14029    method @Nullable public android.content.Intent createUnEnrollIntent();
14030    method @RequiresPermission(allOf={android.Manifest.permission.RECORD_AUDIO, android.Manifest.permission.CAPTURE_AUDIO_HOTWORD}) public int getParameter(int);
14031    method public int getSupportedAudioCapabilities();
14032    method public int getSupportedRecognitionModes();
14033    method @Nullable @RequiresPermission(allOf={android.Manifest.permission.RECORD_AUDIO, android.Manifest.permission.CAPTURE_AUDIO_HOTWORD}) public android.service.voice.AlwaysOnHotwordDetector.ModelParamRange queryParameter(int);
14034    method @RequiresPermission(allOf={android.Manifest.permission.RECORD_AUDIO, android.Manifest.permission.CAPTURE_AUDIO_HOTWORD}) public int setParameter(int, int);
14035    method @RequiresPermission(allOf={android.Manifest.permission.RECORD_AUDIO, android.Manifest.permission.CAPTURE_AUDIO_HOTWORD}) public boolean startRecognition(int, @NonNull byte[]);
14036    method @RequiresPermission(allOf={android.Manifest.permission.RECORD_AUDIO, android.Manifest.permission.CAPTURE_AUDIO_HOTWORD}) public boolean startRecognition(int);
14037    method @RequiresPermission(allOf={android.Manifest.permission.RECORD_AUDIO, android.Manifest.permission.CAPTURE_AUDIO_HOTWORD}) public boolean startRecognition();
14038    method public boolean startRecognition(@NonNull android.os.ParcelFileDescriptor, @NonNull android.media.AudioFormat, @Nullable android.os.PersistableBundle);
14039    method @RequiresPermission(allOf={android.Manifest.permission.RECORD_AUDIO, android.Manifest.permission.CAPTURE_AUDIO_HOTWORD}) public boolean stopRecognition();
14040    method public final void updateState(@Nullable android.os.PersistableBundle, @Nullable android.os.SharedMemory);
14041    field public static final int AUDIO_CAPABILITY_ECHO_CANCELLATION = 1; // 0x1
14042    field public static final int AUDIO_CAPABILITY_NOISE_SUPPRESSION = 2; // 0x2
14043    field public static final int MODEL_PARAM_THRESHOLD_FACTOR = 0; // 0x0
14044    field public static final int RECOGNITION_FLAG_ALLOW_MULTIPLE_TRIGGERS = 2; // 0x2
14045    field public static final int RECOGNITION_FLAG_CAPTURE_TRIGGER_AUDIO = 1; // 0x1
14046    field public static final int RECOGNITION_FLAG_ENABLE_AUDIO_ECHO_CANCELLATION = 4; // 0x4
14047    field public static final int RECOGNITION_FLAG_ENABLE_AUDIO_NOISE_SUPPRESSION = 8; // 0x8
14048    field public static final int RECOGNITION_FLAG_RUN_IN_BATTERY_SAVER = 16; // 0x10
14049    field public static final int RECOGNITION_MODE_USER_IDENTIFICATION = 2; // 0x2
14050    field public static final int RECOGNITION_MODE_VOICE_TRIGGER = 1; // 0x1
14051    field public static final int STATE_ERROR = 3; // 0x3
14052    field public static final int STATE_HARDWARE_UNAVAILABLE = -2; // 0xfffffffe
14053    field public static final int STATE_KEYPHRASE_ENROLLED = 2; // 0x2
14054    field public static final int STATE_KEYPHRASE_UNENROLLED = 1; // 0x1
14055    field @Deprecated public static final int STATE_KEYPHRASE_UNSUPPORTED = -1; // 0xffffffff
14056  }
14057
14058  public abstract static class AlwaysOnHotwordDetector.Callback implements android.service.voice.HotwordDetector.Callback {
14059    ctor public AlwaysOnHotwordDetector.Callback();
14060    method public abstract void onAvailabilityChanged(int);
14061    method public void onFailure(@NonNull android.service.voice.SoundTriggerFailure);
14062    method public void onHotwordDetectionServiceInitialized(int);
14063    method public void onHotwordDetectionServiceRestarted();
14064    method public void onRejected(@NonNull android.service.voice.HotwordRejectedResult);
14065  }
14066
14067  public static class AlwaysOnHotwordDetector.EventPayload {
14068    method @Nullable public android.os.ParcelFileDescriptor getAudioStream();
14069    method @Nullable public android.media.AudioFormat getCaptureAudioFormat();
14070    method @Nullable public byte[] getData();
14071    method public int getDataFormat();
14072    method public long getHalEventReceivedMillis();
14073    method @Nullable public android.service.voice.HotwordDetectedResult getHotwordDetectedResult();
14074    method @NonNull public java.util.List<android.hardware.soundtrigger.SoundTrigger.KeyphraseRecognitionExtra> getKeyphraseRecognitionExtras();
14075    method @Deprecated @Nullable public byte[] getTriggerAudio();
14076    method @FlaggedApi("android.app.wearable.enable_hotword_wearable_sensing_api") public boolean isRecognitionStopped();
14077    field public static final int DATA_FORMAT_RAW = 0; // 0x0
14078    field public static final int DATA_FORMAT_TRIGGER_AUDIO = 1; // 0x1
14079  }
14080
14081  public static final class AlwaysOnHotwordDetector.ModelParamRange {
14082    method public int getEnd();
14083    method public int getStart();
14084  }
14085
14086  public final class FailureSuggestedAction {
14087    field public static final int DISABLE_DETECTION = 2; // 0x2
14088    field public static final int NONE = 1; // 0x1
14089    field public static final int RECREATE_DETECTOR = 3; // 0x3
14090    field public static final int RESTART_RECOGNITION = 4; // 0x4
14091    field public static final int UNKNOWN = 0; // 0x0
14092  }
14093
14094  public final class HotwordAudioStream implements android.os.Parcelable {
14095    method public int describeContents();
14096    method @NonNull public android.media.AudioFormat getAudioFormat();
14097    method @NonNull public android.os.ParcelFileDescriptor getAudioStreamParcelFileDescriptor();
14098    method @NonNull public byte[] getInitialAudio();
14099    method @NonNull public android.os.PersistableBundle getMetadata();
14100    method @Nullable public android.media.AudioTimestamp getTimestamp();
14101    method public void writeToParcel(@NonNull android.os.Parcel, int);
14102    field @NonNull public static final android.os.Parcelable.Creator<android.service.voice.HotwordAudioStream> CREATOR;
14103    field public static final String KEY_AUDIO_STREAM_COPY_BUFFER_LENGTH_BYTES = "android.service.voice.key.AUDIO_STREAM_COPY_BUFFER_LENGTH_BYTES";
14104  }
14105
14106  public static final class HotwordAudioStream.Builder {
14107    ctor public HotwordAudioStream.Builder(@NonNull android.media.AudioFormat, @NonNull android.os.ParcelFileDescriptor);
14108    method @NonNull public android.service.voice.HotwordAudioStream build();
14109    method @NonNull public android.service.voice.HotwordAudioStream.Builder setAudioFormat(@NonNull android.media.AudioFormat);
14110    method @NonNull public android.service.voice.HotwordAudioStream.Builder setAudioStreamParcelFileDescriptor(@NonNull android.os.ParcelFileDescriptor);
14111    method @NonNull public android.service.voice.HotwordAudioStream.Builder setInitialAudio(@NonNull byte[]);
14112    method @NonNull public android.service.voice.HotwordAudioStream.Builder setMetadata(@NonNull android.os.PersistableBundle);
14113    method @NonNull public android.service.voice.HotwordAudioStream.Builder setTimestamp(@NonNull android.media.AudioTimestamp);
14114  }
14115
14116  public final class HotwordDetectedResult implements android.os.Parcelable {
14117    method public int describeContents();
14118    method public int getAudioChannel();
14119    method @NonNull public java.util.List<android.service.voice.HotwordAudioStream> getAudioStreams();
14120    method public int getBackgroundAudioPower();
14121    method public int getConfidenceLevel();
14122    method @NonNull public android.os.PersistableBundle getExtras();
14123    method public int getHotwordDurationMillis();
14124    method public int getHotwordOffsetMillis();
14125    method public int getHotwordPhraseId();
14126    method public static int getMaxBackgroundAudioPower();
14127    method public static int getMaxBundleSize();
14128    method public static int getMaxHotwordPhraseId();
14129    method public static int getMaxScore();
14130    method public static int getMaxSpeakerId();
14131    method @Nullable public android.media.MediaSyncEvent getMediaSyncEvent();
14132    method public int getPersonalizedScore();
14133    method public int getProximity();
14134    method public int getScore();
14135    method public int getSpeakerId();
14136    method public boolean isHotwordDetectionPersonalized();
14137    method public void writeToParcel(@NonNull android.os.Parcel, int);
14138    field public static final int AUDIO_CHANNEL_UNSET = -1; // 0xffffffff
14139    field public static final int BACKGROUND_AUDIO_POWER_UNSET = -1; // 0xffffffff
14140    field public static final int CONFIDENCE_LEVEL_HIGH = 5; // 0x5
14141    field public static final int CONFIDENCE_LEVEL_LOW = 1; // 0x1
14142    field public static final int CONFIDENCE_LEVEL_LOW_MEDIUM = 2; // 0x2
14143    field public static final int CONFIDENCE_LEVEL_MEDIUM = 3; // 0x3
14144    field public static final int CONFIDENCE_LEVEL_MEDIUM_HIGH = 4; // 0x4
14145    field public static final int CONFIDENCE_LEVEL_NONE = 0; // 0x0
14146    field public static final int CONFIDENCE_LEVEL_VERY_HIGH = 6; // 0x6
14147    field @NonNull public static final android.os.Parcelable.Creator<android.service.voice.HotwordDetectedResult> CREATOR;
14148    field public static final int HOTWORD_OFFSET_UNSET = -1; // 0xffffffff
14149    field public static final int PROXIMITY_FAR = 2; // 0x2
14150    field public static final int PROXIMITY_NEAR = 1; // 0x1
14151    field public static final int PROXIMITY_UNKNOWN = -1; // 0xffffffff
14152  }
14153
14154  public static final class HotwordDetectedResult.Builder {
14155    ctor public HotwordDetectedResult.Builder();
14156    method @NonNull public android.service.voice.HotwordDetectedResult build();
14157    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setAudioChannel(int);
14158    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setAudioStreams(@NonNull java.util.List<android.service.voice.HotwordAudioStream>);
14159    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setBackgroundAudioPower(int);
14160    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setConfidenceLevel(int);
14161    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setExtras(@NonNull android.os.PersistableBundle);
14162    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setHotwordDetectionPersonalized(boolean);
14163    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setHotwordDurationMillis(int);
14164    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setHotwordOffsetMillis(int);
14165    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setHotwordPhraseId(int);
14166    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setMediaSyncEvent(@NonNull android.media.MediaSyncEvent);
14167    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setPersonalizedScore(int);
14168    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setScore(int);
14169    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setSpeakerId(int);
14170  }
14171
14172  public abstract class HotwordDetectionService extends android.app.Service implements android.service.voice.SandboxedDetectionInitializer {
14173    ctor public HotwordDetectionService();
14174    method @Deprecated public static int getMaxCustomInitializationStatus();
14175    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
14176    method public void onDetect(@NonNull android.service.voice.AlwaysOnHotwordDetector.EventPayload, long, @NonNull android.service.voice.HotwordDetectionService.Callback);
14177    method public void onDetect(@NonNull android.service.voice.HotwordDetectionService.Callback);
14178    method public void onDetect(@NonNull android.os.ParcelFileDescriptor, @NonNull android.media.AudioFormat, @Nullable android.os.PersistableBundle, @NonNull android.service.voice.HotwordDetectionService.Callback);
14179    method public void onStopDetection();
14180    method public void onUpdateState(@Nullable android.os.PersistableBundle, @Nullable android.os.SharedMemory, long, @Nullable java.util.function.IntConsumer);
14181    field @Deprecated public static final int INITIALIZATION_STATUS_SUCCESS = 0; // 0x0
14182    field @Deprecated public static final int INITIALIZATION_STATUS_UNKNOWN = 100; // 0x64
14183    field @FlaggedApi("android.app.wearable.enable_hotword_wearable_sensing_api") public static final String KEY_SYSTEM_WILL_CLOSE_AUDIO_STREAM_AFTER_CALLBACK = "android.service.voice.HotwordDetectionService.KEY_SYSTEM_WILL_CLOSE_AUDIO_STREAM_AFTER_CALLBACK";
14184    field public static final String SERVICE_INTERFACE = "android.service.voice.HotwordDetectionService";
14185  }
14186
14187  public static final class HotwordDetectionService.Callback {
14188    method public void onDetected(@NonNull android.service.voice.HotwordDetectedResult);
14189    method public void onRejected(@NonNull android.service.voice.HotwordRejectedResult);
14190  }
14191
14192  public final class HotwordDetectionServiceFailure implements android.os.Parcelable {
14193    method public int describeContents();
14194    method public int getErrorCode();
14195    method @NonNull public String getErrorMessage();
14196    method public int getSuggestedAction();
14197    method public void writeToParcel(@NonNull android.os.Parcel, int);
14198    field @NonNull public static final android.os.Parcelable.Creator<android.service.voice.HotwordDetectionServiceFailure> CREATOR;
14199    field public static final int ERROR_CODE_BINDING_DIED = 2; // 0x2
14200    field public static final int ERROR_CODE_BIND_FAILURE = 1; // 0x1
14201    field public static final int ERROR_CODE_COPY_AUDIO_DATA_FAILURE = 3; // 0x3
14202    field public static final int ERROR_CODE_DETECT_TIMEOUT = 4; // 0x4
14203    field public static final int ERROR_CODE_ON_DETECTED_SECURITY_EXCEPTION = 5; // 0x5
14204    field public static final int ERROR_CODE_ON_DETECTED_STREAM_COPY_FAILURE = 6; // 0x6
14205    field public static final int ERROR_CODE_REMOTE_EXCEPTION = 7; // 0x7
14206    field @FlaggedApi("android.service.voice.flags.allow_training_data_egress_from_hds") public static final int ERROR_CODE_SHUTDOWN_HDS_ON_VOICE_ACTIVATION_OP_DISABLED = 10; // 0xa
14207    field public static final int ERROR_CODE_UNKNOWN = 0; // 0x0
14208  }
14209
14210  public interface HotwordDetector {
14211    method public default void destroy();
14212    method @RequiresPermission(allOf={android.Manifest.permission.RECORD_AUDIO, android.Manifest.permission.CAPTURE_AUDIO_HOTWORD}) public boolean startRecognition();
14213    method public boolean startRecognition(@NonNull android.os.ParcelFileDescriptor, @NonNull android.media.AudioFormat, @Nullable android.os.PersistableBundle);
14214    method public boolean stopRecognition();
14215    method public void updateState(@Nullable android.os.PersistableBundle, @Nullable android.os.SharedMemory);
14216  }
14217
14218  public static interface HotwordDetector.Callback {
14219    method public void onDetected(@NonNull android.service.voice.AlwaysOnHotwordDetector.EventPayload);
14220    method @Deprecated public void onError();
14221    method public default void onFailure(@NonNull android.service.voice.HotwordDetectionServiceFailure);
14222    method public void onHotwordDetectionServiceInitialized(int);
14223    method public void onHotwordDetectionServiceRestarted();
14224    method public void onRecognitionPaused();
14225    method public void onRecognitionResumed();
14226    method public void onRejected(@NonNull android.service.voice.HotwordRejectedResult);
14227    method public default void onUnknownFailure(@NonNull String);
14228  }
14229
14230  public final class HotwordRejectedResult implements android.os.Parcelable {
14231    method public int describeContents();
14232    method public int getConfidenceLevel();
14233    method public void writeToParcel(@NonNull android.os.Parcel, int);
14234    field public static final int CONFIDENCE_LEVEL_HIGH = 3; // 0x3
14235    field public static final int CONFIDENCE_LEVEL_LOW = 1; // 0x1
14236    field public static final int CONFIDENCE_LEVEL_MEDIUM = 2; // 0x2
14237    field public static final int CONFIDENCE_LEVEL_NONE = 0; // 0x0
14238    field @FlaggedApi("android.service.voice.flags.allow_hotword_bump_egress") public static final int CONFIDENCE_LEVEL_VERY_HIGH = 4; // 0x4
14239    field @NonNull public static final android.os.Parcelable.Creator<android.service.voice.HotwordRejectedResult> CREATOR;
14240  }
14241
14242  public static final class HotwordRejectedResult.Builder {
14243    ctor public HotwordRejectedResult.Builder();
14244    method @NonNull public android.service.voice.HotwordRejectedResult build();
14245    method @NonNull public android.service.voice.HotwordRejectedResult.Builder setConfidenceLevel(int);
14246  }
14247
14248  public interface SandboxedDetectionInitializer {
14249    method public static int getMaxCustomInitializationStatus();
14250    method public void onUpdateState(@Nullable android.os.PersistableBundle, @Nullable android.os.SharedMemory, long, @Nullable java.util.function.IntConsumer);
14251    field public static final int INITIALIZATION_STATUS_SUCCESS = 0; // 0x0
14252    field public static final int INITIALIZATION_STATUS_UNKNOWN = 100; // 0x64
14253  }
14254
14255  public final class SoundTriggerFailure implements android.os.Parcelable {
14256    method public int describeContents();
14257    method public int getErrorCode();
14258    method @NonNull public String getErrorMessage();
14259    method public int getSuggestedAction();
14260    method public void writeToParcel(@NonNull android.os.Parcel, int);
14261    field @NonNull public static final android.os.Parcelable.Creator<android.service.voice.SoundTriggerFailure> CREATOR;
14262    field public static final int ERROR_CODE_MODULE_DIED = 1; // 0x1
14263    field public static final int ERROR_CODE_RECOGNITION_RESUME_FAILED = 2; // 0x2
14264    field public static final int ERROR_CODE_UNEXPECTED_PREEMPTION = 3; // 0x3
14265    field public static final int ERROR_CODE_UNKNOWN = 0; // 0x0
14266  }
14267
14268  public final class VisualQueryAttentionResult implements android.os.Parcelable {
14269    method public int describeContents();
14270    method @IntRange(from=1, to=100) public int getEngagementLevel();
14271    method public int getInteractionIntention();
14272    method public void writeToParcel(@NonNull android.os.Parcel, int);
14273    field @NonNull public static final android.os.Parcelable.Creator<android.service.voice.VisualQueryAttentionResult> CREATOR;
14274    field public static final int INTERACTION_INTENTION_AUDIO_VISUAL = 0; // 0x0
14275    field public static final int INTERACTION_INTENTION_VISUAL_ACCESSIBILITY = 1; // 0x1
14276  }
14277
14278  public static final class VisualQueryAttentionResult.Builder {
14279    ctor public VisualQueryAttentionResult.Builder();
14280    method @NonNull public android.service.voice.VisualQueryAttentionResult build();
14281    method @NonNull public android.service.voice.VisualQueryAttentionResult.Builder setEngagementLevel(@IntRange(from=1, to=100) int);
14282    method @NonNull public android.service.voice.VisualQueryAttentionResult.Builder setInteractionIntention(int);
14283  }
14284
14285  public final class VisualQueryDetectedResult implements android.os.Parcelable {
14286    method public int describeContents();
14287    method @Nullable public byte[] getAccessibilityDetectionData();
14288    method public static int getMaxSpeakerId();
14289    method @NonNull public String getPartialQuery();
14290    method public int getSpeakerId();
14291    method public void writeToParcel(@NonNull android.os.Parcel, int);
14292    field @NonNull public static final android.os.Parcelable.Creator<android.service.voice.VisualQueryDetectedResult> CREATOR;
14293  }
14294
14295  public static final class VisualQueryDetectedResult.Builder {
14296    ctor public VisualQueryDetectedResult.Builder();
14297    method @NonNull public android.service.voice.VisualQueryDetectedResult build();
14298    method @NonNull public android.service.voice.VisualQueryDetectedResult.Builder setAccessibilityDetectionData(@NonNull byte...);
14299    method @NonNull public android.service.voice.VisualQueryDetectedResult.Builder setPartialQuery(@NonNull String);
14300    method @NonNull public android.service.voice.VisualQueryDetectedResult.Builder setSpeakerId(int);
14301  }
14302
14303  public abstract class VisualQueryDetectionService extends android.app.Service implements android.service.voice.SandboxedDetectionInitializer {
14304    ctor public VisualQueryDetectionService();
14305    method public final void finishQuery() throws java.lang.IllegalStateException;
14306    method public final void gainedAttention();
14307    method public final void gainedAttention(@NonNull android.service.voice.VisualQueryAttentionResult);
14308    method public final void lostAttention();
14309    method public final void lostAttention(int);
14310    method @Nullable public android.os.IBinder onBind(@NonNull android.content.Intent);
14311    method public void onStartDetection();
14312    method public void onStopDetection();
14313    method public void onUpdateState(@Nullable android.os.PersistableBundle, @Nullable android.os.SharedMemory, long, @Nullable java.util.function.IntConsumer);
14314    method public final void rejectQuery() throws java.lang.IllegalStateException;
14315    method public final void streamQuery(@NonNull String) throws java.lang.IllegalStateException;
14316    method public final void streamQuery(@NonNull android.service.voice.VisualQueryDetectedResult);
14317    field public static final String SERVICE_INTERFACE = "android.service.voice.VisualQueryDetectionService";
14318  }
14319
14320  public final class VisualQueryDetectionServiceFailure implements android.os.Parcelable {
14321    method public int describeContents();
14322    method public int getErrorCode();
14323    method @NonNull public String getErrorMessage();
14324    method public int getSuggestedAction();
14325    method public void writeToParcel(@NonNull android.os.Parcel, int);
14326    field @NonNull public static final android.os.Parcelable.Creator<android.service.voice.VisualQueryDetectionServiceFailure> CREATOR;
14327    field public static final int ERROR_CODE_BINDING_DIED = 2; // 0x2
14328    field public static final int ERROR_CODE_BIND_FAILURE = 1; // 0x1
14329    field public static final int ERROR_CODE_ILLEGAL_ATTENTION_STATE = 3; // 0x3
14330    field public static final int ERROR_CODE_ILLEGAL_STREAMING_STATE = 4; // 0x4
14331    field public static final int ERROR_CODE_REMOTE_EXCEPTION = 5; // 0x5
14332    field public static final int ERROR_CODE_UNKNOWN = 0; // 0x0
14333  }
14334
14335  public class VisualQueryDetector {
14336    method public void clearAccessibilityDetectionEnabledListener();
14337    method public void destroy();
14338    method public boolean isAccessibilityDetectionEnabled();
14339    method public void setAccessibilityDetectionEnabledListener(@NonNull java.util.function.Consumer<java.lang.Boolean>);
14340    method @RequiresPermission(allOf={android.Manifest.permission.CAMERA, android.Manifest.permission.RECORD_AUDIO}) public boolean startRecognition();
14341    method @RequiresPermission(allOf={android.Manifest.permission.CAMERA, android.Manifest.permission.RECORD_AUDIO}) public boolean stopRecognition();
14342    method public void updateState(@Nullable android.os.PersistableBundle, @Nullable android.os.SharedMemory);
14343  }
14344
14345  public static interface VisualQueryDetector.Callback {
14346    method public void onFailure(@NonNull android.service.voice.VisualQueryDetectionServiceFailure);
14347    method public void onQueryDetected(@NonNull String);
14348    method public default void onQueryDetected(@NonNull android.service.voice.VisualQueryDetectedResult);
14349    method public void onQueryFinished();
14350    method public void onQueryRejected();
14351    method public void onUnknownFailure(@NonNull String);
14352    method public void onVisualQueryDetectionServiceInitialized(int);
14353    method public void onVisualQueryDetectionServiceRestarted();
14354  }
14355
14356  public class VoiceInteractionService extends android.app.Service {
14357    method @Deprecated @NonNull public final android.service.voice.AlwaysOnHotwordDetector createAlwaysOnHotwordDetector(String, java.util.Locale, android.service.voice.AlwaysOnHotwordDetector.Callback);
14358    method @NonNull public final android.service.voice.AlwaysOnHotwordDetector createAlwaysOnHotwordDetector(@NonNull String, @NonNull java.util.Locale, @NonNull java.util.concurrent.Executor, @NonNull android.service.voice.AlwaysOnHotwordDetector.Callback);
14359    method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_HOTWORD_DETECTION) public final android.service.voice.AlwaysOnHotwordDetector createAlwaysOnHotwordDetector(String, java.util.Locale, @Nullable android.os.PersistableBundle, @Nullable android.os.SharedMemory, android.service.voice.AlwaysOnHotwordDetector.Callback);
14360    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_HOTWORD_DETECTION) public final android.service.voice.AlwaysOnHotwordDetector createAlwaysOnHotwordDetector(@NonNull String, @NonNull java.util.Locale, @Nullable android.os.PersistableBundle, @Nullable android.os.SharedMemory, @NonNull java.util.concurrent.Executor, @NonNull android.service.voice.AlwaysOnHotwordDetector.Callback);
14361    method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_HOTWORD_DETECTION) public final android.service.voice.HotwordDetector createHotwordDetector(@Nullable android.os.PersistableBundle, @Nullable android.os.SharedMemory, @NonNull android.service.voice.HotwordDetector.Callback);
14362    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_HOTWORD_DETECTION) public final android.service.voice.HotwordDetector createHotwordDetector(@Nullable android.os.PersistableBundle, @Nullable android.os.SharedMemory, @NonNull java.util.concurrent.Executor, @NonNull android.service.voice.HotwordDetector.Callback);
14363    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_VOICE_KEYPHRASES) public final android.media.voice.KeyphraseModelManager createKeyphraseModelManager();
14364    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_HOTWORD_DETECTION) public final android.service.voice.VisualQueryDetector createVisualQueryDetector(@Nullable android.os.PersistableBundle, @Nullable android.os.SharedMemory, @NonNull java.util.concurrent.Executor, @NonNull android.service.voice.VisualQueryDetector.Callback);
14365  }
14366
14367}
14368
14369package android.service.wallpaper {
14370
14371  public class WallpaperService.Engine {
14372    method public boolean isInAmbientMode();
14373    method @MainThread public void onAmbientModeChanged(boolean, long);
14374  }
14375
14376}
14377
14378package android.service.wallpapereffectsgeneration {
14379
14380  public abstract class WallpaperEffectsGenerationService extends android.app.Service {
14381    ctor public WallpaperEffectsGenerationService();
14382    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
14383    method @MainThread public abstract void onGenerateCinematicEffect(@NonNull android.app.wallpapereffectsgeneration.CinematicEffectRequest);
14384    method public final void returnCinematicEffectResponse(@NonNull android.app.wallpapereffectsgeneration.CinematicEffectResponse);
14385    field public static final String SERVICE_INTERFACE = "android.service.wallpapereffectsgeneration.WallpaperEffectsGenerationService";
14386  }
14387
14388}
14389
14390package android.service.wearable {
14391
14392  public interface WearableSensingDataRequester {
14393    method public void requestData(@NonNull android.app.wearable.WearableSensingDataRequest, @NonNull java.util.function.Consumer<java.lang.Integer>);
14394    field public static final int STATUS_OBSERVER_CANCELLED = 2; // 0x2
14395    field public static final int STATUS_SUCCESS = 1; // 0x1
14396    field public static final int STATUS_TOO_FREQUENT = 4; // 0x4
14397    field public static final int STATUS_TOO_LARGE = 3; // 0x3
14398    field public static final int STATUS_UNKNOWN = 0; // 0x0
14399  }
14400
14401  public abstract class WearableSensingService extends android.app.Service {
14402    ctor public WearableSensingService();
14403    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
14404    method @BinderThread public abstract void onDataProvided(@NonNull android.os.PersistableBundle, @Nullable android.os.SharedMemory, @NonNull java.util.function.Consumer<java.lang.Integer>);
14405    method @BinderThread public void onDataRequestObserverRegistered(int, @NonNull String, @NonNull android.service.wearable.WearableSensingDataRequester, @NonNull java.util.function.Consumer<java.lang.Integer>);
14406    method @BinderThread public void onDataRequestObserverUnregistered(int, @NonNull String, @NonNull android.service.wearable.WearableSensingDataRequester, @NonNull java.util.function.Consumer<java.lang.Integer>);
14407    method @BinderThread public abstract void onDataStreamProvided(@NonNull android.os.ParcelFileDescriptor, @NonNull java.util.function.Consumer<java.lang.Integer>);
14408    method @BinderThread public abstract void onQueryServiceStatus(@NonNull java.util.Set<java.lang.Integer>, @NonNull String, @NonNull java.util.function.Consumer<android.service.ambientcontext.AmbientContextDetectionServiceStatus>);
14409    method @FlaggedApi("android.app.wearable.enable_provide_read_only_pfd") @BinderThread public void onReadOnlyParcelFileDescriptorProvided(@NonNull android.os.ParcelFileDescriptor, @NonNull android.os.PersistableBundle, @NonNull java.util.function.Consumer<java.lang.Integer>);
14410    method @Deprecated @FlaggedApi("android.app.wearable.enable_concurrent_wearable_connections") @BinderThread public void onSecureConnectionProvided(@NonNull android.os.ParcelFileDescriptor, @NonNull java.util.function.Consumer<java.lang.Integer>);
14411    method @FlaggedApi("android.app.wearable.enable_concurrent_wearable_connections") @BinderThread public void onSecureConnectionProvided(@NonNull android.os.ParcelFileDescriptor, @NonNull android.os.PersistableBundle, @NonNull java.util.function.Consumer<java.lang.Integer>);
14412    method @BinderThread public abstract void onStartDetection(@NonNull android.app.ambientcontext.AmbientContextEventRequest, @NonNull String, @NonNull java.util.function.Consumer<android.service.ambientcontext.AmbientContextDetectionServiceStatus>, @NonNull java.util.function.Consumer<android.service.ambientcontext.AmbientContextDetectionResult>);
14413    method @FlaggedApi("android.app.wearable.enable_hotword_wearable_sensing_api") @BinderThread public void onStartHotwordRecognition(@NonNull java.util.function.Consumer<android.service.voice.HotwordAudioStream>, @NonNull java.util.function.Consumer<java.lang.Integer>);
14414    method public abstract void onStopDetection(@NonNull String);
14415    method @FlaggedApi("android.app.wearable.enable_hotword_wearable_sensing_api") @BinderThread public void onStopHotwordAudioStream();
14416    method @FlaggedApi("android.app.wearable.enable_hotword_wearable_sensing_api") @BinderThread public void onStopHotwordRecognition(@NonNull java.util.function.Consumer<java.lang.Integer>);
14417    method @FlaggedApi("android.app.wearable.enable_hotword_wearable_sensing_api") @BinderThread public void onValidatedByHotwordDetectionService();
14418    field public static final String SERVICE_INTERFACE = "android.service.wearable.WearableSensingService";
14419  }
14420
14421}
14422
14423package android.telecom {
14424
14425  @Deprecated public class AudioState implements android.os.Parcelable {
14426    ctor @Deprecated public AudioState(boolean, int, int);
14427    ctor @Deprecated public AudioState(android.telecom.AudioState);
14428    ctor @Deprecated public AudioState(android.telecom.CallAudioState);
14429    method @Deprecated public static String audioRouteToString(int);
14430    method @Deprecated public int describeContents();
14431    method @Deprecated public int getRoute();
14432    method @Deprecated public int getSupportedRouteMask();
14433    method @Deprecated public boolean isMuted();
14434    method @Deprecated public void writeToParcel(android.os.Parcel, int);
14435    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.telecom.AudioState> CREATOR;
14436    field @Deprecated public static final int ROUTE_BLUETOOTH = 2; // 0x2
14437    field @Deprecated public static final int ROUTE_EARPIECE = 1; // 0x1
14438    field @Deprecated public static final int ROUTE_SPEAKER = 8; // 0x8
14439    field @Deprecated public static final int ROUTE_WIRED_HEADSET = 4; // 0x4
14440    field @Deprecated public static final int ROUTE_WIRED_OR_EARPIECE = 5; // 0x5
14441  }
14442
14443  public final class BluetoothCallQualityReport implements android.os.Parcelable {
14444    method public int describeContents();
14445    method @IntRange(from=0) public int getNegativeAcknowledgementCount();
14446    method @IntRange(from=0) public int getPacketsNotReceivedCount();
14447    method @IntRange(from=0) public int getRetransmittedPacketsCount();
14448    method @IntRange(from=0xffffff81, to=20) public int getRssiDbm();
14449    method public long getSentTimestampMillis();
14450    method public int getSnrDb();
14451    method public boolean isChoppyVoice();
14452    method public void writeToParcel(@NonNull android.os.Parcel, int);
14453    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.BluetoothCallQualityReport> CREATOR;
14454    field public static final String EVENT_BLUETOOTH_CALL_QUALITY_REPORT = "android.telecom.event.BLUETOOTH_CALL_QUALITY_REPORT";
14455    field public static final String EXTRA_BLUETOOTH_CALL_QUALITY_REPORT = "android.telecom.extra.BLUETOOTH_CALL_QUALITY_REPORT";
14456  }
14457
14458  public static final class BluetoothCallQualityReport.Builder {
14459    ctor public BluetoothCallQualityReport.Builder();
14460    method @NonNull public android.telecom.BluetoothCallQualityReport build();
14461    method @NonNull public android.telecom.BluetoothCallQualityReport.Builder setChoppyVoice(boolean);
14462    method @NonNull public android.telecom.BluetoothCallQualityReport.Builder setNegativeAcknowledgementCount(int);
14463    method @NonNull public android.telecom.BluetoothCallQualityReport.Builder setPacketsNotReceivedCount(int);
14464    method @NonNull public android.telecom.BluetoothCallQualityReport.Builder setRetransmittedPacketsCount(int);
14465    method @NonNull public android.telecom.BluetoothCallQualityReport.Builder setRssiDbm(int);
14466    method @NonNull public android.telecom.BluetoothCallQualityReport.Builder setSentTimestampMillis(long);
14467    method @NonNull public android.telecom.BluetoothCallQualityReport.Builder setSnrDb(int);
14468  }
14469
14470  public final class Call {
14471    method @Deprecated public void addListener(android.telecom.Call.Listener);
14472    method public void enterBackgroundAudioProcessing();
14473    method public void exitBackgroundAudioProcessing(boolean);
14474    method @Deprecated public void removeListener(android.telecom.Call.Listener);
14475    field @Deprecated public static final int STATE_PRE_DIAL_WAIT = 8; // 0x8
14476  }
14477
14478  @Deprecated public abstract static class Call.Listener extends android.telecom.Call.Callback {
14479    ctor @Deprecated public Call.Listener();
14480  }
14481
14482  public abstract class CallDiagnosticService extends android.app.Service {
14483    ctor public CallDiagnosticService();
14484    method @NonNull public java.util.concurrent.Executor getExecutor();
14485    method @Nullable public android.os.IBinder onBind(@NonNull android.content.Intent);
14486    method public abstract void onBluetoothCallQualityReportReceived(@NonNull android.telecom.BluetoothCallQualityReport);
14487    method public abstract void onCallAudioStateChanged(@NonNull android.telecom.CallAudioState);
14488    method @NonNull public abstract android.telecom.CallDiagnostics onInitializeCallDiagnostics(@NonNull android.telecom.Call.Details);
14489    method public abstract void onRemoveCallDiagnostics(@NonNull android.telecom.CallDiagnostics);
14490    field public static final String SERVICE_INTERFACE = "android.telecom.CallDiagnosticService";
14491  }
14492
14493  public abstract class CallDiagnostics {
14494    ctor public CallDiagnostics();
14495    method public final void clearDiagnosticMessage(int);
14496    method public final void displayDiagnosticMessage(int, @NonNull CharSequence);
14497    method public abstract void onCallDetailsChanged(@NonNull android.telecom.Call.Details);
14498    method @Nullable public abstract CharSequence onCallDisconnected(int, int);
14499    method @Nullable public abstract CharSequence onCallDisconnected(@NonNull android.telephony.ims.ImsReasonInfo);
14500    method public abstract void onCallQualityReceived(@NonNull android.telephony.CallQuality);
14501    method public abstract void onReceiveDeviceToDeviceMessage(int, int);
14502    method public final void sendDeviceToDeviceMessage(int, int);
14503    field public static final int BATTERY_STATE_CHARGING = 3; // 0x3
14504    field public static final int BATTERY_STATE_GOOD = 2; // 0x2
14505    field public static final int BATTERY_STATE_LOW = 1; // 0x1
14506    field public static final int COVERAGE_GOOD = 2; // 0x2
14507    field public static final int COVERAGE_POOR = 1; // 0x1
14508    field public static final int MESSAGE_CALL_AUDIO_CODEC = 2; // 0x2
14509    field public static final int MESSAGE_CALL_NETWORK_TYPE = 1; // 0x1
14510    field public static final int MESSAGE_DEVICE_BATTERY_STATE = 3; // 0x3
14511    field public static final int MESSAGE_DEVICE_NETWORK_COVERAGE = 4; // 0x4
14512  }
14513
14514  public static class CallScreeningService.CallResponse.Builder {
14515    method @NonNull @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_OUTPUT) public android.telecom.CallScreeningService.CallResponse.Builder setShouldScreenCallViaAudioProcessing(boolean);
14516  }
14517
14518  public abstract class CallStreamingService extends android.app.Service {
14519    ctor public CallStreamingService();
14520    method @Nullable public android.os.IBinder onBind(@NonNull android.content.Intent);
14521    method public void onCallStreamingStarted(@NonNull android.telecom.StreamingCall);
14522    method public void onCallStreamingStateChanged(int);
14523    method public void onCallStreamingStopped();
14524    field public static final String SERVICE_INTERFACE = "android.telecom.CallStreamingService";
14525    field public static final int STREAMING_FAILED_ALREADY_STREAMING = 1; // 0x1
14526    field public static final int STREAMING_FAILED_NO_SENDER = 2; // 0x2
14527    field public static final int STREAMING_FAILED_SENDER_BINDING_ERROR = 3; // 0x3
14528    field public static final int STREAMING_FAILED_UNKNOWN = 0; // 0x0
14529  }
14530
14531  public abstract class Conference extends android.telecom.Conferenceable {
14532    method @Deprecated public final android.telecom.AudioState getAudioState();
14533    method @Deprecated public final long getConnectTimeMillis();
14534    method public android.telecom.Connection getPrimaryConnection();
14535    method @NonNull public final String getTelecomCallId();
14536    method @Deprecated public void onAudioStateChanged(android.telecom.AudioState);
14537    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public final void setAddress(@NonNull android.net.Uri, int);
14538    method public final void setCallerDisplayName(@NonNull String, int);
14539    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setConferenceState(boolean);
14540    method @Deprecated public final void setConnectTimeMillis(long);
14541  }
14542
14543  public abstract class Connection extends android.telecom.Conferenceable {
14544    method @Deprecated public final android.telecom.AudioState getAudioState();
14545    method @FlaggedApi("com.android.server.telecom.flags.telecom_resolve_hidden_dependencies") public final int getCallDirection();
14546    method @IntRange(from=0) public final long getConnectTimeMillis();
14547    method public final long getConnectionStartElapsedRealtimeMillis();
14548    method @Nullable public android.telecom.PhoneAccountHandle getPhoneAccountHandle();
14549    method @Nullable public final String getTelecomCallId();
14550    method @Deprecated public void onAudioStateChanged(android.telecom.AudioState);
14551    method @RequiresPermission(android.Manifest.permission.READ_CONTACTS) public void onCallFilteringCompleted(@NonNull android.telecom.Connection.CallFilteringCompletionInfo);
14552    method public final void resetConnectionTime();
14553    method public void setCallDirection(int);
14554    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public final void setConnectTimeMillis(@IntRange(from=0) long);
14555    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public final void setConnectionStartElapsedRealtimeMillis(long);
14556    method public void setPhoneAccountHandle(@NonNull android.telecom.PhoneAccountHandle);
14557    method public void setTelecomCallId(@NonNull String);
14558    field public static final int CAPABILITY_CONFERENCE_HAS_NO_CHILDREN = 2097152; // 0x200000
14559    field public static final int CAPABILITY_SPEED_UP_MT_AUDIO = 262144; // 0x40000
14560    field @FlaggedApi("com.android.server.telecom.flags.telecom_resolve_hidden_dependencies") public static final String EVENT_CALL_QUALITY_REPORT = "android.telecom.event.CALL_QUALITY_REPORT";
14561    field public static final String EVENT_DEVICE_TO_DEVICE_MESSAGE = "android.telecom.event.DEVICE_TO_DEVICE_MESSAGE";
14562    field @FlaggedApi("com.android.server.telecom.flags.telecom_resolve_hidden_dependencies") public static final String EXTRA_CALL_QUALITY_REPORT = "android.telecom.extra.CALL_QUALITY_REPORT";
14563    field public static final String EXTRA_DEVICE_TO_DEVICE_MESSAGE_TYPE = "android.telecom.extra.DEVICE_TO_DEVICE_MESSAGE_TYPE";
14564    field public static final String EXTRA_DEVICE_TO_DEVICE_MESSAGE_VALUE = "android.telecom.extra.DEVICE_TO_DEVICE_MESSAGE_VALUE";
14565    field public static final String EXTRA_DISABLE_ADD_CALL = "android.telecom.extra.DISABLE_ADD_CALL";
14566    field public static final int PROPERTY_EMERGENCY_CALLBACK_MODE = 1; // 0x1
14567    field public static final int PROPERTY_GENERIC_CONFERENCE = 2; // 0x2
14568    field public static final int PROPERTY_IS_DOWNGRADED_CONFERENCE = 64; // 0x40
14569    field public static final int PROPERTY_REMOTELY_HOSTED = 2048; // 0x800
14570  }
14571
14572  public static final class Connection.CallFilteringCompletionInfo implements android.os.Parcelable {
14573    ctor public Connection.CallFilteringCompletionInfo(boolean, boolean, @Nullable android.telecom.CallScreeningService.CallResponse, @Nullable android.content.ComponentName);
14574    method public int describeContents();
14575    method @Nullable public android.telecom.CallScreeningService.CallResponse getCallResponse();
14576    method @Nullable public android.content.ComponentName getCallScreeningComponent();
14577    method public boolean isBlocked();
14578    method public boolean isInContacts();
14579    method public void writeToParcel(android.os.Parcel, int);
14580    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.Connection.CallFilteringCompletionInfo> CREATOR;
14581  }
14582
14583  public final class ConnectionRequest implements android.os.Parcelable {
14584    method @Nullable public String getTelecomCallId();
14585  }
14586
14587  public abstract class ConnectionService extends android.app.Service {
14588    method public final void addExistingConnection(@NonNull android.telecom.PhoneAccountHandle, @NonNull android.telecom.Connection, @NonNull android.telecom.Conference);
14589  }
14590
14591  public final class DisconnectCause implements android.os.Parcelable {
14592    method @FlaggedApi("com.android.server.telecom.flags.telecom_resolve_hidden_dependencies") @Nullable public android.telephony.ims.ImsReasonInfo getImsReasonInfo();
14593    method @FlaggedApi("com.android.server.telecom.flags.telecom_resolve_hidden_dependencies") public int getTelephonyDisconnectCause();
14594    method @FlaggedApi("com.android.server.telecom.flags.telecom_resolve_hidden_dependencies") public int getTelephonyPreciseDisconnectCause();
14595  }
14596
14597  @FlaggedApi("com.android.server.telecom.flags.telecom_resolve_hidden_dependencies") public static final class DisconnectCause.Builder {
14598    ctor public DisconnectCause.Builder(int);
14599    method @NonNull public android.telecom.DisconnectCause build();
14600    method @NonNull public android.telecom.DisconnectCause.Builder setDescription(@Nullable CharSequence);
14601    method @NonNull public android.telecom.DisconnectCause.Builder setImsReasonInfo(@Nullable android.telephony.ims.ImsReasonInfo);
14602    method @NonNull public android.telecom.DisconnectCause.Builder setLabel(@Nullable CharSequence);
14603    method @NonNull public android.telecom.DisconnectCause.Builder setReason(@NonNull String);
14604    method @NonNull public android.telecom.DisconnectCause.Builder setTelephonyDisconnectCause(int);
14605    method @NonNull public android.telecom.DisconnectCause.Builder setTelephonyPreciseDisconnectCause(int);
14606    method @NonNull public android.telecom.DisconnectCause.Builder setTone(int);
14607  }
14608
14609  public abstract class InCallService extends android.app.Service {
14610    method @Deprecated public android.telecom.Phone getPhone();
14611    method @Deprecated public void onPhoneCreated(android.telecom.Phone);
14612    method @Deprecated public void onPhoneDestroyed(android.telecom.Phone);
14613  }
14614
14615  public class ParcelableCallAnalytics implements android.os.Parcelable {
14616    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>);
14617    ctor public ParcelableCallAnalytics(android.os.Parcel);
14618    method public java.util.List<android.telecom.ParcelableCallAnalytics.AnalyticsEvent> analyticsEvents();
14619    method public int describeContents();
14620    method public long getCallDurationMillis();
14621    method public int getCallTechnologies();
14622    method public int getCallTerminationCode();
14623    method public int getCallType();
14624    method public String getConnectionService();
14625    method public java.util.List<android.telecom.ParcelableCallAnalytics.EventTiming> getEventTimings();
14626    method public long getStartTimeMillis();
14627    method public boolean isAdditionalCall();
14628    method public boolean isCreatedFromExistingConnection();
14629    method public boolean isEmergencyCall();
14630    method public boolean isInterrupted();
14631    method public void writeToParcel(android.os.Parcel, int);
14632    field public static final int CALLTYPE_INCOMING = 1; // 0x1
14633    field public static final int CALLTYPE_OUTGOING = 2; // 0x2
14634    field public static final int CALLTYPE_UNKNOWN = 0; // 0x0
14635    field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CDMA_PHONE = 1; // 0x1
14636    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.ParcelableCallAnalytics> CREATOR;
14637    field public static final int GSM_PHONE = 2; // 0x2
14638    field public static final int IMS_PHONE = 4; // 0x4
14639    field public static final long MILLIS_IN_1_SECOND = 1000L; // 0x3e8L
14640    field public static final long MILLIS_IN_5_MINUTES = 300000L; // 0x493e0L
14641    field public static final int SIP_PHONE = 8; // 0x8
14642    field public static final int STILL_CONNECTED = -1; // 0xffffffff
14643    field public static final int THIRD_PARTY_PHONE = 16; // 0x10
14644  }
14645
14646  public static final class ParcelableCallAnalytics.AnalyticsEvent implements android.os.Parcelable {
14647    ctor public ParcelableCallAnalytics.AnalyticsEvent(int, long);
14648    method public int describeContents();
14649    method public int getEventName();
14650    method public long getTimeSinceLastEvent();
14651    method public void writeToParcel(android.os.Parcel, int);
14652    field public static final int AUDIO_ROUTE_BT = 204; // 0xcc
14653    field public static final int AUDIO_ROUTE_EARPIECE = 205; // 0xcd
14654    field public static final int AUDIO_ROUTE_HEADSET = 206; // 0xce
14655    field public static final int AUDIO_ROUTE_SPEAKER = 207; // 0xcf
14656    field public static final int BIND_CS = 5; // 0x5
14657    field public static final int BLOCK_CHECK_FINISHED = 105; // 0x69
14658    field public static final int BLOCK_CHECK_INITIATED = 104; // 0x68
14659    field public static final int CONFERENCE_WITH = 300; // 0x12c
14660    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.ParcelableCallAnalytics.AnalyticsEvent> CREATOR;
14661    field public static final int CS_BOUND = 6; // 0x6
14662    field public static final int DIRECT_TO_VM_FINISHED = 103; // 0x67
14663    field public static final int DIRECT_TO_VM_INITIATED = 102; // 0x66
14664    field public static final int DND_CHECK_COMPLETED = 110; // 0x6e
14665    field public static final int DND_CHECK_INITIATED = 109; // 0x6d
14666    field public static final int FILTERING_COMPLETED = 107; // 0x6b
14667    field public static final int FILTERING_INITIATED = 106; // 0x6a
14668    field public static final int FILTERING_TIMED_OUT = 108; // 0x6c
14669    field public static final int MUTE = 202; // 0xca
14670    field public static final int REMOTELY_HELD = 402; // 0x192
14671    field public static final int REMOTELY_UNHELD = 403; // 0x193
14672    field public static final int REQUEST_ACCEPT = 7; // 0x7
14673    field public static final int REQUEST_HOLD = 400; // 0x190
14674    field public static final int REQUEST_PULL = 500; // 0x1f4
14675    field public static final int REQUEST_REJECT = 8; // 0x8
14676    field public static final int REQUEST_UNHOLD = 401; // 0x191
14677    field public static final int SCREENING_COMPLETED = 101; // 0x65
14678    field public static final int SCREENING_SENT = 100; // 0x64
14679    field public static final int SET_ACTIVE = 1; // 0x1
14680    field public static final int SET_DIALING = 4; // 0x4
14681    field public static final int SET_DISCONNECTED = 2; // 0x2
14682    field public static final int SET_HOLD = 404; // 0x194
14683    field public static final int SET_PARENT = 302; // 0x12e
14684    field public static final int SET_SELECT_PHONE_ACCOUNT = 0; // 0x0
14685    field public static final int SILENCE = 201; // 0xc9
14686    field public static final int SKIP_RINGING = 200; // 0xc8
14687    field public static final int SPLIT_CONFERENCE = 301; // 0x12d
14688    field public static final int START_CONNECTION = 3; // 0x3
14689    field public static final int SWAP = 405; // 0x195
14690    field public static final int UNMUTE = 203; // 0xcb
14691  }
14692
14693  public static final class ParcelableCallAnalytics.EventTiming implements android.os.Parcelable {
14694    ctor public ParcelableCallAnalytics.EventTiming(int, long);
14695    method public int describeContents();
14696    method public int getName();
14697    method public long getTime();
14698    method public void writeToParcel(android.os.Parcel, int);
14699    field public static final int ACCEPT_TIMING = 0; // 0x0
14700    field public static final int BIND_CS_TIMING = 6; // 0x6
14701    field public static final int BLOCK_CHECK_FINISHED_TIMING = 9; // 0x9
14702    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.ParcelableCallAnalytics.EventTiming> CREATOR;
14703    field public static final int DIRECT_TO_VM_FINISHED_TIMING = 8; // 0x8
14704    field public static final int DISCONNECT_TIMING = 2; // 0x2
14705    field public static final int DND_PRE_CALL_PRE_CHECK_TIMING = 12; // 0xc
14706    field public static final int FILTERING_COMPLETED_TIMING = 10; // 0xa
14707    field public static final int FILTERING_TIMED_OUT_TIMING = 11; // 0xb
14708    field public static final int HOLD_TIMING = 3; // 0x3
14709    field public static final int INVALID = 999999; // 0xf423f
14710    field public static final int OUTGOING_TIME_TO_DIALING_TIMING = 5; // 0x5
14711    field public static final int REJECT_TIMING = 1; // 0x1
14712    field public static final int SCREENING_COMPLETED_TIMING = 7; // 0x7
14713    field public static final int UNHOLD_TIMING = 4; // 0x4
14714  }
14715
14716  @Deprecated public final class Phone {
14717    method @Deprecated public void addListener(android.telecom.Phone.Listener);
14718    method @Deprecated public boolean canAddCall();
14719    method @Deprecated public android.telecom.AudioState getAudioState();
14720    method @Deprecated public android.telecom.CallAudioState getCallAudioState();
14721    method @Deprecated public java.util.List<android.telecom.Call> getCalls();
14722    method @Deprecated public void removeListener(android.telecom.Phone.Listener);
14723    method @Deprecated public void requestBluetoothAudio(String);
14724    method @Deprecated public void setAudioRoute(int);
14725    method @Deprecated public void setMuted(boolean);
14726  }
14727
14728  @Deprecated public abstract static class Phone.Listener {
14729    ctor @Deprecated public Phone.Listener();
14730    method @Deprecated public void onAudioStateChanged(android.telecom.Phone, android.telecom.AudioState);
14731    method @Deprecated public void onBringToForeground(android.telecom.Phone, boolean);
14732    method @Deprecated public void onCallAdded(android.telecom.Phone, android.telecom.Call);
14733    method @Deprecated public void onCallAudioStateChanged(android.telecom.Phone, android.telecom.CallAudioState);
14734    method @Deprecated public void onCallRemoved(android.telecom.Phone, android.telecom.Call);
14735    method @Deprecated public void onCanAddCallChanged(android.telecom.Phone, boolean);
14736    method @Deprecated public void onSilenceRinger(android.telecom.Phone);
14737  }
14738
14739  public final class PhoneAccount implements android.os.Parcelable {
14740    field public static final int CAPABILITY_EMERGENCY_CALLS_ONLY = 128; // 0x80
14741    field public static final int CAPABILITY_EMERGENCY_PREFERRED = 8192; // 0x2000
14742    field public static final int CAPABILITY_EMERGENCY_VIDEO_CALLING = 512; // 0x200
14743    field public static final int CAPABILITY_MULTI_USER = 32; // 0x20
14744    field @Deprecated @FlaggedApi("com.android.server.telecom.flags.telecom_resolve_hidden_dependencies") public static final String EXTRA_PLAY_CALL_RECORDING_TONE = "android.telecom.extra.PLAY_CALL_RECORDING_TONE";
14745    field @FlaggedApi("com.android.server.telecom.flags.telecom_resolve_hidden_dependencies") public static final String EXTRA_SKIP_CALL_FILTERING = "android.telecom.extra.SKIP_CALL_FILTERING";
14746    field public static final String EXTRA_SORT_ORDER = "android.telecom.extra.SORT_ORDER";
14747  }
14748
14749  public static class PhoneAccount.Builder {
14750    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.telecom.PhoneAccount.Builder setGroupId(@NonNull String);
14751  }
14752
14753  public class PhoneAccountSuggestionService extends android.app.Service {
14754    ctor public PhoneAccountSuggestionService();
14755    method public void onAccountSuggestionRequest(@NonNull String);
14756    method public android.os.IBinder onBind(android.content.Intent);
14757    method public final void suggestPhoneAccounts(@NonNull String, @NonNull java.util.List<android.telecom.PhoneAccountSuggestion>);
14758    field public static final String SERVICE_INTERFACE = "android.telecom.PhoneAccountSuggestionService";
14759  }
14760
14761  public final class RemoteConference {
14762    method @Deprecated public void setAudioState(android.telecom.AudioState);
14763  }
14764
14765  public final class RemoteConnection {
14766    method @RequiresPermission(android.Manifest.permission.READ_CONTACTS) public void onCallFilteringCompleted(@NonNull android.telecom.Connection.CallFilteringCompletionInfo);
14767    method @Deprecated public void setAudioState(android.telecom.AudioState);
14768  }
14769
14770  public final class StatusHints implements android.os.Parcelable {
14771    ctor @Deprecated public StatusHints(android.content.ComponentName, CharSequence, int, android.os.Bundle);
14772    method @Deprecated public android.graphics.drawable.Drawable getIcon(android.content.Context);
14773    method @Deprecated public int getIconResId();
14774    method @Deprecated public android.content.ComponentName getPackageName();
14775  }
14776
14777  public final class StreamingCall implements android.os.Parcelable {
14778    ctor public StreamingCall(@NonNull android.content.ComponentName, @NonNull CharSequence, @NonNull android.net.Uri, @NonNull android.os.Bundle);
14779    method public int describeContents();
14780    method @NonNull public android.net.Uri getAddress();
14781    method @NonNull public android.content.ComponentName getComponentName();
14782    method @NonNull public CharSequence getDisplayName();
14783    method @NonNull public android.os.Bundle getExtras();
14784    method public int getState();
14785    method public void requestStreamingState(int);
14786    method public void writeToParcel(@NonNull android.os.Parcel, int);
14787    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.StreamingCall> CREATOR;
14788    field @FlaggedApi("com.android.server.telecom.flags.call_details_id_changes") public static final String EXTRA_CALL_ID = "android.telecom.extra.CALL_ID";
14789    field public static final int STATE_DISCONNECTED = 3; // 0x3
14790    field public static final int STATE_HOLDING = 2; // 0x2
14791    field public static final int STATE_STREAMING = 1; // 0x1
14792  }
14793
14794  public final class TelecomAnalytics implements android.os.Parcelable {
14795    ctor public TelecomAnalytics(java.util.List<android.telecom.TelecomAnalytics.SessionTiming>, java.util.List<android.telecom.ParcelableCallAnalytics>);
14796    method public int describeContents();
14797    method public java.util.List<android.telecom.ParcelableCallAnalytics> getCallAnalytics();
14798    method public java.util.List<android.telecom.TelecomAnalytics.SessionTiming> getSessionTimings();
14799    method public void writeToParcel(android.os.Parcel, int);
14800    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.TelecomAnalytics> CREATOR;
14801  }
14802
14803  public static final class TelecomAnalytics.SessionTiming implements android.os.Parcelable {
14804    ctor public TelecomAnalytics.SessionTiming(int, long);
14805    method public int describeContents();
14806    method public Integer getKey();
14807    method public long getTime();
14808    method public void writeToParcel(android.os.Parcel, int);
14809    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.TelecomAnalytics.SessionTiming> CREATOR;
14810    field public static final int CSW_ADD_CONFERENCE_CALL = 108; // 0x6c
14811    field public static final int CSW_HANDLE_CREATE_CONNECTION_COMPLETE = 100; // 0x64
14812    field public static final int CSW_REMOVE_CALL = 106; // 0x6a
14813    field public static final int CSW_SET_ACTIVE = 101; // 0x65
14814    field public static final int CSW_SET_DIALING = 103; // 0x67
14815    field public static final int CSW_SET_DISCONNECTED = 104; // 0x68
14816    field public static final int CSW_SET_IS_CONFERENCED = 107; // 0x6b
14817    field public static final int CSW_SET_ON_HOLD = 105; // 0x69
14818    field public static final int CSW_SET_RINGING = 102; // 0x66
14819    field public static final int ICA_ANSWER_CALL = 1; // 0x1
14820    field public static final int ICA_CONFERENCE = 8; // 0x8
14821    field public static final int ICA_DISCONNECT_CALL = 3; // 0x3
14822    field public static final int ICA_HOLD_CALL = 4; // 0x4
14823    field public static final int ICA_MUTE = 6; // 0x6
14824    field public static final int ICA_REJECT_CALL = 2; // 0x2
14825    field public static final int ICA_SET_AUDIO_ROUTE = 7; // 0x7
14826    field public static final int ICA_UNHOLD_CALL = 5; // 0x5
14827  }
14828
14829  public class TelecomManager {
14830    method public void addNewUnknownCall(android.telecom.PhoneAccountHandle, android.os.Bundle);
14831    method @Deprecated public void clearAccounts();
14832    method public void clearPhoneAccounts();
14833    method @NonNull public android.content.Intent createLaunchEmergencyDialerIntent(@Nullable String);
14834    method @RequiresPermission(android.Manifest.permission.DUMP) public android.telecom.TelecomAnalytics dumpAnalytics();
14835    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void enablePhoneAccount(android.telecom.PhoneAccountHandle, boolean);
14836    method public java.util.List<android.telecom.PhoneAccountHandle> getAllPhoneAccountHandles();
14837    method public java.util.List<android.telecom.PhoneAccount> getAllPhoneAccounts();
14838    method public int getAllPhoneAccountsCount();
14839    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.List<android.telecom.PhoneAccountHandle> getCallCapablePhoneAccounts(boolean);
14840    method @FlaggedApi("com.android.internal.telephony.flags.work_profile_api_split") @NonNull @RequiresPermission(allOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.INTERACT_ACROSS_PROFILES}) public java.util.List<android.telecom.PhoneAccountHandle> getCallCapablePhoneAccountsAcrossProfiles(boolean);
14841    method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}, conditional=true) public int getCallState();
14842    method public android.telecom.PhoneAccountHandle getConnectionManager();
14843    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getCurrentTtyMode();
14844    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getDefaultDialerPackage(@NonNull android.os.UserHandle);
14845    method @Deprecated public android.content.ComponentName getDefaultPhoneApp();
14846    method @Deprecated public java.util.List<android.telecom.PhoneAccountHandle> getPhoneAccountsForPackage();
14847    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);
14848    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean isInEmergencyCall();
14849    method @FlaggedApi("com.android.server.telecom.flags.telecom_resolve_hidden_dependencies") @RequiresPermission(allOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.INTERACT_ACROSS_USERS}, conditional=true) public boolean isInSelfManagedCall(@NonNull String, @NonNull android.os.UserHandle);
14850    method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isRinging();
14851    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setUserSelectedOutgoingPhoneAccount(@Nullable android.telecom.PhoneAccountHandle);
14852    field public static final String ACTION_CURRENT_TTY_MODE_CHANGED = "android.telecom.action.CURRENT_TTY_MODE_CHANGED";
14853    field public static final String ACTION_TTY_PREFERRED_MODE_CHANGED = "android.telecom.action.TTY_PREFERRED_MODE_CHANGED";
14854    field public static final int CALL_SOURCE_EMERGENCY_DIALPAD = 1; // 0x1
14855    field public static final int CALL_SOURCE_EMERGENCY_SHORTCUT = 2; // 0x2
14856    field public static final int CALL_SOURCE_UNSPECIFIED = 0; // 0x0
14857    field public static final String EXTRA_CALL_BACK_INTENT = "android.telecom.extra.CALL_BACK_INTENT";
14858    field public static final String EXTRA_CALL_HAS_IN_BAND_RINGTONE = "android.telecom.extra.CALL_HAS_IN_BAND_RINGTONE";
14859    field public static final String EXTRA_CALL_SOURCE = "android.telecom.extra.CALL_SOURCE";
14860    field public static final String EXTRA_CALL_TECHNOLOGY_TYPE = "android.telecom.extra.CALL_TECHNOLOGY_TYPE";
14861    field @Deprecated public static final String EXTRA_CLEAR_MISSED_CALLS_INTENT = "android.telecom.extra.CLEAR_MISSED_CALLS_INTENT";
14862    field public static final String EXTRA_CONNECTION_SERVICE = "android.telecom.extra.CONNECTION_SERVICE";
14863    field public static final String EXTRA_CURRENT_TTY_MODE = "android.telecom.extra.CURRENT_TTY_MODE";
14864    field public static final String EXTRA_IS_USER_INTENT_EMERGENCY_CALL = "android.telecom.extra.IS_USER_INTENT_EMERGENCY_CALL";
14865    field public static final String EXTRA_TTY_PREFERRED_MODE = "android.telecom.extra.TTY_PREFERRED_MODE";
14866    field public static final String EXTRA_UNKNOWN_CALL_HANDLE = "android.telecom.extra.UNKNOWN_CALL_HANDLE";
14867    field public static final int TTY_MODE_FULL = 1; // 0x1
14868    field public static final int TTY_MODE_HCO = 2; // 0x2
14869    field public static final int TTY_MODE_OFF = 0; // 0x0
14870    field public static final int TTY_MODE_VCO = 3; // 0x3
14871  }
14872
14873}
14874
14875package android.telephony {
14876
14877  public final class AccessNetworkConstants {
14878    field public static final int TRANSPORT_TYPE_INVALID = -1; // 0xffffffff
14879  }
14880
14881  public static final class AccessNetworkConstants.NgranBands {
14882    method public static int getFrequencyRangeGroup(int);
14883    field public static final int FREQUENCY_RANGE_GROUP_1 = 1; // 0x1
14884    field public static final int FREQUENCY_RANGE_GROUP_2 = 2; // 0x2
14885    field public static final int FREQUENCY_RANGE_GROUP_UNKNOWN = 0; // 0x0
14886  }
14887
14888  public final class BarringInfo implements android.os.Parcelable {
14889    ctor public BarringInfo();
14890    method @NonNull public android.telephony.BarringInfo createLocationInfoSanitizedCopy();
14891  }
14892
14893  @Deprecated public final class CallAttributes implements android.os.Parcelable {
14894    ctor @Deprecated public CallAttributes(@NonNull android.telephony.PreciseCallState, int, @NonNull android.telephony.CallQuality);
14895    method @Deprecated public int describeContents();
14896    method @Deprecated @NonNull public android.telephony.CallQuality getCallQuality();
14897    method @Deprecated public int getNetworkType();
14898    method @Deprecated @NonNull public android.telephony.PreciseCallState getPreciseCallState();
14899    method @Deprecated public void writeToParcel(android.os.Parcel, int);
14900    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.telephony.CallAttributes> CREATOR;
14901  }
14902
14903  public final class CallForwardingInfo implements android.os.Parcelable {
14904    ctor public CallForwardingInfo(boolean, int, @Nullable String, int);
14905    method public int describeContents();
14906    method @Nullable public String getNumber();
14907    method public int getReason();
14908    method public int getTimeoutSeconds();
14909    method public boolean isEnabled();
14910    method public void writeToParcel(android.os.Parcel, int);
14911    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.CallForwardingInfo> CREATOR;
14912    field public static final int REASON_ALL = 4; // 0x4
14913    field public static final int REASON_ALL_CONDITIONAL = 5; // 0x5
14914    field public static final int REASON_BUSY = 1; // 0x1
14915    field public static final int REASON_NOT_REACHABLE = 3; // 0x3
14916    field public static final int REASON_NO_REPLY = 2; // 0x2
14917    field public static final int REASON_UNCONDITIONAL = 0; // 0x0
14918  }
14919
14920  public final class CallQuality implements android.os.Parcelable {
14921    ctor public CallQuality(int, int, int, int, int, int, int, int, int, int, int);
14922    ctor public CallQuality(int, int, int, int, int, int, int, int, int, int, int, boolean, boolean, boolean);
14923    method public int describeContents();
14924    method public int getAverageRelativeJitter();
14925    method public int getAverageRoundTripTime();
14926    method public int getCallDuration();
14927    method public int getCodecType();
14928    method public int getDownlinkCallQualityLevel();
14929    method public long getMaxPlayoutDelayMillis();
14930    method public int getMaxRelativeJitter();
14931    method public long getMinPlayoutDelayMillis();
14932    method public int getNumDroppedRtpPackets();
14933    method public int getNumNoDataFrames();
14934    method public int getNumRtpDuplicatePackets();
14935    method public int getNumRtpPacketsNotReceived();
14936    method public int getNumRtpPacketsReceived();
14937    method public int getNumRtpPacketsTransmitted();
14938    method public int getNumRtpPacketsTransmittedLost();
14939    method public int getNumRtpSidPacketsReceived();
14940    method public int getNumVoiceFrames();
14941    method public int getUplinkCallQualityLevel();
14942    method public boolean isIncomingSilenceDetectedAtCallSetup();
14943    method public boolean isOutgoingSilenceDetectedAtCallSetup();
14944    method public boolean isRtpInactivityDetected();
14945    method public void writeToParcel(android.os.Parcel, int);
14946    field public static final int CALL_QUALITY_BAD = 4; // 0x4
14947    field public static final int CALL_QUALITY_EXCELLENT = 0; // 0x0
14948    field public static final int CALL_QUALITY_FAIR = 2; // 0x2
14949    field public static final int CALL_QUALITY_GOOD = 1; // 0x1
14950    field public static final int CALL_QUALITY_NOT_AVAILABLE = 5; // 0x5
14951    field public static final int CALL_QUALITY_POOR = 3; // 0x3
14952    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.CallQuality> CREATOR;
14953  }
14954
14955  public static final class CallQuality.Builder {
14956    ctor public CallQuality.Builder();
14957    method @NonNull public android.telephony.CallQuality build();
14958    method @NonNull public android.telephony.CallQuality.Builder setAverageRelativeJitter(int);
14959    method @NonNull public android.telephony.CallQuality.Builder setAverageRoundTripTimeMillis(int);
14960    method @NonNull public android.telephony.CallQuality.Builder setCallDurationMillis(int);
14961    method @NonNull public android.telephony.CallQuality.Builder setCodecType(int);
14962    method @NonNull public android.telephony.CallQuality.Builder setDownlinkCallQualityLevel(int);
14963    method @NonNull public android.telephony.CallQuality.Builder setIncomingSilenceDetectedAtCallSetup(boolean);
14964    method @NonNull public android.telephony.CallQuality.Builder setMaxPlayoutDelayMillis(long);
14965    method @NonNull public android.telephony.CallQuality.Builder setMaxRelativeJitter(int);
14966    method @NonNull public android.telephony.CallQuality.Builder setMinPlayoutDelayMillis(long);
14967    method @NonNull public android.telephony.CallQuality.Builder setNumDroppedRtpPackets(int);
14968    method @NonNull public android.telephony.CallQuality.Builder setNumNoDataFrames(int);
14969    method @NonNull public android.telephony.CallQuality.Builder setNumRtpDuplicatePackets(int);
14970    method @NonNull public android.telephony.CallQuality.Builder setNumRtpPacketsNotReceived(int);
14971    method @NonNull public android.telephony.CallQuality.Builder setNumRtpPacketsReceived(int);
14972    method @NonNull public android.telephony.CallQuality.Builder setNumRtpPacketsTransmitted(int);
14973    method @NonNull public android.telephony.CallQuality.Builder setNumRtpPacketsTransmittedLost(int);
14974    method @NonNull public android.telephony.CallQuality.Builder setNumRtpSidPacketsReceived(int);
14975    method @NonNull public android.telephony.CallQuality.Builder setNumVoiceFrames(int);
14976    method @NonNull public android.telephony.CallQuality.Builder setOutgoingSilenceDetectedAtCallSetup(boolean);
14977    method @NonNull public android.telephony.CallQuality.Builder setRtpInactivityDetected(boolean);
14978    method @NonNull public android.telephony.CallQuality.Builder setUplinkCallQualityLevel(int);
14979  }
14980
14981  public final class CallState implements android.os.Parcelable {
14982    method public int describeContents();
14983    method @Nullable public android.telephony.CallQuality getCallQuality();
14984    method public int getCallState();
14985    method public int getImsCallServiceType();
14986    method @Nullable public String getImsCallSessionId();
14987    method public int getImsCallType();
14988    method public int getNetworkType();
14989    method public void writeToParcel(@Nullable android.os.Parcel, int);
14990    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.CallState> CREATOR;
14991  }
14992
14993  public static final class CallState.Builder {
14994    ctor public CallState.Builder(int);
14995    method @NonNull public android.telephony.CallState build();
14996    method @NonNull public android.telephony.CallState.Builder setCallQuality(@Nullable android.telephony.CallQuality);
14997    method @NonNull public android.telephony.CallState.Builder setImsCallServiceType(int);
14998    method @NonNull public android.telephony.CallState.Builder setImsCallSessionId(@Nullable String);
14999    method @NonNull public android.telephony.CallState.Builder setImsCallType(int);
15000    method @NonNull public android.telephony.CallState.Builder setNetworkType(int);
15001  }
15002
15003  public class CarrierConfigManager {
15004    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getDefaultCarrierServicePackageName();
15005    method @NonNull public static android.os.PersistableBundle getDefaultConfig();
15006    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void overrideConfig(int, @Nullable android.os.PersistableBundle);
15007    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void updateConfigForPhoneId(int, String);
15008    field public static final int GBA_DIGEST = 3; // 0x3
15009    field public static final int GBA_ME = 1; // 0x1
15010    field public static final int GBA_U = 2; // 0x2
15011    field public static final String KEY_CARRIER_SETUP_APP_STRING = "carrier_setup_app_string";
15012    field public static final String KEY_GBA_MODE_INT = "gba_mode_int";
15013    field public static final String KEY_GBA_UA_SECURITY_ORGANIZATION_INT = "gba_ua_security_organization_int";
15014    field public static final String KEY_GBA_UA_SECURITY_PROTOCOL_INT = "gba_ua_security_protocol_int";
15015    field public static final String KEY_GBA_UA_TLS_CIPHER_SUITE_INT = "gba_ua_tls_cipher_suite_int";
15016    field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final String KEY_SUPPORT_CDMA_1X_VOICE_CALLS_BOOL = "support_cdma_1x_voice_calls_bool";
15017  }
15018
15019  public static final class CarrierConfigManager.Wifi {
15020    field public static final String KEY_AVOID_5GHZ_SOFTAP_FOR_LAA_BOOL = "wifi.avoid_5ghz_softap_for_laa_bool";
15021    field public static final String KEY_AVOID_5GHZ_WIFI_DIRECT_FOR_LAA_BOOL = "wifi.avoid_5ghz_wifi_direct_for_laa_bool";
15022    field public static final String KEY_HOTSPOT_MAX_CLIENT_COUNT = "wifi.hotspot_maximum_client_count";
15023    field public static final String KEY_PREFIX = "wifi.";
15024    field public static final String KEY_SUGGESTION_SSID_LIST_WITH_MAC_RANDOMIZATION_DISABLED = "wifi.suggestion_ssid_list_with_mac_randomization_disabled";
15025  }
15026
15027  public final class CarrierRestrictionRules implements android.os.Parcelable {
15028    method @NonNull public java.util.List<java.lang.Boolean> areCarrierIdentifiersAllowed(@NonNull java.util.List<android.service.carrier.CarrierIdentifier>);
15029    method public int describeContents();
15030    method @NonNull public java.util.List<android.service.carrier.CarrierIdentifier> getAllowedCarriers();
15031    method @FlaggedApi("com.android.internal.telephony.flags.carrier_restriction_status") public int getCarrierRestrictionStatus();
15032    method public int getDefaultCarrierRestriction();
15033    method @NonNull public java.util.List<android.service.carrier.CarrierIdentifier> getExcludedCarriers();
15034    method public int getMultiSimPolicy();
15035    method public boolean isAllCarriersAllowed();
15036    method public void writeToParcel(android.os.Parcel, int);
15037    field public static final int CARRIER_RESTRICTION_DEFAULT_ALLOWED = 1; // 0x1
15038    field public static final int CARRIER_RESTRICTION_DEFAULT_NOT_ALLOWED = 0; // 0x0
15039    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.CarrierRestrictionRules> CREATOR;
15040    field public static final int MULTISIM_POLICY_NONE = 0; // 0x0
15041    field public static final int MULTISIM_POLICY_ONE_VALID_SIM_MUST_BE_PRESENT = 1; // 0x1
15042  }
15043
15044  public static final class CarrierRestrictionRules.Builder {
15045    ctor public CarrierRestrictionRules.Builder();
15046    method @NonNull public android.telephony.CarrierRestrictionRules build();
15047    method @NonNull public android.telephony.CarrierRestrictionRules.Builder setAllCarriersAllowed();
15048    method @NonNull public android.telephony.CarrierRestrictionRules.Builder setAllowedCarriers(@NonNull java.util.List<android.service.carrier.CarrierIdentifier>);
15049    method @FlaggedApi("com.android.internal.telephony.flags.set_carrier_restriction_status") @NonNull public android.telephony.CarrierRestrictionRules.Builder setCarrierRestrictionStatus(int);
15050    method @NonNull public android.telephony.CarrierRestrictionRules.Builder setDefaultCarrierRestriction(int);
15051    method @NonNull public android.telephony.CarrierRestrictionRules.Builder setExcludedCarriers(@NonNull java.util.List<android.service.carrier.CarrierIdentifier>);
15052    method @NonNull public android.telephony.CarrierRestrictionRules.Builder setMultiSimPolicy(int);
15053  }
15054
15055  public class CbGeoUtils {
15056  }
15057
15058  public static class CbGeoUtils.Circle implements android.telephony.CbGeoUtils.Geometry {
15059    ctor public CbGeoUtils.Circle(@NonNull android.telephony.CbGeoUtils.LatLng, double);
15060    method public boolean contains(@NonNull android.telephony.CbGeoUtils.LatLng);
15061    method @NonNull public android.telephony.CbGeoUtils.LatLng getCenter();
15062    method public double getRadius();
15063  }
15064
15065  public static interface CbGeoUtils.Geometry {
15066    method public boolean contains(@NonNull android.telephony.CbGeoUtils.LatLng);
15067  }
15068
15069  public static class CbGeoUtils.LatLng {
15070    ctor public CbGeoUtils.LatLng(double, double);
15071    method public double distance(@NonNull android.telephony.CbGeoUtils.LatLng);
15072    method @NonNull public android.telephony.CbGeoUtils.LatLng subtract(@NonNull android.telephony.CbGeoUtils.LatLng);
15073    field public final double lat;
15074    field public final double lng;
15075  }
15076
15077  public static class CbGeoUtils.Polygon implements android.telephony.CbGeoUtils.Geometry {
15078    ctor public CbGeoUtils.Polygon(@NonNull java.util.List<android.telephony.CbGeoUtils.LatLng>);
15079    method public boolean contains(@NonNull android.telephony.CbGeoUtils.LatLng);
15080    method @NonNull public java.util.List<android.telephony.CbGeoUtils.LatLng> getVertices();
15081  }
15082
15083  public final class CellBroadcastIdRange implements android.os.Parcelable {
15084    ctor public CellBroadcastIdRange(@IntRange(from=0, to=65535) int, @IntRange(from=0, to=65535) int, int, boolean) throws java.lang.IllegalArgumentException;
15085    method public int describeContents();
15086    method @IntRange(from=0, to=65535) public int getEndId();
15087    method @IntRange(from=0, to=65535) public int getStartId();
15088    method public int getType();
15089    method public boolean isEnabled();
15090    method public void writeToParcel(@NonNull android.os.Parcel, int);
15091    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.CellBroadcastIdRange> CREATOR;
15092  }
15093
15094  public class CellBroadcastIntents {
15095    method public static void sendSmsCbReceivedBroadcast(@NonNull android.content.Context, @Nullable android.os.UserHandle, @NonNull android.telephony.SmsCbMessage, @Nullable android.content.BroadcastReceiver, @Nullable android.os.Handler, int, int);
15096    field public static final String ACTION_AREA_INFO_UPDATED = "android.telephony.action.AREA_INFO_UPDATED";
15097  }
15098
15099  public abstract class CellBroadcastService extends android.app.Service {
15100    ctor public CellBroadcastService();
15101    method @NonNull @WorkerThread public abstract CharSequence getCellBroadcastAreaInfo(int);
15102    method @CallSuper public android.os.IBinder onBind(@Nullable android.content.Intent);
15103    method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public void onCdmaCellBroadcastSms(int, @NonNull byte[], int);
15104    method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public void onCdmaScpMessage(int, @NonNull java.util.List<android.telephony.cdma.CdmaSmsCbProgramData>, @NonNull String, @NonNull java.util.function.Consumer<android.os.Bundle>);
15105    method public abstract void onGsmCellBroadcastSms(int, @NonNull byte[]);
15106    field public static final String CELL_BROADCAST_SERVICE_INTERFACE = "android.telephony.CellBroadcastService";
15107  }
15108
15109  public abstract class CellIdentity implements android.os.Parcelable {
15110    method @NonNull public abstract android.telephony.CellLocation asCellLocation();
15111    method @NonNull public abstract android.telephony.CellIdentity sanitizeLocationInfo();
15112  }
15113
15114  @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public final class CellIdentityCdma extends android.telephony.CellIdentity {
15115    method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @NonNull public android.telephony.cdma.CdmaCellLocation asCellLocation();
15116    method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @NonNull public android.telephony.CellIdentityCdma sanitizeLocationInfo();
15117  }
15118
15119  public final class CellIdentityGsm extends android.telephony.CellIdentity {
15120    method @NonNull public android.telephony.gsm.GsmCellLocation asCellLocation();
15121    method @NonNull public android.telephony.CellIdentityGsm sanitizeLocationInfo();
15122  }
15123
15124  public final class CellIdentityLte extends android.telephony.CellIdentity {
15125    method @NonNull public android.telephony.gsm.GsmCellLocation asCellLocation();
15126    method @NonNull public android.telephony.CellIdentityLte sanitizeLocationInfo();
15127  }
15128
15129  public final class CellIdentityNr extends android.telephony.CellIdentity {
15130    method @NonNull public android.telephony.CellLocation asCellLocation();
15131    method @NonNull public android.telephony.CellIdentityNr sanitizeLocationInfo();
15132  }
15133
15134  public final class CellIdentityTdscdma extends android.telephony.CellIdentity {
15135    method @NonNull public android.telephony.gsm.GsmCellLocation asCellLocation();
15136    method @NonNull public android.telephony.CellIdentityTdscdma sanitizeLocationInfo();
15137  }
15138
15139  public final class CellIdentityWcdma extends android.telephony.CellIdentity {
15140    method @NonNull public android.telephony.gsm.GsmCellLocation asCellLocation();
15141    method @NonNull public android.telephony.CellIdentityWcdma sanitizeLocationInfo();
15142  }
15143
15144  @FlaggedApi("com.android.internal.telephony.flags.cellular_identifier_disclosure_indications") public final class CellularIdentifierDisclosure implements android.os.Parcelable {
15145    method public int describeContents();
15146    method public int getCellularIdentifier();
15147    method public int getNasProtocolMessage();
15148    method @NonNull public String getPlmn();
15149    method public boolean isEmergency();
15150    method public void writeToParcel(@NonNull android.os.Parcel, int);
15151    field public static final int CELLULAR_IDENTIFIER_IMEI = 2; // 0x2
15152    field public static final int CELLULAR_IDENTIFIER_IMSI = 1; // 0x1
15153    field public static final int CELLULAR_IDENTIFIER_SUCI = 3; // 0x3
15154    field public static final int CELLULAR_IDENTIFIER_UNKNOWN = 0; // 0x0
15155    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.CellularIdentifierDisclosure> CREATOR;
15156    field public static final int NAS_PROTOCOL_MESSAGE_ATTACH_REQUEST = 1; // 0x1
15157    field public static final int NAS_PROTOCOL_MESSAGE_AUTHENTICATION_AND_CIPHERING_RESPONSE = 6; // 0x6
15158    field public static final int NAS_PROTOCOL_MESSAGE_CM_REESTABLISHMENT_REQUEST = 9; // 0x9
15159    field public static final int NAS_PROTOCOL_MESSAGE_CM_SERVICE_REQUEST = 10; // 0xa
15160    field public static final int NAS_PROTOCOL_MESSAGE_DEREGISTRATION_REQUEST = 8; // 0x8
15161    field public static final int NAS_PROTOCOL_MESSAGE_DETACH_REQUEST = 3; // 0x3
15162    field public static final int NAS_PROTOCOL_MESSAGE_IDENTITY_RESPONSE = 2; // 0x2
15163    field public static final int NAS_PROTOCOL_MESSAGE_IMSI_DETACH_INDICATION = 11; // 0xb
15164    field public static final int NAS_PROTOCOL_MESSAGE_LOCATION_UPDATE_REQUEST = 5; // 0x5
15165    field public static final int NAS_PROTOCOL_MESSAGE_REGISTRATION_REQUEST = 7; // 0x7
15166    field public static final int NAS_PROTOCOL_MESSAGE_TRACKING_AREA_UPDATE_REQUEST = 4; // 0x4
15167    field public static final int NAS_PROTOCOL_MESSAGE_UNKNOWN = 0; // 0x0
15168  }
15169
15170  public final class DataFailCause {
15171    field @Deprecated public static final int VSNCP_APN_UNATHORIZED = 2238; // 0x8be
15172  }
15173
15174  public final class DataSpecificRegistrationInfo implements android.os.Parcelable {
15175    method public int describeContents();
15176    method public int getLteAttachExtraInfo();
15177    method public int getLteAttachResultType();
15178    method @Deprecated @NonNull public android.telephony.LteVopsSupportInfo getLteVopsSupportInfo();
15179    method @Nullable public android.telephony.VopsSupportInfo getVopsSupportInfo();
15180    method public void writeToParcel(android.os.Parcel, int);
15181    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.DataSpecificRegistrationInfo> CREATOR;
15182    field public static final int LTE_ATTACH_EXTRA_INFO_CSFB_NOT_PREFERRED = 1; // 0x1
15183    field public static final int LTE_ATTACH_EXTRA_INFO_NONE = 0; // 0x0
15184    field public static final int LTE_ATTACH_EXTRA_INFO_SMS_ONLY = 2; // 0x2
15185    field public static final int LTE_ATTACH_TYPE_COMBINED = 2; // 0x2
15186    field public static final int LTE_ATTACH_TYPE_EPS_ONLY = 1; // 0x1
15187    field public static final int LTE_ATTACH_TYPE_UNKNOWN = 0; // 0x0
15188  }
15189
15190  public final class DataThrottlingRequest implements android.os.Parcelable {
15191    method public int describeContents();
15192    method public long getCompletionDurationMillis();
15193    method public int getDataThrottlingAction();
15194    method public void writeToParcel(@NonNull android.os.Parcel, int);
15195    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.DataThrottlingRequest> CREATOR;
15196    field public static final int DATA_THROTTLING_ACTION_HOLD = 3; // 0x3
15197    field public static final int DATA_THROTTLING_ACTION_NO_DATA_THROTTLING = 0; // 0x0
15198    field public static final int DATA_THROTTLING_ACTION_THROTTLE_PRIMARY_CARRIER = 2; // 0x2
15199    field public static final int DATA_THROTTLING_ACTION_THROTTLE_SECONDARY_CARRIER = 1; // 0x1
15200  }
15201
15202  public static final class DataThrottlingRequest.Builder {
15203    ctor public DataThrottlingRequest.Builder();
15204    method @NonNull public android.telephony.DataThrottlingRequest build();
15205    method @NonNull public android.telephony.DataThrottlingRequest.Builder setCompletionDurationMillis(long);
15206    method @NonNull public android.telephony.DataThrottlingRequest.Builder setDataThrottlingAction(int);
15207  }
15208
15209  @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public abstract class DomainSelectionService extends android.app.Service {
15210    ctor public DomainSelectionService();
15211    method @NonNull public java.util.concurrent.Executor getCreateExecutor();
15212    method public void onBarringInfoUpdated(int, int, @NonNull android.telephony.BarringInfo);
15213    method @Nullable public final android.os.IBinder onBind(@Nullable android.content.Intent);
15214    method public abstract void onDomainSelection(@NonNull android.telephony.DomainSelectionService.SelectionAttributes, @NonNull android.telephony.TransportSelectorCallback);
15215    method public void onServiceStateUpdated(int, int, @NonNull android.telephony.ServiceState);
15216    field public static final int SCAN_TYPE_FULL_SERVICE = 2; // 0x2
15217    field public static final int SCAN_TYPE_LIMITED_SERVICE = 1; // 0x1
15218    field public static final int SCAN_TYPE_NO_PREFERENCE = 0; // 0x0
15219    field public static final int SELECTOR_TYPE_CALLING = 1; // 0x1
15220    field public static final int SELECTOR_TYPE_SMS = 2; // 0x2
15221  }
15222
15223  @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final class DomainSelectionService.SelectionAttributes implements android.os.Parcelable {
15224    method public int describeContents();
15225    method @Nullable public android.net.Uri getAddress();
15226    method @Nullable public String getCallId();
15227    method public int getCsDisconnectCause();
15228    method @Nullable public android.telephony.EmergencyRegistrationResult getEmergencyRegistrationResult();
15229    method @Nullable public android.telephony.ims.ImsReasonInfo getPsDisconnectCause();
15230    method public int getSelectorType();
15231    method public int getSlotIndex();
15232    method public int getSubscriptionId();
15233    method public boolean isEmergency();
15234    method public boolean isExitedFromAirplaneMode();
15235    method public boolean isTestEmergencyNumber();
15236    method public boolean isVideoCall();
15237    method public void writeToParcel(@NonNull android.os.Parcel, int);
15238    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.DomainSelectionService.SelectionAttributes> CREATOR;
15239  }
15240
15241  @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final class DomainSelectionService.SelectionAttributes.Builder {
15242    ctor public DomainSelectionService.SelectionAttributes.Builder(int, int, int);
15243    method @NonNull public android.telephony.DomainSelectionService.SelectionAttributes build();
15244    method @NonNull public android.telephony.DomainSelectionService.SelectionAttributes.Builder setAddress(@Nullable android.net.Uri);
15245    method @NonNull public android.telephony.DomainSelectionService.SelectionAttributes.Builder setCallId(@Nullable String);
15246    method @NonNull public android.telephony.DomainSelectionService.SelectionAttributes.Builder setCsDisconnectCause(int);
15247    method @NonNull public android.telephony.DomainSelectionService.SelectionAttributes.Builder setEmergency(boolean);
15248    method @NonNull public android.telephony.DomainSelectionService.SelectionAttributes.Builder setEmergencyRegistrationResult(@Nullable android.telephony.EmergencyRegistrationResult);
15249    method @NonNull public android.telephony.DomainSelectionService.SelectionAttributes.Builder setExitedFromAirplaneMode(boolean);
15250    method @NonNull public android.telephony.DomainSelectionService.SelectionAttributes.Builder setPsDisconnectCause(@Nullable android.telephony.ims.ImsReasonInfo);
15251    method @NonNull public android.telephony.DomainSelectionService.SelectionAttributes.Builder setTestEmergencyNumber(boolean);
15252    method @NonNull public android.telephony.DomainSelectionService.SelectionAttributes.Builder setVideoCall(boolean);
15253  }
15254
15255  @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public interface DomainSelector {
15256    method public void finishSelection();
15257    method public void reselectDomain(@NonNull android.telephony.DomainSelectionService.SelectionAttributes);
15258  }
15259
15260  @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public final class EmergencyRegistrationResult implements android.os.Parcelable {
15261    method public int describeContents();
15262    method public int getAccessNetwork();
15263    method @NonNull public String getCountryIso();
15264    method public int getDomain();
15265    method @NonNull public String getMcc();
15266    method @NonNull public String getMnc();
15267    method public int getNwProvidedEmc();
15268    method public int getNwProvidedEmf();
15269    method public int getRegState();
15270    method public boolean isEmcBearerSupported();
15271    method public boolean isVopsSupported();
15272    method public void writeToParcel(@NonNull android.os.Parcel, int);
15273    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.EmergencyRegistrationResult> CREATOR;
15274  }
15275
15276  public final class ImsiEncryptionInfo implements android.os.Parcelable {
15277    method public int describeContents();
15278    method @Nullable public String getKeyIdentifier();
15279    method @Nullable public java.security.PublicKey getPublicKey();
15280    method public void writeToParcel(@NonNull android.os.Parcel, int);
15281    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ImsiEncryptionInfo> CREATOR;
15282  }
15283
15284  public final class LinkCapacityEstimate implements android.os.Parcelable {
15285    ctor public LinkCapacityEstimate(int, int, int);
15286    method public int describeContents();
15287    method public int getDownlinkCapacityKbps();
15288    method public int getType();
15289    method public int getUplinkCapacityKbps();
15290    method public void writeToParcel(@NonNull android.os.Parcel, int);
15291    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.LinkCapacityEstimate> CREATOR;
15292    field public static final int INVALID = -1; // 0xffffffff
15293    field public static final int LCE_TYPE_COMBINED = 2; // 0x2
15294    field public static final int LCE_TYPE_PRIMARY = 0; // 0x0
15295    field public static final int LCE_TYPE_SECONDARY = 1; // 0x1
15296  }
15297
15298  public final class LteVopsSupportInfo extends android.telephony.VopsSupportInfo {
15299    ctor public LteVopsSupportInfo(int, int);
15300    method public boolean equals(@Nullable Object);
15301    method public int getEmcBearerSupport();
15302    method public int getVopsSupport();
15303    method public int hashCode();
15304    method public boolean isEmergencyServiceFallbackSupported();
15305    method public boolean isEmergencyServiceSupported();
15306    method public boolean isVopsSupported();
15307    method public void writeToParcel(@NonNull android.os.Parcel, int);
15308    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.LteVopsSupportInfo> CREATOR;
15309    field @Deprecated public static final int LTE_STATUS_NOT_AVAILABLE = 1; // 0x1
15310    field public static final int LTE_STATUS_NOT_SUPPORTED = 3; // 0x3
15311    field public static final int LTE_STATUS_SUPPORTED = 2; // 0x2
15312  }
15313
15314  public class MbmsDownloadSession implements java.lang.AutoCloseable {
15315    field public static final String MBMS_DOWNLOAD_SERVICE_ACTION = "android.telephony.action.EmbmsDownload";
15316  }
15317
15318  public class MbmsGroupCallSession implements java.lang.AutoCloseable {
15319    field public static final String MBMS_GROUP_CALL_SERVICE_ACTION = "android.telephony.action.EmbmsGroupCall";
15320  }
15321
15322  public class MbmsStreamingSession implements java.lang.AutoCloseable {
15323    field public static final String MBMS_STREAMING_SERVICE_ACTION = "android.telephony.action.EmbmsStreaming";
15324  }
15325
15326  public final class ModemActivityInfo implements android.os.Parcelable {
15327    method public int describeContents();
15328    method @NonNull public android.telephony.ModemActivityInfo getDelta(@NonNull android.telephony.ModemActivityInfo);
15329    method public long getIdleTimeMillis();
15330    method public static int getNumTxPowerLevels();
15331    method public long getReceiveTimeMillis();
15332    method public long getSleepTimeMillis();
15333    method public long getTimestampMillis();
15334    method public long getTransmitDurationMillisAtPowerLevel(int);
15335    method @NonNull public android.util.Range<java.lang.Integer> getTransmitPowerRange(int);
15336    method public void writeToParcel(@NonNull android.os.Parcel, int);
15337    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ModemActivityInfo> CREATOR;
15338    field public static final int TX_POWER_LEVEL_0 = 0; // 0x0
15339    field public static final int TX_POWER_LEVEL_1 = 1; // 0x1
15340    field public static final int TX_POWER_LEVEL_2 = 2; // 0x2
15341    field public static final int TX_POWER_LEVEL_3 = 3; // 0x3
15342    field public static final int TX_POWER_LEVEL_4 = 4; // 0x4
15343  }
15344
15345  public final class NetworkRegistrationInfo implements android.os.Parcelable {
15346    method @Nullable public android.telephony.DataSpecificRegistrationInfo getDataSpecificInfo();
15347    method public int getNetworkRegistrationState();
15348    method @Deprecated public int getRegistrationState();
15349    method public int getRoamingType();
15350    method public boolean isEmergencyEnabled();
15351    method public void writeToParcel(android.os.Parcel, int);
15352    field public static final int REGISTRATION_STATE_DENIED = 3; // 0x3
15353    field public static final int REGISTRATION_STATE_EMERGENCY = 6; // 0x6
15354    field public static final int REGISTRATION_STATE_HOME = 1; // 0x1
15355    field public static final int REGISTRATION_STATE_NOT_REGISTERED_OR_SEARCHING = 0; // 0x0
15356    field public static final int REGISTRATION_STATE_NOT_REGISTERED_SEARCHING = 2; // 0x2
15357    field public static final int REGISTRATION_STATE_ROAMING = 5; // 0x5
15358    field public static final int REGISTRATION_STATE_UNKNOWN = 4; // 0x4
15359  }
15360
15361  public static final class NetworkRegistrationInfo.Builder {
15362    ctor public NetworkRegistrationInfo.Builder();
15363    method @NonNull public android.telephony.NetworkRegistrationInfo build();
15364    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setAccessNetworkTechnology(int);
15365    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setAvailableServices(@NonNull java.util.List<java.lang.Integer>);
15366    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setCellIdentity(@Nullable android.telephony.CellIdentity);
15367    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setDomain(int);
15368    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setEmergencyOnly(boolean);
15369    method @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") @NonNull public android.telephony.NetworkRegistrationInfo.Builder setIsNonTerrestrialNetwork(boolean);
15370    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setRegisteredPlmn(@Nullable String);
15371    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setRegistrationState(int);
15372    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setRejectCause(int);
15373    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setTransportType(int);
15374  }
15375
15376  public abstract class NetworkService extends android.app.Service {
15377    ctor public NetworkService();
15378    method public android.os.IBinder onBind(android.content.Intent);
15379    method @Nullable public abstract android.telephony.NetworkService.NetworkServiceProvider onCreateNetworkServiceProvider(int);
15380    field public static final String SERVICE_INTERFACE = "android.telephony.NetworkService";
15381  }
15382
15383  public abstract class NetworkService.NetworkServiceProvider implements java.lang.AutoCloseable {
15384    ctor public NetworkService.NetworkServiceProvider(int);
15385    method public abstract void close();
15386    method public final int getSlotIndex();
15387    method public final void notifyNetworkRegistrationInfoChanged();
15388    method public void requestNetworkRegistrationInfo(int, @NonNull android.telephony.NetworkServiceCallback);
15389  }
15390
15391  public class NetworkServiceCallback {
15392    method public void onRequestNetworkRegistrationInfoComplete(int, @Nullable android.telephony.NetworkRegistrationInfo);
15393    field public static final int RESULT_ERROR_BUSY = 3; // 0x3
15394    field public static final int RESULT_ERROR_FAILED = 5; // 0x5
15395    field public static final int RESULT_ERROR_ILLEGAL_STATE = 4; // 0x4
15396    field public static final int RESULT_ERROR_INVALID_ARG = 2; // 0x2
15397    field public static final int RESULT_ERROR_UNSUPPORTED = 1; // 0x1
15398    field public static final int RESULT_SUCCESS = 0; // 0x0
15399  }
15400
15401  public final class NrVopsSupportInfo extends android.telephony.VopsSupportInfo {
15402    ctor public NrVopsSupportInfo(int, int, int);
15403    method public boolean equals(@Nullable Object);
15404    method public int getEmcSupport();
15405    method public int getEmfSupport();
15406    method public int getVopsSupport();
15407    method public int hashCode();
15408    method public boolean isEmergencyServiceFallbackSupported();
15409    method public boolean isEmergencyServiceSupported();
15410    method public boolean isVopsSupported();
15411    method public void writeToParcel(@NonNull android.os.Parcel, int);
15412    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.NrVopsSupportInfo> CREATOR;
15413    field public static final int NR_STATUS_EMC_5GCN_ONLY = 1; // 0x1
15414    field public static final int NR_STATUS_EMC_EUTRA_5GCN_ONLY = 2; // 0x2
15415    field public static final int NR_STATUS_EMC_NOT_SUPPORTED = 0; // 0x0
15416    field public static final int NR_STATUS_EMC_NR_EUTRA_5GCN = 3; // 0x3
15417    field public static final int NR_STATUS_EMF_5GCN_ONLY = 1; // 0x1
15418    field public static final int NR_STATUS_EMF_EUTRA_5GCN_ONLY = 2; // 0x2
15419    field public static final int NR_STATUS_EMF_NOT_SUPPORTED = 0; // 0x0
15420    field public static final int NR_STATUS_EMF_NR_EUTRA_5GCN = 3; // 0x3
15421    field public static final int NR_STATUS_VOPS_3GPP_SUPPORTED = 1; // 0x1
15422    field public static final int NR_STATUS_VOPS_NON_3GPP_SUPPORTED = 2; // 0x2
15423    field public static final int NR_STATUS_VOPS_NOT_SUPPORTED = 0; // 0x0
15424  }
15425
15426  public interface NumberVerificationCallback {
15427    method public default void onCallReceived(@NonNull String);
15428    method public default void onVerificationFailed(int);
15429    field public static final int REASON_CONCURRENT_REQUESTS = 4; // 0x4
15430    field public static final int REASON_IN_ECBM = 5; // 0x5
15431    field public static final int REASON_IN_EMERGENCY_CALL = 6; // 0x6
15432    field public static final int REASON_NETWORK_NOT_AVAILABLE = 2; // 0x2
15433    field public static final int REASON_TIMED_OUT = 1; // 0x1
15434    field public static final int REASON_TOO_MANY_CALLS = 3; // 0x3
15435    field public static final int REASON_UNSPECIFIED = 0; // 0x0
15436  }
15437
15438  public final class PhoneCapability implements android.os.Parcelable {
15439    method public int describeContents();
15440    method @NonNull public int[] getDeviceNrCapabilities();
15441    method @IntRange(from=1) public int getMaxActiveDataSubscriptions();
15442    method @IntRange(from=1) public int getMaxActiveVoiceSubscriptions();
15443    method public void writeToParcel(@NonNull android.os.Parcel, int);
15444    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.PhoneCapability> CREATOR;
15445    field public static final int DEVICE_NR_CAPABILITY_NSA = 1; // 0x1
15446    field public static final int DEVICE_NR_CAPABILITY_SA = 2; // 0x2
15447  }
15448
15449  public final class PhoneNumberRange implements android.os.Parcelable {
15450    ctor public PhoneNumberRange(@NonNull String, @NonNull String, @NonNull String, @NonNull String);
15451    method public int describeContents();
15452    method public boolean matches(@NonNull String);
15453    method public void writeToParcel(android.os.Parcel, int);
15454    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.PhoneNumberRange> CREATOR;
15455  }
15456
15457  public class PhoneNumberUtils {
15458    method @NonNull public static String getUsernameFromUriNumber(@NonNull String);
15459    method public static boolean isUriNumber(@Nullable String);
15460    method public static boolean isVoiceMailNumber(@NonNull android.content.Context, int, @Nullable String);
15461  }
15462
15463  @Deprecated public class PhoneStateListener {
15464    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onCallAttributesChanged(@NonNull android.telephony.CallAttributes);
15465    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public void onOutgoingEmergencyCall(@NonNull android.telephony.emergency.EmergencyNumber);
15466    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public void onOutgoingEmergencyCall(@NonNull android.telephony.emergency.EmergencyNumber, int);
15467    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public void onOutgoingEmergencySms(@NonNull android.telephony.emergency.EmergencyNumber);
15468    method @Deprecated public void onOutgoingEmergencySms(@NonNull android.telephony.emergency.EmergencyNumber, int);
15469    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onPreciseCallStateChanged(@NonNull android.telephony.PreciseCallState);
15470    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void onRadioPowerStateChanged(int);
15471    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void onSrvccStateChanged(int);
15472    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void onVoiceActivationStateChanged(int);
15473    field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int LISTEN_CALL_ATTRIBUTES_CHANGED = 67108864; // 0x4000000
15474    field @Deprecated @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public static final int LISTEN_OUTGOING_EMERGENCY_CALL = 268435456; // 0x10000000
15475    field @Deprecated @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public static final int LISTEN_OUTGOING_EMERGENCY_SMS = 536870912; // 0x20000000
15476    field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int LISTEN_PRECISE_CALL_STATE = 2048; // 0x800
15477    field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int LISTEN_RADIO_POWER_STATE_CHANGED = 8388608; // 0x800000
15478    field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int LISTEN_SRVCC_STATE_CHANGED = 16384; // 0x4000
15479    field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int LISTEN_VOICE_ACTIVATION_STATE = 131072; // 0x20000
15480  }
15481
15482  public final class PinResult implements android.os.Parcelable {
15483    method public int describeContents();
15484    method public int getAttemptsRemaining();
15485    method public int getResult();
15486    method public void writeToParcel(@NonNull android.os.Parcel, int);
15487    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.PinResult> CREATOR;
15488    field public static final int PIN_RESULT_TYPE_ABORTED = 3; // 0x3
15489    field public static final int PIN_RESULT_TYPE_FAILURE = 2; // 0x2
15490    field public static final int PIN_RESULT_TYPE_INCORRECT = 1; // 0x1
15491    field public static final int PIN_RESULT_TYPE_SUCCESS = 0; // 0x0
15492  }
15493
15494  public final class PreciseCallState implements android.os.Parcelable {
15495    ctor public PreciseCallState(int, int, int, int, int);
15496    method public int describeContents();
15497    method public int getBackgroundCallState();
15498    method public int getForegroundCallState();
15499    method public int getRingingCallState();
15500    method public void writeToParcel(android.os.Parcel, int);
15501    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.PreciseCallState> CREATOR;
15502    field public static final int PRECISE_CALL_STATE_ACTIVE = 1; // 0x1
15503    field public static final int PRECISE_CALL_STATE_ALERTING = 4; // 0x4
15504    field public static final int PRECISE_CALL_STATE_DIALING = 3; // 0x3
15505    field public static final int PRECISE_CALL_STATE_DISCONNECTED = 7; // 0x7
15506    field public static final int PRECISE_CALL_STATE_DISCONNECTING = 8; // 0x8
15507    field public static final int PRECISE_CALL_STATE_HOLDING = 2; // 0x2
15508    field public static final int PRECISE_CALL_STATE_IDLE = 0; // 0x0
15509    field public static final int PRECISE_CALL_STATE_INCOMING = 5; // 0x5
15510    field public static final int PRECISE_CALL_STATE_INCOMING_SETUP = 9; // 0x9
15511    field public static final int PRECISE_CALL_STATE_NOT_VALID = -1; // 0xffffffff
15512    field public static final int PRECISE_CALL_STATE_WAITING = 6; // 0x6
15513  }
15514
15515  public final class PreciseDataConnectionState implements android.os.Parcelable {
15516    method @Deprecated @NonNull public String getDataConnectionApn();
15517    method @Deprecated public int getDataConnectionApnTypeBitMask();
15518    method @Deprecated public int getDataConnectionFailCause();
15519    method @Deprecated public int getDataConnectionState();
15520  }
15521
15522  public final class PreciseDisconnectCause {
15523    field public static final int ACCESS_CLASS_BLOCKED = 260; // 0x104
15524    field public static final int ACCESS_INFORMATION_DISCARDED = 43; // 0x2b
15525    field public static final int ACM_LIMIT_EXCEEDED = 68; // 0x44
15526    field public static final int BEARER_CAPABILITY_NOT_AUTHORIZED = 57; // 0x39
15527    field public static final int BEARER_NOT_AVAIL = 58; // 0x3a
15528    field public static final int BEARER_SERVICE_NOT_IMPLEMENTED = 65; // 0x41
15529    field public static final int BUSY = 17; // 0x11
15530    field public static final int CALL_BARRED = 240; // 0xf0
15531    field public static final int CALL_REJECTED = 21; // 0x15
15532    field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CDMA_ACCESS_BLOCKED = 1009; // 0x3f1
15533    field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CDMA_ACCESS_FAILURE = 1006; // 0x3ee
15534    field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CDMA_DROP = 1001; // 0x3e9
15535    field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CDMA_INTERCEPT = 1002; // 0x3ea
15536    field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CDMA_LOCKED_UNTIL_POWER_CYCLE = 1000; // 0x3e8
15537    field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CDMA_NOT_EMERGENCY = 1008; // 0x3f0
15538    field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CDMA_PREEMPTED = 1007; // 0x3ef
15539    field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CDMA_REORDER = 1003; // 0x3eb
15540    field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CDMA_RETRY_ORDER = 1005; // 0x3ed
15541    field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CDMA_SO_REJECT = 1004; // 0x3ec
15542    field public static final int CHANNEL_NOT_AVAIL = 44; // 0x2c
15543    field public static final int CHANNEL_UNACCEPTABLE = 6; // 0x6
15544    field public static final int CONDITIONAL_IE_ERROR = 100; // 0x64
15545    field public static final int DESTINATION_OUT_OF_ORDER = 27; // 0x1b
15546    field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final int EMERGENCY_PERM_FAILURE = 326; // 0x146
15547    field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final int EMERGENCY_TEMP_FAILURE = 325; // 0x145
15548    field public static final int ERROR_UNSPECIFIED = 65535; // 0xffff
15549    field public static final int FACILITY_REJECTED = 29; // 0x1d
15550    field public static final int FDN_BLOCKED = 241; // 0xf1
15551    field public static final int IMEI_NOT_ACCEPTED = 243; // 0xf3
15552    field public static final int IMSI_UNKNOWN_IN_VLR = 242; // 0xf2
15553    field public static final int INCOMING_CALLS_BARRED_WITHIN_CUG = 55; // 0x37
15554    field public static final int INCOMPATIBLE_DESTINATION = 88; // 0x58
15555    field public static final int INFORMATION_ELEMENT_NON_EXISTENT = 99; // 0x63
15556    field public static final int INTERWORKING_UNSPECIFIED = 127; // 0x7f
15557    field public static final int INVALID_MANDATORY_INFORMATION = 96; // 0x60
15558    field public static final int INVALID_NUMBER_FORMAT = 28; // 0x1c
15559    field public static final int INVALID_TRANSACTION_IDENTIFIER = 81; // 0x51
15560    field public static final int MESSAGE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE = 101; // 0x65
15561    field public static final int MESSAGE_TYPE_NON_IMPLEMENTED = 97; // 0x61
15562    field public static final int MESSAGE_TYPE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE = 98; // 0x62
15563    field public static final int NETWORK_DETACH = 261; // 0x105
15564    field public static final int NETWORK_OUT_OF_ORDER = 38; // 0x26
15565    field public static final int NETWORK_REJECT = 252; // 0xfc
15566    field public static final int NETWORK_RESP_TIMEOUT = 251; // 0xfb
15567    field public static final int NORMAL = 16; // 0x10
15568    field public static final int NORMAL_UNSPECIFIED = 31; // 0x1f
15569    field public static final int NOT_VALID = -1; // 0xffffffff
15570    field public static final int NO_ANSWER_FROM_USER = 19; // 0x13
15571    field public static final int NO_CIRCUIT_AVAIL = 34; // 0x22
15572    field public static final int NO_DISCONNECT_CAUSE_AVAILABLE = 0; // 0x0
15573    field public static final int NO_ROUTE_TO_DESTINATION = 3; // 0x3
15574    field public static final int NO_USER_RESPONDING = 18; // 0x12
15575    field public static final int NO_VALID_SIM = 249; // 0xf9
15576    field public static final int NUMBER_CHANGED = 22; // 0x16
15577    field public static final int OEM_CAUSE_1 = 61441; // 0xf001
15578    field public static final int OEM_CAUSE_10 = 61450; // 0xf00a
15579    field public static final int OEM_CAUSE_11 = 61451; // 0xf00b
15580    field public static final int OEM_CAUSE_12 = 61452; // 0xf00c
15581    field public static final int OEM_CAUSE_13 = 61453; // 0xf00d
15582    field public static final int OEM_CAUSE_14 = 61454; // 0xf00e
15583    field public static final int OEM_CAUSE_15 = 61455; // 0xf00f
15584    field public static final int OEM_CAUSE_2 = 61442; // 0xf002
15585    field public static final int OEM_CAUSE_3 = 61443; // 0xf003
15586    field public static final int OEM_CAUSE_4 = 61444; // 0xf004
15587    field public static final int OEM_CAUSE_5 = 61445; // 0xf005
15588    field public static final int OEM_CAUSE_6 = 61446; // 0xf006
15589    field public static final int OEM_CAUSE_7 = 61447; // 0xf007
15590    field public static final int OEM_CAUSE_8 = 61448; // 0xf008
15591    field public static final int OEM_CAUSE_9 = 61449; // 0xf009
15592    field public static final int ONLY_DIGITAL_INFORMATION_BEARER_AVAILABLE = 70; // 0x46
15593    field public static final int OPERATOR_DETERMINED_BARRING = 8; // 0x8
15594    field public static final int OUT_OF_SRV = 248; // 0xf8
15595    field public static final int PREEMPTION = 25; // 0x19
15596    field public static final int PROTOCOL_ERROR_UNSPECIFIED = 111; // 0x6f
15597    field public static final int QOS_NOT_AVAIL = 49; // 0x31
15598    field public static final int RADIO_ACCESS_FAILURE = 253; // 0xfd
15599    field public static final int RADIO_INTERNAL_ERROR = 250; // 0xfa
15600    field public static final int RADIO_LINK_FAILURE = 254; // 0xfe
15601    field public static final int RADIO_LINK_LOST = 255; // 0xff
15602    field public static final int RADIO_OFF = 247; // 0xf7
15603    field public static final int RADIO_RELEASE_ABNORMAL = 259; // 0x103
15604    field public static final int RADIO_RELEASE_NORMAL = 258; // 0x102
15605    field public static final int RADIO_SETUP_FAILURE = 257; // 0x101
15606    field public static final int RADIO_UPLINK_FAILURE = 256; // 0x100
15607    field public static final int RECOVERY_ON_TIMER_EXPIRED = 102; // 0x66
15608    field public static final int REQUESTED_FACILITY_NOT_IMPLEMENTED = 69; // 0x45
15609    field public static final int REQUESTED_FACILITY_NOT_SUBSCRIBED = 50; // 0x32
15610    field public static final int RESOURCES_UNAVAILABLE_OR_UNSPECIFIED = 47; // 0x2f
15611    field public static final int SEMANTICALLY_INCORRECT_MESSAGE = 95; // 0x5f
15612    field public static final int SERVICE_OPTION_NOT_AVAILABLE = 63; // 0x3f
15613    field public static final int SERVICE_OR_OPTION_NOT_IMPLEMENTED = 79; // 0x4f
15614    field public static final int STATUS_ENQUIRY = 30; // 0x1e
15615    field public static final int SWITCHING_CONGESTION = 42; // 0x2a
15616    field public static final int TEMPORARY_FAILURE = 41; // 0x29
15617    field public static final int UNOBTAINABLE_NUMBER = 1; // 0x1
15618    field public static final int USER_NOT_MEMBER_OF_CUG = 87; // 0x57
15619  }
15620
15621  @FlaggedApi("com.android.internal.telephony.flags.security_algorithms_update_indications") public final class SecurityAlgorithmUpdate implements android.os.Parcelable {
15622    method public int describeContents();
15623    method public int getConnectionEvent();
15624    method public int getEncryption();
15625    method public int getIntegrity();
15626    method public boolean isUnprotectedEmergency();
15627    method public void writeToParcel(@NonNull android.os.Parcel, int);
15628    field public static final int CONNECTION_EVENT_AS_SIGNALLING_5G = 11; // 0xb
15629    field public static final int CONNECTION_EVENT_AS_SIGNALLING_LTE = 5; // 0x5
15630    field public static final int CONNECTION_EVENT_CS_SIGNALLING_3G = 2; // 0x2
15631    field public static final int CONNECTION_EVENT_CS_SIGNALLING_GSM = 0; // 0x0
15632    field public static final int CONNECTION_EVENT_NAS_SIGNALLING_5G = 10; // 0xa
15633    field public static final int CONNECTION_EVENT_NAS_SIGNALLING_LTE = 4; // 0x4
15634    field public static final int CONNECTION_EVENT_PS_SIGNALLING_3G = 3; // 0x3
15635    field public static final int CONNECTION_EVENT_PS_SIGNALLING_GPRS = 1; // 0x1
15636    field public static final int CONNECTION_EVENT_VOLTE_RTP = 8; // 0x8
15637    field public static final int CONNECTION_EVENT_VOLTE_RTP_SOS = 9; // 0x9
15638    field public static final int CONNECTION_EVENT_VOLTE_SIP = 6; // 0x6
15639    field public static final int CONNECTION_EVENT_VOLTE_SIP_SOS = 7; // 0x7
15640    field public static final int CONNECTION_EVENT_VONR_RTP = 14; // 0xe
15641    field public static final int CONNECTION_EVENT_VONR_RTP_SOS = 15; // 0xf
15642    field public static final int CONNECTION_EVENT_VONR_SIP = 12; // 0xc
15643    field public static final int CONNECTION_EVENT_VONR_SIP_SOS = 13; // 0xd
15644    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.SecurityAlgorithmUpdate> CREATOR;
15645    field public static final int SECURITY_ALGORITHM_A50 = 0; // 0x0
15646    field public static final int SECURITY_ALGORITHM_A51 = 1; // 0x1
15647    field public static final int SECURITY_ALGORITHM_A52 = 2; // 0x2
15648    field public static final int SECURITY_ALGORITHM_A53 = 3; // 0x3
15649    field public static final int SECURITY_ALGORITHM_A54 = 4; // 0x4
15650    field public static final int SECURITY_ALGORITHM_AES_CBC = 71; // 0x47
15651    field public static final int SECURITY_ALGORITHM_AES_EDE3_CBC = 73; // 0x49
15652    field public static final int SECURITY_ALGORITHM_AES_GCM = 69; // 0x45
15653    field public static final int SECURITY_ALGORITHM_AES_GMAC = 70; // 0x46
15654    field public static final int SECURITY_ALGORITHM_AUTH_HMAC_SHA2_256_128 = 101; // 0x65
15655    field public static final int SECURITY_ALGORITHM_DES_EDE3_CBC = 72; // 0x48
15656    field public static final int SECURITY_ALGORITHM_EEA0 = 41; // 0x29
15657    field public static final int SECURITY_ALGORITHM_EEA1 = 42; // 0x2a
15658    field public static final int SECURITY_ALGORITHM_EEA2 = 43; // 0x2b
15659    field public static final int SECURITY_ALGORITHM_EEA3 = 44; // 0x2c
15660    field public static final int SECURITY_ALGORITHM_ENCR_AES_CBC = 100; // 0x64
15661    field public static final int SECURITY_ALGORITHM_ENCR_AES_GCM_16 = 99; // 0x63
15662    field public static final int SECURITY_ALGORITHM_GEA0 = 14; // 0xe
15663    field public static final int SECURITY_ALGORITHM_GEA1 = 15; // 0xf
15664    field public static final int SECURITY_ALGORITHM_GEA2 = 16; // 0x10
15665    field public static final int SECURITY_ALGORITHM_GEA3 = 17; // 0x11
15666    field public static final int SECURITY_ALGORITHM_GEA4 = 18; // 0x12
15667    field public static final int SECURITY_ALGORITHM_GEA5 = 19; // 0x13
15668    field public static final int SECURITY_ALGORITHM_HMAC_MD5_96 = 75; // 0x4b
15669    field public static final int SECURITY_ALGORITHM_HMAC_SHA1_96 = 74; // 0x4a
15670    field public static final int SECURITY_ALGORITHM_IMS_NULL = 67; // 0x43
15671    field public static final int SECURITY_ALGORITHM_NEA0 = 55; // 0x37
15672    field public static final int SECURITY_ALGORITHM_NEA1 = 56; // 0x38
15673    field public static final int SECURITY_ALGORITHM_NEA2 = 57; // 0x39
15674    field public static final int SECURITY_ALGORITHM_NEA3 = 58; // 0x3a
15675    field public static final int SECURITY_ALGORITHM_ORYX = 124; // 0x7c
15676    field public static final int SECURITY_ALGORITHM_OTHER = 114; // 0x72
15677    field public static final int SECURITY_ALGORITHM_RTP = 85; // 0x55
15678    field public static final int SECURITY_ALGORITHM_SIP_NO_IPSEC_CONFIG = 66; // 0x42
15679    field public static final int SECURITY_ALGORITHM_SIP_NULL = 68; // 0x44
15680    field public static final int SECURITY_ALGORITHM_SRTP_AES_COUNTER = 87; // 0x57
15681    field public static final int SECURITY_ALGORITHM_SRTP_AES_F8 = 88; // 0x58
15682    field public static final int SECURITY_ALGORITHM_SRTP_HMAC_SHA1 = 89; // 0x59
15683    field public static final int SECURITY_ALGORITHM_SRTP_NULL = 86; // 0x56
15684    field public static final int SECURITY_ALGORITHM_UEA0 = 29; // 0x1d
15685    field public static final int SECURITY_ALGORITHM_UEA1 = 30; // 0x1e
15686    field public static final int SECURITY_ALGORITHM_UEA2 = 31; // 0x1f
15687    field public static final int SECURITY_ALGORITHM_UNKNOWN = 113; // 0x71
15688  }
15689
15690  public class ServiceState implements android.os.Parcelable {
15691    method @Nullable public android.telephony.NetworkRegistrationInfo getNetworkRegistrationInfo(int, int);
15692    method @NonNull public java.util.List<android.telephony.NetworkRegistrationInfo> getNetworkRegistrationInfoListForDomain(int);
15693    method @NonNull public java.util.List<android.telephony.NetworkRegistrationInfo> getNetworkRegistrationInfoListForTransportType(int);
15694    field public static final int ROAMING_TYPE_DOMESTIC = 2; // 0x2
15695    field public static final int ROAMING_TYPE_INTERNATIONAL = 3; // 0x3
15696    field public static final int ROAMING_TYPE_NOT_ROAMING = 0; // 0x0
15697    field public static final int ROAMING_TYPE_UNKNOWN = 1; // 0x1
15698  }
15699
15700  public final class SignalStrengthUpdateRequest implements android.os.Parcelable {
15701    method public boolean isSystemThresholdReportingRequestedWhileIdle();
15702  }
15703
15704  public static final class SignalStrengthUpdateRequest.Builder {
15705    method @NonNull @RequiresPermission("android.permission.LISTEN_ALWAYS_REPORTED_SIGNAL_STRENGTH") public android.telephony.SignalStrengthUpdateRequest.Builder setSystemThresholdReportingRequestedWhileIdle(boolean);
15706  }
15707
15708  public final class SmsCbCmasInfo implements android.os.Parcelable {
15709    ctor public SmsCbCmasInfo(int, int, int, int, int, int);
15710    method public int describeContents();
15711    method public int getCategory();
15712    method public int getCertainty();
15713    method public int getMessageClass();
15714    method public int getResponseType();
15715    method public int getSeverity();
15716    method public int getUrgency();
15717    method public void writeToParcel(android.os.Parcel, int);
15718    field public static final int CMAS_CATEGORY_CBRNE = 10; // 0xa
15719    field public static final int CMAS_CATEGORY_ENV = 7; // 0x7
15720    field public static final int CMAS_CATEGORY_FIRE = 5; // 0x5
15721    field public static final int CMAS_CATEGORY_GEO = 0; // 0x0
15722    field public static final int CMAS_CATEGORY_HEALTH = 6; // 0x6
15723    field public static final int CMAS_CATEGORY_INFRA = 9; // 0x9
15724    field public static final int CMAS_CATEGORY_MET = 1; // 0x1
15725    field public static final int CMAS_CATEGORY_OTHER = 11; // 0xb
15726    field public static final int CMAS_CATEGORY_RESCUE = 4; // 0x4
15727    field public static final int CMAS_CATEGORY_SAFETY = 2; // 0x2
15728    field public static final int CMAS_CATEGORY_SECURITY = 3; // 0x3
15729    field public static final int CMAS_CATEGORY_TRANSPORT = 8; // 0x8
15730    field public static final int CMAS_CATEGORY_UNKNOWN = -1; // 0xffffffff
15731    field public static final int CMAS_CERTAINTY_LIKELY = 1; // 0x1
15732    field public static final int CMAS_CERTAINTY_OBSERVED = 0; // 0x0
15733    field public static final int CMAS_CERTAINTY_UNKNOWN = -1; // 0xffffffff
15734    field public static final int CMAS_CLASS_CHILD_ABDUCTION_EMERGENCY = 3; // 0x3
15735    field public static final int CMAS_CLASS_CMAS_EXERCISE = 5; // 0x5
15736    field public static final int CMAS_CLASS_EXTREME_THREAT = 1; // 0x1
15737    field public static final int CMAS_CLASS_OPERATOR_DEFINED_USE = 6; // 0x6
15738    field public static final int CMAS_CLASS_PRESIDENTIAL_LEVEL_ALERT = 0; // 0x0
15739    field public static final int CMAS_CLASS_REQUIRED_MONTHLY_TEST = 4; // 0x4
15740    field public static final int CMAS_CLASS_SEVERE_THREAT = 2; // 0x2
15741    field public static final int CMAS_CLASS_UNKNOWN = -1; // 0xffffffff
15742    field public static final int CMAS_RESPONSE_TYPE_ASSESS = 6; // 0x6
15743    field public static final int CMAS_RESPONSE_TYPE_AVOID = 5; // 0x5
15744    field public static final int CMAS_RESPONSE_TYPE_EVACUATE = 1; // 0x1
15745    field public static final int CMAS_RESPONSE_TYPE_EXECUTE = 3; // 0x3
15746    field public static final int CMAS_RESPONSE_TYPE_MONITOR = 4; // 0x4
15747    field public static final int CMAS_RESPONSE_TYPE_NONE = 7; // 0x7
15748    field public static final int CMAS_RESPONSE_TYPE_PREPARE = 2; // 0x2
15749    field public static final int CMAS_RESPONSE_TYPE_SHELTER = 0; // 0x0
15750    field public static final int CMAS_RESPONSE_TYPE_UNKNOWN = -1; // 0xffffffff
15751    field public static final int CMAS_SEVERITY_EXTREME = 0; // 0x0
15752    field public static final int CMAS_SEVERITY_SEVERE = 1; // 0x1
15753    field public static final int CMAS_SEVERITY_UNKNOWN = -1; // 0xffffffff
15754    field public static final int CMAS_URGENCY_EXPECTED = 1; // 0x1
15755    field public static final int CMAS_URGENCY_IMMEDIATE = 0; // 0x0
15756    field public static final int CMAS_URGENCY_UNKNOWN = -1; // 0xffffffff
15757    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.SmsCbCmasInfo> CREATOR;
15758  }
15759
15760  public final class SmsCbEtwsInfo implements android.os.Parcelable {
15761    ctor public SmsCbEtwsInfo(int, boolean, boolean, boolean, @Nullable byte[]);
15762    method public int describeContents();
15763    method @Nullable public byte[] getPrimaryNotificationSignature();
15764    method public long getPrimaryNotificationTimestamp();
15765    method public int getWarningType();
15766    method public boolean isEmergencyUserAlert();
15767    method public boolean isPopupAlert();
15768    method public boolean isPrimary();
15769    method public void writeToParcel(android.os.Parcel, int);
15770    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.SmsCbEtwsInfo> CREATOR;
15771    field public static final int ETWS_WARNING_TYPE_EARTHQUAKE = 0; // 0x0
15772    field public static final int ETWS_WARNING_TYPE_EARTHQUAKE_AND_TSUNAMI = 2; // 0x2
15773    field public static final int ETWS_WARNING_TYPE_OTHER_EMERGENCY = 4; // 0x4
15774    field public static final int ETWS_WARNING_TYPE_TEST_MESSAGE = 3; // 0x3
15775    field public static final int ETWS_WARNING_TYPE_TSUNAMI = 1; // 0x1
15776    field public static final int ETWS_WARNING_TYPE_UNKNOWN = -1; // 0xffffffff
15777  }
15778
15779  public final class SmsCbLocation implements android.os.Parcelable {
15780    ctor public SmsCbLocation(@NonNull String, int, int);
15781    method public int describeContents();
15782    method public int getCid();
15783    method public int getLac();
15784    method @NonNull public String getPlmn();
15785    method public boolean isInLocationArea(@NonNull android.telephony.SmsCbLocation);
15786    method public boolean isInLocationArea(@Nullable String, int, int);
15787    method public void writeToParcel(android.os.Parcel, int);
15788    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.SmsCbLocation> CREATOR;
15789  }
15790
15791  public final class SmsCbMessage implements android.os.Parcelable {
15792    ctor public SmsCbMessage(int, int, int, @NonNull android.telephony.SmsCbLocation, int, @Nullable String, int, @Nullable String, int, @Nullable android.telephony.SmsCbEtwsInfo, @Nullable android.telephony.SmsCbCmasInfo, int, @Nullable java.util.List<android.telephony.CbGeoUtils.Geometry>, long, int, int);
15793    method @NonNull public static android.telephony.SmsCbMessage createFromCursor(@NonNull android.database.Cursor);
15794    method public int describeContents();
15795    method @Nullable public android.telephony.SmsCbCmasInfo getCmasWarningInfo();
15796    method @NonNull public android.content.ContentValues getContentValues();
15797    method public int getDataCodingScheme();
15798    method @Nullable public android.telephony.SmsCbEtwsInfo getEtwsWarningInfo();
15799    method public int getGeographicalScope();
15800    method @NonNull public java.util.List<android.telephony.CbGeoUtils.Geometry> getGeometries();
15801    method @Nullable public String getLanguageCode();
15802    method @NonNull public android.telephony.SmsCbLocation getLocation();
15803    method public int getMaximumWaitingDuration();
15804    method @Nullable public String getMessageBody();
15805    method public int getMessageFormat();
15806    method public int getMessagePriority();
15807    method public long getReceivedTime();
15808    method public int getSerialNumber();
15809    method public int getServiceCategory();
15810    method public int getSlotIndex();
15811    method public int getSubscriptionId();
15812    method public boolean isCmasMessage();
15813    method public boolean isEmergencyMessage();
15814    method public boolean isEtwsMessage();
15815    method public boolean needGeoFencingCheck();
15816    method public void writeToParcel(android.os.Parcel, int);
15817    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.SmsCbMessage> CREATOR;
15818    field public static final int GEOGRAPHICAL_SCOPE_CELL_WIDE = 3; // 0x3
15819    field public static final int GEOGRAPHICAL_SCOPE_CELL_WIDE_IMMEDIATE = 0; // 0x0
15820    field public static final int GEOGRAPHICAL_SCOPE_LOCATION_AREA_WIDE = 2; // 0x2
15821    field public static final int GEOGRAPHICAL_SCOPE_PLMN_WIDE = 1; // 0x1
15822    field public static final int MAXIMUM_WAIT_TIME_NOT_SET = 255; // 0xff
15823    field public static final int MESSAGE_FORMAT_3GPP = 1; // 0x1
15824    field public static final int MESSAGE_FORMAT_3GPP2 = 2; // 0x2
15825    field public static final int MESSAGE_PRIORITY_EMERGENCY = 3; // 0x3
15826    field public static final int MESSAGE_PRIORITY_INTERACTIVE = 1; // 0x1
15827    field public static final int MESSAGE_PRIORITY_NORMAL = 0; // 0x0
15828    field public static final int MESSAGE_PRIORITY_URGENT = 2; // 0x2
15829  }
15830
15831  public final class SmsManager {
15832    method @Deprecated public boolean disableCellBroadcastRange(int, int, int);
15833    method @Deprecated public boolean enableCellBroadcastRange(int, int, int);
15834    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getPremiumSmsConsent(@NonNull String);
15835    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public android.net.Uri getSmscIdentity();
15836    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_CELL_BROADCASTS) public void resetAllCellBroadcastRanges();
15837    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>);
15838    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setPremiumSmsConsent(@NonNull String, int);
15839    field public static final int PREMIUM_SMS_CONSENT_ALWAYS_ALLOW = 3; // 0x3
15840    field public static final int PREMIUM_SMS_CONSENT_ASK_USER = 1; // 0x1
15841    field public static final int PREMIUM_SMS_CONSENT_NEVER_ALLOW = 2; // 0x2
15842    field public static final int PREMIUM_SMS_CONSENT_UNKNOWN = 0; // 0x0
15843  }
15844
15845  public class SmsMessage {
15846    method @Nullable public static android.telephony.SmsMessage createFromNativeSmsSubmitPdu(@NonNull byte[], boolean);
15847    method @Nullable public static android.telephony.SmsMessage.SubmitPdu getSmsPdu(int, int, @Nullable String, @NonNull String, @NonNull String, long);
15848    method @NonNull @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public static byte[] getSubmitPduEncodedMessage(boolean, @NonNull String, @NonNull String, int, @IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0, to=255) int, @IntRange(from=1, to=255) int, @IntRange(from=1, to=255) int);
15849  }
15850
15851  public class SubscriptionInfo implements android.os.Parcelable {
15852    method public boolean areUiccApplicationsEnabled();
15853    method @Nullable public java.util.List<android.telephony.UiccAccessRule> getAccessRules();
15854    method public int getProfileClass();
15855    method @FlaggedApi("com.android.internal.telephony.flags.support_psim_to_esim_conversion") public int getTransferStatus();
15856    method public boolean isGroupDisabled();
15857  }
15858
15859  public class SubscriptionManager {
15860    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean canDisablePhysicalSubscription();
15861    method public boolean canManageSubscription(@NonNull android.telephony.SubscriptionInfo, @NonNull String);
15862    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int[] getActiveSubscriptionIdList();
15863    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public android.telephony.SubscriptionInfo getActiveSubscriptionInfoForIcc(@NonNull String);
15864    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public byte[] getAllSimSpecificSettingsForBackup();
15865    method @Nullable public java.util.List<android.telephony.SubscriptionInfo> getAvailableSubscriptionInfoList();
15866    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int[] getCompleteActiveSubscriptionIdList();
15867    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getEnabledSubscriptionId(int);
15868    method @NonNull public static android.content.res.Resources getResourcesForSubId(@NonNull android.content.Context, int);
15869    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isSubscriptionEnabled(int);
15870    method public void requestEmbeddedSubscriptionInfoListRefresh();
15871    method public void requestEmbeddedSubscriptionInfoListRefresh(int);
15872    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void restoreAllSimSpecificSettingsFromBackup(@NonNull byte[]);
15873    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDefaultDataSubId(int);
15874    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDefaultSmsSubId(int);
15875    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDefaultVoiceSubscriptionId(int);
15876    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>);
15877    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setSubscriptionEnabled(int, boolean);
15878    method @FlaggedApi("com.android.internal.telephony.flags.support_psim_to_esim_conversion") @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void setTransferStatus(int, int);
15879    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setUiccApplicationsEnabled(int, boolean);
15880    field @RequiresPermission(android.Manifest.permission.MANAGE_SUBSCRIPTION_PLANS) public static final String ACTION_SUBSCRIPTION_PLANS_CHANGED = "android.telephony.action.SUBSCRIPTION_PLANS_CHANGED";
15881    field @NonNull public static final android.net.Uri ADVANCED_CALLING_ENABLED_CONTENT_URI;
15882    field @NonNull public static final android.net.Uri CROSS_SIM_ENABLED_CONTENT_URI;
15883    field @Deprecated public static final int PROFILE_CLASS_DEFAULT = -1; // 0xffffffff
15884    field public static final int PROFILE_CLASS_OPERATIONAL = 2; // 0x2
15885    field public static final int PROFILE_CLASS_PROVISIONING = 1; // 0x1
15886    field public static final int PROFILE_CLASS_TESTING = 0; // 0x0
15887    field public static final int PROFILE_CLASS_UNSET = -1; // 0xffffffff
15888    field @FlaggedApi("com.android.internal.telephony.flags.support_psim_to_esim_conversion") public static final int TRANSFER_STATUS_CONVERTED = 2; // 0x2
15889    field @FlaggedApi("com.android.internal.telephony.flags.support_psim_to_esim_conversion") public static final int TRANSFER_STATUS_NONE = 0; // 0x0
15890    field @FlaggedApi("com.android.internal.telephony.flags.support_psim_to_esim_conversion") public static final int TRANSFER_STATUS_TRANSFERRED_OUT = 1; // 0x1
15891    field @NonNull public static final android.net.Uri VT_ENABLED_CONTENT_URI;
15892    field @NonNull public static final android.net.Uri WFC_ENABLED_CONTENT_URI;
15893    field @NonNull public static final android.net.Uri WFC_MODE_CONTENT_URI;
15894    field @NonNull public static final android.net.Uri WFC_ROAMING_ENABLED_CONTENT_URI;
15895    field @NonNull public static final android.net.Uri WFC_ROAMING_MODE_CONTENT_URI;
15896  }
15897
15898  public static class SubscriptionPlan.Builder {
15899    method @Deprecated public static android.telephony.SubscriptionPlan.Builder createRecurringDaily(java.time.ZonedDateTime);
15900    method @Deprecated public static android.telephony.SubscriptionPlan.Builder createRecurringMonthly(java.time.ZonedDateTime);
15901    method @Deprecated public static android.telephony.SubscriptionPlan.Builder createRecurringWeekly(java.time.ZonedDateTime);
15902  }
15903
15904  public class TelephonyCallback {
15905    field @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public static final int EVENT_ACTIVE_DATA_SUBSCRIPTION_ID_CHANGED = 23; // 0x17
15906    field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int EVENT_ALLOWED_NETWORK_TYPE_LIST_CHANGED = 35; // 0x23
15907    field public static final int EVENT_ALWAYS_REPORTED_SIGNAL_STRENGTH_CHANGED = 10; // 0xa
15908    field @RequiresPermission(allOf={android.Manifest.permission.READ_PRECISE_PHONE_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}) public static final int EVENT_BARRING_INFO_CHANGED = 32; // 0x20
15909    field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_CALL_ATTRIBUTES_CHANGED = 27; // 0x1b
15910    field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_CALL_DISCONNECT_CAUSE_CHANGED = 26; // 0x1a
15911    field @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public static final int EVENT_CALL_FORWARDING_INDICATOR_CHANGED = 4; // 0x4
15912    field public static final int EVENT_CALL_STATE_CHANGED = 6; // 0x6
15913    field public static final int EVENT_CARRIER_NETWORK_CHANGED = 17; // 0x11
15914    field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public static final int EVENT_CARRIER_ROAMING_NTN_AVAILABLE_SERVICES_CHANGED = 44; // 0x2c
15915    field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public static final int EVENT_CARRIER_ROAMING_NTN_ELIGIBLE_STATE_CHANGED = 43; // 0x2b
15916    field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public static final int EVENT_CARRIER_ROAMING_NTN_MODE_CHANGED = 42; // 0x2a
15917    field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public static final int EVENT_CARRIER_ROAMING_NTN_SIGNAL_STRENGTH_CHANGED = 45; // 0x2d
15918    field @FlaggedApi("com.android.internal.telephony.flags.cellular_identifier_disclosure_indications") @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int EVENT_CELLULAR_IDENTIFIER_DISCLOSED_CHANGED = 47; // 0x2f
15919    field @RequiresPermission(allOf={android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}) public static final int EVENT_CELL_INFO_CHANGED = 11; // 0xb
15920    field @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public static final int EVENT_CELL_LOCATION_CHANGED = 5; // 0x5
15921    field public static final int EVENT_DATA_ACTIVATION_STATE_CHANGED = 19; // 0x13
15922    field public static final int EVENT_DATA_ACTIVITY_CHANGED = 8; // 0x8
15923    field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_DATA_CONNECTION_REAL_TIME_INFO_CHANGED = 14; // 0xe
15924    field public static final int EVENT_DATA_CONNECTION_STATE_CHANGED = 7; // 0x7
15925    field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_DATA_ENABLED_CHANGED = 34; // 0x22
15926    field public static final int EVENT_DISPLAY_INFO_CHANGED = 21; // 0x15
15927    field @FlaggedApi("com.android.internal.telephony.flags.emergency_callback_mode_notification") @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int EVENT_EMERGENCY_CALLBACK_MODE_CHANGED = 40; // 0x28
15928    field @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public static final int EVENT_EMERGENCY_NUMBER_LIST_CHANGED = 25; // 0x19
15929    field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_IMS_CALL_DISCONNECT_CAUSE_CHANGED = 28; // 0x1c
15930    field @RequiresPermission(android.Manifest.permission.READ_CALL_LOG) public static final int EVENT_LEGACY_CALL_STATE_CHANGED = 36; // 0x24
15931    field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_LINK_CAPACITY_ESTIMATE_CHANGED = 37; // 0x25
15932    field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_MEDIA_QUALITY_STATUS_CHANGED = 39; // 0x27
15933    field @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public static final int EVENT_MESSAGE_WAITING_INDICATOR_CHANGED = 3; // 0x3
15934    field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int EVENT_OEM_HOOK_RAW = 15; // 0xf
15935    field @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public static final int EVENT_OUTGOING_EMERGENCY_CALL = 29; // 0x1d
15936    field @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public static final int EVENT_OUTGOING_EMERGENCY_SMS = 30; // 0x1e
15937    field public static final int EVENT_PHONE_CAPABILITY_CHANGED = 22; // 0x16
15938    field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_PHYSICAL_CHANNEL_CONFIG_CHANGED = 33; // 0x21
15939    field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_PRECISE_CALL_STATE_CHANGED = 12; // 0xc
15940    field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_PRECISE_DATA_CONNECTION_STATE_CHANGED = 13; // 0xd
15941    field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int EVENT_RADIO_POWER_STATE_CHANGED = 24; // 0x18
15942    field @RequiresPermission(allOf={android.Manifest.permission.READ_PRECISE_PHONE_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}) public static final int EVENT_REGISTRATION_FAILURE = 31; // 0x1f
15943    field @FlaggedApi("com.android.internal.telephony.flags.cellular_identifier_disclosure_indications") @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int EVENT_SECURITY_ALGORITHMS_CHANGED = 46; // 0x2e
15944    field public static final int EVENT_SERVICE_STATE_CHANGED = 1; // 0x1
15945    field public static final int EVENT_SIGNAL_STRENGTHS_CHANGED = 9; // 0x9
15946    field public static final int EVENT_SIGNAL_STRENGTH_CHANGED = 2; // 0x2
15947    field @FlaggedApi("com.android.internal.telephony.flags.simultaneous_calling_indications") @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int EVENT_SIMULTANEOUS_CELLULAR_CALLING_SUBSCRIPTIONS_CHANGED = 41; // 0x29
15948    field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int EVENT_SRVCC_STATE_CHANGED = 16; // 0x10
15949    field public static final int EVENT_USER_MOBILE_DATA_STATE_CHANGED = 20; // 0x14
15950    field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int EVENT_VOICE_ACTIVATION_STATE_CHANGED = 18; // 0x12
15951  }
15952
15953  public static interface TelephonyCallback.AllowedNetworkTypesListener {
15954    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void onAllowedNetworkTypesChanged(int, long);
15955  }
15956
15957  public static interface TelephonyCallback.CallAttributesListener {
15958    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public default void onCallAttributesChanged(@NonNull android.telephony.CallAttributes);
15959    method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public default void onCallStatesChanged(@NonNull java.util.List<android.telephony.CallState>);
15960  }
15961
15962  @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static interface TelephonyCallback.CarrierRoamingNtnModeListener {
15963    method public default void onCarrierRoamingNtnAvailableServicesChanged(@NonNull int[]);
15964    method public default void onCarrierRoamingNtnEligibleStateChanged(boolean);
15965    method public void onCarrierRoamingNtnModeChanged(boolean);
15966    method public default void onCarrierRoamingNtnSignalStrengthChanged(@NonNull android.telephony.satellite.NtnSignalStrength);
15967  }
15968
15969  @FlaggedApi("com.android.internal.telephony.flags.cellular_identifier_disclosure_indications") public static interface TelephonyCallback.CellularIdentifierDisclosedListener {
15970    method public void onCellularIdentifierDisclosedChanged(@NonNull android.telephony.CellularIdentifierDisclosure);
15971  }
15972
15973  public static interface TelephonyCallback.DataEnabledListener {
15974    method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onDataEnabledChanged(boolean, int);
15975  }
15976
15977  @FlaggedApi("com.android.internal.telephony.flags.emergency_callback_mode_notification") public static interface TelephonyCallback.EmergencyCallbackModeListener {
15978    method public void onCallbackModeRestarted(int, @NonNull java.time.Duration, int);
15979    method public void onCallbackModeStarted(int, @NonNull java.time.Duration, int);
15980    method public void onCallbackModeStopped(int, int, int);
15981  }
15982
15983  public static interface TelephonyCallback.LinkCapacityEstimateChangedListener {
15984    method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onLinkCapacityEstimateChanged(@NonNull java.util.List<android.telephony.LinkCapacityEstimate>);
15985  }
15986
15987  public static interface TelephonyCallback.MediaQualityStatusChangedListener {
15988    method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onMediaQualityStatusChanged(@NonNull android.telephony.ims.MediaQualityStatus);
15989  }
15990
15991  public static interface TelephonyCallback.OutgoingEmergencyCallListener {
15992    method @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public void onOutgoingEmergencyCall(@NonNull android.telephony.emergency.EmergencyNumber, int);
15993  }
15994
15995  public static interface TelephonyCallback.OutgoingEmergencySmsListener {
15996    method @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public void onOutgoingEmergencySms(@NonNull android.telephony.emergency.EmergencyNumber, int);
15997  }
15998
15999  public static interface TelephonyCallback.PhoneCapabilityListener {
16000    method public void onPhoneCapabilityChanged(@NonNull android.telephony.PhoneCapability);
16001  }
16002
16003  public static interface TelephonyCallback.PreciseCallStateListener {
16004    method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onPreciseCallStateChanged(@NonNull android.telephony.PreciseCallState);
16005  }
16006
16007  public static interface TelephonyCallback.RadioPowerStateListener {
16008    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void onRadioPowerStateChanged(int);
16009  }
16010
16011  @FlaggedApi("com.android.internal.telephony.flags.security_algorithms_update_indications") public static interface TelephonyCallback.SecurityAlgorithmsListener {
16012    method public void onSecurityAlgorithmsChanged(@NonNull android.telephony.SecurityAlgorithmUpdate);
16013  }
16014
16015  @FlaggedApi("com.android.internal.telephony.flags.simultaneous_calling_indications") public static interface TelephonyCallback.SimultaneousCellularCallingSupportListener {
16016    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void onSimultaneousCellularCallingSubscriptionsChanged(@NonNull java.util.Set<java.lang.Integer>);
16017  }
16018
16019  public static interface TelephonyCallback.SrvccStateListener {
16020    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void onSrvccStateChanged(int);
16021  }
16022
16023  public static interface TelephonyCallback.VoiceActivationStateListener {
16024    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void onVoiceActivationStateChanged(int);
16025  }
16026
16027  public final class TelephonyHistogram implements android.os.Parcelable {
16028    ctor public TelephonyHistogram(int, int, int);
16029    ctor public TelephonyHistogram(android.telephony.TelephonyHistogram);
16030    ctor public TelephonyHistogram(android.os.Parcel);
16031    method public void addTimeTaken(int);
16032    method public int describeContents();
16033    method public int getAverageTime();
16034    method public int getBucketCount();
16035    method public int[] getBucketCounters();
16036    method public int[] getBucketEndPoints();
16037    method public int getCategory();
16038    method public int getId();
16039    method public int getMaxTime();
16040    method public int getMinTime();
16041    method public int getSampleCount();
16042    method public void writeToParcel(android.os.Parcel, int);
16043    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.TelephonyHistogram> CREATOR;
16044    field public static final int TELEPHONY_CATEGORY_RIL = 1; // 0x1
16045  }
16046
16047  public class TelephonyManager {
16048    method @RequiresPermission(anyOf={android.Manifest.permission.MODIFY_PHONE_STATE, android.Manifest.permission.PERFORM_IMS_SINGLE_REGISTRATION}) @WorkerThread public void bootstrapAuthenticationRequest(int, @NonNull android.net.Uri, @NonNull android.telephony.gba.UaSecurityProtocolIdentifier, boolean, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.TelephonyManager.BootstrapAuthenticationCallback);
16049    method @Deprecated @RequiresPermission(android.Manifest.permission.CALL_PHONE) public void call(String, String);
16050    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.telephony.PinResult changeIccLockPin(@NonNull String, @NonNull String);
16051    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int checkCarrierPrivilegesForPackage(String);
16052    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int checkCarrierPrivilegesForPackageAnyPhone(String);
16053    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void clearRadioPowerOffForReason(int);
16054    method public void dial(String);
16055    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean disableDataConnectivity();
16056    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean enableDataConnectivity();
16057    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean enableModemForSlot(int, boolean);
16058    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void enableVideoCalling(boolean);
16059    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getAidForAppType(int);
16060    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.List<android.service.carrier.CarrierIdentifier> getAllowedCarriers(int);
16061    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public long getAllowedNetworkTypes();
16062    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public long getAllowedNetworkTypesBitmask();
16063    method @Nullable @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public android.content.ComponentName getAndUpdateDefaultRespondViaMessageApplication();
16064    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void getCallForwarding(int, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.TelephonyManager.CallForwardingInfoCallback);
16065    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void getCallWaitingStatus(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
16066    method @FlaggedApi("com.android.internal.telephony.flags.carrier_id_from_carrier_identifier") @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @WorkerThread public int getCarrierIdFromCarrierIdentifier(@NonNull android.service.carrier.CarrierIdentifier);
16067    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public android.telephony.ImsiEncryptionInfo getCarrierInfoForImsiEncryption(int);
16068    method public java.util.List<java.lang.String> getCarrierPackageNamesForIntent(android.content.Intent);
16069    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.List<java.lang.String> getCarrierPackageNamesForIntentAndPhone(android.content.Intent, int);
16070    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getCarrierPrivilegeStatus(int);
16071    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.List<java.lang.String> getCarrierPrivilegedPackagesForAllActiveSubscriptions();
16072    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public android.telephony.CarrierRestrictionRules getCarrierRestrictionRules();
16073    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getCarrierServicePackageName();
16074    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getCarrierServicePackageNameForLogicalSlot(int);
16075    method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getCdmaEnhancedRoamingIndicatorDisplayNumber();
16076    method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String getCdmaMdn();
16077    method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String getCdmaMdn(int);
16078    method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String getCdmaMin();
16079    method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String getCdmaMin(int);
16080    method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public String getCdmaPrlVersion();
16081    method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getCdmaRoamingMode();
16082    method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getCdmaSubscriptionMode();
16083    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_CELL_BROADCASTS) public java.util.List<android.telephony.CellBroadcastIdRange> getCellBroadcastIdRanges();
16084    method public int getCurrentPhoneType();
16085    method public int getCurrentPhoneType(int);
16086    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getDataActivationState();
16087    method @Deprecated public boolean getDataEnabled();
16088    method @Deprecated public boolean getDataEnabled(int);
16089    method @Nullable @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public android.content.ComponentName getDefaultRespondViaMessageApplication();
16090    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public String getDeviceSoftwareVersion(int);
16091    method @FlaggedApi("android.permission.flags.get_emergency_role_holder_api_enabled") @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getEmergencyAssistancePackageName();
16092    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean getEmergencyCallbackMode();
16093    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getEmergencyNumberDbVersion();
16094    method @FlaggedApi("com.android.internal.telephony.flags.get_group_id_level2") @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getGroupIdLevel2();
16095    method @FlaggedApi("com.android.internal.telephony.flags.support_isim_record") @NonNull @RequiresPermission(value=android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, conditional=true) public java.util.List<java.lang.String> getImsPcscfAddresses();
16096    method @FlaggedApi("com.android.internal.telephony.flags.support_isim_record") @Nullable @RequiresPermission(android.Manifest.permission.USE_ICC_AUTH_WITH_DEVICE_IDENTIFIER) public String getImsPrivateUserIdentity();
16097    method @FlaggedApi("com.android.internal.telephony.flags.support_isim_record") @NonNull @RequiresPermission(value=android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, conditional=true) public java.util.List<android.net.Uri> getImsPublicUserIdentities();
16098    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getIsimDomain();
16099    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getIsimIst();
16100    method @FlaggedApi("com.android.server.telecom.flags.get_last_known_cell_identity") @Nullable @RequiresPermission(allOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_LAST_KNOWN_CELL_ID}) public android.telephony.CellIdentity getLastKnownCellIdentity();
16101    method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.Map<java.lang.Integer,java.lang.Integer> getLogicalToPhysicalSlotMapping();
16102    method public int getMaxNumberOfSimultaneouslyActiveSims();
16103    method public static long getMaxNumberVerificationTimeoutMillis();
16104    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String[] getMergedImsisFromGroup();
16105    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public android.telephony.PhoneCapability getPhoneCapability();
16106    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public long getPreferredNetworkTypeBitmask();
16107    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.Set<java.lang.Integer> getRadioPowerOffReasons();
16108    method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public int getRadioPowerState();
16109    method public int getSimApplicationState();
16110    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getSimApplicationState(int);
16111    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getSimApplicationState(int, int);
16112    method public int getSimCardState();
16113    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getSimCardState(int);
16114    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getSimCardState(int, int);
16115    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.Locale getSimLocale();
16116    method @FlaggedApi("com.android.internal.telephony.flags.support_isim_record") @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void getSimServiceTable(int, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<byte[],java.lang.Exception>);
16117    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.Collection<android.telephony.UiccSlotMapping> getSimSlotMapping();
16118    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.List<android.telephony.RadioAccessSpecifier> getSystemSelectionChannels();
16119    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public java.util.List<android.telephony.TelephonyHistogram> getTelephonyHistograms();
16120    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public android.telephony.UiccSlotInfo[] getUiccSlotsInfo();
16121    method @Nullable public android.os.Bundle getVisualVoicemailSettings();
16122    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getVoiceActivationState();
16123    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean handlePinMmi(String);
16124    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean handlePinMmiForSubscriber(int, String);
16125    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void iccCloseLogicalChannelByPort(int, int, int);
16126    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean iccCloseLogicalChannelBySlot(int, int);
16127    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.telephony.IccOpenLogicalChannelResponse iccOpenLogicalChannelByPort(int, int, @Nullable String, int);
16128    method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.telephony.IccOpenLogicalChannelResponse iccOpenLogicalChannelBySlot(int, @Nullable String, int);
16129    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String iccTransmitApduBasicChannelByPort(int, int, int, int, int, int, int, @Nullable String);
16130    method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String iccTransmitApduBasicChannelBySlot(int, int, int, int, int, int, @Nullable String);
16131    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String iccTransmitApduLogicalChannelByPort(int, int, int, int, int, int, int, int, @Nullable String);
16132    method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String iccTransmitApduLogicalChannelBySlot(int, int, int, int, int, int, int, @Nullable String);
16133    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isAnyRadioPoweredOn();
16134    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isApnMetered(int);
16135    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isApplicationOnUicc(int);
16136    method @FlaggedApi("com.android.internal.telephony.flags.enable_identifier_disclosure_transparency") @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isCellularIdentifierDisclosureNotificationsEnabled();
16137    method public boolean isDataConnectivityPossible();
16138    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isDataEnabledForApn(int);
16139    method @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isDomainSelectionSupported();
16140    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isEmergencyAssistanceEnabled();
16141    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @WorkerThread public boolean isIccLockEnabled();
16142    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isIdle();
16143    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isInEmergencySmsMode();
16144    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isLteCdmaEvdoGsmWcdmaEnabled();
16145    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isMobileDataPolicyEnabled(int);
16146    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isNrDualConnectivityEnabled();
16147    method @FlaggedApi("com.android.internal.telephony.flags.enable_modem_cipher_transparency") @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isNullCipherNotificationsEnabled();
16148    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isOffhook();
16149    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isOpportunisticNetworkEnabled();
16150    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isPotentialEmergencyNumber(@NonNull String);
16151    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isRadioOn();
16152    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isRinging();
16153    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean isTetheringApnRequired();
16154    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isVideoCallingEnabled();
16155    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public boolean isVisualVoicemailEnabled(android.telecom.PhoneAccountHandle);
16156    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean matchesCurrentSimOperator(@NonNull String, int, @Nullable String);
16157    method public boolean needsOtaServiceProvisioning();
16158    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void notifyOtaEmergencyNumberDbInstalled();
16159    method @FlaggedApi("com.android.server.telecom.flags.telecom_resolve_hidden_dependencies") @RequiresPermission(android.Manifest.permission.READ_DROPBOX_DATA) public void persistEmergencyCallDiagnosticData(@NonNull String, @NonNull android.telephony.TelephonyManager.EmergencyCallDiagnosticData);
16160    method @RequiresPermission(android.Manifest.permission.REBOOT) public int prepareForUnattendedReboot();
16161    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean rebootRadio();
16162    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void registerCarrierPrivilegesCallback(int, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.TelephonyManager.CarrierPrivilegesCallback);
16163    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void reportDefaultNetworkStatus(boolean);
16164    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);
16165    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void requestModemActivityInfo(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.telephony.ModemActivityInfo,android.telephony.TelephonyManager.ModemActivityInfoException>);
16166    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);
16167    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void requestRadioPowerOffForReason(int);
16168    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void resetAllCarrierActions();
16169    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void resetCarrierKeysForImsiEncryption();
16170    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public void resetIms(int);
16171    method @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public void resetOtaEmergencyNumberDbFilePath();
16172    method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean resetRadioConfig();
16173    method @RequiresPermission(android.Manifest.permission.CONNECTIVITY_INTERNAL) public void resetSettings();
16174    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int sendThermalMitigationRequest(@NonNull android.telephony.ThermalMitigationRequest);
16175    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int setAllowedCarriers(int, java.util.List<android.service.carrier.CarrierIdentifier>);
16176    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setAllowedNetworkTypes(long);
16177    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setCallForwarding(@NonNull android.telephony.CallForwardingInfo, @Nullable java.util.concurrent.Executor, @Nullable java.util.function.Consumer<java.lang.Integer>);
16178    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setCallWaitingEnabled(boolean, @Nullable java.util.concurrent.Executor, @Nullable java.util.function.Consumer<java.lang.Integer>);
16179    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setCarrierDataEnabled(boolean);
16180    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int setCarrierRestrictionRules(@NonNull android.telephony.CarrierRestrictionRules);
16181    method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setCdmaRoamingMode(int);
16182    method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setCdmaSubscriptionMode(int);
16183    method @RequiresPermission(android.Manifest.permission.MODIFY_CELL_BROADCASTS) public void setCellBroadcastIdRanges(@NonNull java.util.List<android.telephony.CellBroadcastIdRange>, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
16184    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataActivationState(int);
16185    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataEnabled(int, boolean);
16186    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataRoamingEnabled(boolean);
16187    method @FlaggedApi("com.android.internal.telephony.flags.enable_identifier_disclosure_transparency") @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setEnableCellularIdentifierDisclosureNotifications(boolean);
16188    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.telephony.PinResult setIccLockEnabled(boolean, @NonNull String);
16189    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setMobileDataPolicyEnabled(int, boolean);
16190    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setMultiSimCarrierRestriction(boolean);
16191    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int setNrDualConnectivityState(int);
16192    method @FlaggedApi("com.android.internal.telephony.flags.enable_modem_cipher_transparency") @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setNullCipherNotificationsEnabled(boolean);
16193    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setOpportunisticNetworkState(boolean);
16194    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setPreferredNetworkTypeBitmask(long);
16195    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setRadio(boolean);
16196    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setRadioEnabled(boolean);
16197    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setRadioPower(boolean);
16198    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setSimPowerState(int);
16199    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setSimPowerState(int, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
16200    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setSimPowerStateForSlot(int, int);
16201    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setSimPowerStateForSlot(int, int, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
16202    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setSimSlotMapping(@NonNull java.util.Collection<android.telephony.UiccSlotMapping>);
16203    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setSystemSelectionChannels(@NonNull java.util.List<android.telephony.RadioAccessSpecifier>, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>);
16204    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setSystemSelectionChannels(@NonNull java.util.List<android.telephony.RadioAccessSpecifier>);
16205    method @Deprecated public void setVisualVoicemailEnabled(android.telecom.PhoneAccountHandle, boolean);
16206    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoiceActivationState(int);
16207    method @FlaggedApi("com.android.server.telecom.flags.telecom_resolve_hidden_dependencies") @RequiresPermission(android.Manifest.permission.BIND_TELECOM_CONNECTION_SERVICE) public void setVoiceServiceStateOverride(boolean);
16208    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void shutdownAllRadios();
16209    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.telephony.PinResult supplyIccLockPin(@NonNull String);
16210    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.telephony.PinResult supplyIccLockPuk(@NonNull String, @NonNull String);
16211    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean supplyPin(String);
16212    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int[] supplyPinReportResult(String);
16213    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean supplyPuk(String, String);
16214    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int[] supplyPukReportResult(String, String);
16215    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean switchSlots(int[]);
16216    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void toggleRadioOnOff();
16217    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void unregisterCarrierPrivilegesCallback(@NonNull android.telephony.TelephonyManager.CarrierPrivilegesCallback);
16218    method @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public void updateOtaEmergencyNumberDbFilePath(@NonNull android.os.ParcelFileDescriptor);
16219    method public void updateServiceLocation();
16220    field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final String ACTION_ANOMALY_REPORTED = "android.telephony.action.ANOMALY_REPORTED";
16221    field public static final String ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED = "android.intent.action.ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED";
16222    field public static final String ACTION_DEFAULT_VOICE_SUBSCRIPTION_CHANGED = "android.intent.action.ACTION_DEFAULT_VOICE_SUBSCRIPTION_CHANGED";
16223    field public static final String ACTION_EMERGENCY_ASSISTANCE = "android.telephony.action.EMERGENCY_ASSISTANCE";
16224    field public static final String ACTION_EMERGENCY_CALLBACK_MODE_CHANGED = "android.intent.action.EMERGENCY_CALLBACK_MODE_CHANGED";
16225    field public static final String ACTION_EMERGENCY_CALL_STATE_CHANGED = "android.intent.action.EMERGENCY_CALL_STATE_CHANGED";
16226    field public static final String ACTION_REQUEST_OMADM_CONFIGURATION_UPDATE = "com.android.omadm.service.CONFIGURATION_UPDATE";
16227    field public static final String ACTION_SHOW_NOTICE_ECM_BLOCK_OTHERS = "android.telephony.action.SHOW_NOTICE_ECM_BLOCK_OTHERS";
16228    field public static final String ACTION_SIM_APPLICATION_STATE_CHANGED = "android.telephony.action.SIM_APPLICATION_STATE_CHANGED";
16229    field public static final String ACTION_SIM_CARD_STATE_CHANGED = "android.telephony.action.SIM_CARD_STATE_CHANGED";
16230    field public static final String ACTION_SIM_SLOT_STATUS_CHANGED = "android.telephony.action.SIM_SLOT_STATUS_CHANGED";
16231    field public static final int ALLOWED_NETWORK_TYPES_REASON_ENABLE_2G = 3; // 0x3
16232    field public static final int ALLOWED_NETWORK_TYPES_REASON_POWER = 1; // 0x1
16233    field public static final int CALL_WAITING_STATUS_DISABLED = 2; // 0x2
16234    field public static final int CALL_WAITING_STATUS_ENABLED = 1; // 0x1
16235    field public static final int CALL_WAITING_STATUS_FDN_CHECK_FAILURE = 5; // 0x5
16236    field public static final int CALL_WAITING_STATUS_NOT_SUPPORTED = 4; // 0x4
16237    field public static final int CALL_WAITING_STATUS_UNKNOWN_ERROR = 3; // 0x3
16238    field public static final String CAPABILITY_NR_DUAL_CONNECTIVITY_CONFIGURATION_AVAILABLE = "CAPABILITY_NR_DUAL_CONNECTIVITY_CONFIGURATION_AVAILABLE";
16239    field public static final String CAPABILITY_SECONDARY_LINK_BANDWIDTH_VISIBLE = "CAPABILITY_SECONDARY_LINK_BANDWIDTH_VISIBLE";
16240    field public static final String CAPABILITY_THERMAL_MITIGATION_DATA_THROTTLING = "CAPABILITY_THERMAL_MITIGATION_DATA_THROTTLING";
16241    field public static final String CAPABILITY_USES_ALLOWED_NETWORK_TYPES_BITMASK = "CAPABILITY_USES_ALLOWED_NETWORK_TYPES_BITMASK";
16242    field public static final int CARRIER_PRIVILEGE_STATUS_ERROR_LOADING_RULES = -2; // 0xfffffffe
16243    field public static final int CARRIER_PRIVILEGE_STATUS_HAS_ACCESS = 1; // 0x1
16244    field public static final int CARRIER_PRIVILEGE_STATUS_NO_ACCESS = 0; // 0x0
16245    field public static final int CARRIER_PRIVILEGE_STATUS_RULES_NOT_LOADED = -1; // 0xffffffff
16246    field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CDMA_SUBSCRIPTION_NV = 1; // 0x1
16247    field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CDMA_SUBSCRIPTION_RUIM_SIM = 0; // 0x0
16248    field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CDMA_SUBSCRIPTION_UNKNOWN = -1; // 0xffffffff
16249    field public static final int CELL_BROADCAST_RESULT_FAIL_ACTIVATION = 3; // 0x3
16250    field public static final int CELL_BROADCAST_RESULT_FAIL_CONFIG = 2; // 0x2
16251    field public static final int CELL_BROADCAST_RESULT_SUCCESS = 0; // 0x0
16252    field public static final int CELL_BROADCAST_RESULT_UNKNOWN = -1; // 0xffffffff
16253    field public static final int CELL_BROADCAST_RESULT_UNSUPPORTED = 1; // 0x1
16254    field @FlaggedApi("com.android.internal.telephony.flags.emergency_callback_mode_notification") public static final int EMERGENCY_CALLBACK_MODE_CALL = 1; // 0x1
16255    field @FlaggedApi("com.android.internal.telephony.flags.emergency_callback_mode_notification") public static final int EMERGENCY_CALLBACK_MODE_SMS = 2; // 0x2
16256    field public static final int ENABLE_NR_DUAL_CONNECTIVITY_INVALID_STATE = 4; // 0x4
16257    field public static final int ENABLE_NR_DUAL_CONNECTIVITY_NOT_SUPPORTED = 1; // 0x1
16258    field public static final int ENABLE_NR_DUAL_CONNECTIVITY_RADIO_ERROR = 3; // 0x3
16259    field public static final int ENABLE_NR_DUAL_CONNECTIVITY_RADIO_NOT_AVAILABLE = 2; // 0x2
16260    field public static final int ENABLE_NR_DUAL_CONNECTIVITY_SUCCESS = 0; // 0x0
16261    field public static final String EXTRA_ANOMALY_DESCRIPTION = "android.telephony.extra.ANOMALY_DESCRIPTION";
16262    field public static final String EXTRA_ANOMALY_ID = "android.telephony.extra.ANOMALY_ID";
16263    field public static final String EXTRA_PHONE_IN_ECM_STATE = "android.telephony.extra.PHONE_IN_ECM_STATE";
16264    field public static final String EXTRA_PHONE_IN_EMERGENCY_CALL = "android.telephony.extra.PHONE_IN_EMERGENCY_CALL";
16265    field public static final String EXTRA_SIM_STATE = "android.telephony.extra.SIM_STATE";
16266    field public static final String EXTRA_VISUAL_VOICEMAIL_ENABLED_BY_USER_BOOL = "android.telephony.extra.VISUAL_VOICEMAIL_ENABLED_BY_USER_BOOL";
16267    field public static final String EXTRA_VOICEMAIL_SCRAMBLED_PIN_STRING = "android.telephony.extra.VOICEMAIL_SCRAMBLED_PIN_STRING";
16268    field public static final int GBA_FAILURE_REASON_FEATURE_NOT_READY = 2; // 0x2
16269    field public static final int GBA_FAILURE_REASON_FEATURE_NOT_SUPPORTED = 1; // 0x1
16270    field public static final int GBA_FAILURE_REASON_INCORRECT_NAF_ID = 4; // 0x4
16271    field public static final int GBA_FAILURE_REASON_NETWORK_FAILURE = 3; // 0x3
16272    field public static final int GBA_FAILURE_REASON_SECURITY_PROTOCOL_NOT_SUPPORTED = 5; // 0x5
16273    field public static final int GBA_FAILURE_REASON_UNKNOWN = 0; // 0x0
16274    field public static final int INVALID_EMERGENCY_NUMBER_DB_VERSION = -1; // 0xffffffff
16275    field public static final int KEY_TYPE_EPDG = 1; // 0x1
16276    field public static final int KEY_TYPE_WLAN = 2; // 0x2
16277    field public static final int MOBILE_DATA_POLICY_AUTO_DATA_SWITCH = 3; // 0x3
16278    field public static final int MOBILE_DATA_POLICY_DATA_ON_NON_DEFAULT_DURING_VOICE_CALL = 1; // 0x1
16279    field public static final int MOBILE_DATA_POLICY_MMS_ALWAYS_ALLOWED = 2; // 0x2
16280    field public static final int NR_DUAL_CONNECTIVITY_DISABLE = 2; // 0x2
16281    field public static final int NR_DUAL_CONNECTIVITY_DISABLE_IMMEDIATE = 3; // 0x3
16282    field public static final int NR_DUAL_CONNECTIVITY_ENABLE = 1; // 0x1
16283    field public static final int PREPARE_UNATTENDED_REBOOT_ERROR = 2; // 0x2
16284    field public static final int PREPARE_UNATTENDED_REBOOT_PIN_REQUIRED = 1; // 0x1
16285    field public static final int PREPARE_UNATTENDED_REBOOT_SUCCESS = 0; // 0x0
16286    field public static final int RADIO_POWER_OFF = 0; // 0x0
16287    field public static final int RADIO_POWER_ON = 1; // 0x1
16288    field public static final int RADIO_POWER_REASON_CARRIER = 2; // 0x2
16289    field public static final int RADIO_POWER_REASON_NEARBY_DEVICE = 3; // 0x3
16290    field public static final int RADIO_POWER_REASON_THERMAL = 1; // 0x1
16291    field public static final int RADIO_POWER_REASON_USER = 0; // 0x0
16292    field public static final int RADIO_POWER_UNAVAILABLE = 2; // 0x2
16293    field public static final int SET_CARRIER_RESTRICTION_ERROR = 2; // 0x2
16294    field public static final int SET_CARRIER_RESTRICTION_NOT_SUPPORTED = 1; // 0x1
16295    field public static final int SET_CARRIER_RESTRICTION_SUCCESS = 0; // 0x0
16296    field public static final int SET_SIM_POWER_STATE_ALREADY_IN_STATE = 1; // 0x1
16297    field public static final int SET_SIM_POWER_STATE_MODEM_ERROR = 2; // 0x2
16298    field public static final int SET_SIM_POWER_STATE_NOT_SUPPORTED = 4; // 0x4
16299    field public static final int SET_SIM_POWER_STATE_SIM_ERROR = 3; // 0x3
16300    field public static final int SET_SIM_POWER_STATE_SUCCESS = 0; // 0x0
16301    field public static final int SIM_ACTIVATION_STATE_ACTIVATED = 2; // 0x2
16302    field public static final int SIM_ACTIVATION_STATE_ACTIVATING = 1; // 0x1
16303    field public static final int SIM_ACTIVATION_STATE_DEACTIVATED = 3; // 0x3
16304    field public static final int SIM_ACTIVATION_STATE_RESTRICTED = 4; // 0x4
16305    field public static final int SIM_ACTIVATION_STATE_UNKNOWN = 0; // 0x0
16306    field public static final int SIM_STATE_LOADED = 10; // 0xa
16307    field public static final int SIM_STATE_PRESENT = 11; // 0xb
16308    field public static final int SRVCC_STATE_HANDOVER_CANCELED = 3; // 0x3
16309    field public static final int SRVCC_STATE_HANDOVER_COMPLETED = 1; // 0x1
16310    field public static final int SRVCC_STATE_HANDOVER_FAILED = 2; // 0x2
16311    field public static final int SRVCC_STATE_HANDOVER_NONE = -1; // 0xffffffff
16312    field public static final int SRVCC_STATE_HANDOVER_STARTED = 0; // 0x0
16313    field @FlaggedApi("com.android.internal.telephony.flags.emergency_callback_mode_notification") public static final int STOP_REASON_EMERGENCY_SMS_SENT = 4; // 0x4
16314    field @FlaggedApi("com.android.internal.telephony.flags.emergency_callback_mode_notification") public static final int STOP_REASON_NORMAL_SMS_SENT = 2; // 0x2
16315    field @FlaggedApi("com.android.internal.telephony.flags.emergency_callback_mode_notification") public static final int STOP_REASON_OUTGOING_EMERGENCY_CALL_INITIATED = 3; // 0x3
16316    field @FlaggedApi("com.android.internal.telephony.flags.emergency_callback_mode_notification") public static final int STOP_REASON_OUTGOING_NORMAL_CALL_INITIATED = 1; // 0x1
16317    field @FlaggedApi("com.android.internal.telephony.flags.emergency_callback_mode_notification") public static final int STOP_REASON_TIMER_EXPIRED = 5; // 0x5
16318    field @FlaggedApi("com.android.internal.telephony.flags.emergency_callback_mode_notification") public static final int STOP_REASON_UNKNOWN = 0; // 0x0
16319    field @FlaggedApi("com.android.internal.telephony.flags.emergency_callback_mode_notification") public static final int STOP_REASON_USER_ACTION = 6; // 0x6
16320    field public static final int THERMAL_MITIGATION_RESULT_INVALID_STATE = 3; // 0x3
16321    field public static final int THERMAL_MITIGATION_RESULT_MODEM_ERROR = 1; // 0x1
16322    field public static final int THERMAL_MITIGATION_RESULT_MODEM_NOT_AVAILABLE = 2; // 0x2
16323    field public static final int THERMAL_MITIGATION_RESULT_SUCCESS = 0; // 0x0
16324    field public static final int THERMAL_MITIGATION_RESULT_UNKNOWN_ERROR = 4; // 0x4
16325  }
16326
16327  public static class TelephonyManager.BootstrapAuthenticationCallback {
16328    ctor public TelephonyManager.BootstrapAuthenticationCallback();
16329    method public void onAuthenticationFailure(int);
16330    method public void onKeysAvailable(@NonNull byte[], @NonNull String);
16331  }
16332
16333  public static interface TelephonyManager.CallForwardingInfoCallback {
16334    method public void onCallForwardingInfoAvailable(@NonNull android.telephony.CallForwardingInfo);
16335    method public void onError(int);
16336    field public static final int RESULT_ERROR_FDN_CHECK_FAILURE = 2; // 0x2
16337    field public static final int RESULT_ERROR_NOT_SUPPORTED = 3; // 0x3
16338    field public static final int RESULT_ERROR_UNKNOWN = 1; // 0x1
16339    field public static final int RESULT_SUCCESS = 0; // 0x0
16340  }
16341
16342  public static interface TelephonyManager.CarrierPrivilegesCallback {
16343    method public void onCarrierPrivilegesChanged(@NonNull java.util.Set<java.lang.String>, @NonNull java.util.Set<java.lang.Integer>);
16344    method public default void onCarrierServiceChanged(@Nullable String, int);
16345  }
16346
16347  @FlaggedApi("com.android.server.telecom.flags.telecom_resolve_hidden_dependencies") public static final class TelephonyManager.EmergencyCallDiagnosticData {
16348    method public long getLogcatCollectionStartTimeMillis();
16349    method public boolean isLogcatCollectionEnabled();
16350    method public boolean isTelecomDumpsysCollectionEnabled();
16351    method public boolean isTelephonyDumpsysCollectionEnabled();
16352  }
16353
16354  public static final class TelephonyManager.EmergencyCallDiagnosticData.Builder {
16355    ctor public TelephonyManager.EmergencyCallDiagnosticData.Builder();
16356    method @NonNull public android.telephony.TelephonyManager.EmergencyCallDiagnosticData build();
16357    method @NonNull public android.telephony.TelephonyManager.EmergencyCallDiagnosticData.Builder setLogcatCollectionStartTimeMillis(long);
16358    method @NonNull public android.telephony.TelephonyManager.EmergencyCallDiagnosticData.Builder setTelecomDumpsysCollectionEnabled(boolean);
16359    method @NonNull public android.telephony.TelephonyManager.EmergencyCallDiagnosticData.Builder setTelephonyDumpsysCollectionEnabled(boolean);
16360  }
16361
16362  public static class TelephonyManager.ModemActivityInfoException extends java.lang.Exception {
16363    ctor public TelephonyManager.ModemActivityInfoException(int);
16364    method public int getErrorCode();
16365    field public static final int ERROR_INVALID_INFO_RECEIVED = 2; // 0x2
16366    field public static final int ERROR_MODEM_RESPONSE_ERROR = 3; // 0x3
16367    field public static final int ERROR_PHONE_NOT_AVAILABLE = 1; // 0x1
16368    field public static final int ERROR_UNKNOWN = 0; // 0x0
16369  }
16370
16371  @FlaggedApi("com.android.server.telecom.flags.telecom_resolve_hidden_dependencies") public class TelephonyRegistryManager {
16372    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void notifyCallStateChangedForAllSubscriptions(int, @Nullable String);
16373    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void notifyOutgoingEmergencyCall(int, int, @NonNull android.telephony.emergency.EmergencyNumber);
16374  }
16375
16376  public final class ThermalMitigationRequest implements android.os.Parcelable {
16377    method public int describeContents();
16378    method @Nullable public android.telephony.DataThrottlingRequest getDataThrottlingRequest();
16379    method public int getThermalMitigationAction();
16380    method public void writeToParcel(@NonNull android.os.Parcel, int);
16381    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ThermalMitigationRequest> CREATOR;
16382    field public static final int THERMAL_MITIGATION_ACTION_DATA_THROTTLING = 0; // 0x0
16383    field public static final int THERMAL_MITIGATION_ACTION_RADIO_OFF = 2; // 0x2
16384    field public static final int THERMAL_MITIGATION_ACTION_VOICE_ONLY = 1; // 0x1
16385  }
16386
16387  public static final class ThermalMitigationRequest.Builder {
16388    ctor public ThermalMitigationRequest.Builder();
16389    method @NonNull public android.telephony.ThermalMitigationRequest build();
16390    method @NonNull public android.telephony.ThermalMitigationRequest.Builder setDataThrottlingRequest(@NonNull android.telephony.DataThrottlingRequest);
16391    method @NonNull public android.telephony.ThermalMitigationRequest.Builder setThermalMitigationAction(int);
16392  }
16393
16394  @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public interface TransportSelectorCallback {
16395    method public void onCreated(@NonNull android.telephony.DomainSelector);
16396    method public void onSelectionTerminated(int);
16397    method public void onWlanSelected(boolean);
16398    method public void onWwanSelected(@NonNull java.util.function.Consumer<android.telephony.WwanSelectorCallback>);
16399  }
16400
16401  public final class UiccAccessRule implements android.os.Parcelable {
16402    ctor public UiccAccessRule(byte[], @Nullable String, long);
16403    method public int describeContents();
16404    method public int getCarrierPrivilegeStatus(android.content.pm.PackageInfo);
16405    method public int getCarrierPrivilegeStatus(android.content.pm.Signature, String);
16406    method public String getCertificateHexString();
16407    method @Nullable public String getPackageName();
16408    method public void writeToParcel(android.os.Parcel, int);
16409    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.UiccAccessRule> CREATOR;
16410  }
16411
16412  public class UiccSlotInfo implements android.os.Parcelable {
16413    ctor @Deprecated public UiccSlotInfo(boolean, boolean, String, int, int, boolean);
16414    method public int describeContents();
16415    method public String getCardId();
16416    method public int getCardStateInfo();
16417    method @Deprecated public boolean getIsActive();
16418    method public boolean getIsEuicc();
16419    method public boolean getIsExtendedApduSupported();
16420    method @Deprecated public int getLogicalSlotIdx();
16421    method @NonNull public java.util.Collection<android.telephony.UiccPortInfo> getPorts();
16422    method public boolean isRemovable();
16423    method public void writeToParcel(android.os.Parcel, int);
16424    field public static final int CARD_STATE_INFO_ABSENT = 1; // 0x1
16425    field public static final int CARD_STATE_INFO_ERROR = 3; // 0x3
16426    field public static final int CARD_STATE_INFO_PRESENT = 2; // 0x2
16427    field public static final int CARD_STATE_INFO_RESTRICTED = 4; // 0x4
16428    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.UiccSlotInfo> CREATOR;
16429  }
16430
16431  public final class UiccSlotMapping implements android.os.Parcelable {
16432    ctor public UiccSlotMapping(int, int, int);
16433    method public int describeContents();
16434    method @IntRange(from=0) public int getLogicalSlotIndex();
16435    method @IntRange(from=0) public int getPhysicalSlotIndex();
16436    method @IntRange(from=0) public int getPortIndex();
16437    method public void writeToParcel(@Nullable android.os.Parcel, int);
16438    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.UiccSlotMapping> CREATOR;
16439  }
16440
16441  public abstract class VisualVoicemailService extends android.app.Service {
16442    method public static final void sendVisualVoicemailSms(android.content.Context, android.telecom.PhoneAccountHandle, String, short, String, android.app.PendingIntent);
16443    method public static final void setSmsFilterSettings(android.content.Context, android.telecom.PhoneAccountHandle, android.telephony.VisualVoicemailSmsFilterSettings);
16444  }
16445
16446  public abstract class VopsSupportInfo implements android.os.Parcelable {
16447    method public int describeContents();
16448    method public abstract boolean equals(Object);
16449    method public abstract int hashCode();
16450    method public abstract boolean isEmergencyServiceFallbackSupported();
16451    method public abstract boolean isEmergencyServiceSupported();
16452    method public abstract boolean isVopsSupported();
16453    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.VopsSupportInfo> CREATOR;
16454  }
16455
16456  @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public interface WwanSelectorCallback {
16457    method public void onDomainSelected(int, boolean);
16458    method public void onRequestEmergencyNetworkScan(@NonNull java.util.List<java.lang.Integer>, int, boolean, @NonNull android.os.CancellationSignal, @NonNull java.util.function.Consumer<android.telephony.EmergencyRegistrationResult>);
16459  }
16460
16461}
16462
16463package android.telephony.cdma {
16464
16465  @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public final class CdmaSmsCbProgramData implements android.os.Parcelable {
16466    method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public int describeContents();
16467    method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public int getCategory();
16468    method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public int getOperation();
16469    method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public void writeToParcel(android.os.Parcel, int);
16470    field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CATEGORY_CMAS_CHILD_ABDUCTION_EMERGENCY = 4099; // 0x1003
16471    field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CATEGORY_CMAS_EXTREME_THREAT = 4097; // 0x1001
16472    field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CATEGORY_CMAS_LAST_RESERVED_VALUE = 4351; // 0x10ff
16473    field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CATEGORY_CMAS_PRESIDENTIAL_LEVEL_ALERT = 4096; // 0x1000
16474    field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CATEGORY_CMAS_SEVERE_THREAT = 4098; // 0x1002
16475    field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CATEGORY_CMAS_TEST_MESSAGE = 4100; // 0x1004
16476    field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @NonNull public static final android.os.Parcelable.Creator<android.telephony.cdma.CdmaSmsCbProgramData> CREATOR;
16477    field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int OPERATION_ADD_CATEGORY = 1; // 0x1
16478    field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int OPERATION_CLEAR_CATEGORIES = 2; // 0x2
16479    field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int OPERATION_DELETE_CATEGORY = 0; // 0x0
16480  }
16481
16482}
16483
16484package android.telephony.data {
16485
16486  public class ApnSetting implements android.os.Parcelable {
16487    method public static int getApnTypeInt(@NonNull String);
16488    method @NonNull public static String getApnTypeString(int);
16489    field public static final String TYPE_ALL_STRING = "*";
16490    field public static final String TYPE_BIP_STRING = "bip";
16491    field public static final String TYPE_CBS_STRING = "cbs";
16492    field public static final String TYPE_DEFAULT_STRING = "default";
16493    field public static final String TYPE_DUN_STRING = "dun";
16494    field public static final String TYPE_EMERGENCY_STRING = "emergency";
16495    field public static final String TYPE_ENTERPRISE_STRING = "enterprise";
16496    field public static final String TYPE_FOTA_STRING = "fota";
16497    field public static final String TYPE_HIPRI_STRING = "hipri";
16498    field public static final String TYPE_IA_STRING = "ia";
16499    field public static final String TYPE_IMS_STRING = "ims";
16500    field public static final String TYPE_MCX_STRING = "mcx";
16501    field public static final String TYPE_MMS_STRING = "mms";
16502    field @FlaggedApi("com.android.internal.telephony.flags.oem_paid_private") public static final String TYPE_OEM_PAID_STRING = "oem_paid";
16503    field @FlaggedApi("com.android.internal.telephony.flags.oem_paid_private") public static final String TYPE_OEM_PRIVATE_STRING = "oem_private";
16504    field @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public static final String TYPE_RCS_STRING = "rcs";
16505    field public static final String TYPE_SUPL_STRING = "supl";
16506    field public static final String TYPE_VSIM_STRING = "vsim";
16507    field public static final String TYPE_XCAP_STRING = "xcap";
16508  }
16509
16510  public final class DataCallResponse implements android.os.Parcelable {
16511    method public int describeContents();
16512    method @NonNull public java.util.List<android.net.LinkAddress> getAddresses();
16513    method public int getCause();
16514    method @NonNull public java.util.List<java.net.InetAddress> getDnsAddresses();
16515    method @NonNull public java.util.List<java.net.InetAddress> getGatewayAddresses();
16516    method public int getHandoverFailureMode();
16517    method public int getId();
16518    method @NonNull public String getInterfaceName();
16519    method public int getLinkStatus();
16520    method @Deprecated public int getMtu();
16521    method public int getMtuV4();
16522    method public int getMtuV6();
16523    method @FlaggedApi("com.android.internal.telephony.flags.network_validation") public int getNetworkValidationStatus();
16524    method @NonNull public java.util.List<java.net.InetAddress> getPcscfAddresses();
16525    method public int getPduSessionId();
16526    method public int getProtocolType();
16527    method public long getRetryDurationMillis();
16528    method @Nullable public android.telephony.data.NetworkSliceInfo getSliceInfo();
16529    method @Deprecated public int getSuggestedRetryTime();
16530    method @NonNull public java.util.List<android.telephony.data.TrafficDescriptor> getTrafficDescriptors();
16531    method public void writeToParcel(android.os.Parcel, int);
16532    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.data.DataCallResponse> CREATOR;
16533    field public static final int HANDOVER_FAILURE_MODE_DO_FALLBACK = 1; // 0x1
16534    field public static final int HANDOVER_FAILURE_MODE_LEGACY = 0; // 0x0
16535    field public static final int HANDOVER_FAILURE_MODE_NO_FALLBACK_RETRY_HANDOVER = 2; // 0x2
16536    field public static final int HANDOVER_FAILURE_MODE_NO_FALLBACK_RETRY_SETUP_NORMAL = 3; // 0x3
16537    field public static final int HANDOVER_FAILURE_MODE_UNKNOWN = -1; // 0xffffffff
16538    field public static final int LINK_STATUS_ACTIVE = 2; // 0x2
16539    field public static final int LINK_STATUS_DORMANT = 1; // 0x1
16540    field public static final int LINK_STATUS_INACTIVE = 0; // 0x0
16541    field public static final int LINK_STATUS_UNKNOWN = -1; // 0xffffffff
16542    field public static final int PDU_SESSION_ID_NOT_SET = 0; // 0x0
16543    field public static final int RETRY_DURATION_UNDEFINED = -1; // 0xffffffff
16544  }
16545
16546  public static final class DataCallResponse.Builder {
16547    ctor public DataCallResponse.Builder();
16548    method @NonNull public android.telephony.data.DataCallResponse build();
16549    method @NonNull public android.telephony.data.DataCallResponse.Builder setAddresses(@NonNull java.util.List<android.net.LinkAddress>);
16550    method @NonNull public android.telephony.data.DataCallResponse.Builder setCause(int);
16551    method @NonNull public android.telephony.data.DataCallResponse.Builder setDnsAddresses(@NonNull java.util.List<java.net.InetAddress>);
16552    method @NonNull public android.telephony.data.DataCallResponse.Builder setGatewayAddresses(@NonNull java.util.List<java.net.InetAddress>);
16553    method @NonNull public android.telephony.data.DataCallResponse.Builder setHandoverFailureMode(int);
16554    method @NonNull public android.telephony.data.DataCallResponse.Builder setId(int);
16555    method @NonNull public android.telephony.data.DataCallResponse.Builder setInterfaceName(@Nullable String);
16556    method @NonNull public android.telephony.data.DataCallResponse.Builder setLinkStatus(int);
16557    method @Deprecated @NonNull public android.telephony.data.DataCallResponse.Builder setMtu(int);
16558    method @NonNull public android.telephony.data.DataCallResponse.Builder setMtuV4(int);
16559    method @NonNull public android.telephony.data.DataCallResponse.Builder setMtuV6(int);
16560    method @FlaggedApi("com.android.internal.telephony.flags.network_validation") @NonNull public android.telephony.data.DataCallResponse.Builder setNetworkValidationStatus(int);
16561    method @NonNull public android.telephony.data.DataCallResponse.Builder setPcscfAddresses(@NonNull java.util.List<java.net.InetAddress>);
16562    method @NonNull public android.telephony.data.DataCallResponse.Builder setPduSessionId(@IntRange(from=android.telephony.data.DataCallResponse.PDU_SESSION_ID_NOT_SET, to=15) int);
16563    method @NonNull public android.telephony.data.DataCallResponse.Builder setProtocolType(int);
16564    method @NonNull public android.telephony.data.DataCallResponse.Builder setRetryDurationMillis(long);
16565    method @NonNull public android.telephony.data.DataCallResponse.Builder setSliceInfo(@Nullable android.telephony.data.NetworkSliceInfo);
16566    method @Deprecated @NonNull public android.telephony.data.DataCallResponse.Builder setSuggestedRetryTime(int);
16567    method @NonNull public android.telephony.data.DataCallResponse.Builder setTrafficDescriptors(@NonNull java.util.List<android.telephony.data.TrafficDescriptor>);
16568  }
16569
16570  public final class DataProfile implements android.os.Parcelable {
16571    method public int describeContents();
16572    method @Deprecated @NonNull public String getApn();
16573    method @Nullable public android.telephony.data.ApnSetting getApnSetting();
16574    method @Deprecated public int getAuthType();
16575    method @Deprecated public int getBearerBitmask();
16576    method @Deprecated public int getMtu();
16577    method @Deprecated public int getMtuV4();
16578    method @Deprecated public int getMtuV6();
16579    method @Deprecated @Nullable public String getPassword();
16580    method @Deprecated public int getProfileId();
16581    method @Deprecated public int getProtocolType();
16582    method @Deprecated public int getRoamingProtocolType();
16583    method @Deprecated public int getSupportedApnTypesBitmask();
16584    method @Nullable public android.telephony.data.TrafficDescriptor getTrafficDescriptor();
16585    method public int getType();
16586    method @Deprecated @Nullable public String getUserName();
16587    method public boolean isEnabled();
16588    method @Deprecated public boolean isPersistent();
16589    method public boolean isPreferred();
16590    method public void writeToParcel(android.os.Parcel, int);
16591    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.data.DataProfile> CREATOR;
16592    field public static final int TYPE_3GPP = 1; // 0x1
16593    field public static final int TYPE_3GPP2 = 2; // 0x2
16594    field public static final int TYPE_COMMON = 0; // 0x0
16595  }
16596
16597  public static final class DataProfile.Builder {
16598    ctor public DataProfile.Builder();
16599    method @NonNull public android.telephony.data.DataProfile build();
16600    method @NonNull public android.telephony.data.DataProfile.Builder enable(boolean);
16601    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setApn(@NonNull String);
16602    method @NonNull public android.telephony.data.DataProfile.Builder setApnSetting(@NonNull android.telephony.data.ApnSetting);
16603    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setAuthType(int);
16604    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setBearerBitmask(int);
16605    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setMtu(int);
16606    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setMtuV4(int);
16607    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setMtuV6(int);
16608    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setPassword(@NonNull String);
16609    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setPersistent(boolean);
16610    method @NonNull public android.telephony.data.DataProfile.Builder setPreferred(boolean);
16611    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setProfileId(int);
16612    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setProtocolType(int);
16613    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setRoamingProtocolType(int);
16614    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setSupportedApnTypesBitmask(int);
16615    method @NonNull public android.telephony.data.DataProfile.Builder setTrafficDescriptor(@NonNull android.telephony.data.TrafficDescriptor);
16616    method @NonNull public android.telephony.data.DataProfile.Builder setType(int);
16617    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setUserName(@NonNull String);
16618  }
16619
16620  public abstract class DataService extends android.app.Service {
16621    ctor public DataService();
16622    method public android.os.IBinder onBind(android.content.Intent);
16623    method @Nullable public abstract android.telephony.data.DataService.DataServiceProvider onCreateDataServiceProvider(int);
16624    field public static final int REQUEST_REASON_HANDOVER = 3; // 0x3
16625    field public static final int REQUEST_REASON_NORMAL = 1; // 0x1
16626    field public static final int REQUEST_REASON_SHUTDOWN = 2; // 0x2
16627    field public static final int REQUEST_REASON_UNKNOWN = 0; // 0x0
16628    field public static final String SERVICE_INTERFACE = "android.telephony.data.DataService";
16629  }
16630
16631  public abstract class DataService.DataServiceProvider implements java.lang.AutoCloseable {
16632    ctor public DataService.DataServiceProvider(int);
16633    method public abstract void close();
16634    method public void deactivateDataCall(int, int, @Nullable android.telephony.data.DataServiceCallback);
16635    method public final int getSlotIndex();
16636    method public final void notifyApnUnthrottled(@NonNull String);
16637    method public final void notifyDataCallListChanged(java.util.List<android.telephony.data.DataCallResponse>);
16638    method public final void notifyDataProfileUnthrottled(@NonNull android.telephony.data.DataProfile);
16639    method public void requestDataCallList(@NonNull android.telephony.data.DataServiceCallback);
16640    method @FlaggedApi("com.android.internal.telephony.flags.network_validation") public void requestNetworkValidation(int, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
16641    method public void setDataProfile(@NonNull java.util.List<android.telephony.data.DataProfile>, boolean, @NonNull android.telephony.data.DataServiceCallback);
16642    method public void setInitialAttachApn(@NonNull android.telephony.data.DataProfile, boolean, @NonNull android.telephony.data.DataServiceCallback);
16643    method public void setupDataCall(int, @NonNull android.telephony.data.DataProfile, boolean, boolean, int, @Nullable android.net.LinkProperties, @NonNull android.telephony.data.DataServiceCallback);
16644    method public void setupDataCall(int, @NonNull android.telephony.data.DataProfile, boolean, boolean, int, @Nullable android.net.LinkProperties, @IntRange(from=0, to=15) int, @Nullable android.telephony.data.NetworkSliceInfo, @Nullable android.telephony.data.TrafficDescriptor, boolean, @NonNull android.telephony.data.DataServiceCallback);
16645  }
16646
16647  public class DataServiceCallback {
16648    method public void onApnUnthrottled(@NonNull String);
16649    method public void onDataCallListChanged(@NonNull java.util.List<android.telephony.data.DataCallResponse>);
16650    method public void onDataProfileUnthrottled(@NonNull android.telephony.data.DataProfile);
16651    method public void onDeactivateDataCallComplete(int);
16652    method public void onRequestDataCallListComplete(int, @NonNull java.util.List<android.telephony.data.DataCallResponse>);
16653    method public void onSetDataProfileComplete(int);
16654    method public void onSetInitialAttachApnComplete(int);
16655    method public void onSetupDataCallComplete(int, @Nullable android.telephony.data.DataCallResponse);
16656    field public static final int RESULT_ERROR_BUSY = 3; // 0x3
16657    field public static final int RESULT_ERROR_ILLEGAL_STATE = 4; // 0x4
16658    field public static final int RESULT_ERROR_INVALID_ARG = 2; // 0x2
16659    field public static final int RESULT_ERROR_UNSUPPORTED = 1; // 0x1
16660    field public static final int RESULT_SUCCESS = 0; // 0x0
16661  }
16662
16663  public final class EpsBearerQosSessionAttributes implements android.os.Parcelable android.net.QosSessionAttributes {
16664    method public int describeContents();
16665    method public long getGuaranteedDownlinkBitRateKbps();
16666    method public long getGuaranteedUplinkBitRateKbps();
16667    method public long getMaxDownlinkBitRateKbps();
16668    method public long getMaxUplinkBitRateKbps();
16669    method public int getQosIdentifier();
16670    method @NonNull public java.util.List<java.net.InetSocketAddress> getRemoteAddresses();
16671    method public void writeToParcel(@NonNull android.os.Parcel, int);
16672    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.data.EpsBearerQosSessionAttributes> CREATOR;
16673  }
16674
16675  public final class NrQosSessionAttributes implements android.os.Parcelable android.net.QosSessionAttributes {
16676    method public int describeContents();
16677    method @NonNull public java.time.Duration getBitRateWindowDuration();
16678    method public long getGuaranteedDownlinkBitRateKbps();
16679    method public long getGuaranteedUplinkBitRateKbps();
16680    method public long getMaxDownlinkBitRateKbps();
16681    method public long getMaxUplinkBitRateKbps();
16682    method @IntRange(from=1, to=63) public int getQosFlowIdentifier();
16683    method public int getQosIdentifier();
16684    method @NonNull public java.util.List<java.net.InetSocketAddress> getRemoteAddresses();
16685    method public void writeToParcel(@NonNull android.os.Parcel, int);
16686    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.data.NrQosSessionAttributes> CREATOR;
16687  }
16688
16689  public abstract class QualifiedNetworksService extends android.app.Service {
16690    ctor public QualifiedNetworksService();
16691    method public android.os.IBinder onBind(android.content.Intent);
16692    method @NonNull public abstract android.telephony.data.QualifiedNetworksService.NetworkAvailabilityProvider onCreateNetworkAvailabilityProvider(int);
16693    field public static final String QUALIFIED_NETWORKS_SERVICE_INTERFACE = "android.telephony.data.QualifiedNetworksService";
16694  }
16695
16696  public abstract class QualifiedNetworksService.NetworkAvailabilityProvider implements java.lang.AutoCloseable {
16697    ctor public QualifiedNetworksService.NetworkAvailabilityProvider(int);
16698    method public abstract void close();
16699    method public final int getSlotIndex();
16700    method public void reportEmergencyDataNetworkPreferredTransportChanged(int);
16701    method public void reportThrottleStatusChanged(@NonNull java.util.List<android.telephony.data.ThrottleStatus>);
16702    method @FlaggedApi("com.android.internal.telephony.flags.network_validation") public void requestNetworkValidation(int, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
16703    method public final void updateQualifiedNetworkTypes(int, @NonNull java.util.List<java.lang.Integer>);
16704  }
16705
16706  public final class ThrottleStatus implements android.os.Parcelable {
16707    method public int describeContents();
16708    method public int getApnType();
16709    method public int getRetryType();
16710    method public int getSlotIndex();
16711    method public long getThrottleExpiryTimeMillis();
16712    method public int getThrottleType();
16713    method public int getTransportType();
16714    method public void writeToParcel(@NonNull android.os.Parcel, int);
16715    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.data.ThrottleStatus> CREATOR;
16716    field public static final int RETRY_TYPE_HANDOVER = 3; // 0x3
16717    field public static final int RETRY_TYPE_NEW_CONNECTION = 2; // 0x2
16718    field public static final int RETRY_TYPE_NONE = 1; // 0x1
16719    field public static final int THROTTLE_TYPE_ELAPSED_TIME = 2; // 0x2
16720    field public static final int THROTTLE_TYPE_NONE = 1; // 0x1
16721  }
16722
16723  public static final class ThrottleStatus.Builder {
16724    ctor public ThrottleStatus.Builder();
16725    method @NonNull public android.telephony.data.ThrottleStatus build();
16726    method @NonNull public android.telephony.data.ThrottleStatus.Builder setApnType(int);
16727    method @NonNull public android.telephony.data.ThrottleStatus.Builder setNoThrottle();
16728    method @NonNull public android.telephony.data.ThrottleStatus.Builder setRetryType(int);
16729    method @NonNull public android.telephony.data.ThrottleStatus.Builder setSlotIndex(int);
16730    method @NonNull public android.telephony.data.ThrottleStatus.Builder setThrottleExpiryTimeMillis(long);
16731    method @NonNull public android.telephony.data.ThrottleStatus.Builder setTransportType(int);
16732  }
16733
16734}
16735
16736package android.telephony.euicc {
16737
16738  public final class DownloadableSubscription implements android.os.Parcelable {
16739    method public java.util.List<android.telephony.UiccAccessRule> getAccessRules();
16740    method @Nullable public String getCarrierName();
16741  }
16742
16743  public static final class DownloadableSubscription.Builder {
16744    ctor public DownloadableSubscription.Builder();
16745    method @NonNull public android.telephony.euicc.DownloadableSubscription.Builder setAccessRules(@NonNull java.util.List<android.telephony.UiccAccessRule>);
16746    method @NonNull public android.telephony.euicc.DownloadableSubscription.Builder setCarrierName(@NonNull String);
16747  }
16748
16749  public class EuiccCardManager {
16750    method public void authenticateServer(String, String, byte[], byte[], byte[], byte[], java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
16751    method public void cancelSession(String, byte[], int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
16752    method public void deleteProfile(String, String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
16753    method public void disableProfile(String, String, boolean, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
16754    method public void listNotifications(String, int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.telephony.euicc.EuiccNotification[]>);
16755    method public void loadBoundProfilePackage(String, byte[], java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
16756    method public void prepareDownload(String, @Nullable byte[], byte[], byte[], byte[], java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
16757    method public void removeNotificationFromList(String, int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
16758    method public void requestAllProfiles(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.service.euicc.EuiccProfileInfo[]>);
16759    method public void requestDefaultSmdpAddress(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.String>);
16760    method public void requestEnabledProfileForPort(@NonNull String, int, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.euicc.EuiccCardManager.ResultCallback<android.service.euicc.EuiccProfileInfo>);
16761    method public void requestEuiccChallenge(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
16762    method public void requestEuiccInfo1(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
16763    method public void requestEuiccInfo2(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
16764    method public void requestProfile(String, String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.service.euicc.EuiccProfileInfo>);
16765    method public void requestRulesAuthTable(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.telephony.euicc.EuiccRulesAuthTable>);
16766    method public void requestSmdsAddress(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.String>);
16767    method public void resetMemory(String, int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
16768    method public void retrieveNotification(String, int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.telephony.euicc.EuiccNotification>);
16769    method public void retrieveNotificationList(String, int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.telephony.euicc.EuiccNotification[]>);
16770    method public void setDefaultSmdpAddress(String, String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
16771    method public void setNickname(String, String, String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
16772    method @Deprecated public void switchToProfile(String, String, boolean, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.service.euicc.EuiccProfileInfo>);
16773    method public void switchToProfile(@Nullable String, @Nullable String, int, boolean, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.euicc.EuiccCardManager.ResultCallback<android.service.euicc.EuiccProfileInfo>);
16774    field public static final int CANCEL_REASON_END_USER_REJECTED = 0; // 0x0
16775    field public static final int CANCEL_REASON_POSTPONED = 1; // 0x1
16776    field public static final int CANCEL_REASON_PPR_NOT_ALLOWED = 3; // 0x3
16777    field public static final int CANCEL_REASON_TIMEOUT = 2; // 0x2
16778    field public static final int RESET_OPTION_DELETE_FIELD_LOADED_TEST_PROFILES = 2; // 0x2
16779    field public static final int RESET_OPTION_DELETE_OPERATIONAL_PROFILES = 1; // 0x1
16780    field public static final int RESET_OPTION_RESET_DEFAULT_SMDP_ADDRESS = 4; // 0x4
16781    field public static final int RESULT_CALLER_NOT_ALLOWED = -3; // 0xfffffffd
16782    field public static final int RESULT_EUICC_NOT_FOUND = -2; // 0xfffffffe
16783    field public static final int RESULT_OK = 0; // 0x0
16784    field public static final int RESULT_PROFILE_DOES_NOT_EXIST = -4; // 0xfffffffc
16785    field public static final int RESULT_PROFILE_NOT_FOUND = 1; // 0x1
16786    field public static final int RESULT_UNKNOWN_ERROR = -1; // 0xffffffff
16787  }
16788
16789  public static interface EuiccCardManager.ResultCallback<T> {
16790    method public void onComplete(int, T);
16791  }
16792
16793  public class EuiccManager {
16794    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void continueOperation(android.content.Intent, android.os.Bundle);
16795    method @Deprecated @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void eraseSubscriptions(@NonNull android.app.PendingIntent);
16796    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void eraseSubscriptions(int, @NonNull android.app.PendingIntent);
16797    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void getDefaultDownloadableSubscriptionList(android.app.PendingIntent);
16798    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void getDownloadableSubscriptionMetadata(android.telephony.euicc.DownloadableSubscription, android.app.PendingIntent);
16799    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public int getOtaStatus();
16800    method @NonNull @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public java.util.List<java.lang.String> getSupportedCountries();
16801    method @NonNull @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public java.util.List<java.lang.String> getUnsupportedCountries();
16802    method @FlaggedApi("com.android.internal.telephony.flags.support_psim_to_esim_conversion") @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public boolean isPsimConversionSupported(int);
16803    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public boolean isSupportedCountry(@NonNull String);
16804    method @FlaggedApi("com.android.internal.telephony.flags.support_psim_to_esim_conversion") @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void setPsimConversionSupportedCarriers(@NonNull java.util.Set<java.lang.Integer>);
16805    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void setSupportedCountries(@NonNull java.util.List<java.lang.String>);
16806    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void setUnsupportedCountries(@NonNull java.util.List<java.lang.String>);
16807    field @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public static final String ACTION_CONVERT_TO_EMBEDDED_SUBSCRIPTION = "android.telephony.euicc.action.CONVERT_TO_EMBEDDED_SUBSCRIPTION";
16808    field public static final String ACTION_DELETE_SUBSCRIPTION_PRIVILEGED = "android.telephony.euicc.action.DELETE_SUBSCRIPTION_PRIVILEGED";
16809    field @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public static final String ACTION_OTA_STATUS_CHANGED = "android.telephony.euicc.action.OTA_STATUS_CHANGED";
16810    field public static final String ACTION_PROVISION_EMBEDDED_SUBSCRIPTION = "android.telephony.euicc.action.PROVISION_EMBEDDED_SUBSCRIPTION";
16811    field public static final String ACTION_RENAME_SUBSCRIPTION_PRIVILEGED = "android.telephony.euicc.action.RENAME_SUBSCRIPTION_PRIVILEGED";
16812    field public static final String ACTION_TOGGLE_SUBSCRIPTION_PRIVILEGED = "android.telephony.euicc.action.TOGGLE_SUBSCRIPTION_PRIVILEGED";
16813    field @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public static final String ACTION_TRANSFER_EMBEDDED_SUBSCRIPTIONS = "android.telephony.euicc.action.TRANSFER_EMBEDDED_SUBSCRIPTIONS";
16814    field public static final int EUICC_ACTIVATION_TYPE_ACCOUNT_REQUIRED = 4; // 0x4
16815    field public static final int EUICC_ACTIVATION_TYPE_BACKUP = 2; // 0x2
16816    field public static final int EUICC_ACTIVATION_TYPE_DEFAULT = 1; // 0x1
16817    field public static final int EUICC_ACTIVATION_TYPE_TRANSFER = 3; // 0x3
16818    field public static final int EUICC_OTA_FAILED = 2; // 0x2
16819    field public static final int EUICC_OTA_IN_PROGRESS = 1; // 0x1
16820    field public static final int EUICC_OTA_NOT_NEEDED = 4; // 0x4
16821    field public static final int EUICC_OTA_STATUS_UNAVAILABLE = 5; // 0x5
16822    field public static final int EUICC_OTA_SUCCEEDED = 3; // 0x3
16823    field public static final String EXTRA_ACTIVATION_TYPE = "android.telephony.euicc.extra.ACTIVATION_TYPE";
16824    field public static final String EXTRA_EMBEDDED_SUBSCRIPTION_DOWNLOADABLE_SUBSCRIPTIONS = "android.telephony.euicc.extra.EMBEDDED_SUBSCRIPTION_DOWNLOADABLE_SUBSCRIPTIONS";
16825    field public static final String EXTRA_ENABLE_SUBSCRIPTION = "android.telephony.euicc.extra.ENABLE_SUBSCRIPTION";
16826    field public static final String EXTRA_FORCE_PROVISION = "android.telephony.euicc.extra.FORCE_PROVISION";
16827    field public static final String EXTRA_FROM_SUBSCRIPTION_ID = "android.telephony.euicc.extra.FROM_SUBSCRIPTION_ID";
16828    field public static final String EXTRA_PHYSICAL_SLOT_ID = "android.telephony.euicc.extra.PHYSICAL_SLOT_ID";
16829    field public static final String EXTRA_SUBSCRIPTION_ID = "android.telephony.euicc.extra.SUBSCRIPTION_ID";
16830    field public static final String EXTRA_SUBSCRIPTION_NICKNAME = "android.telephony.euicc.extra.SUBSCRIPTION_NICKNAME";
16831  }
16832
16833  public final class EuiccNotification implements android.os.Parcelable {
16834    ctor public EuiccNotification(int, String, int, @Nullable byte[]);
16835    method public int describeContents();
16836    method @Nullable public byte[] getData();
16837    method public int getEvent();
16838    method public int getSeq();
16839    method public String getTargetAddr();
16840    method public void writeToParcel(android.os.Parcel, int);
16841    field public static final int ALL_EVENTS = 15; // 0xf
16842    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.euicc.EuiccNotification> CREATOR;
16843    field public static final int EVENT_DELETE = 8; // 0x8
16844    field public static final int EVENT_DISABLE = 4; // 0x4
16845    field public static final int EVENT_ENABLE = 2; // 0x2
16846    field public static final int EVENT_INSTALL = 1; // 0x1
16847  }
16848
16849  public final class EuiccRulesAuthTable implements android.os.Parcelable {
16850    method public int describeContents();
16851    method public int findIndex(int, android.service.carrier.CarrierIdentifier);
16852    method public boolean hasPolicyRuleFlag(int, int);
16853    method public void writeToParcel(android.os.Parcel, int);
16854    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.euicc.EuiccRulesAuthTable> CREATOR;
16855    field public static final int POLICY_RULE_FLAG_CONSENT_REQUIRED = 1; // 0x1
16856  }
16857
16858  public static final class EuiccRulesAuthTable.Builder {
16859    ctor public EuiccRulesAuthTable.Builder(int);
16860    method public android.telephony.euicc.EuiccRulesAuthTable.Builder add(int, java.util.List<android.service.carrier.CarrierIdentifier>, int);
16861    method public android.telephony.euicc.EuiccRulesAuthTable build();
16862  }
16863
16864}
16865
16866package android.telephony.gba {
16867
16868  public class GbaService extends android.app.Service {
16869    ctor public GbaService();
16870    method public void onAuthenticationRequest(int, int, int, @NonNull android.net.Uri, @NonNull byte[], boolean);
16871    method public android.os.IBinder onBind(android.content.Intent);
16872    method public final void reportAuthenticationFailure(int, int) throws java.lang.RuntimeException;
16873    method public final void reportKeysAvailable(int, @NonNull byte[], @NonNull String) throws java.lang.RuntimeException;
16874    field public static final String SERVICE_INTERFACE = "android.telephony.gba.GbaService";
16875  }
16876
16877  public class TlsParams {
16878    method public static boolean isTlsCipherSuiteSupported(int);
16879    field public static final int GROUP_SECP256R1 = 23; // 0x17
16880    field public static final int GROUP_SECP384R1 = 24; // 0x18
16881    field public static final int GROUP_X25519 = 29; // 0x1d
16882    field public static final int GROUP_X448 = 30; // 0x1e
16883    field public static final int PROTOCOL_VERSION_TLS_1_2 = 771; // 0x303
16884    field public static final int PROTOCOL_VERSION_TLS_1_3 = 772; // 0x304
16885    field public static final int SIG_ECDSA_BRAINPOOLP256R1TLS13_SHA256 = 2074; // 0x81a
16886    field public static final int SIG_ECDSA_BRAINPOOLP384R1TLS13_SHA384 = 2075; // 0x81b
16887    field public static final int SIG_ECDSA_BRAINPOOLP512R1TLS13_SHA512 = 2076; // 0x81c
16888    field public static final int SIG_ECDSA_SECP256R1_SHA256 = 1027; // 0x403
16889    field public static final int SIG_ECDSA_SECP384R1_SHA384 = 1283; // 0x503
16890    field public static final int SIG_ECDSA_SECP521R1_SHA512 = 1539; // 0x603
16891    field public static final int SIG_ECDSA_SHA1 = 515; // 0x203
16892    field public static final int SIG_RSA_PKCS1_SHA1 = 513; // 0x201
16893    field public static final int SIG_RSA_PKCS1_SHA256 = 1025; // 0x401
16894    field public static final int SIG_RSA_PKCS1_SHA256_LEGACY = 1056; // 0x420
16895    field public static final int SIG_RSA_PKCS1_SHA384 = 1281; // 0x501
16896    field public static final int SIG_RSA_PKCS1_SHA384_LEGACY = 1312; // 0x520
16897    field public static final int SIG_RSA_PKCS1_SHA512 = 1537; // 0x601
16898    field public static final int SIG_RSA_PKCS1_SHA512_LEGACY = 1568; // 0x620
16899    field public static final int SIG_RSA_PSS_RSAE_SHA256 = 2052; // 0x804
16900    field public static final int SIG_RSA_PSS_RSAE_SHA384 = 2053; // 0x805
16901    field public static final int SIG_RSA_PSS_RSAE_SHA512 = 2054; // 0x806
16902    field public static final int TLS_AES_128_CCM_SHA256 = 4868; // 0x1304
16903    field public static final int TLS_AES_128_GCM_SHA256 = 4865; // 0x1301
16904    field public static final int TLS_AES_256_GCM_SHA384 = 4866; // 0x1302
16905    field public static final int TLS_CHACHA20_POLY1305_SHA256 = 4867; // 0x1303
16906    field public static final int TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA = 19; // 0x13
16907    field public static final int TLS_DHE_DSS_WITH_AES_128_CBC_SHA = 50; // 0x32
16908    field public static final int TLS_DHE_DSS_WITH_AES_128_CBC_SHA256 = 64; // 0x40
16909    field public static final int TLS_DHE_DSS_WITH_AES_256_CBC_SHA = 56; // 0x38
16910    field public static final int TLS_DHE_DSS_WITH_AES_256_CBC_SHA256 = 106; // 0x6a
16911    field public static final int TLS_DHE_PSK_WITH_AES_128_CCM = 49318; // 0xc0a6
16912    field public static final int TLS_DHE_PSK_WITH_AES_128_GCM_SHA256 = 170; // 0xaa
16913    field public static final int TLS_DHE_PSK_WITH_AES_256_CCM = 49319; // 0xc0a7
16914    field public static final int TLS_DHE_PSK_WITH_AES_256_GCM_SHA384 = 171; // 0xab
16915    field public static final int TLS_DHE_PSK_WITH_CHACHA20_POLY1305_SHA256 = 52397; // 0xccad
16916    field public static final int TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA = 22; // 0x16
16917    field public static final int TLS_DHE_RSA_WITH_AES_128_CBC_SHA = 51; // 0x33
16918    field public static final int TLS_DHE_RSA_WITH_AES_128_CBC_SHA256 = 103; // 0x67
16919    field public static final int TLS_DHE_RSA_WITH_AES_128_CCM = 49310; // 0xc09e
16920    field public static final int TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 = 158; // 0x9e
16921    field public static final int TLS_DHE_RSA_WITH_AES_256_CBC_SHA = 57; // 0x39
16922    field public static final int TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 = 107; // 0x6b
16923    field public static final int TLS_DHE_RSA_WITH_AES_256_CCM = 49311; // 0xc09f
16924    field public static final int TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 = 159; // 0x9f
16925    field public static final int TLS_DHE_RSA_WITH_CHACHA20_POLY1305_SHA256 = 52394; // 0xccaa
16926    field public static final int TLS_DH_ANON_WITH_3DES_EDE_CBC_SHA = 27; // 0x1b
16927    field public static final int TLS_DH_ANON_WITH_AES_128_CBC_SHA = 52; // 0x34
16928    field public static final int TLS_DH_ANON_WITH_AES_128_CBC_SHA256 = 108; // 0x6c
16929    field public static final int TLS_DH_ANON_WITH_AES_256_CBC_SHA = 58; // 0x3a
16930    field public static final int TLS_DH_ANON_WITH_AES_256_CBC_SHA256 = 109; // 0x6d
16931    field public static final int TLS_DH_ANON_WITH_RC4_128_MD5 = 24; // 0x18
16932    field public static final int TLS_DH_DSS_WITH_3DES_EDE_CBC_SHA = 13; // 0xd
16933    field public static final int TLS_DH_DSS_WITH_AES_128_CBC_SHA = 48; // 0x30
16934    field public static final int TLS_DH_DSS_WITH_AES_128_CBC_SHA256 = 62; // 0x3e
16935    field public static final int TLS_DH_DSS_WITH_AES_256_CBC_SHA = 54; // 0x36
16936    field public static final int TLS_DH_DSS_WITH_AES_256_CBC_SHA256 = 104; // 0x68
16937    field public static final int TLS_DH_RSA_WITH_3DES_EDE_CBC_SHA = 16; // 0x10
16938    field public static final int TLS_DH_RSA_WITH_AES_128_CBC_SHA = 49; // 0x31
16939    field public static final int TLS_DH_RSA_WITH_AES_128_CBC_SHA256 = 63; // 0x3f
16940    field public static final int TLS_DH_RSA_WITH_AES_256_CBC_SHA = 55; // 0x37
16941    field public static final int TLS_DH_RSA_WITH_AES_256_CBC_SHA256 = 105; // 0x69
16942    field public static final int TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 = 49195; // 0xc02b
16943    field public static final int TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 = 49196; // 0xc02c
16944    field public static final int TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 = 52393; // 0xcca9
16945    field public static final int TLS_ECDHE_PSK_WITH_AES_128_CCM_SHA256 = 53253; // 0xd005
16946    field public static final int TLS_ECDHE_PSK_WITH_AES_128_GCM_SHA256 = 53249; // 0xd001
16947    field public static final int TLS_ECDHE_PSK_WITH_AES_256_GCM_SHA384 = 53250; // 0xd002
16948    field public static final int TLS_ECDHE_PSK_WITH_CHACHA20_POLY1305_SHA256 = 52396; // 0xccac
16949    field public static final int TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 = 49199; // 0xc02f
16950    field public static final int TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 = 49200; // 0xc030
16951    field public static final int TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 = 52392; // 0xcca8
16952    field public static final int TLS_NULL_WITH_NULL_NULL = 0; // 0x0
16953    field public static final int TLS_RSA_WITH_3DES_EDE_CBC_SHA = 10; // 0xa
16954    field public static final int TLS_RSA_WITH_AES_128_CBC_SHA = 47; // 0x2f
16955    field public static final int TLS_RSA_WITH_AES_128_CBC_SHA256 = 60; // 0x3c
16956    field public static final int TLS_RSA_WITH_AES_256_CBC_SHA = 53; // 0x35
16957    field public static final int TLS_RSA_WITH_AES_256_CBC_SHA256 = 61; // 0x3d
16958    field public static final int TLS_RSA_WITH_NULL_MD5 = 1; // 0x1
16959    field public static final int TLS_RSA_WITH_NULL_SHA = 2; // 0x2
16960    field public static final int TLS_RSA_WITH_NULL_SHA256 = 59; // 0x3b
16961    field public static final int TLS_RSA_WITH_RC4_128_MD5 = 4; // 0x4
16962    field public static final int TLS_RSA_WITH_RC4_128_SHA = 5; // 0x5
16963  }
16964
16965  public final class UaSecurityProtocolIdentifier implements android.os.Parcelable {
16966    method public int describeContents();
16967    method public int getOrg();
16968    method public int getProtocol();
16969    method public int getTlsCipherSuite();
16970    method @NonNull public byte[] toByteArray();
16971    method public void writeToParcel(@NonNull android.os.Parcel, int);
16972    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.gba.UaSecurityProtocolIdentifier> CREATOR;
16973    field public static final int ORG_3GPP = 1; // 0x1
16974    field public static final int ORG_3GPP2 = 2; // 0x2
16975    field public static final int ORG_GSMA = 4; // 0x4
16976    field public static final int ORG_LOCAL = 255; // 0xff
16977    field public static final int ORG_NONE = 0; // 0x0
16978    field public static final int ORG_OMA = 3; // 0x3
16979    field public static final int UA_SECURITY_PROTOCOL_3GPP_GENERATION_TMPI = 256; // 0x100
16980    field public static final int UA_SECURITY_PROTOCOL_3GPP_GENERIC_PUSH_LAYER = 5; // 0x5
16981    field public static final int UA_SECURITY_PROTOCOL_3GPP_HTTP_BASED_MBMS = 3; // 0x3
16982    field public static final int UA_SECURITY_PROTOCOL_3GPP_HTTP_DIGEST_AUTHENTICATION = 2; // 0x2
16983    field public static final int UA_SECURITY_PROTOCOL_3GPP_IMS_MEDIA_PLANE = 6; // 0x6
16984    field public static final int UA_SECURITY_PROTOCOL_3GPP_MBMS = 1; // 0x1
16985    field public static final int UA_SECURITY_PROTOCOL_3GPP_SIP_BASED_MBMS = 4; // 0x4
16986    field public static final int UA_SECURITY_PROTOCOL_3GPP_SUBSCRIBER_CERTIFICATE = 0; // 0x0
16987    field public static final int UA_SECURITY_PROTOCOL_3GPP_TLS_BROWSER = 131072; // 0x20000
16988    field public static final int UA_SECURITY_PROTOCOL_3GPP_TLS_DEFAULT = 65536; // 0x10000
16989  }
16990
16991  public static final class UaSecurityProtocolIdentifier.Builder {
16992    ctor public UaSecurityProtocolIdentifier.Builder();
16993    ctor public UaSecurityProtocolIdentifier.Builder(@NonNull android.telephony.gba.UaSecurityProtocolIdentifier);
16994    method @NonNull public android.telephony.gba.UaSecurityProtocolIdentifier build();
16995    method @NonNull public android.telephony.gba.UaSecurityProtocolIdentifier.Builder setOrg(int);
16996    method @NonNull public android.telephony.gba.UaSecurityProtocolIdentifier.Builder setProtocol(int);
16997    method @NonNull public android.telephony.gba.UaSecurityProtocolIdentifier.Builder setTlsCipherSuite(int);
16998  }
16999
17000}
17001
17002package android.telephony.ims {
17003
17004  public final class AudioCodecAttributes implements android.os.Parcelable {
17005    ctor public AudioCodecAttributes(float, @NonNull android.util.Range<java.lang.Float>, float, @NonNull android.util.Range<java.lang.Float>);
17006    method public int describeContents();
17007    method public float getBandwidthKhz();
17008    method @NonNull public android.util.Range<java.lang.Float> getBandwidthRangeKhz();
17009    method public float getBitrateKbps();
17010    method @NonNull public android.util.Range<java.lang.Float> getBitrateRangeKbps();
17011    method public void writeToParcel(@NonNull android.os.Parcel, int);
17012    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.AudioCodecAttributes> CREATOR;
17013  }
17014
17015  public interface DelegateMessageCallback {
17016    method public void onMessageReceived(@NonNull android.telephony.ims.SipMessage);
17017    method public void onMessageSendFailure(@NonNull String, int);
17018    method public void onMessageSent(@NonNull String);
17019  }
17020
17021  public final class DelegateRegistrationState implements android.os.Parcelable {
17022    method public int describeContents();
17023    method @NonNull public java.util.Set<android.telephony.ims.FeatureTagState> getDeregisteredFeatureTags();
17024    method @NonNull public java.util.Set<android.telephony.ims.FeatureTagState> getDeregisteringFeatureTags();
17025    method @NonNull public java.util.Set<java.lang.String> getRegisteredFeatureTags();
17026    method @NonNull public java.util.Set<java.lang.String> getRegisteringFeatureTags();
17027    method public void writeToParcel(@NonNull android.os.Parcel, int);
17028    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.DelegateRegistrationState> CREATOR;
17029    field public static final int DEREGISTERED_REASON_NOT_PROVISIONED = 1; // 0x1
17030    field public static final int DEREGISTERED_REASON_NOT_REGISTERED = 2; // 0x2
17031    field public static final int DEREGISTERED_REASON_UNKNOWN = 0; // 0x0
17032    field public static final int DEREGISTERING_REASON_DESTROY_PENDING = 6; // 0x6
17033    field public static final int DEREGISTERING_REASON_FEATURE_TAGS_CHANGING = 5; // 0x5
17034    field public static final int DEREGISTERING_REASON_LOSING_PDN = 7; // 0x7
17035    field public static final int DEREGISTERING_REASON_PDN_CHANGE = 3; // 0x3
17036    field public static final int DEREGISTERING_REASON_PROVISIONING_CHANGE = 4; // 0x4
17037    field public static final int DEREGISTERING_REASON_UNSPECIFIED = 8; // 0x8
17038  }
17039
17040  public static final class DelegateRegistrationState.Builder {
17041    ctor public DelegateRegistrationState.Builder();
17042    method @NonNull public android.telephony.ims.DelegateRegistrationState.Builder addDeregisteredFeatureTag(@NonNull String, int);
17043    method @NonNull public android.telephony.ims.DelegateRegistrationState.Builder addDeregisteringFeatureTag(@NonNull String, int);
17044    method @NonNull public android.telephony.ims.DelegateRegistrationState.Builder addRegisteredFeatureTag(@NonNull String);
17045    method @NonNull public android.telephony.ims.DelegateRegistrationState.Builder addRegisteredFeatureTags(@NonNull java.util.Set<java.lang.String>);
17046    method @NonNull public android.telephony.ims.DelegateRegistrationState.Builder addRegisteringFeatureTags(@NonNull java.util.Set<java.lang.String>);
17047    method @NonNull public android.telephony.ims.DelegateRegistrationState build();
17048  }
17049
17050  public final class DelegateRequest implements android.os.Parcelable {
17051    ctor public DelegateRequest(@NonNull java.util.Set<java.lang.String>);
17052    method public int describeContents();
17053    method @NonNull public java.util.Set<java.lang.String> getFeatureTags();
17054    method public void writeToParcel(@NonNull android.os.Parcel, int);
17055    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.DelegateRequest> CREATOR;
17056  }
17057
17058  public interface DelegateStateCallback {
17059    method public void onConfigurationChanged(@NonNull android.telephony.ims.SipDelegateConfiguration);
17060    method public void onCreated(@NonNull android.telephony.ims.stub.SipDelegate, @Nullable java.util.Set<android.telephony.ims.FeatureTagState>);
17061    method public void onDestroyed(int);
17062    method public void onFeatureTagRegistrationChanged(@NonNull android.telephony.ims.DelegateRegistrationState);
17063  }
17064
17065  public final class FeatureTagState implements android.os.Parcelable {
17066    ctor public FeatureTagState(@NonNull String, int);
17067    method public int describeContents();
17068    method @NonNull public String getFeatureTag();
17069    method public int getState();
17070    method public void writeToParcel(@NonNull android.os.Parcel, int);
17071    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.FeatureTagState> CREATOR;
17072  }
17073
17074  public final class ImsCallForwardInfo implements android.os.Parcelable {
17075    ctor public ImsCallForwardInfo(int, int, int, int, @NonNull String, int);
17076    method public int describeContents();
17077    method public int getCondition();
17078    method public String getNumber();
17079    method public int getServiceClass();
17080    method public int getStatus();
17081    method public int getTimeSeconds();
17082    method public int getToA();
17083    method public void writeToParcel(android.os.Parcel, int);
17084    field public static final int CDIV_CF_REASON_ALL = 4; // 0x4
17085    field public static final int CDIV_CF_REASON_ALL_CONDITIONAL = 5; // 0x5
17086    field public static final int CDIV_CF_REASON_BUSY = 1; // 0x1
17087    field public static final int CDIV_CF_REASON_NOT_LOGGED_IN = 6; // 0x6
17088    field public static final int CDIV_CF_REASON_NOT_REACHABLE = 3; // 0x3
17089    field public static final int CDIV_CF_REASON_NO_REPLY = 2; // 0x2
17090    field public static final int CDIV_CF_REASON_UNCONDITIONAL = 0; // 0x0
17091    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsCallForwardInfo> CREATOR;
17092    field public static final int STATUS_ACTIVE = 1; // 0x1
17093    field public static final int STATUS_NOT_ACTIVE = 0; // 0x0
17094    field public static final int TYPE_OF_ADDRESS_INTERNATIONAL = 145; // 0x91
17095    field public static final int TYPE_OF_ADDRESS_UNKNOWN = 129; // 0x81
17096  }
17097
17098  public final class ImsCallProfile implements android.os.Parcelable {
17099    ctor public ImsCallProfile();
17100    ctor public ImsCallProfile(int, int);
17101    ctor public ImsCallProfile(int, int, android.os.Bundle, android.telephony.ims.ImsStreamMediaProfile);
17102    method public int describeContents();
17103    method @NonNull public java.util.Set<android.telephony.ims.RtpHeaderExtensionType> getAcceptedRtpHeaderExtensionTypes();
17104    method public String getCallExtra(String);
17105    method public String getCallExtra(String, String);
17106    method public boolean getCallExtraBoolean(String);
17107    method public boolean getCallExtraBoolean(String, boolean);
17108    method public int getCallExtraInt(String);
17109    method public int getCallExtraInt(String, int);
17110    method @Nullable public <T extends android.os.Parcelable> T getCallExtraParcelable(@Nullable String);
17111    method public android.os.Bundle getCallExtras();
17112    method public int getCallType();
17113    method public static int getCallTypeFromVideoState(int);
17114    method public int getCallerNumberVerificationStatus();
17115    method public int getEmergencyCallRouting();
17116    method public int getEmergencyServiceCategories();
17117    method @NonNull public java.util.List<java.lang.String> getEmergencyUrns();
17118    method public android.telephony.ims.ImsStreamMediaProfile getMediaProfile();
17119    method @NonNull public android.os.Bundle getProprietaryCallExtras();
17120    method public int getRestrictCause();
17121    method public int getServiceType();
17122    method public static int getVideoStateFromCallType(int);
17123    method public static int getVideoStateFromImsCallProfile(android.telephony.ims.ImsCallProfile);
17124    method public boolean hasKnownUserIntentEmergency();
17125    method public boolean isEmergencyCallTesting();
17126    method public boolean isVideoCall();
17127    method public boolean isVideoPaused();
17128    method public static int presentationToOir(int);
17129    method public void setAcceptedRtpHeaderExtensionTypes(@NonNull java.util.Set<android.telephony.ims.RtpHeaderExtensionType>);
17130    method public void setCallExtra(String, String);
17131    method public void setCallExtraBoolean(String, boolean);
17132    method public void setCallExtraInt(String, int);
17133    method public void setCallExtraParcelable(@NonNull String, @NonNull android.os.Parcelable);
17134    method public void setCallRestrictCause(int);
17135    method public void setCallerNumberVerificationStatus(int);
17136    method public void setEmergencyCallRouting(int);
17137    method public void setEmergencyCallTesting(boolean);
17138    method public void setEmergencyServiceCategories(int);
17139    method public void setEmergencyUrns(@NonNull java.util.List<java.lang.String>);
17140    method public void setHasKnownUserIntentEmergency(boolean);
17141    method public void updateCallExtras(android.telephony.ims.ImsCallProfile);
17142    method public void updateCallType(android.telephony.ims.ImsCallProfile);
17143    method public void updateMediaProfile(android.telephony.ims.ImsCallProfile);
17144    method public void writeToParcel(android.os.Parcel, int);
17145    field public static final int CALL_RESTRICT_CAUSE_DISABLED = 2; // 0x2
17146    field public static final int CALL_RESTRICT_CAUSE_HD = 3; // 0x3
17147    field public static final int CALL_RESTRICT_CAUSE_NONE = 0; // 0x0
17148    field public static final int CALL_RESTRICT_CAUSE_RAT = 1; // 0x1
17149    field public static final int CALL_TYPE_NONE = 0; // 0x0
17150    field public static final int CALL_TYPE_VIDEO_N_VOICE = 3; // 0x3
17151    field public static final int CALL_TYPE_VOICE = 2; // 0x2
17152    field public static final int CALL_TYPE_VOICE_N_VIDEO = 1; // 0x1
17153    field public static final int CALL_TYPE_VS = 8; // 0x8
17154    field public static final int CALL_TYPE_VS_RX = 10; // 0xa
17155    field public static final int CALL_TYPE_VS_TX = 9; // 0x9
17156    field public static final int CALL_TYPE_VT = 4; // 0x4
17157    field public static final int CALL_TYPE_VT_NODIR = 7; // 0x7
17158    field public static final int CALL_TYPE_VT_RX = 6; // 0x6
17159    field public static final int CALL_TYPE_VT_TX = 5; // 0x5
17160    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsCallProfile> CREATOR;
17161    field public static final int DIALSTRING_NORMAL = 0; // 0x0
17162    field public static final int DIALSTRING_SS_CONF = 1; // 0x1
17163    field public static final int DIALSTRING_USSD = 2; // 0x2
17164    field public static final String EXTRA_ADDITIONAL_CALL_INFO = "AdditionalCallInfo";
17165    field public static final String EXTRA_ADDITIONAL_SIP_INVITE_FIELDS = "android.telephony.ims.extra.ADDITIONAL_SIP_INVITE_FIELDS";
17166    field @FlaggedApi("com.android.server.telecom.flags.business_call_composer") public static final String EXTRA_ASSERTED_DISPLAY_NAME = "android.telephony.ims.extra.ASSERTED_DISPLAY_NAME";
17167    field public static final String EXTRA_CALL_DISCONNECT_CAUSE = "android.telephony.ims.extra.CALL_DISCONNECT_CAUSE";
17168    field public static final String EXTRA_CALL_NETWORK_TYPE = "android.telephony.ims.extra.CALL_NETWORK_TYPE";
17169    field @Deprecated public static final String EXTRA_CALL_RAT_TYPE = "CallRadioTech";
17170    field public static final String EXTRA_CALL_SUBJECT = "android.telephony.ims.extra.CALL_SUBJECT";
17171    field public static final String EXTRA_CHILD_NUMBER = "ChildNum";
17172    field public static final String EXTRA_CNA = "cna";
17173    field public static final String EXTRA_CNAP = "cnap";
17174    field public static final String EXTRA_CODEC = "Codec";
17175    field public static final String EXTRA_CONFERENCE = "android.telephony.ims.extra.CONFERENCE";
17176    field public static final String EXTRA_DIALSTRING = "dialstring";
17177    field public static final String EXTRA_DISPLAY_TEXT = "DisplayText";
17178    field public static final String EXTRA_EMERGENCY_CALL = "e_call";
17179    field public static final String EXTRA_EXTENDING_TO_CONFERENCE_SUPPORTED = "android.telephony.ims.extra.EXTENDING_TO_CONFERENCE_SUPPORTED";
17180    field public static final String EXTRA_FORWARDED_NUMBER = "android.telephony.ims.extra.FORWARDED_NUMBER";
17181    field public static final String EXTRA_IS_BUSINESS_CALL = "android.telephony.ims.extra.IS_BUSINESS_CALL";
17182    field public static final String EXTRA_IS_CALL_PULL = "CallPull";
17183    field public static final String EXTRA_IS_CROSS_SIM_CALL = "android.telephony.ims.extra.IS_CROSS_SIM_CALL";
17184    field public static final String EXTRA_LOCATION = "android.telephony.ims.extra.LOCATION";
17185    field public static final String EXTRA_OI = "oi";
17186    field public static final String EXTRA_OIR = "oir";
17187    field public static final String EXTRA_PICTURE_URL = "android.telephony.ims.extra.PICTURE_URL";
17188    field public static final String EXTRA_PRIORITY = "android.telephony.ims.extra.PRIORITY";
17189    field public static final String EXTRA_REMOTE_URI = "remote_uri";
17190    field public static final String EXTRA_USSD = "ussd";
17191    field public static final int OIR_DEFAULT = 0; // 0x0
17192    field public static final int OIR_PRESENTATION_NOT_RESTRICTED = 2; // 0x2
17193    field public static final int OIR_PRESENTATION_PAYPHONE = 4; // 0x4
17194    field public static final int OIR_PRESENTATION_RESTRICTED = 1; // 0x1
17195    field public static final int OIR_PRESENTATION_UNAVAILABLE = 5; // 0x5
17196    field public static final int OIR_PRESENTATION_UNKNOWN = 3; // 0x3
17197    field public static final int PRIORITY_NORMAL = 0; // 0x0
17198    field public static final int PRIORITY_URGENT = 1; // 0x1
17199    field public static final int SERVICE_TYPE_EMERGENCY = 2; // 0x2
17200    field public static final int SERVICE_TYPE_NONE = 0; // 0x0
17201    field public static final int SERVICE_TYPE_NORMAL = 1; // 0x1
17202    field public static final int VERIFICATION_STATUS_FAILED = 2; // 0x2
17203    field public static final int VERIFICATION_STATUS_NOT_VERIFIED = 0; // 0x0
17204    field public static final int VERIFICATION_STATUS_PASSED = 1; // 0x1
17205  }
17206
17207  public class ImsCallSessionListener {
17208    method public void callQualityChanged(@NonNull android.telephony.CallQuality);
17209    method public void callSessionConferenceExtendFailed(android.telephony.ims.ImsReasonInfo);
17210    method public void callSessionConferenceExtendReceived(android.telephony.ims.stub.ImsCallSessionImplBase, android.telephony.ims.ImsCallProfile);
17211    method public void callSessionConferenceExtended(android.telephony.ims.stub.ImsCallSessionImplBase, android.telephony.ims.ImsCallProfile);
17212    method public void callSessionConferenceStateUpdated(android.telephony.ims.ImsConferenceState);
17213    method public void callSessionDtmfReceived(char);
17214    method @Deprecated public void callSessionHandover(int, int, android.telephony.ims.ImsReasonInfo);
17215    method @Deprecated public void callSessionHandoverFailed(int, int, android.telephony.ims.ImsReasonInfo);
17216    method public void callSessionHeld(android.telephony.ims.ImsCallProfile);
17217    method public void callSessionHoldFailed(android.telephony.ims.ImsReasonInfo);
17218    method public void callSessionHoldReceived(android.telephony.ims.ImsCallProfile);
17219    method public void callSessionInitiated(android.telephony.ims.ImsCallProfile);
17220    method @Deprecated public void callSessionInitiatedFailed(android.telephony.ims.ImsReasonInfo);
17221    method public void callSessionInitiating(@NonNull android.telephony.ims.ImsCallProfile);
17222    method public void callSessionInitiatingFailed(@NonNull android.telephony.ims.ImsReasonInfo);
17223    method public void callSessionInviteParticipantsRequestDelivered();
17224    method public void callSessionInviteParticipantsRequestFailed(android.telephony.ims.ImsReasonInfo);
17225    method @Deprecated public void callSessionMayHandover(int, int);
17226    method public void callSessionMergeComplete(android.telephony.ims.stub.ImsCallSessionImplBase);
17227    method public void callSessionMergeFailed(android.telephony.ims.ImsReasonInfo);
17228    method public void callSessionMergeStarted(android.telephony.ims.stub.ImsCallSessionImplBase, android.telephony.ims.ImsCallProfile);
17229    method public void callSessionMultipartyStateChanged(boolean);
17230    method public void callSessionProgressing(android.telephony.ims.ImsStreamMediaProfile);
17231    method public void callSessionRemoveParticipantsRequestDelivered();
17232    method public void callSessionRemoveParticipantsRequestFailed(android.telephony.ims.ImsReasonInfo);
17233    method public void callSessionResumeFailed(android.telephony.ims.ImsReasonInfo);
17234    method public void callSessionResumeReceived(android.telephony.ims.ImsCallProfile);
17235    method public void callSessionResumed(android.telephony.ims.ImsCallProfile);
17236    method public void callSessionRtpHeaderExtensionsReceived(@NonNull java.util.Set<android.telephony.ims.RtpHeaderExtension>);
17237    method public void callSessionRttAudioIndicatorChanged(@NonNull android.telephony.ims.ImsStreamMediaProfile);
17238    method public void callSessionRttMessageReceived(String);
17239    method public void callSessionRttModifyRequestReceived(android.telephony.ims.ImsCallProfile);
17240    method public void callSessionRttModifyResponseReceived(int);
17241    method @FlaggedApi("com.android.internal.telephony.flags.support_ims_mmtel_interface") public final void callSessionSendAnbrQuery(int, int, @IntRange(from=0) int);
17242    method public void callSessionSuppServiceReceived(android.telephony.ims.ImsSuppServiceNotification);
17243    method public void callSessionTerminated(android.telephony.ims.ImsReasonInfo);
17244    method @FlaggedApi("com.android.internal.telephony.flags.support_ims_mmtel_interface") public void callSessionTransferFailed(@NonNull android.telephony.ims.ImsReasonInfo);
17245    method @FlaggedApi("com.android.internal.telephony.flags.support_ims_mmtel_interface") public void callSessionTransferred();
17246    method public void callSessionTtyModeReceived(int);
17247    method public void callSessionUpdateFailed(android.telephony.ims.ImsReasonInfo);
17248    method public void callSessionUpdateReceived(android.telephony.ims.ImsCallProfile);
17249    method public void callSessionUpdated(android.telephony.ims.ImsCallProfile);
17250    method public void callSessionUssdMessageReceived(int, String);
17251    method public void onHandover(int, int, @Nullable android.telephony.ims.ImsReasonInfo);
17252    method public void onHandoverFailed(int, int, @NonNull android.telephony.ims.ImsReasonInfo);
17253    method public void onMayHandover(int, int);
17254  }
17255
17256  public final class ImsConferenceState implements android.os.Parcelable {
17257    method public int describeContents();
17258    method public static int getConnectionStateForStatus(String);
17259    method public void writeToParcel(android.os.Parcel, int);
17260    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsConferenceState> CREATOR;
17261    field public static final String DISPLAY_TEXT = "display-text";
17262    field public static final String ENDPOINT = "endpoint";
17263    field public static final String SIP_STATUS_CODE = "sipstatuscode";
17264    field public static final String STATUS = "status";
17265    field public static final String STATUS_ALERTING = "alerting";
17266    field public static final String STATUS_CONNECTED = "connected";
17267    field public static final String STATUS_CONNECT_FAIL = "connect-fail";
17268    field public static final String STATUS_DIALING_IN = "dialing-in";
17269    field public static final String STATUS_DIALING_OUT = "dialing-out";
17270    field public static final String STATUS_DISCONNECTED = "disconnected";
17271    field public static final String STATUS_DISCONNECTING = "disconnecting";
17272    field public static final String STATUS_MUTED_VIA_FOCUS = "muted-via-focus";
17273    field public static final String STATUS_ON_HOLD = "on-hold";
17274    field public static final String STATUS_PENDING = "pending";
17275    field public static final String STATUS_SEND_ONLY = "sendonly";
17276    field public static final String STATUS_SEND_RECV = "sendrecv";
17277    field public static final String USER = "user";
17278    field public final java.util.HashMap<java.lang.String,android.os.Bundle> mParticipants;
17279  }
17280
17281  public final class ImsException extends java.lang.Exception {
17282    ctor public ImsException(@Nullable String);
17283    ctor public ImsException(@Nullable String, int);
17284    ctor public ImsException(@Nullable String, int, @Nullable Throwable);
17285  }
17286
17287  public final class ImsExternalCallState implements android.os.Parcelable {
17288    ctor public ImsExternalCallState(@NonNull String, @NonNull android.net.Uri, @Nullable android.net.Uri, boolean, int, int, boolean);
17289    method public int describeContents();
17290    method @NonNull public android.net.Uri getAddress();
17291    method public int getCallId();
17292    method public int getCallState();
17293    method public int getCallType();
17294    method @Nullable public android.net.Uri getLocalAddress();
17295    method public boolean isCallHeld();
17296    method public boolean isCallPullable();
17297    method public void writeToParcel(android.os.Parcel, int);
17298    field public static final int CALL_STATE_CONFIRMED = 1; // 0x1
17299    field public static final int CALL_STATE_TERMINATED = 2; // 0x2
17300    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsExternalCallState> CREATOR;
17301  }
17302
17303  public class ImsManager {
17304    method @NonNull public android.telephony.ims.SipDelegateManager getSipDelegateManager(int);
17305  }
17306
17307  public class ImsMmTelManager implements android.telephony.ims.RegistrationManager {
17308    method @Deprecated @NonNull @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public static android.telephony.ims.ImsMmTelManager createForSubscriptionId(int);
17309    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void getFeatureState(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>) throws android.telephony.ims.ImsException;
17310    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void getRegistrationState(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
17311    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getVoWiFiRoamingModeSetting();
17312    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isAvailable(int, int);
17313    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isCapable(int, int);
17314    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void isSupported(int, int, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>) throws android.telephony.ims.ImsException;
17315    method @FlaggedApi("com.android.internal.telephony.flags.emergency_registration_state") public void registerImsEmergencyRegistrationCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.RegistrationManager.RegistrationCallback) throws android.telephony.ims.ImsException;
17316    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void registerImsRegistrationCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.ImsMmTelManager.RegistrationCallback) throws android.telephony.ims.ImsException;
17317    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setAdvancedCallingSettingEnabled(boolean);
17318    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setCrossSimCallingEnabled(boolean) throws android.telephony.ims.ImsException;
17319    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setRttCapabilitySetting(boolean);
17320    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiModeSetting(int);
17321    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiNonPersistent(boolean, int);
17322    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiRoamingModeSetting(int);
17323    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiRoamingSettingEnabled(boolean);
17324    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiSettingEnabled(boolean);
17325    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVtSettingEnabled(boolean);
17326    method @FlaggedApi("com.android.internal.telephony.flags.emergency_registration_state") public void unregisterImsEmergencyRegistrationCallback(@NonNull android.telephony.ims.RegistrationManager.RegistrationCallback);
17327    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void unregisterImsRegistrationCallback(@NonNull android.telephony.ims.ImsMmTelManager.RegistrationCallback);
17328  }
17329
17330  @Deprecated public static class ImsMmTelManager.RegistrationCallback extends android.telephony.ims.RegistrationManager.RegistrationCallback {
17331    ctor @Deprecated public ImsMmTelManager.RegistrationCallback();
17332    method @Deprecated public void onRegistered(int);
17333    method @Deprecated public void onRegistering(int);
17334  }
17335
17336  public class ImsRcsManager {
17337    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void addOnAvailabilityChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.ImsRcsManager.OnAvailabilityChangedListener) throws android.telephony.ims.ImsException;
17338    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isAvailable(int, int) throws android.telephony.ims.ImsException;
17339    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isCapable(int, int) throws android.telephony.ims.ImsException;
17340    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void removeOnAvailabilityChangedListener(@NonNull android.telephony.ims.ImsRcsManager.OnAvailabilityChangedListener);
17341  }
17342
17343  public static interface ImsRcsManager.OnAvailabilityChangedListener {
17344    method public void onAvailabilityChanged(int);
17345  }
17346
17347  public final class ImsReasonInfo implements android.os.Parcelable {
17348    field public static final String EXTRA_MSG_SERVICE_NOT_AUTHORIZED = "Forbidden. Not Authorized for Service";
17349  }
17350
17351  public final class ImsRegistrationAttributes implements android.os.Parcelable {
17352    method public int getRegistrationTechnology();
17353  }
17354
17355  public static final class ImsRegistrationAttributes.Builder {
17356    ctor public ImsRegistrationAttributes.Builder(int);
17357    method @NonNull public android.telephony.ims.ImsRegistrationAttributes build();
17358    method @NonNull public android.telephony.ims.ImsRegistrationAttributes.Builder setFeatureTags(@NonNull java.util.Set<java.lang.String>);
17359    method @FlaggedApi("com.android.internal.telephony.flags.emergency_registration_state") @NonNull public android.telephony.ims.ImsRegistrationAttributes.Builder setFlagRegistrationTypeEmergency();
17360    method @FlaggedApi("com.android.internal.telephony.flags.emergency_registration_state") @NonNull public android.telephony.ims.ImsRegistrationAttributes.Builder setFlagVirtualRegistrationForEmergencyCall();
17361    method @NonNull public android.telephony.ims.ImsRegistrationAttributes.Builder setSipDetails(@NonNull android.telephony.ims.SipDetails);
17362  }
17363
17364  public class ImsService extends android.app.Service {
17365    ctor public ImsService();
17366    method @Nullable public android.telephony.ims.feature.MmTelFeature createEmergencyOnlyMmTelFeature(int);
17367    method @Deprecated public android.telephony.ims.feature.MmTelFeature createMmTelFeature(int);
17368    method @Nullable public android.telephony.ims.feature.MmTelFeature createMmTelFeatureForSubscription(int, int);
17369    method @Deprecated public android.telephony.ims.feature.RcsFeature createRcsFeature(int);
17370    method @Nullable public android.telephony.ims.feature.RcsFeature createRcsFeatureForSubscription(int, int);
17371    method @Deprecated public void disableIms(int);
17372    method public void disableImsForSubscription(int, int);
17373    method @Deprecated public void enableIms(int);
17374    method public void enableImsForSubscription(int, int);
17375    method @Deprecated public android.telephony.ims.stub.ImsConfigImplBase getConfig(int);
17376    method @NonNull public android.telephony.ims.stub.ImsConfigImplBase getConfigForSubscription(int, int);
17377    method @NonNull public java.util.concurrent.Executor getExecutor();
17378    method public long getImsServiceCapabilities();
17379    method @Deprecated public android.telephony.ims.stub.ImsRegistrationImplBase getRegistration(int);
17380    method @NonNull public android.telephony.ims.stub.ImsRegistrationImplBase getRegistrationForSubscription(int, int);
17381    method @Nullable public android.telephony.ims.stub.SipTransportImplBase getSipTransport(int);
17382    method public android.os.IBinder onBind(android.content.Intent);
17383    method public final void onUpdateSupportedImsFeatures(android.telephony.ims.stub.ImsFeatureConfiguration) throws android.os.RemoteException;
17384    method public android.telephony.ims.stub.ImsFeatureConfiguration querySupportedImsFeatures();
17385    method public void readyForFeatureCreation();
17386    field public static final long CAPABILITY_SIP_DELEGATE_CREATION = 2L; // 0x2L
17387    field public static final long CAPABILITY_TERMINAL_BASED_CALL_WAITING = 4L; // 0x4L
17388  }
17389
17390  public final class ImsSsData implements android.os.Parcelable {
17391    ctor public ImsSsData(int, int, int, int, int);
17392    method public int describeContents();
17393    method @Nullable public java.util.List<android.telephony.ims.ImsCallForwardInfo> getCallForwardInfo();
17394    method public int getRequestType();
17395    method public int getResult();
17396    method public int getServiceClass();
17397    method public int getServiceType();
17398    method @NonNull public java.util.List<android.telephony.ims.ImsSsInfo> getSuppServiceInfo();
17399    method public int getTeleserviceType();
17400    method public boolean isTypeBarring();
17401    method public boolean isTypeCf();
17402    method public boolean isTypeClip();
17403    method public boolean isTypeClir();
17404    method public boolean isTypeColp();
17405    method public boolean isTypeColr();
17406    method public boolean isTypeCw();
17407    method public boolean isTypeIcb();
17408    method public boolean isTypeInterrogation();
17409    method public boolean isTypeUnConditional();
17410    method public void writeToParcel(android.os.Parcel, int);
17411    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsSsData> CREATOR;
17412    field public static final int RESULT_SUCCESS = 0; // 0x0
17413    field public static final int SERVICE_CLASS_DATA = 2; // 0x2
17414    field public static final int SERVICE_CLASS_DATA_CIRCUIT_ASYNC = 32; // 0x20
17415    field public static final int SERVICE_CLASS_DATA_CIRCUIT_SYNC = 16; // 0x10
17416    field public static final int SERVICE_CLASS_DATA_PACKET_ACCESS = 64; // 0x40
17417    field public static final int SERVICE_CLASS_DATA_PAD = 128; // 0x80
17418    field public static final int SERVICE_CLASS_FAX = 4; // 0x4
17419    field public static final int SERVICE_CLASS_NONE = 0; // 0x0
17420    field public static final int SERVICE_CLASS_SMS = 8; // 0x8
17421    field public static final int SERVICE_CLASS_VOICE = 1; // 0x1
17422    field public static final int SS_ACTIVATION = 0; // 0x0
17423    field public static final int SS_ALL_BARRING = 18; // 0x12
17424    field public static final int SS_ALL_DATA_TELESERVICES = 3; // 0x3
17425    field public static final int SS_ALL_TELESERVICES_EXCEPT_SMS = 5; // 0x5
17426    field public static final int SS_ALL_TELESEVICES = 1; // 0x1
17427    field public static final int SS_ALL_TELE_AND_BEARER_SERVICES = 0; // 0x0
17428    field public static final int SS_BAIC = 16; // 0x10
17429    field public static final int SS_BAIC_ROAMING = 17; // 0x11
17430    field public static final int SS_BAOC = 13; // 0xd
17431    field public static final int SS_BAOIC = 14; // 0xe
17432    field public static final int SS_BAOIC_EXC_HOME = 15; // 0xf
17433    field public static final int SS_CFU = 0; // 0x0
17434    field public static final int SS_CFUT = 6; // 0x6
17435    field public static final int SS_CF_ALL = 4; // 0x4
17436    field public static final int SS_CF_ALL_CONDITIONAL = 5; // 0x5
17437    field public static final int SS_CF_BUSY = 1; // 0x1
17438    field public static final int SS_CF_NOT_REACHABLE = 3; // 0x3
17439    field public static final int SS_CF_NO_REPLY = 2; // 0x2
17440    field public static final int SS_CLIP = 7; // 0x7
17441    field public static final int SS_CLIR = 8; // 0x8
17442    field public static final int SS_CNAP = 11; // 0xb
17443    field public static final int SS_COLP = 9; // 0x9
17444    field public static final int SS_COLR = 10; // 0xa
17445    field public static final int SS_DEACTIVATION = 1; // 0x1
17446    field public static final int SS_ERASURE = 4; // 0x4
17447    field public static final int SS_INCOMING_BARRING = 20; // 0x14
17448    field public static final int SS_INCOMING_BARRING_ANONYMOUS = 22; // 0x16
17449    field public static final int SS_INCOMING_BARRING_DN = 21; // 0x15
17450    field public static final int SS_INTERROGATION = 2; // 0x2
17451    field public static final int SS_OUTGOING_BARRING = 19; // 0x13
17452    field public static final int SS_REGISTRATION = 3; // 0x3
17453    field public static final int SS_SMS_SERVICES = 4; // 0x4
17454    field public static final int SS_TELEPHONY = 2; // 0x2
17455    field public static final int SS_WAIT = 12; // 0xc
17456  }
17457
17458  public static final class ImsSsData.Builder {
17459    ctor public ImsSsData.Builder(int, int, int, int, int);
17460    method @NonNull public android.telephony.ims.ImsSsData build();
17461    method @NonNull public android.telephony.ims.ImsSsData.Builder setCallForwardingInfo(@NonNull java.util.List<android.telephony.ims.ImsCallForwardInfo>);
17462    method @NonNull public android.telephony.ims.ImsSsData.Builder setSuppServiceInfo(@NonNull java.util.List<android.telephony.ims.ImsSsInfo>);
17463  }
17464
17465  public final class ImsSsInfo implements android.os.Parcelable {
17466    ctor @Deprecated public ImsSsInfo(int, @Nullable String);
17467    method public int describeContents();
17468    method public int getClirInterrogationStatus();
17469    method public int getClirOutgoingState();
17470    method @Deprecated public String getIcbNum();
17471    method @Nullable public String getIncomingCommunicationBarringNumber();
17472    method public int getProvisionStatus();
17473    method public int getStatus();
17474    method public void writeToParcel(android.os.Parcel, int);
17475    field public static final int CLIR_OUTGOING_DEFAULT = 0; // 0x0
17476    field public static final int CLIR_OUTGOING_INVOCATION = 1; // 0x1
17477    field public static final int CLIR_OUTGOING_SUPPRESSION = 2; // 0x2
17478    field public static final int CLIR_STATUS_NOT_PROVISIONED = 0; // 0x0
17479    field public static final int CLIR_STATUS_PROVISIONED_PERMANENT = 1; // 0x1
17480    field public static final int CLIR_STATUS_TEMPORARILY_ALLOWED = 4; // 0x4
17481    field public static final int CLIR_STATUS_TEMPORARILY_RESTRICTED = 3; // 0x3
17482    field public static final int CLIR_STATUS_UNKNOWN = 2; // 0x2
17483    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsSsInfo> CREATOR;
17484    field public static final int DISABLED = 0; // 0x0
17485    field public static final int ENABLED = 1; // 0x1
17486    field public static final int NOT_REGISTERED = -1; // 0xffffffff
17487    field public static final int SERVICE_NOT_PROVISIONED = 0; // 0x0
17488    field public static final int SERVICE_PROVISIONED = 1; // 0x1
17489    field public static final int SERVICE_PROVISIONING_UNKNOWN = -1; // 0xffffffff
17490  }
17491
17492  public static final class ImsSsInfo.Builder {
17493    ctor public ImsSsInfo.Builder(int);
17494    method @NonNull public android.telephony.ims.ImsSsInfo build();
17495    method @NonNull public android.telephony.ims.ImsSsInfo.Builder setClirInterrogationStatus(int);
17496    method @NonNull public android.telephony.ims.ImsSsInfo.Builder setClirOutgoingState(int);
17497    method @NonNull public android.telephony.ims.ImsSsInfo.Builder setIncomingCommunicationBarringNumber(@NonNull String);
17498    method @NonNull public android.telephony.ims.ImsSsInfo.Builder setProvisionStatus(int);
17499  }
17500
17501  public final class ImsStreamMediaProfile implements android.os.Parcelable {
17502    ctor public ImsStreamMediaProfile(int, int, int, int, int);
17503    method public void copyFrom(android.telephony.ims.ImsStreamMediaProfile);
17504    method public int describeContents();
17505    method @Nullable public android.telephony.ims.AudioCodecAttributes getAudioCodecAttributes();
17506    method public int getAudioDirection();
17507    method public int getAudioQuality();
17508    method public int getRttMode();
17509    method public int getVideoDirection();
17510    method public int getVideoQuality();
17511    method public boolean isReceivingRttAudio();
17512    method public boolean isRttCall();
17513    method public void setAudioCodecAttributes(@NonNull android.telephony.ims.AudioCodecAttributes);
17514    method public void setReceivingRttAudio(boolean);
17515    method public void setRttMode(int);
17516    method public void writeToParcel(android.os.Parcel, int);
17517    field public static final int AUDIO_QUALITY_AMR = 1; // 0x1
17518    field public static final int AUDIO_QUALITY_AMR_WB = 2; // 0x2
17519    field public static final int AUDIO_QUALITY_EVRC = 4; // 0x4
17520    field public static final int AUDIO_QUALITY_EVRC_B = 5; // 0x5
17521    field public static final int AUDIO_QUALITY_EVRC_NW = 7; // 0x7
17522    field public static final int AUDIO_QUALITY_EVRC_WB = 6; // 0x6
17523    field public static final int AUDIO_QUALITY_EVS_FB = 20; // 0x14
17524    field public static final int AUDIO_QUALITY_EVS_NB = 17; // 0x11
17525    field public static final int AUDIO_QUALITY_EVS_SWB = 19; // 0x13
17526    field public static final int AUDIO_QUALITY_EVS_WB = 18; // 0x12
17527    field public static final int AUDIO_QUALITY_G711A = 13; // 0xd
17528    field public static final int AUDIO_QUALITY_G711AB = 15; // 0xf
17529    field public static final int AUDIO_QUALITY_G711U = 11; // 0xb
17530    field public static final int AUDIO_QUALITY_G722 = 14; // 0xe
17531    field public static final int AUDIO_QUALITY_G723 = 12; // 0xc
17532    field public static final int AUDIO_QUALITY_G729 = 16; // 0x10
17533    field public static final int AUDIO_QUALITY_GSM_EFR = 8; // 0x8
17534    field public static final int AUDIO_QUALITY_GSM_FR = 9; // 0x9
17535    field public static final int AUDIO_QUALITY_GSM_HR = 10; // 0xa
17536    field public static final int AUDIO_QUALITY_NONE = 0; // 0x0
17537    field public static final int AUDIO_QUALITY_QCELP13K = 3; // 0x3
17538    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsStreamMediaProfile> CREATOR;
17539    field public static final int DIRECTION_INACTIVE = 0; // 0x0
17540    field public static final int DIRECTION_INVALID = -1; // 0xffffffff
17541    field public static final int DIRECTION_RECEIVE = 1; // 0x1
17542    field public static final int DIRECTION_SEND = 2; // 0x2
17543    field public static final int DIRECTION_SEND_RECEIVE = 3; // 0x3
17544    field public static final int RTT_MODE_DISABLED = 0; // 0x0
17545    field public static final int RTT_MODE_FULL = 1; // 0x1
17546    field public static final int VIDEO_QUALITY_NONE = 0; // 0x0
17547    field public static final int VIDEO_QUALITY_QCIF = 1; // 0x1
17548    field public static final int VIDEO_QUALITY_QVGA_LANDSCAPE = 2; // 0x2
17549    field public static final int VIDEO_QUALITY_QVGA_PORTRAIT = 4; // 0x4
17550    field public static final int VIDEO_QUALITY_VGA_LANDSCAPE = 8; // 0x8
17551    field public static final int VIDEO_QUALITY_VGA_PORTRAIT = 16; // 0x10
17552  }
17553
17554  public final class ImsSuppServiceNotification implements android.os.Parcelable {
17555    ctor public ImsSuppServiceNotification(int, int, int, int, String, String[]);
17556    method public int describeContents();
17557    method public void writeToParcel(android.os.Parcel, int);
17558    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsSuppServiceNotification> CREATOR;
17559    field public final int code;
17560    field public final String[] history;
17561    field public final int index;
17562    field public final int notificationType;
17563    field public final String number;
17564    field public final int type;
17565  }
17566
17567  public class ImsUtListener {
17568    method public void onLineIdentificationSupplementaryServiceResponse(int, @NonNull android.telephony.ims.ImsSsInfo);
17569    method public void onSupplementaryServiceIndication(android.telephony.ims.ImsSsData);
17570    method public void onUtConfigurationCallBarringQueried(int, android.telephony.ims.ImsSsInfo[]);
17571    method public void onUtConfigurationCallForwardQueried(int, android.telephony.ims.ImsCallForwardInfo[]);
17572    method public void onUtConfigurationCallWaitingQueried(int, android.telephony.ims.ImsSsInfo[]);
17573    method @Deprecated public void onUtConfigurationQueried(int, android.os.Bundle);
17574    method public void onUtConfigurationQueryFailed(int, android.telephony.ims.ImsReasonInfo);
17575    method public void onUtConfigurationUpdateFailed(int, android.telephony.ims.ImsReasonInfo);
17576    method public void onUtConfigurationUpdated(int);
17577    field @Deprecated public static final String BUNDLE_KEY_CLIR = "queryClir";
17578    field @Deprecated public static final String BUNDLE_KEY_SSINFO = "imsSsInfo";
17579  }
17580
17581  public abstract class ImsVideoCallProvider {
17582    ctor public ImsVideoCallProvider();
17583    method public void changeCallDataUsage(long);
17584    method public void changeCameraCapabilities(android.telecom.VideoProfile.CameraCapabilities);
17585    method public void changePeerDimensions(int, int);
17586    method public void changeVideoQuality(int);
17587    method public void handleCallSessionEvent(int);
17588    method public abstract void onRequestCallDataUsage();
17589    method public abstract void onRequestCameraCapabilities();
17590    method public abstract void onSendSessionModifyRequest(android.telecom.VideoProfile, android.telecom.VideoProfile);
17591    method public abstract void onSendSessionModifyResponse(android.telecom.VideoProfile);
17592    method public abstract void onSetCamera(String);
17593    method public void onSetCamera(String, int);
17594    method public abstract void onSetDeviceOrientation(int);
17595    method public abstract void onSetDisplaySurface(android.view.Surface);
17596    method public abstract void onSetPauseImage(android.net.Uri);
17597    method public abstract void onSetPreviewSurface(android.view.Surface);
17598    method public abstract void onSetZoom(float);
17599    method public void receiveSessionModifyRequest(android.telecom.VideoProfile);
17600    method public void receiveSessionModifyResponse(int, android.telecom.VideoProfile, android.telecom.VideoProfile);
17601  }
17602
17603  public final class MediaQualityStatus implements android.os.Parcelable {
17604    ctor public MediaQualityStatus(@NonNull String, int, int, @IntRange(from=0, to=100) int, @IntRange(from=0) int, @IntRange(from=0) long);
17605    method public int describeContents();
17606    method @NonNull public String getCallSessionId();
17607    method public int getMediaSessionType();
17608    method @IntRange(from=0) public long getRtpInactivityMillis();
17609    method @IntRange(from=0) public int getRtpJitterMillis();
17610    method @IntRange(from=0, to=100) public int getRtpPacketLossRate();
17611    method public int getTransportType();
17612    method public void writeToParcel(@NonNull android.os.Parcel, int);
17613    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.MediaQualityStatus> CREATOR;
17614    field public static final int MEDIA_SESSION_TYPE_AUDIO = 1; // 0x1
17615    field public static final int MEDIA_SESSION_TYPE_VIDEO = 2; // 0x2
17616  }
17617
17618  public final class MediaThreshold implements android.os.Parcelable {
17619    method public int describeContents();
17620    method @NonNull public long[] getThresholdsRtpInactivityTimeMillis();
17621    method @NonNull public int[] getThresholdsRtpJitterMillis();
17622    method @NonNull public int[] getThresholdsRtpPacketLossRate();
17623    method public void writeToParcel(@NonNull android.os.Parcel, int);
17624    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.MediaThreshold> CREATOR;
17625  }
17626
17627  public class ProvisioningManager {
17628    method @NonNull public static android.telephony.ims.ProvisioningManager createForSubscriptionId(int);
17629    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @WorkerThread public int getProvisioningIntValue(int);
17630    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @WorkerThread public String getProvisioningStringValue(int);
17631    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @WorkerThread public boolean getRcsProvisioningStatusForCapability(int);
17632    method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.PERFORM_IMS_SINGLE_REGISTRATION}) public boolean isRcsVolteSingleRegistrationCapable() throws android.telephony.ims.ImsException;
17633    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void notifyRcsAutoConfigurationReceived(@NonNull byte[], boolean);
17634    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;
17635    method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.PERFORM_IMS_SINGLE_REGISTRATION}) public void registerRcsProvisioningCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.ProvisioningManager.RcsProvisioningCallback) throws android.telephony.ims.ImsException;
17636    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public int setProvisioningIntValue(int, int);
17637    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public int setProvisioningStringValue(int, @NonNull String);
17638    method @RequiresPermission(android.Manifest.permission.PERFORM_IMS_SINGLE_REGISTRATION) public void setRcsClientConfiguration(@NonNull android.telephony.ims.RcsClientConfiguration) throws android.telephony.ims.ImsException;
17639    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public void setRcsProvisioningStatusForCapability(int, boolean);
17640    method @RequiresPermission(android.Manifest.permission.PERFORM_IMS_SINGLE_REGISTRATION) public void triggerRcsReconfiguration();
17641    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void unregisterProvisioningChangedCallback(@NonNull android.telephony.ims.ProvisioningManager.Callback);
17642    method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.PERFORM_IMS_SINGLE_REGISTRATION}) public void unregisterRcsProvisioningCallback(@NonNull android.telephony.ims.ProvisioningManager.RcsProvisioningCallback);
17643    field @RequiresPermission(android.Manifest.permission.PERFORM_IMS_SINGLE_REGISTRATION) public static final String ACTION_RCS_SINGLE_REGISTRATION_CAPABILITY_UPDATE = "android.telephony.ims.action.RCS_SINGLE_REGISTRATION_CAPABILITY_UPDATE";
17644    field public static final String EXTRA_STATUS = "android.telephony.ims.extra.STATUS";
17645    field public static final String EXTRA_SUBSCRIPTION_ID = "android.telephony.ims.extra.SUBSCRIPTION_ID";
17646    field public static final int KEY_VOICE_OVER_WIFI_ENTITLEMENT_ID = 67; // 0x43
17647    field public static final int KEY_VOICE_OVER_WIFI_MODE_OVERRIDE = 27; // 0x1b
17648    field public static final int KEY_VOICE_OVER_WIFI_ROAMING_ENABLED_OVERRIDE = 26; // 0x1a
17649    field public static final int PROVISIONING_VALUE_DISABLED = 0; // 0x0
17650    field public static final int PROVISIONING_VALUE_ENABLED = 1; // 0x1
17651    field public static final int STATUS_CAPABLE = 0; // 0x0
17652    field public static final int STATUS_CARRIER_NOT_CAPABLE = 2; // 0x2
17653    field public static final int STATUS_DEVICE_NOT_CAPABLE = 1; // 0x1
17654    field public static final String STRING_QUERY_RESULT_ERROR_GENERIC = "STRING_QUERY_RESULT_ERROR_GENERIC";
17655    field public static final String STRING_QUERY_RESULT_ERROR_NOT_READY = "STRING_QUERY_RESULT_ERROR_NOT_READY";
17656  }
17657
17658  public static class ProvisioningManager.Callback {
17659    ctor public ProvisioningManager.Callback();
17660    method public void onProvisioningIntChanged(int, int);
17661    method public void onProvisioningStringChanged(int, @NonNull String);
17662  }
17663
17664  public static class ProvisioningManager.RcsProvisioningCallback {
17665    ctor public ProvisioningManager.RcsProvisioningCallback();
17666    method public void onAutoConfigurationErrorReceived(int, @NonNull String);
17667    method public void onConfigurationChanged(@NonNull byte[]);
17668    method public void onConfigurationReset();
17669    method public void onPreProvisioningReceived(@NonNull byte[]);
17670    method public void onRemoved();
17671  }
17672
17673  public final class PublishAttributes implements android.os.Parcelable {
17674    method public int describeContents();
17675    method @NonNull public java.util.List<android.telephony.ims.RcsContactPresenceTuple> getPresenceTuples();
17676    method public int getPublishState();
17677    method @Nullable public android.telephony.ims.SipDetails getSipDetails();
17678    method public void writeToParcel(@NonNull android.os.Parcel, int);
17679    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.PublishAttributes> CREATOR;
17680  }
17681
17682  public final class RcsClientConfiguration implements android.os.Parcelable {
17683    ctor @Deprecated public RcsClientConfiguration(@NonNull String, @NonNull String, @NonNull String, @NonNull String);
17684    ctor public RcsClientConfiguration(@NonNull String, @NonNull String, @NonNull String, @NonNull String, boolean);
17685    method public int describeContents();
17686    method @NonNull public String getClientVendor();
17687    method @NonNull public String getClientVersion();
17688    method @NonNull public String getRcsProfile();
17689    method @NonNull public String getRcsVersion();
17690    method public boolean isRcsEnabledByUser();
17691    method public void writeToParcel(@NonNull android.os.Parcel, int);
17692    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.RcsClientConfiguration> CREATOR;
17693    field public static final String RCS_PROFILE_1_0 = "UP_1.0";
17694    field public static final String RCS_PROFILE_2_3 = "UP_2.3";
17695    field public static final String RCS_PROFILE_2_4 = "UP_2.4";
17696  }
17697
17698  public final class RcsContactPresenceTuple implements android.os.Parcelable {
17699    method public int describeContents();
17700    method @Nullable public android.net.Uri getContactUri();
17701    method @Nullable public android.telephony.ims.RcsContactPresenceTuple.ServiceCapabilities getServiceCapabilities();
17702    method @Nullable public String getServiceDescription();
17703    method @NonNull public String getServiceId();
17704    method @NonNull public String getServiceVersion();
17705    method @NonNull public String getStatus();
17706    method @Nullable public java.time.Instant getTime();
17707    method public void writeToParcel(@NonNull android.os.Parcel, int);
17708    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.RcsContactPresenceTuple> CREATOR;
17709    field public static final String SERVICE_ID_CALL_COMPOSER = "org.3gpp.urn:urn-7:3gpp-service.ims.icsi.gsma.callcomposer";
17710    field public static final String SERVICE_ID_CHATBOT = "org.3gpp.urn:urn-7:3gpp-application.ims.iari.rcs.chatbot";
17711    field public static final String SERVICE_ID_CHATBOT_ROLE = "org.gsma.rcs.isbot";
17712    field public static final String SERVICE_ID_CHATBOT_STANDALONE = " org.3gpp.urn:urn-7:3gpp-application.ims.iari.rcs.chatbot.sa";
17713    field public static final String SERVICE_ID_CHAT_V1 = "org.openmobilealliance:IM-session";
17714    field public static final String SERVICE_ID_CHAT_V2 = "org.openmobilealliance:ChatSession";
17715    field public static final String SERVICE_ID_FT = "org.openmobilealliance:File-Transfer-HTTP";
17716    field public static final String SERVICE_ID_FT_OVER_SMS = "org.3gpp.urn:urn-7:3gpp-application.ims.iari.rcs.ftsms";
17717    field public static final String SERVICE_ID_GEO_PUSH = "org.3gpp.urn:urn-7:3gpp-application.ims.iari.rcs.geopush";
17718    field public static final String SERVICE_ID_GEO_PUSH_VIA_SMS = "org.3gpp.urn:urn-7:3gpp-application.ims.iari.rcs.geosms";
17719    field public static final String SERVICE_ID_MMTEL = "org.3gpp.urn:urn-7:3gpp-service.ims.icsi.mmtel";
17720    field public static final String SERVICE_ID_POST_CALL = "org.3gpp.urn:urn-7:3gpp-service.ims.icsi.gsma.callunanswered";
17721    field public static final String SERVICE_ID_SHARED_MAP = "org.3gpp.urn:urn-7:3gpp-service.ims.icsi.gsma.sharedmap";
17722    field public static final String SERVICE_ID_SHARED_SKETCH = "org.3gpp.urn:urn-7:3gpp-service.ims.icsi.gsma.sharedsketch";
17723    field public static final String SERVICE_ID_SLM = "org.openmobilealliance:StandaloneMsg";
17724    field public static final String TUPLE_BASIC_STATUS_CLOSED = "closed";
17725    field public static final String TUPLE_BASIC_STATUS_OPEN = "open";
17726  }
17727
17728  public static final class RcsContactPresenceTuple.Builder {
17729    ctor public RcsContactPresenceTuple.Builder(@NonNull String, @NonNull String, @NonNull String);
17730    method @NonNull public android.telephony.ims.RcsContactPresenceTuple build();
17731    method @NonNull public android.telephony.ims.RcsContactPresenceTuple.Builder setContactUri(@NonNull android.net.Uri);
17732    method @NonNull public android.telephony.ims.RcsContactPresenceTuple.Builder setServiceCapabilities(@NonNull android.telephony.ims.RcsContactPresenceTuple.ServiceCapabilities);
17733    method @NonNull public android.telephony.ims.RcsContactPresenceTuple.Builder setServiceDescription(@NonNull String);
17734    method @NonNull public android.telephony.ims.RcsContactPresenceTuple.Builder setTime(@NonNull java.time.Instant);
17735  }
17736
17737  public static final class RcsContactPresenceTuple.ServiceCapabilities implements android.os.Parcelable {
17738    method public int describeContents();
17739    method @NonNull public java.util.List<java.lang.String> getSupportedDuplexModes();
17740    method @NonNull public java.util.List<java.lang.String> getUnsupportedDuplexModes();
17741    method public boolean isAudioCapable();
17742    method public boolean isVideoCapable();
17743    method public void writeToParcel(@NonNull android.os.Parcel, int);
17744    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.RcsContactPresenceTuple.ServiceCapabilities> CREATOR;
17745    field public static final String DUPLEX_MODE_FULL = "full";
17746    field public static final String DUPLEX_MODE_HALF = "half";
17747    field public static final String DUPLEX_MODE_RECEIVE_ONLY = "receive-only";
17748    field public static final String DUPLEX_MODE_SEND_ONLY = "send-only";
17749  }
17750
17751  public static final class RcsContactPresenceTuple.ServiceCapabilities.Builder {
17752    ctor public RcsContactPresenceTuple.ServiceCapabilities.Builder(boolean, boolean);
17753    method @NonNull public android.telephony.ims.RcsContactPresenceTuple.ServiceCapabilities.Builder addSupportedDuplexMode(@NonNull String);
17754    method @NonNull public android.telephony.ims.RcsContactPresenceTuple.ServiceCapabilities.Builder addUnsupportedDuplexMode(@NonNull String);
17755    method @NonNull public android.telephony.ims.RcsContactPresenceTuple.ServiceCapabilities build();
17756  }
17757
17758  public final class RcsContactUceCapability implements android.os.Parcelable {
17759    method public int describeContents();
17760    method public int getCapabilityMechanism();
17761    method @Nullable public android.telephony.ims.RcsContactPresenceTuple getCapabilityTuple(@NonNull String);
17762    method @NonNull public java.util.List<android.telephony.ims.RcsContactPresenceTuple> getCapabilityTuples();
17763    method @NonNull public android.net.Uri getContactUri();
17764    method @Nullable public android.net.Uri getEntityUri();
17765    method @NonNull public java.util.Set<java.lang.String> getFeatureTags();
17766    method public int getRequestResult();
17767    method public int getSourceType();
17768    method public void writeToParcel(@NonNull android.os.Parcel, int);
17769    field public static final int CAPABILITY_MECHANISM_OPTIONS = 2; // 0x2
17770    field public static final int CAPABILITY_MECHANISM_PRESENCE = 1; // 0x1
17771    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.RcsContactUceCapability> CREATOR;
17772    field public static final int REQUEST_RESULT_FOUND = 3; // 0x3
17773    field public static final int REQUEST_RESULT_NOT_FOUND = 2; // 0x2
17774    field public static final int REQUEST_RESULT_NOT_ONLINE = 1; // 0x1
17775    field public static final int REQUEST_RESULT_UNKNOWN = 0; // 0x0
17776    field public static final int SOURCE_TYPE_CACHED = 1; // 0x1
17777    field public static final int SOURCE_TYPE_NETWORK = 0; // 0x0
17778  }
17779
17780  public static final class RcsContactUceCapability.OptionsBuilder {
17781    ctor public RcsContactUceCapability.OptionsBuilder(@NonNull android.net.Uri);
17782    method @NonNull public android.telephony.ims.RcsContactUceCapability.OptionsBuilder addFeatureTag(@NonNull String);
17783    method @NonNull public android.telephony.ims.RcsContactUceCapability.OptionsBuilder addFeatureTags(@NonNull java.util.Set<java.lang.String>);
17784    method @NonNull public android.telephony.ims.RcsContactUceCapability build();
17785    method @NonNull public android.telephony.ims.RcsContactUceCapability.OptionsBuilder setRequestResult(int);
17786  }
17787
17788  public static final class RcsContactUceCapability.PresenceBuilder {
17789    ctor public RcsContactUceCapability.PresenceBuilder(@NonNull android.net.Uri, int, int);
17790    method @NonNull public android.telephony.ims.RcsContactUceCapability.PresenceBuilder addCapabilityTuple(@NonNull android.telephony.ims.RcsContactPresenceTuple);
17791    method @NonNull public android.telephony.ims.RcsContactUceCapability.PresenceBuilder addCapabilityTuples(@NonNull java.util.List<android.telephony.ims.RcsContactPresenceTuple>);
17792    method @NonNull public android.telephony.ims.RcsContactUceCapability build();
17793    method @NonNull public android.telephony.ims.RcsContactUceCapability.PresenceBuilder setEntityUri(@NonNull android.net.Uri);
17794  }
17795
17796  public class RcsUceAdapter {
17797    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void addOnPublishStateChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.RcsUceAdapter.OnPublishStateChangedListener) throws android.telephony.ims.ImsException;
17798    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getUcePublishState() throws android.telephony.ims.ImsException;
17799    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void removeOnPublishStateChangedListener(@NonNull android.telephony.ims.RcsUceAdapter.OnPublishStateChangedListener) throws android.telephony.ims.ImsException;
17800    method @RequiresPermission(allOf={android.Manifest.permission.ACCESS_RCS_USER_CAPABILITY_EXCHANGE, android.Manifest.permission.READ_CONTACTS}) public void requestAvailability(@NonNull android.net.Uri, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.RcsUceAdapter.CapabilitiesCallback) throws android.telephony.ims.ImsException;
17801    method @RequiresPermission(allOf={android.Manifest.permission.ACCESS_RCS_USER_CAPABILITY_EXCHANGE, android.Manifest.permission.READ_CONTACTS}) public void requestCapabilities(@NonNull java.util.Collection<android.net.Uri>, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.RcsUceAdapter.CapabilitiesCallback) throws android.telephony.ims.ImsException;
17802    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setUceSettingEnabled(boolean) throws android.telephony.ims.ImsException;
17803    field @Deprecated public static final int CAPABILITY_TYPE_PRESENCE_UCE = 2; // 0x2
17804    field public static final int CAPABILITY_UPDATE_TRIGGER_ETAG_EXPIRED = 1; // 0x1
17805    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_2G = 7; // 0x7
17806    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_3G = 6; // 0x6
17807    field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_EHRPD = 4; // 0x4
17808    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_HSPAPLUS = 5; // 0x5
17809    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_INTERNET_PDN = 12; // 0xc
17810    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_IWLAN = 9; // 0x9
17811    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_LTE_VOPS_DISABLED = 2; // 0x2
17812    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_LTE_VOPS_ENABLED = 3; // 0x3
17813    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_NR5G_VOPS_DISABLED = 10; // 0xa
17814    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_NR5G_VOPS_ENABLED = 11; // 0xb
17815    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_WLAN = 8; // 0x8
17816    field public static final int CAPABILITY_UPDATE_TRIGGER_UNKNOWN = 0; // 0x0
17817    field public static final int ERROR_FORBIDDEN = 6; // 0x6
17818    field public static final int ERROR_GENERIC_FAILURE = 1; // 0x1
17819    field public static final int ERROR_INSUFFICIENT_MEMORY = 10; // 0xa
17820    field public static final int ERROR_LOST_NETWORK = 11; // 0xb
17821    field public static final int ERROR_NOT_AUTHORIZED = 5; // 0x5
17822    field public static final int ERROR_NOT_AVAILABLE = 3; // 0x3
17823    field public static final int ERROR_NOT_ENABLED = 2; // 0x2
17824    field public static final int ERROR_NOT_FOUND = 7; // 0x7
17825    field public static final int ERROR_NOT_REGISTERED = 4; // 0x4
17826    field public static final int ERROR_REQUEST_TIMEOUT = 9; // 0x9
17827    field public static final int ERROR_REQUEST_TOO_LARGE = 8; // 0x8
17828    field public static final int ERROR_SERVER_UNAVAILABLE = 12; // 0xc
17829    field public static final int PUBLISH_STATE_NOT_PUBLISHED = 2; // 0x2
17830    field public static final int PUBLISH_STATE_OK = 1; // 0x1
17831    field public static final int PUBLISH_STATE_OTHER_ERROR = 6; // 0x6
17832    field public static final int PUBLISH_STATE_PUBLISHING = 7; // 0x7
17833    field public static final int PUBLISH_STATE_RCS_PROVISION_ERROR = 4; // 0x4
17834    field public static final int PUBLISH_STATE_REQUEST_TIMEOUT = 5; // 0x5
17835    field public static final int PUBLISH_STATE_VOICE_PROVISION_ERROR = 3; // 0x3
17836  }
17837
17838  public static interface RcsUceAdapter.CapabilitiesCallback {
17839    method public void onCapabilitiesReceived(@NonNull java.util.List<android.telephony.ims.RcsContactUceCapability>);
17840    method public default void onComplete();
17841    method public default void onComplete(@Nullable android.telephony.ims.SipDetails);
17842    method public default void onError(int, long);
17843    method public default void onError(int, long, @Nullable android.telephony.ims.SipDetails);
17844  }
17845
17846  public static interface RcsUceAdapter.OnPublishStateChangedListener {
17847    method @Deprecated public void onPublishStateChange(int);
17848    method public default void onPublishStateChange(@NonNull android.telephony.ims.PublishAttributes);
17849  }
17850
17851  public interface RegistrationManager {
17852    field public static final int SUGGESTED_ACTION_NONE = 0; // 0x0
17853    field @FlaggedApi("com.android.internal.telephony.flags.add_rat_related_suggested_action_to_ims_registration") public static final int SUGGESTED_ACTION_TRIGGER_CLEAR_RAT_BLOCKS = 4; // 0x4
17854    field public static final int SUGGESTED_ACTION_TRIGGER_PLMN_BLOCK = 1; // 0x1
17855    field public static final int SUGGESTED_ACTION_TRIGGER_PLMN_BLOCK_WITH_TIMEOUT = 2; // 0x2
17856    field @FlaggedApi("com.android.internal.telephony.flags.add_rat_related_suggested_action_to_ims_registration") public static final int SUGGESTED_ACTION_TRIGGER_RAT_BLOCK = 3; // 0x3
17857  }
17858
17859  public static class RegistrationManager.RegistrationCallback {
17860    method public void onUnregistered(@NonNull android.telephony.ims.ImsReasonInfo, @NonNull android.telephony.ims.SipDetails);
17861  }
17862
17863  public final class RtpHeaderExtension implements android.os.Parcelable {
17864    ctor public RtpHeaderExtension(@IntRange(from=1, to=14) int, @NonNull byte[]);
17865    method public int describeContents();
17866    method @NonNull public byte[] getExtensionData();
17867    method @IntRange(from=1, to=14) public int getLocalIdentifier();
17868    method public void writeToParcel(@NonNull android.os.Parcel, int);
17869    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.RtpHeaderExtension> CREATOR;
17870  }
17871
17872  public final class RtpHeaderExtensionType implements android.os.Parcelable {
17873    ctor public RtpHeaderExtensionType(@IntRange(from=1, to=14) int, @NonNull android.net.Uri);
17874    method public int describeContents();
17875    method @IntRange(from=1, to=14) public int getLocalIdentifier();
17876    method @NonNull public android.net.Uri getUri();
17877    method public void writeToParcel(@NonNull android.os.Parcel, int);
17878    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.RtpHeaderExtensionType> CREATOR;
17879  }
17880
17881  public final class SipDelegateConfiguration implements android.os.Parcelable {
17882    method public int describeContents();
17883    method @Nullable public String getHomeDomain();
17884    method @Nullable public String getImei();
17885    method @Nullable public android.telephony.ims.SipDelegateConfiguration.IpSecConfiguration getIpSecConfiguration();
17886    method @NonNull public java.net.InetSocketAddress getLocalAddress();
17887    method public int getMaxUdpPayloadSizeBytes();
17888    method @Nullable public java.net.InetSocketAddress getNatSocketAddress();
17889    method @Nullable public String getPrivateUserIdentifier();
17890    method @Nullable public android.net.Uri getPublicGruuUri();
17891    method @Nullable public String getPublicUserIdentifier();
17892    method @Nullable public String getSipAssociatedUriHeader();
17893    method @Nullable public String getSipAuthenticationHeader();
17894    method @Nullable public String getSipAuthenticationNonce();
17895    method @Nullable public String getSipCniHeader();
17896    method @Nullable public String getSipContactUserParameter();
17897    method @Nullable public String getSipPaniHeader();
17898    method @Nullable public String getSipPathHeader();
17899    method @Nullable public String getSipPlaniHeader();
17900    method @NonNull public java.net.InetSocketAddress getSipServerAddress();
17901    method @Nullable public String getSipServiceRouteHeader();
17902    method @Nullable public String getSipUserAgentHeader();
17903    method public int getTransportType();
17904    method @IntRange(from=0) public long getVersion();
17905    method public boolean isSipCompactFormEnabled();
17906    method public boolean isSipKeepaliveEnabled();
17907    method public void writeToParcel(@NonNull android.os.Parcel, int);
17908    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.SipDelegateConfiguration> CREATOR;
17909    field public static final int SIP_TRANSPORT_TCP = 1; // 0x1
17910    field public static final int SIP_TRANSPORT_UDP = 0; // 0x0
17911    field public static final int UDP_PAYLOAD_SIZE_UNDEFINED = -1; // 0xffffffff
17912  }
17913
17914  public static final class SipDelegateConfiguration.Builder {
17915    ctor public SipDelegateConfiguration.Builder(@IntRange(from=0) long, int, @NonNull java.net.InetSocketAddress, @NonNull java.net.InetSocketAddress);
17916    ctor public SipDelegateConfiguration.Builder(@NonNull android.telephony.ims.SipDelegateConfiguration);
17917    method @NonNull public android.telephony.ims.SipDelegateConfiguration build();
17918    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setHomeDomain(@Nullable String);
17919    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setImei(@Nullable String);
17920    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setIpSecConfiguration(@Nullable android.telephony.ims.SipDelegateConfiguration.IpSecConfiguration);
17921    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setMaxUdpPayloadSizeBytes(@IntRange(from=1) int);
17922    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setNatSocketAddress(@Nullable java.net.InetSocketAddress);
17923    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setPrivateUserIdentifier(@Nullable String);
17924    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setPublicGruuUri(@Nullable android.net.Uri);
17925    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setPublicUserIdentifier(@Nullable String);
17926    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipAssociatedUriHeader(@Nullable String);
17927    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipAuthenticationHeader(@Nullable String);
17928    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipAuthenticationNonce(@Nullable String);
17929    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipCniHeader(@Nullable String);
17930    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipCompactFormEnabled(boolean);
17931    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipContactUserParameter(@Nullable String);
17932    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipKeepaliveEnabled(boolean);
17933    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipPaniHeader(@Nullable String);
17934    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipPathHeader(@Nullable String);
17935    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipPlaniHeader(@Nullable String);
17936    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipServiceRouteHeader(@Nullable String);
17937    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipUserAgentHeader(@Nullable String);
17938  }
17939
17940  public static final class SipDelegateConfiguration.IpSecConfiguration {
17941    ctor public SipDelegateConfiguration.IpSecConfiguration(int, int, int, int, int, int, @NonNull String);
17942    method public int getLastLocalTxPort();
17943    method public int getLastRemoteTxPort();
17944    method public int getLocalRxPort();
17945    method public int getLocalTxPort();
17946    method public int getRemoteRxPort();
17947    method public int getRemoteTxPort();
17948    method @NonNull public String getSipSecurityVerifyHeader();
17949  }
17950
17951  public interface SipDelegateConnection {
17952    method public void cleanupSession(@NonNull String);
17953    method public void notifyMessageReceiveError(@NonNull String, int);
17954    method public void notifyMessageReceived(@NonNull String);
17955    method public void sendMessage(@NonNull android.telephony.ims.SipMessage, long);
17956  }
17957
17958  public class SipDelegateManager {
17959    method @RequiresPermission(android.Manifest.permission.PERFORM_IMS_SINGLE_REGISTRATION) public void createSipDelegate(@NonNull android.telephony.ims.DelegateRequest, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.stub.DelegateConnectionStateCallback, @NonNull android.telephony.ims.stub.DelegateConnectionMessageCallback) throws android.telephony.ims.ImsException;
17960    method @RequiresPermission(android.Manifest.permission.PERFORM_IMS_SINGLE_REGISTRATION) public void destroySipDelegate(@NonNull android.telephony.ims.SipDelegateConnection, int);
17961    method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.PERFORM_IMS_SINGLE_REGISTRATION}) public boolean isSupported() throws android.telephony.ims.ImsException;
17962    method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.PERFORM_IMS_SINGLE_REGISTRATION}) public void registerImsStateCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.ImsStateCallback) throws android.telephony.ims.ImsException;
17963    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void registerSipDialogStateCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.SipDialogStateCallback) throws android.telephony.ims.ImsException;
17964    method @RequiresPermission(android.Manifest.permission.PERFORM_IMS_SINGLE_REGISTRATION) public void triggerFullNetworkRegistration(@NonNull android.telephony.ims.SipDelegateConnection, @IntRange(from=100, to=699) int, @Nullable String);
17965    method public void unregisterImsStateCallback(@NonNull android.telephony.ims.ImsStateCallback);
17966    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void unregisterSipDialogStateCallback(@NonNull android.telephony.ims.SipDialogStateCallback) throws android.telephony.ims.ImsException;
17967    field public static final int DENIED_REASON_INVALID = 4; // 0x4
17968    field public static final int DENIED_REASON_IN_USE_BY_ANOTHER_DELEGATE = 1; // 0x1
17969    field public static final int DENIED_REASON_NOT_ALLOWED = 2; // 0x2
17970    field public static final int DENIED_REASON_SINGLE_REGISTRATION_NOT_ALLOWED = 3; // 0x3
17971    field public static final int DENIED_REASON_UNKNOWN = 0; // 0x0
17972    field public static final int MESSAGE_FAILURE_REASON_DELEGATE_CLOSED = 2; // 0x2
17973    field public static final int MESSAGE_FAILURE_REASON_DELEGATE_DEAD = 1; // 0x1
17974    field public static final int MESSAGE_FAILURE_REASON_INTERNAL_DELEGATE_STATE_TRANSITION = 11; // 0xb
17975    field public static final int MESSAGE_FAILURE_REASON_INVALID_BODY_CONTENT = 5; // 0x5
17976    field public static final int MESSAGE_FAILURE_REASON_INVALID_FEATURE_TAG = 6; // 0x6
17977    field public static final int MESSAGE_FAILURE_REASON_INVALID_HEADER_FIELDS = 4; // 0x4
17978    field public static final int MESSAGE_FAILURE_REASON_INVALID_START_LINE = 3; // 0x3
17979    field public static final int MESSAGE_FAILURE_REASON_NETWORK_NOT_AVAILABLE = 8; // 0x8
17980    field public static final int MESSAGE_FAILURE_REASON_NOT_REGISTERED = 9; // 0x9
17981    field public static final int MESSAGE_FAILURE_REASON_STALE_IMS_CONFIGURATION = 10; // 0xa
17982    field public static final int MESSAGE_FAILURE_REASON_TAG_NOT_ENABLED_FOR_DELEGATE = 7; // 0x7
17983    field public static final int MESSAGE_FAILURE_REASON_UNKNOWN = 0; // 0x0
17984    field public static final int SIP_DELEGATE_DESTROY_REASON_REQUESTED_BY_APP = 2; // 0x2
17985    field public static final int SIP_DELEGATE_DESTROY_REASON_SERVICE_DEAD = 1; // 0x1
17986    field public static final int SIP_DELEGATE_DESTROY_REASON_SUBSCRIPTION_TORN_DOWN = 4; // 0x4
17987    field public static final int SIP_DELEGATE_DESTROY_REASON_UNKNOWN = 0; // 0x0
17988    field public static final int SIP_DELEGATE_DESTROY_REASON_USER_DISABLED_RCS = 3; // 0x3
17989  }
17990
17991  public final class SipDialogState implements android.os.Parcelable {
17992    method public int describeContents();
17993    method public int getState();
17994    method public void writeToParcel(@NonNull android.os.Parcel, int);
17995    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.SipDialogState> CREATOR;
17996    field public static final int STATE_CLOSED = 2; // 0x2
17997    field public static final int STATE_CONFIRMED = 1; // 0x1
17998    field public static final int STATE_EARLY = 0; // 0x0
17999  }
18000
18001  public abstract class SipDialogStateCallback {
18002    ctor public SipDialogStateCallback();
18003    method public abstract void onActiveSipDialogsChanged(@NonNull java.util.List<android.telephony.ims.SipDialogState>);
18004    method public abstract void onError();
18005  }
18006
18007  public final class SipMessage implements android.os.Parcelable {
18008    ctor public SipMessage(@NonNull String, @NonNull String, @NonNull byte[]);
18009    method public int describeContents();
18010    method @Nullable public String getCallIdParameter();
18011    method @NonNull public byte[] getContent();
18012    method @NonNull public String getHeaderSection();
18013    method @NonNull public String getStartLine();
18014    method @NonNull public String getViaBranchParameter();
18015    method @NonNull public byte[] toEncodedMessage();
18016    method public void writeToParcel(@NonNull android.os.Parcel, int);
18017    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.SipMessage> CREATOR;
18018  }
18019
18020  public final class SrvccCall implements android.os.Parcelable {
18021    ctor public SrvccCall(@NonNull String, int, @NonNull android.telephony.ims.ImsCallProfile);
18022    method public int describeContents();
18023    method @NonNull public String getCallId();
18024    method @NonNull public android.telephony.ims.ImsCallProfile getImsCallProfile();
18025    method public int getPreciseCallState();
18026    method public void writeToParcel(@NonNull android.os.Parcel, int);
18027    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.SrvccCall> CREATOR;
18028  }
18029
18030}
18031
18032package android.telephony.ims.feature {
18033
18034  public final class CapabilityChangeRequest implements android.os.Parcelable {
18035    method public void addCapabilitiesToDisableForTech(int, int);
18036    method public void addCapabilitiesToEnableForTech(int, int);
18037    method public int describeContents();
18038    method public java.util.List<android.telephony.ims.feature.CapabilityChangeRequest.CapabilityPair> getCapabilitiesToDisable();
18039    method public java.util.List<android.telephony.ims.feature.CapabilityChangeRequest.CapabilityPair> getCapabilitiesToEnable();
18040    method public void writeToParcel(android.os.Parcel, int);
18041    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.feature.CapabilityChangeRequest> CREATOR;
18042  }
18043
18044  public static class CapabilityChangeRequest.CapabilityPair {
18045    ctor public CapabilityChangeRequest.CapabilityPair(int, int);
18046    method public int getCapability();
18047    method public int getRadioTech();
18048  }
18049
18050  @FlaggedApi("com.android.internal.telephony.flags.support_ims_mmtel_interface") public final class ConnectionFailureInfo implements android.os.Parcelable {
18051    method public int describeContents();
18052    method public int getCauseCode();
18053    method public int getReason();
18054    method public int getWaitTimeMillis();
18055    method public void writeToParcel(@NonNull android.os.Parcel, int);
18056    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.feature.ConnectionFailureInfo> CREATOR;
18057    field public static final int REASON_ACCESS_DENIED = 1; // 0x1
18058    field public static final int REASON_NAS_FAILURE = 2; // 0x2
18059    field public static final int REASON_NONE = 0; // 0x0
18060    field public static final int REASON_NO_SERVICE = 7; // 0x7
18061    field public static final int REASON_PDN_NOT_AVAILABLE = 8; // 0x8
18062    field public static final int REASON_RACH_FAILURE = 3; // 0x3
18063    field public static final int REASON_RF_BUSY = 9; // 0x9
18064    field public static final int REASON_RLC_FAILURE = 4; // 0x4
18065    field public static final int REASON_RRC_REJECT = 5; // 0x5
18066    field public static final int REASON_RRC_TIMEOUT = 6; // 0x6
18067    field public static final int REASON_UNSPECIFIED = 65535; // 0xffff
18068  }
18069
18070  public abstract class ImsFeature {
18071    ctor public ImsFeature();
18072    method public abstract void changeEnabledCapabilities(android.telephony.ims.feature.CapabilityChangeRequest, android.telephony.ims.feature.ImsFeature.CapabilityCallbackProxy);
18073    method public int getFeatureState();
18074    method public final int getSlotIndex();
18075    method public abstract void onFeatureReady();
18076    method public abstract void onFeatureRemoved();
18077    method public final void setFeatureState(int);
18078    field public static final int CAPABILITY_ERROR_GENERIC = -1; // 0xffffffff
18079    field public static final int CAPABILITY_SUCCESS = 0; // 0x0
18080    field public static final int FEATURE_EMERGENCY_MMTEL = 0; // 0x0
18081    field public static final int FEATURE_MMTEL = 1; // 0x1
18082    field public static final int FEATURE_RCS = 2; // 0x2
18083    field public static final int STATE_INITIALIZING = 1; // 0x1
18084    field public static final int STATE_READY = 2; // 0x2
18085    field public static final int STATE_UNAVAILABLE = 0; // 0x0
18086  }
18087
18088  @Deprecated public static class ImsFeature.Capabilities {
18089    field @Deprecated protected int mCapabilities;
18090  }
18091
18092  protected static class ImsFeature.CapabilityCallbackProxy {
18093    method public void onChangeCapabilityConfigurationError(int, int, int);
18094  }
18095
18096  @FlaggedApi("com.android.internal.telephony.flags.support_ims_mmtel_interface") public interface ImsTrafficSessionCallback {
18097    method public void onError(@NonNull android.telephony.ims.feature.ConnectionFailureInfo);
18098    method public void onReady();
18099  }
18100
18101  public class MmTelFeature extends android.telephony.ims.feature.ImsFeature {
18102    ctor public MmTelFeature();
18103    ctor public MmTelFeature(@NonNull java.util.concurrent.Executor);
18104    method public void changeEnabledCapabilities(@NonNull android.telephony.ims.feature.CapabilityChangeRequest, @NonNull android.telephony.ims.feature.ImsFeature.CapabilityCallbackProxy);
18105    method public void changeOfferedRtpHeaderExtensionTypes(@NonNull java.util.Set<android.telephony.ims.RtpHeaderExtensionType>);
18106    method public void clearMediaThreshold(int);
18107    method @Nullable public android.telephony.ims.ImsCallProfile createCallProfile(int, int);
18108    method @Nullable public android.telephony.ims.stub.ImsCallSessionImplBase createCallSession(@NonNull android.telephony.ims.ImsCallProfile);
18109    method @NonNull public android.telephony.ims.stub.ImsEcbmImplBase getEcbm();
18110    method @NonNull public android.telephony.ims.stub.ImsMultiEndpointImplBase getMultiEndpoint();
18111    method @NonNull public android.telephony.ims.stub.ImsSmsImplBase getSmsImplementation();
18112    method @NonNull public android.telephony.ims.stub.ImsUtImplBase getUt();
18113    method @FlaggedApi("com.android.internal.telephony.flags.support_ims_mmtel_interface") public final void modifyImsTrafficSession(int, @NonNull android.telephony.ims.feature.ImsTrafficSessionCallback);
18114    method public final void notifyCapabilitiesStatusChanged(@NonNull android.telephony.ims.feature.MmTelFeature.MmTelCapabilities);
18115    method @Deprecated public final void notifyIncomingCall(@NonNull android.telephony.ims.stub.ImsCallSessionImplBase, @NonNull android.os.Bundle);
18116    method @Nullable public final android.telephony.ims.ImsCallSessionListener notifyIncomingCall(@NonNull android.telephony.ims.stub.ImsCallSessionImplBase, @NonNull String, @NonNull android.os.Bundle);
18117    method public final void notifyMediaQualityStatusChanged(@NonNull android.telephony.ims.MediaQualityStatus);
18118    method public final void notifyRejectedCall(@NonNull android.telephony.ims.ImsCallProfile, @NonNull android.telephony.ims.ImsReasonInfo);
18119    method public void notifySrvccCanceled();
18120    method public void notifySrvccCompleted();
18121    method public void notifySrvccFailed();
18122    method public void notifySrvccStarted(@NonNull java.util.function.Consumer<java.util.List<android.telephony.ims.SrvccCall>>);
18123    method public final void notifyVoiceMessageCountUpdate(int);
18124    method public void onFeatureReady();
18125    method public void onFeatureRemoved();
18126    method public boolean queryCapabilityConfiguration(int, int);
18127    method @NonNull public final android.telephony.ims.feature.MmTelFeature.MmTelCapabilities queryCapabilityStatus();
18128    method @Nullable public android.telephony.ims.MediaQualityStatus queryMediaQualityStatus(int);
18129    method public final void setCallAudioHandler(int);
18130    method public void setMediaThreshold(int, @NonNull android.telephony.ims.MediaThreshold);
18131    method public void setTerminalBasedCallWaitingStatus(boolean);
18132    method public void setUiTtyMode(int, @Nullable android.os.Message);
18133    method public int shouldProcessCall(@NonNull String[]);
18134    method @FlaggedApi("com.android.internal.telephony.flags.support_ims_mmtel_interface") public final void startImsTrafficSession(int, int, int, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.feature.ImsTrafficSessionCallback);
18135    method @FlaggedApi("com.android.internal.telephony.flags.support_ims_mmtel_interface") public final void stopImsTrafficSession(@NonNull android.telephony.ims.feature.ImsTrafficSessionCallback);
18136    method @FlaggedApi("com.android.internal.telephony.flags.support_ims_mmtel_interface") public final void triggerEpsFallback(int);
18137    field public static final int AUDIO_HANDLER_ANDROID = 0; // 0x0
18138    field public static final int AUDIO_HANDLER_BASEBAND = 1; // 0x1
18139    field @FlaggedApi("com.android.internal.telephony.flags.support_ims_mmtel_interface") public static final int EPS_FALLBACK_REASON_NO_NETWORK_RESPONSE = 2; // 0x2
18140    field @FlaggedApi("com.android.internal.telephony.flags.support_ims_mmtel_interface") public static final int EPS_FALLBACK_REASON_NO_NETWORK_TRIGGER = 1; // 0x1
18141    field public static final String EXTRA_IS_UNKNOWN_CALL = "android.telephony.ims.feature.extra.IS_UNKNOWN_CALL";
18142    field public static final String EXTRA_IS_USSD = "android.telephony.ims.feature.extra.IS_USSD";
18143    field @FlaggedApi("com.android.internal.telephony.flags.support_ims_mmtel_interface") public static final int IMS_TRAFFIC_DIRECTION_INCOMING = 0; // 0x0
18144    field @FlaggedApi("com.android.internal.telephony.flags.support_ims_mmtel_interface") public static final int IMS_TRAFFIC_DIRECTION_OUTGOING = 1; // 0x1
18145    field @FlaggedApi("com.android.internal.telephony.flags.support_ims_mmtel_interface") public static final int IMS_TRAFFIC_TYPE_EMERGENCY = 0; // 0x0
18146    field @FlaggedApi("com.android.internal.telephony.flags.support_ims_mmtel_interface") public static final int IMS_TRAFFIC_TYPE_EMERGENCY_SMS = 1; // 0x1
18147    field @FlaggedApi("com.android.internal.telephony.flags.support_ims_mmtel_interface") public static final int IMS_TRAFFIC_TYPE_REGISTRATION = 5; // 0x5
18148    field @FlaggedApi("com.android.internal.telephony.flags.support_ims_mmtel_interface") public static final int IMS_TRAFFIC_TYPE_SMS = 4; // 0x4
18149    field @FlaggedApi("com.android.internal.telephony.flags.support_ims_mmtel_interface") public static final int IMS_TRAFFIC_TYPE_UT_XCAP = 6; // 0x6
18150    field @FlaggedApi("com.android.internal.telephony.flags.support_ims_mmtel_interface") public static final int IMS_TRAFFIC_TYPE_VIDEO = 3; // 0x3
18151    field @FlaggedApi("com.android.internal.telephony.flags.support_ims_mmtel_interface") public static final int IMS_TRAFFIC_TYPE_VOICE = 2; // 0x2
18152    field public static final int PROCESS_CALL_CSFB = 1; // 0x1
18153    field public static final int PROCESS_CALL_IMS = 0; // 0x0
18154  }
18155
18156  public static class MmTelFeature.MmTelCapabilities extends android.telephony.ims.feature.ImsFeature.Capabilities {
18157    ctor public MmTelFeature.MmTelCapabilities();
18158    ctor @Deprecated public MmTelFeature.MmTelCapabilities(android.telephony.ims.feature.ImsFeature.Capabilities);
18159    ctor public MmTelFeature.MmTelCapabilities(int);
18160    method public final void addCapabilities(int);
18161    method public final void removeCapabilities(int);
18162  }
18163
18164  public class RcsFeature extends android.telephony.ims.feature.ImsFeature {
18165    ctor public RcsFeature();
18166    ctor public RcsFeature(@NonNull java.util.concurrent.Executor);
18167    method public void changeEnabledCapabilities(@NonNull android.telephony.ims.feature.CapabilityChangeRequest, @NonNull android.telephony.ims.feature.ImsFeature.CapabilityCallbackProxy);
18168    method @NonNull public android.telephony.ims.stub.RcsCapabilityExchangeImplBase createCapabilityExchangeImpl(@NonNull android.telephony.ims.stub.CapabilityExchangeEventListener);
18169    method public void destroyCapabilityExchangeImpl(@NonNull android.telephony.ims.stub.RcsCapabilityExchangeImplBase);
18170    method public final void notifyCapabilitiesStatusChanged(@NonNull android.telephony.ims.feature.RcsFeature.RcsImsCapabilities);
18171    method public void onFeatureReady();
18172    method public void onFeatureRemoved();
18173    method public boolean queryCapabilityConfiguration(int, int);
18174    method @NonNull public final android.telephony.ims.feature.RcsFeature.RcsImsCapabilities queryCapabilityStatus();
18175  }
18176
18177  public static class RcsFeature.RcsImsCapabilities extends android.telephony.ims.feature.ImsFeature.Capabilities {
18178    ctor public RcsFeature.RcsImsCapabilities(int);
18179    method public void addCapabilities(int);
18180    method public boolean isCapable(int);
18181    method public void removeCapabilities(int);
18182    field public static final int CAPABILITY_TYPE_NONE = 0; // 0x0
18183    field public static final int CAPABILITY_TYPE_OPTIONS_UCE = 1; // 0x1
18184    field public static final int CAPABILITY_TYPE_PRESENCE_UCE = 2; // 0x2
18185  }
18186
18187}
18188
18189package android.telephony.ims.stub {
18190
18191  public interface CapabilityExchangeEventListener {
18192    method @Deprecated public default void onPublishUpdated(int, @NonNull String, int, @NonNull String) throws android.telephony.ims.ImsException;
18193    method public default void onPublishUpdated(@NonNull android.telephony.ims.SipDetails) throws android.telephony.ims.ImsException;
18194    method public void onRemoteCapabilityRequest(@NonNull android.net.Uri, @NonNull java.util.Set<java.lang.String>, @NonNull android.telephony.ims.stub.CapabilityExchangeEventListener.OptionsRequestCallback) throws android.telephony.ims.ImsException;
18195    method public void onRequestPublishCapabilities(int) throws android.telephony.ims.ImsException;
18196    method public void onUnpublish() throws android.telephony.ims.ImsException;
18197  }
18198
18199  public static interface CapabilityExchangeEventListener.OptionsRequestCallback {
18200    method public void onRespondToCapabilityRequest(@NonNull android.telephony.ims.RcsContactUceCapability, boolean);
18201    method public void onRespondToCapabilityRequestWithError(@IntRange(from=100, to=699) int, @NonNull String);
18202  }
18203
18204  public interface DelegateConnectionMessageCallback {
18205    method public void onMessageReceived(@NonNull android.telephony.ims.SipMessage);
18206    method public void onMessageSendFailure(@NonNull String, int);
18207    method public void onMessageSent(@NonNull String);
18208  }
18209
18210  public interface DelegateConnectionStateCallback {
18211    method public void onConfigurationChanged(@NonNull android.telephony.ims.SipDelegateConfiguration);
18212    method public void onCreated(@NonNull android.telephony.ims.SipDelegateConnection);
18213    method public void onDestroyed(int);
18214    method public void onFeatureTagStatusChanged(@NonNull android.telephony.ims.DelegateRegistrationState, @NonNull java.util.Set<android.telephony.ims.FeatureTagState>);
18215  }
18216
18217  public class ImsCallSessionImplBase implements java.lang.AutoCloseable {
18218    ctor public ImsCallSessionImplBase();
18219    method public void accept(int, android.telephony.ims.ImsStreamMediaProfile);
18220    method public void close();
18221    method public void deflect(String);
18222    method public void extendToConference(String[]);
18223    method public String getCallId();
18224    method public android.telephony.ims.ImsCallProfile getCallProfile();
18225    method public android.telephony.ims.ImsVideoCallProvider getImsVideoCallProvider();
18226    method public android.telephony.ims.ImsCallProfile getLocalCallProfile();
18227    method public String getProperty(String);
18228    method public android.telephony.ims.ImsCallProfile getRemoteCallProfile();
18229    method public int getState();
18230    method public void hold(android.telephony.ims.ImsStreamMediaProfile);
18231    method public void inviteParticipants(String[]);
18232    method public boolean isInCall();
18233    method public boolean isMultiparty();
18234    method public void merge();
18235    method public void reject(int);
18236    method public void removeParticipants(String[]);
18237    method public void resume(android.telephony.ims.ImsStreamMediaProfile);
18238    method public void sendDtmf(char, android.os.Message);
18239    method public void sendRtpHeaderExtensions(@NonNull java.util.Set<android.telephony.ims.RtpHeaderExtension>);
18240    method public void sendRttMessage(String);
18241    method public void sendRttModifyRequest(android.telephony.ims.ImsCallProfile);
18242    method public void sendRttModifyResponse(boolean);
18243    method public void sendUssd(String);
18244    method @Deprecated public void setListener(android.telephony.ims.ImsCallSessionListener);
18245    method public void setMute(boolean);
18246    method public void start(String, android.telephony.ims.ImsCallProfile);
18247    method public void startConference(String[], android.telephony.ims.ImsCallProfile);
18248    method public void startDtmf(char);
18249    method public void stopDtmf();
18250    method public void terminate(int);
18251    method public void update(int, android.telephony.ims.ImsStreamMediaProfile);
18252    field public static final int USSD_MODE_NOTIFY = 0; // 0x0
18253    field public static final int USSD_MODE_REQUEST = 1; // 0x1
18254  }
18255
18256  public static class ImsCallSessionImplBase.State {
18257    method public static String toString(int);
18258    field public static final int ESTABLISHED = 4; // 0x4
18259    field public static final int ESTABLISHING = 3; // 0x3
18260    field public static final int IDLE = 0; // 0x0
18261    field public static final int INITIATED = 1; // 0x1
18262    field public static final int INVALID = -1; // 0xffffffff
18263    field public static final int NEGOTIATING = 2; // 0x2
18264    field public static final int REESTABLISHING = 6; // 0x6
18265    field public static final int RENEGOTIATING = 5; // 0x5
18266    field public static final int TERMINATED = 8; // 0x8
18267    field public static final int TERMINATING = 7; // 0x7
18268  }
18269
18270  public class ImsConfigImplBase {
18271    ctor public ImsConfigImplBase(@NonNull java.util.concurrent.Executor);
18272    ctor public ImsConfigImplBase();
18273    method public int getConfigInt(int);
18274    method public String getConfigString(int);
18275    method public final void notifyAutoConfigurationErrorReceived(int, @NonNull String);
18276    method public final void notifyPreProvisioningReceived(@NonNull byte[]);
18277    method public final void notifyProvisionedValueChanged(int, int);
18278    method public final void notifyProvisionedValueChanged(int, String);
18279    method public void notifyRcsAutoConfigurationReceived(@NonNull byte[], boolean);
18280    method public void notifyRcsAutoConfigurationRemoved();
18281    method public int setConfig(int, int);
18282    method public int setConfig(int, String);
18283    method public void setRcsClientConfiguration(@NonNull android.telephony.ims.RcsClientConfiguration);
18284    method public void triggerAutoConfiguration();
18285    field public static final int CONFIG_RESULT_FAILED = 1; // 0x1
18286    field public static final int CONFIG_RESULT_SUCCESS = 0; // 0x0
18287    field public static final int CONFIG_RESULT_UNKNOWN = -1; // 0xffffffff
18288  }
18289
18290  public class ImsEcbmImplBase {
18291    ctor public ImsEcbmImplBase();
18292    method public final void enteredEcbm();
18293    method public void exitEmergencyCallbackMode();
18294    method public final void exitedEcbm();
18295  }
18296
18297  public final class ImsFeatureConfiguration implements android.os.Parcelable {
18298    method public int describeContents();
18299    method public java.util.Set<android.telephony.ims.stub.ImsFeatureConfiguration.FeatureSlotPair> getServiceFeatures();
18300    method public void writeToParcel(android.os.Parcel, int);
18301    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.stub.ImsFeatureConfiguration> CREATOR;
18302  }
18303
18304  public static class ImsFeatureConfiguration.Builder {
18305    ctor public ImsFeatureConfiguration.Builder();
18306    method public android.telephony.ims.stub.ImsFeatureConfiguration.Builder addFeature(int, int);
18307    method public android.telephony.ims.stub.ImsFeatureConfiguration build();
18308  }
18309
18310  public static final class ImsFeatureConfiguration.FeatureSlotPair {
18311    ctor public ImsFeatureConfiguration.FeatureSlotPair(int, int);
18312    field public final int featureType;
18313    field public final int slotId;
18314  }
18315
18316  public class ImsMultiEndpointImplBase {
18317    ctor public ImsMultiEndpointImplBase();
18318    method public final void onImsExternalCallStateUpdate(java.util.List<android.telephony.ims.ImsExternalCallState>);
18319    method public void requestImsExternalCallStateInfo();
18320  }
18321
18322  public class ImsRegistrationImplBase {
18323    ctor public ImsRegistrationImplBase();
18324    ctor public ImsRegistrationImplBase(@NonNull java.util.concurrent.Executor);
18325    method public final void onDeregistered(android.telephony.ims.ImsReasonInfo);
18326    method public final void onDeregistered(@Nullable android.telephony.ims.ImsReasonInfo, int, int);
18327    method @FlaggedApi("com.android.internal.telephony.flags.emergency_registration_state") public final void onDeregistered(@Nullable android.telephony.ims.ImsReasonInfo, int, @NonNull android.telephony.ims.ImsRegistrationAttributes);
18328    method public final void onDeregistered(@Nullable android.telephony.ims.ImsReasonInfo, @NonNull android.telephony.ims.SipDetails);
18329    method public final void onDeregistered(@Nullable android.telephony.ims.ImsReasonInfo, int, int, @NonNull android.telephony.ims.SipDetails);
18330    method public final void onRegistered(int);
18331    method public final void onRegistered(@NonNull android.telephony.ims.ImsRegistrationAttributes);
18332    method public final void onRegistering(int);
18333    method public final void onRegistering(@NonNull android.telephony.ims.ImsRegistrationAttributes);
18334    method public final void onSubscriberAssociatedUriChanged(android.net.Uri[]);
18335    method public final void onTechnologyChangeFailed(int, android.telephony.ims.ImsReasonInfo);
18336    method @FlaggedApi("com.android.internal.telephony.flags.emergency_registration_state") public final void onTechnologyChangeFailed(@Nullable android.telephony.ims.ImsReasonInfo, @NonNull android.telephony.ims.ImsRegistrationAttributes);
18337    method public void triggerFullNetworkRegistration(@IntRange(from=100, to=699) int, @Nullable String);
18338    method public void triggerSipDelegateDeregistration();
18339    method public void updateSipDelegateRegistration();
18340  }
18341
18342  public class ImsSmsImplBase {
18343    ctor public ImsSmsImplBase();
18344    ctor public ImsSmsImplBase(@NonNull java.util.concurrent.Executor);
18345    method public void acknowledgeSms(int, @IntRange(from=0, to=65535) int, int);
18346    method public void acknowledgeSms(int, @IntRange(from=0, to=65535) int, int, @NonNull byte[]);
18347    method public void acknowledgeSmsReport(int, @IntRange(from=0, to=65535) int, int);
18348    method public String getSmsFormat();
18349    method public void onReady();
18350    method @Deprecated public final void onSendSmsResult(int, @IntRange(from=0, to=65535) int, int, int) throws java.lang.RuntimeException;
18351    method public final void onSendSmsResultError(int, @IntRange(from=0, to=65535) int, int, int, int) throws java.lang.RuntimeException;
18352    method public final void onSendSmsResultSuccess(int, @IntRange(from=0, to=65535) int) throws java.lang.RuntimeException;
18353    method public final void onSmsReceived(int, String, byte[]) throws java.lang.RuntimeException;
18354    method @Deprecated public final void onSmsStatusReportReceived(int, @IntRange(from=0, to=65535) int, String, byte[]) throws java.lang.RuntimeException;
18355    method public final void onSmsStatusReportReceived(int, String, byte[]) throws java.lang.RuntimeException;
18356    method public void sendSms(int, @IntRange(from=0, to=65535) int, String, String, boolean, byte[]);
18357    field public static final int DELIVER_STATUS_ERROR_GENERIC = 2; // 0x2
18358    field public static final int DELIVER_STATUS_ERROR_NO_MEMORY = 3; // 0x3
18359    field public static final int DELIVER_STATUS_ERROR_REQUEST_NOT_SUPPORTED = 4; // 0x4
18360    field public static final int DELIVER_STATUS_OK = 1; // 0x1
18361    field public static final int RESULT_NO_NETWORK_ERROR = -1; // 0xffffffff
18362    field public static final int SEND_STATUS_ERROR = 2; // 0x2
18363    field public static final int SEND_STATUS_ERROR_FALLBACK = 4; // 0x4
18364    field public static final int SEND_STATUS_ERROR_RETRY = 3; // 0x3
18365    field public static final int SEND_STATUS_OK = 1; // 0x1
18366    field public static final int STATUS_REPORT_STATUS_ERROR = 2; // 0x2
18367    field public static final int STATUS_REPORT_STATUS_OK = 1; // 0x1
18368  }
18369
18370  public class ImsUtImplBase {
18371    ctor public ImsUtImplBase();
18372    method public void close();
18373    method public int queryCallBarring(int);
18374    method public int queryCallBarringForServiceClass(int, int);
18375    method public int queryCallForward(int, String);
18376    method public int queryCallWaiting();
18377    method public int queryClip();
18378    method public int queryClir();
18379    method public int queryColp();
18380    method public int queryColr();
18381    method public void setListener(android.telephony.ims.ImsUtListener);
18382    method public int transact(android.os.Bundle);
18383    method public int updateCallBarring(int, int, String[]);
18384    method public int updateCallBarringForServiceClass(int, int, String[], int);
18385    method public int updateCallForward(int, int, String, int, int);
18386    method public int updateCallWaiting(boolean, int);
18387    method public int updateClip(boolean);
18388    method public int updateClir(int);
18389    method public int updateColp(boolean);
18390    method public int updateColr(int);
18391  }
18392
18393  public class RcsCapabilityExchangeImplBase {
18394    ctor public RcsCapabilityExchangeImplBase();
18395    method public void publishCapabilities(@NonNull String, @NonNull android.telephony.ims.stub.RcsCapabilityExchangeImplBase.PublishResponseCallback);
18396    method public void sendOptionsCapabilityRequest(@NonNull android.net.Uri, @NonNull java.util.Set<java.lang.String>, @NonNull android.telephony.ims.stub.RcsCapabilityExchangeImplBase.OptionsResponseCallback);
18397    method public void subscribeForCapabilities(@NonNull java.util.Collection<android.net.Uri>, @NonNull android.telephony.ims.stub.RcsCapabilityExchangeImplBase.SubscribeResponseCallback);
18398    field public static final int COMMAND_CODE_FETCH_ERROR = 3; // 0x3
18399    field public static final int COMMAND_CODE_GENERIC_FAILURE = 1; // 0x1
18400    field public static final int COMMAND_CODE_INSUFFICIENT_MEMORY = 5; // 0x5
18401    field public static final int COMMAND_CODE_INVALID_PARAM = 2; // 0x2
18402    field public static final int COMMAND_CODE_LOST_NETWORK_CONNECTION = 6; // 0x6
18403    field public static final int COMMAND_CODE_NOT_FOUND = 8; // 0x8
18404    field public static final int COMMAND_CODE_NOT_SUPPORTED = 7; // 0x7
18405    field public static final int COMMAND_CODE_NO_CHANGE = 10; // 0xa
18406    field public static final int COMMAND_CODE_REQUEST_TIMEOUT = 4; // 0x4
18407    field public static final int COMMAND_CODE_SERVICE_UNAVAILABLE = 9; // 0x9
18408    field public static final int COMMAND_CODE_SERVICE_UNKNOWN = 0; // 0x0
18409  }
18410
18411  public static interface RcsCapabilityExchangeImplBase.OptionsResponseCallback {
18412    method public void onCommandError(int) throws android.telephony.ims.ImsException;
18413    method public void onNetworkResponse(int, @NonNull String, @NonNull java.util.List<java.lang.String>) throws android.telephony.ims.ImsException;
18414  }
18415
18416  public static interface RcsCapabilityExchangeImplBase.PublishResponseCallback {
18417    method public void onCommandError(int) throws android.telephony.ims.ImsException;
18418    method @Deprecated public void onNetworkResponse(@IntRange(from=100, to=699) int, @NonNull String) throws android.telephony.ims.ImsException;
18419    method @Deprecated public void onNetworkResponse(@IntRange(from=100, to=699) int, @NonNull String, @IntRange(from=100, to=699) int, @NonNull String) throws android.telephony.ims.ImsException;
18420    method public default void onNetworkResponse(@NonNull android.telephony.ims.SipDetails) throws android.telephony.ims.ImsException;
18421  }
18422
18423  public static interface RcsCapabilityExchangeImplBase.SubscribeResponseCallback {
18424    method public void onCommandError(int) throws android.telephony.ims.ImsException;
18425    method @Deprecated public void onNetworkResponse(@IntRange(from=100, to=699) int, @NonNull String) throws android.telephony.ims.ImsException;
18426    method @Deprecated public void onNetworkResponse(@IntRange(from=100, to=699) int, @NonNull String, @IntRange(from=100, to=699) int, @NonNull String) throws android.telephony.ims.ImsException;
18427    method public default void onNetworkResponse(@NonNull android.telephony.ims.SipDetails) throws android.telephony.ims.ImsException;
18428    method public void onNotifyCapabilitiesUpdate(@NonNull java.util.List<java.lang.String>) throws android.telephony.ims.ImsException;
18429    method public void onResourceTerminated(@NonNull java.util.List<android.util.Pair<android.net.Uri,java.lang.String>>) throws android.telephony.ims.ImsException;
18430    method public void onTerminated(@NonNull String, long) throws android.telephony.ims.ImsException;
18431  }
18432
18433  public interface SipDelegate {
18434    method public void cleanupSession(@NonNull String);
18435    method public void notifyMessageReceiveError(@NonNull String, int);
18436    method public void notifyMessageReceived(@NonNull String);
18437    method public void sendMessage(@NonNull android.telephony.ims.SipMessage, long);
18438  }
18439
18440  public class SipTransportImplBase {
18441    ctor public SipTransportImplBase();
18442    ctor public SipTransportImplBase(@NonNull java.util.concurrent.Executor);
18443    method public void createSipDelegate(int, @NonNull android.telephony.ims.DelegateRequest, @NonNull android.telephony.ims.DelegateStateCallback, @NonNull android.telephony.ims.DelegateMessageCallback);
18444    method public void destroySipDelegate(@NonNull android.telephony.ims.stub.SipDelegate, int);
18445  }
18446
18447}
18448
18449package android.telephony.mbms {
18450
18451  public static class DownloadRequest.Builder {
18452    method public android.telephony.mbms.DownloadRequest.Builder setServiceId(String);
18453  }
18454
18455  public final class FileInfo implements android.os.Parcelable {
18456    ctor public FileInfo(android.net.Uri, String);
18457  }
18458
18459  public final class FileServiceInfo extends android.telephony.mbms.ServiceInfo implements android.os.Parcelable {
18460    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>);
18461  }
18462
18463  public class MbmsDownloadReceiver extends android.content.BroadcastReceiver {
18464    field public static final int RESULT_APP_NOTIFICATION_ERROR = 6; // 0x6
18465    field public static final int RESULT_BAD_TEMP_FILE_ROOT = 3; // 0x3
18466    field public static final int RESULT_DOWNLOAD_FINALIZATION_ERROR = 4; // 0x4
18467    field public static final int RESULT_INVALID_ACTION = 1; // 0x1
18468    field public static final int RESULT_MALFORMED_INTENT = 2; // 0x2
18469    field public static final int RESULT_OK = 0; // 0x0
18470    field public static final int RESULT_TEMP_FILE_GENERATION_ERROR = 5; // 0x5
18471  }
18472
18473  public final class StreamingServiceInfo extends android.telephony.mbms.ServiceInfo implements android.os.Parcelable {
18474    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);
18475  }
18476
18477  public final class UriPathPair implements android.os.Parcelable {
18478    method public int describeContents();
18479    method public android.net.Uri getContentUri();
18480    method public android.net.Uri getFilePathUri();
18481    method public void writeToParcel(android.os.Parcel, int);
18482    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.mbms.UriPathPair> CREATOR;
18483  }
18484
18485}
18486
18487package android.telephony.mbms.vendor {
18488
18489  public class MbmsDownloadServiceBase extends android.os.Binder implements android.os.IInterface {
18490    ctor public MbmsDownloadServiceBase();
18491    method public int addProgressListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadProgressListener) throws android.os.RemoteException;
18492    method public int addServiceAnnouncement(int, @NonNull byte[]);
18493    method public int addStatusListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStatusListener) throws android.os.RemoteException;
18494    method public android.os.IBinder asBinder();
18495    method public int cancelDownload(android.telephony.mbms.DownloadRequest) throws android.os.RemoteException;
18496    method public void dispose(int) throws android.os.RemoteException;
18497    method public int download(android.telephony.mbms.DownloadRequest) throws android.os.RemoteException;
18498    method public int initialize(int, android.telephony.mbms.MbmsDownloadSessionCallback) throws android.os.RemoteException;
18499    method @NonNull public java.util.List<android.telephony.mbms.DownloadRequest> listPendingDownloads(int) throws android.os.RemoteException;
18500    method public void onAppCallbackDied(int, int);
18501    method public boolean onTransact(int, android.os.Parcel, android.os.Parcel, int) throws android.os.RemoteException;
18502    method public int removeProgressListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadProgressListener) throws android.os.RemoteException;
18503    method public int removeStatusListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStatusListener) throws android.os.RemoteException;
18504    method public int requestDownloadState(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo) throws android.os.RemoteException;
18505    method public int requestUpdateFileServices(int, java.util.List<java.lang.String>) throws android.os.RemoteException;
18506    method public int resetDownloadKnowledge(android.telephony.mbms.DownloadRequest) throws android.os.RemoteException;
18507    method public int setTempFileRootDirectory(int, String) throws android.os.RemoteException;
18508  }
18509
18510  public class MbmsGroupCallServiceBase extends android.app.Service {
18511    ctor public MbmsGroupCallServiceBase();
18512    method public void dispose(int) throws android.os.RemoteException;
18513    method public int initialize(@NonNull android.telephony.mbms.MbmsGroupCallSessionCallback, int) throws android.os.RemoteException;
18514    method public void onAppCallbackDied(int, int);
18515    method public android.os.IBinder onBind(android.content.Intent);
18516    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);
18517    method public void stopGroupCall(int, long);
18518    method public void updateGroupCall(int, long, @NonNull java.util.List<java.lang.Integer>, @NonNull java.util.List<java.lang.Integer>);
18519  }
18520
18521  public class MbmsStreamingServiceBase extends android.os.Binder implements android.os.IInterface {
18522    ctor public MbmsStreamingServiceBase();
18523    method public android.os.IBinder asBinder();
18524    method public void dispose(int) throws android.os.RemoteException;
18525    method @Nullable public android.net.Uri getPlaybackUri(int, String) throws android.os.RemoteException;
18526    method public int initialize(android.telephony.mbms.MbmsStreamingSessionCallback, int) throws android.os.RemoteException;
18527    method public void onAppCallbackDied(int, int);
18528    method public boolean onTransact(int, android.os.Parcel, android.os.Parcel, int) throws android.os.RemoteException;
18529    method public int requestUpdateStreamingServices(int, java.util.List<java.lang.String>) throws android.os.RemoteException;
18530    method public int startStreaming(int, String, android.telephony.mbms.StreamingServiceCallback) throws android.os.RemoteException;
18531    method public void stopStreaming(int, String) throws android.os.RemoteException;
18532  }
18533
18534  public class VendorUtils {
18535    ctor public VendorUtils();
18536    method public static android.content.ComponentName getAppReceiverFromPackageName(android.content.Context, String);
18537    field public static final String ACTION_CLEANUP = "android.telephony.mbms.action.CLEANUP";
18538    field public static final String ACTION_DOWNLOAD_RESULT_INTERNAL = "android.telephony.mbms.action.DOWNLOAD_RESULT_INTERNAL";
18539    field public static final String ACTION_FILE_DESCRIPTOR_REQUEST = "android.telephony.mbms.action.FILE_DESCRIPTOR_REQUEST";
18540    field public static final String EXTRA_FD_COUNT = "android.telephony.mbms.extra.FD_COUNT";
18541    field public static final String EXTRA_FINAL_URI = "android.telephony.mbms.extra.FINAL_URI";
18542    field public static final String EXTRA_FREE_URI_LIST = "android.telephony.mbms.extra.FREE_URI_LIST";
18543    field public static final String EXTRA_PAUSED_LIST = "android.telephony.mbms.extra.PAUSED_LIST";
18544    field public static final String EXTRA_PAUSED_URI_LIST = "android.telephony.mbms.extra.PAUSED_URI_LIST";
18545    field public static final String EXTRA_SERVICE_ID = "android.telephony.mbms.extra.SERVICE_ID";
18546    field public static final String EXTRA_TEMP_FILES_IN_USE = "android.telephony.mbms.extra.TEMP_FILES_IN_USE";
18547    field public static final String EXTRA_TEMP_FILE_ROOT = "android.telephony.mbms.extra.TEMP_FILE_ROOT";
18548    field public static final String EXTRA_TEMP_LIST = "android.telephony.mbms.extra.TEMP_LIST";
18549  }
18550
18551}
18552
18553package android.telephony.satellite {
18554
18555  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public final class AntennaDirection implements android.os.Parcelable {
18556    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public int describeContents();
18557    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public float getX();
18558    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public float getY();
18559    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public float getZ();
18560    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void writeToParcel(@NonNull android.os.Parcel, int);
18561    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.AntennaDirection> CREATOR;
18562  }
18563
18564  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public final class AntennaPosition implements android.os.Parcelable {
18565    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public int describeContents();
18566    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @NonNull public android.telephony.satellite.AntennaDirection getAntennaDirection();
18567    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public int getSuggestedHoldPosition();
18568    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void writeToParcel(@NonNull android.os.Parcel, int);
18569    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.AntennaPosition> CREATOR;
18570  }
18571
18572  @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public final class EarfcnRange implements android.os.Parcelable {
18573    method public int describeContents();
18574    method @IntRange(from=0, to=65535) public int getEndEarfcn();
18575    method @IntRange(from=0, to=65535) public int getStartEarfcn();
18576    method public void writeToParcel(@NonNull android.os.Parcel, int);
18577    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.EarfcnRange> CREATOR;
18578  }
18579
18580  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public class EnableRequestAttributes {
18581    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public boolean isDemoMode();
18582    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public boolean isEmergencyMode();
18583    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public boolean isEnabled();
18584  }
18585
18586  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final class EnableRequestAttributes.Builder {
18587    ctor @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public EnableRequestAttributes.Builder(boolean);
18588    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @NonNull public android.telephony.satellite.EnableRequestAttributes build();
18589    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @NonNull public android.telephony.satellite.EnableRequestAttributes.Builder setDemoMode(boolean);
18590    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @NonNull public android.telephony.satellite.EnableRequestAttributes.Builder setEmergencyMode(boolean);
18591  }
18592
18593  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public final class NtnSignalStrength implements android.os.Parcelable {
18594    ctor @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public NtnSignalStrength(@Nullable android.telephony.satellite.NtnSignalStrength);
18595    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public int describeContents();
18596    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public int getLevel();
18597    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void writeToParcel(@NonNull android.os.Parcel, int);
18598    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.NtnSignalStrength> CREATOR;
18599    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int NTN_SIGNAL_STRENGTH_GOOD = 3; // 0x3
18600    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int NTN_SIGNAL_STRENGTH_GREAT = 4; // 0x4
18601    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int NTN_SIGNAL_STRENGTH_MODERATE = 2; // 0x2
18602    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int NTN_SIGNAL_STRENGTH_NONE = 0; // 0x0
18603    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int NTN_SIGNAL_STRENGTH_POOR = 1; // 0x1
18604  }
18605
18606  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public interface NtnSignalStrengthCallback {
18607    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void onNtnSignalStrengthChanged(@NonNull android.telephony.satellite.NtnSignalStrength);
18608  }
18609
18610  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public final class PointingInfo implements android.os.Parcelable {
18611    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public int describeContents();
18612    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @FloatRange(from=0xffffff4c, to=180) public float getSatelliteAzimuthDegrees();
18613    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @FloatRange(from=0xffffffa6, to=90) public float getSatelliteElevationDegrees();
18614    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void writeToParcel(@NonNull android.os.Parcel, int);
18615    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.PointingInfo> CREATOR;
18616  }
18617
18618  @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public final class SatelliteAccessConfiguration implements android.os.Parcelable {
18619    method public int describeContents();
18620    method @NonNull public java.util.List<android.telephony.satellite.SatelliteInfo> getSatelliteInfos();
18621    method @NonNull public java.util.List<java.lang.Integer> getTagIds();
18622    method public void writeToParcel(@NonNull android.os.Parcel, int);
18623    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.SatelliteAccessConfiguration> CREATOR;
18624  }
18625
18626  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public final class SatelliteCapabilities implements android.os.Parcelable {
18627    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public int describeContents();
18628    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @NonNull public java.util.Map<java.lang.Integer,android.telephony.satellite.AntennaPosition> getAntennaPositionMap();
18629    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public int getMaxBytesPerOutgoingDatagram();
18630    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @NonNull public java.util.Set<java.lang.Integer> getSupportedRadioTechnologies();
18631    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public boolean isPointingRequired();
18632    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void writeToParcel(@NonNull android.os.Parcel, int);
18633    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.SatelliteCapabilities> CREATOR;
18634  }
18635
18636  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public interface SatelliteCapabilitiesCallback {
18637    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void onSatelliteCapabilitiesChanged(@NonNull android.telephony.satellite.SatelliteCapabilities);
18638  }
18639
18640  @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public interface SatelliteCommunicationAllowedStateCallback {
18641    method public default void onSatelliteAccessConfigurationChanged(@Nullable android.telephony.satellite.SatelliteAccessConfiguration);
18642    method public void onSatelliteCommunicationAllowedStateChanged(boolean);
18643  }
18644
18645  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public final class SatelliteDatagram implements android.os.Parcelable {
18646    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public int describeContents();
18647    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @NonNull public byte[] getSatelliteDatagram();
18648    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void writeToParcel(@NonNull android.os.Parcel, int);
18649    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.SatelliteDatagram> CREATOR;
18650  }
18651
18652  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public interface SatelliteDatagramCallback {
18653    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void onSatelliteDatagramReceived(long, @NonNull android.telephony.satellite.SatelliteDatagram, int, @NonNull java.util.function.Consumer<java.lang.Void>);
18654  }
18655
18656  @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public interface SatelliteDisallowedReasonsCallback {
18657    method public void onSatelliteDisallowedReasonsChanged(@NonNull int[]);
18658  }
18659
18660  @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public final class SatelliteInfo implements android.os.Parcelable {
18661    method public int describeContents();
18662    method @NonNull public java.util.List<java.lang.Integer> getBands();
18663    method @NonNull public java.util.List<android.telephony.satellite.EarfcnRange> getEarfcnRanges();
18664    method @NonNull public java.util.UUID getSatelliteId();
18665    method @NonNull public android.telephony.satellite.SatellitePosition getSatellitePosition();
18666    method public void writeToParcel(@NonNull android.os.Parcel, int);
18667    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.SatelliteInfo> CREATOR;
18668  }
18669
18670  @FlaggedApi("com.android.internal.telephony.flags.satellite_state_change_listener") public final class SatelliteManager {
18671    method @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void addAttachRestrictionForCarrier(int, int, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
18672    method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void deprovisionSatellite(@NonNull java.util.List<android.telephony.satellite.SatelliteSubscriberInfo>, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Boolean,android.telephony.satellite.SatelliteManager.SatelliteException>);
18673    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void deprovisionService(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
18674    method @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") @NonNull @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public java.util.Set<java.lang.Integer> getAttachRestrictionReasonsForCarrier(int);
18675    method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @NonNull @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public int[] getSatelliteDisallowedReasons();
18676    method @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") @NonNull @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public java.util.List<java.lang.String> getSatellitePlmnsForCarrier(int);
18677    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void pollPendingDatagrams(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
18678    method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void provisionSatellite(@NonNull java.util.List<android.telephony.satellite.SatelliteSubscriberInfo>, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Boolean,android.telephony.satellite.SatelliteManager.SatelliteException>);
18679    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void provisionService(@NonNull String, @NonNull byte[], @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
18680    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public int registerForCapabilitiesChanged(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.SatelliteCapabilitiesCallback);
18681    method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public int registerForCommunicationAllowedStateChanged(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.SatelliteCommunicationAllowedStateCallback);
18682    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public int registerForIncomingDatagram(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.SatelliteDatagramCallback);
18683    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public int registerForModemStateChanged(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.SatelliteModemStateCallback);
18684    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void registerForNtnSignalStrengthChanged(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.NtnSignalStrengthCallback);
18685    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public int registerForProvisionStateChanged(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.SatelliteProvisionStateCallback);
18686    method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void registerForSatelliteDisallowedReasonsChanged(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.SatelliteDisallowedReasonsCallback);
18687    method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public int registerForSelectedNbIotSatelliteSubscriptionChanged(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.SelectedNbIotSatelliteSubscriptionCallback);
18688    method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public int registerForSupportedStateChanged(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.SatelliteSupportedStateCallback);
18689    method @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void removeAttachRestrictionForCarrier(int, int, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
18690    method @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestAttachEnabledForCarrier(int, boolean, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
18691    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestCapabilities(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.telephony.satellite.SatelliteCapabilities,android.telephony.satellite.SatelliteManager.SatelliteException>);
18692    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestEnabled(@NonNull android.telephony.satellite.EnableRequestAttributes, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
18693    method @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestIsAttachEnabledForCarrier(int, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Boolean,android.telephony.satellite.SatelliteManager.SatelliteException>);
18694    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestIsCommunicationAllowedForCurrentLocation(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Boolean,android.telephony.satellite.SatelliteManager.SatelliteException>);
18695    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestIsDemoModeEnabled(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Boolean,android.telephony.satellite.SatelliteManager.SatelliteException>);
18696    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestIsEmergencyModeEnabled(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Boolean,android.telephony.satellite.SatelliteManager.SatelliteException>);
18697    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestIsEnabled(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Boolean,android.telephony.satellite.SatelliteManager.SatelliteException>);
18698    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestIsProvisioned(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Boolean,android.telephony.satellite.SatelliteManager.SatelliteException>);
18699    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void requestIsSupported(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Boolean,android.telephony.satellite.SatelliteManager.SatelliteException>);
18700    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestNtnSignalStrength(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.telephony.satellite.NtnSignalStrength,android.telephony.satellite.SatelliteManager.SatelliteException>);
18701    method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestSatelliteAccessConfigurationForCurrentLocation(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.telephony.satellite.SatelliteAccessConfiguration,android.telephony.satellite.SatelliteManager.SatelliteException>);
18702    method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestSatelliteDisplayName(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.CharSequence,android.telephony.satellite.SatelliteManager.SatelliteException>);
18703    method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestSatelliteSubscriberProvisionStatus(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.util.List<android.telephony.satellite.SatelliteSubscriberProvisionStatus>,android.telephony.satellite.SatelliteManager.SatelliteException>);
18704    method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestSelectedNbIotSatelliteSubscriptionId(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Integer,android.telephony.satellite.SatelliteManager.SatelliteException>);
18705    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestTimeForNextSatelliteVisibility(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.time.Duration,android.telephony.satellite.SatelliteManager.SatelliteException>);
18706    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void sendDatagram(int, @NonNull android.telephony.satellite.SatelliteDatagram, boolean, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
18707    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void setDeviceAlignedWithSatellite(boolean);
18708    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void startTransmissionUpdates(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>, @NonNull android.telephony.satellite.SatelliteTransmissionUpdateCallback);
18709    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void stopTransmissionUpdates(@NonNull android.telephony.satellite.SatelliteTransmissionUpdateCallback, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
18710    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void unregisterForCapabilitiesChanged(@NonNull android.telephony.satellite.SatelliteCapabilitiesCallback);
18711    method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void unregisterForCommunicationAllowedStateChanged(@NonNull android.telephony.satellite.SatelliteCommunicationAllowedStateCallback);
18712    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void unregisterForIncomingDatagram(@NonNull android.telephony.satellite.SatelliteDatagramCallback);
18713    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void unregisterForModemStateChanged(@NonNull android.telephony.satellite.SatelliteModemStateCallback);
18714    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void unregisterForNtnSignalStrengthChanged(@NonNull android.telephony.satellite.NtnSignalStrengthCallback);
18715    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void unregisterForProvisionStateChanged(@NonNull android.telephony.satellite.SatelliteProvisionStateCallback);
18716    method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void unregisterForSatelliteDisallowedReasonsChanged(@NonNull android.telephony.satellite.SatelliteDisallowedReasonsCallback);
18717    method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void unregisterForSelectedNbIotSatelliteSubscriptionChanged(@NonNull android.telephony.satellite.SelectedNbIotSatelliteSubscriptionCallback);
18718    method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void unregisterForSupportedStateChanged(@NonNull android.telephony.satellite.SatelliteSupportedStateCallback);
18719    field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String ACTION_SATELLITE_START_NON_EMERGENCY_SESSION = "android.telephony.satellite.action.SATELLITE_START_NON_EMERGENCY_SESSION";
18720    field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String ACTION_SATELLITE_SUBSCRIBER_ID_LIST_CHANGED = "android.telephony.satellite.action.SATELLITE_SUBSCRIBER_ID_LIST_CHANGED";
18721    field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int DATAGRAM_TYPE_CHECK_PENDING_INCOMING_SMS = 7; // 0x7
18722    field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int DATAGRAM_TYPE_KEEP_ALIVE = 3; // 0x3
18723    field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int DATAGRAM_TYPE_LAST_SOS_MESSAGE_NO_HELP_NEEDED = 5; // 0x5
18724    field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int DATAGRAM_TYPE_LAST_SOS_MESSAGE_STILL_NEED_HELP = 4; // 0x4
18725    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int DATAGRAM_TYPE_LOCATION_SHARING = 2; // 0x2
18726    field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int DATAGRAM_TYPE_SMS = 6; // 0x6
18727    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int DATAGRAM_TYPE_SOS_MESSAGE = 1; // 0x1
18728    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int DATAGRAM_TYPE_UNKNOWN = 0; // 0x0
18729    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int DEVICE_HOLD_POSITION_LANDSCAPE_LEFT = 2; // 0x2
18730    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int DEVICE_HOLD_POSITION_LANDSCAPE_RIGHT = 3; // 0x3
18731    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int DEVICE_HOLD_POSITION_PORTRAIT = 1; // 0x1
18732    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int DEVICE_HOLD_POSITION_UNKNOWN = 0; // 0x0
18733    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int DISPLAY_MODE_CLOSED = 3; // 0x3
18734    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int DISPLAY_MODE_FIXED = 1; // 0x1
18735    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int DISPLAY_MODE_OPENED = 2; // 0x2
18736    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int DISPLAY_MODE_UNKNOWN = 0; // 0x0
18737    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int EMERGENCY_CALL_TO_SATELLITE_HANDOVER_TYPE_SOS = 1; // 0x1
18738    field @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public static final int EMERGENCY_CALL_TO_SATELLITE_HANDOVER_TYPE_T911 = 2; // 0x2
18739    field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String METADATA_SATELLITE_MANUAL_CONNECT_P2P_SUPPORT = "android.telephony.METADATA_SATELLITE_MANUAL_CONNECT_P2P_SUPPORT";
18740    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int NT_RADIO_TECHNOLOGY_EMTC_NTN = 3; // 0x3
18741    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int NT_RADIO_TECHNOLOGY_NB_IOT_NTN = 1; // 0x1
18742    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int NT_RADIO_TECHNOLOGY_NR_NTN = 2; // 0x2
18743    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int NT_RADIO_TECHNOLOGY_PROPRIETARY = 4; // 0x4
18744    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int NT_RADIO_TECHNOLOGY_UNKNOWN = 0; // 0x0
18745    field @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public static final int SATELLITE_COMMUNICATION_RESTRICTION_REASON_ENTITLEMENT = 2; // 0x2
18746    field @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public static final int SATELLITE_COMMUNICATION_RESTRICTION_REASON_GEOLOCATION = 1; // 0x1
18747    field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int SATELLITE_COMMUNICATION_RESTRICTION_REASON_USER = 0; // 0x0
18748    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_IDLE = 0; // 0x0
18749    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_RECEIVE_FAILED = 7; // 0x7
18750    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_RECEIVE_NONE = 6; // 0x6
18751    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_RECEIVE_SUCCESS = 5; // 0x5
18752    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_RECEIVING = 4; // 0x4
18753    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_SENDING = 1; // 0x1
18754    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_SEND_FAILED = 3; // 0x3
18755    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_SEND_SUCCESS = 2; // 0x2
18756    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_UNKNOWN = -1; // 0xffffffff
18757    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_WAITING_TO_CONNECT = 8; // 0x8
18758    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_MODEM_STATE_CONNECTED = 7; // 0x7
18759    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_MODEM_STATE_DATAGRAM_RETRYING = 3; // 0x3
18760    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_MODEM_STATE_DATAGRAM_TRANSFERRING = 2; // 0x2
18761    field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int SATELLITE_MODEM_STATE_DISABLING_SATELLITE = 9; // 0x9
18762    field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int SATELLITE_MODEM_STATE_ENABLING_SATELLITE = 8; // 0x8
18763    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_MODEM_STATE_IDLE = 0; // 0x0
18764    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_MODEM_STATE_LISTENING = 1; // 0x1
18765    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_MODEM_STATE_NOT_CONNECTED = 6; // 0x6
18766    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_MODEM_STATE_OFF = 4; // 0x4
18767    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_MODEM_STATE_UNAVAILABLE = 5; // 0x5
18768    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_MODEM_STATE_UNKNOWN = -1; // 0xffffffff
18769    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_ACCESS_BARRED = 16; // 0x10
18770    field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int SATELLITE_RESULT_DISABLE_IN_PROGRESS = 28; // 0x1c
18771    field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int SATELLITE_RESULT_EMERGENCY_CALL_IN_PROGRESS = 27; // 0x1b
18772    field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int SATELLITE_RESULT_ENABLE_IN_PROGRESS = 29; // 0x1d
18773    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_ERROR = 1; // 0x1
18774    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_ILLEGAL_STATE = 23; // 0x17
18775    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_INVALID_ARGUMENTS = 8; // 0x8
18776    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_INVALID_MODEM_STATE = 7; // 0x7
18777    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_INVALID_TELEPHONY_STATE = 6; // 0x6
18778    field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int SATELLITE_RESULT_LOCATION_DISABLED = 25; // 0x19
18779    field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int SATELLITE_RESULT_LOCATION_NOT_AVAILABLE = 26; // 0x1a
18780    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_MODEM_BUSY = 22; // 0x16
18781    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_MODEM_ERROR = 4; // 0x4
18782    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_MODEM_TIMEOUT = 24; // 0x18
18783    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_NETWORK_ERROR = 5; // 0x5
18784    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_NETWORK_TIMEOUT = 17; // 0x11
18785    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_NOT_AUTHORIZED = 19; // 0x13
18786    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_NOT_REACHABLE = 18; // 0x12
18787    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_NOT_SUPPORTED = 20; // 0x14
18788    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_NO_RESOURCES = 12; // 0xc
18789    field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int SATELLITE_RESULT_NO_VALID_SATELLITE_SUBSCRIPTION = 30; // 0x1e
18790    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_RADIO_NOT_AVAILABLE = 10; // 0xa
18791    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_REQUEST_ABORTED = 15; // 0xf
18792    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_REQUEST_FAILED = 9; // 0x9
18793    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_REQUEST_IN_PROGRESS = 21; // 0x15
18794    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_REQUEST_NOT_SUPPORTED = 11; // 0xb
18795    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_SERVER_ERROR = 2; // 0x2
18796    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_SERVICE_ERROR = 3; // 0x3
18797    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_SERVICE_NOT_PROVISIONED = 13; // 0xd
18798    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_SERVICE_PROVISION_IN_PROGRESS = 14; // 0xe
18799    field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_RESULT_SUCCESS = 0; // 0x0
18800  }
18801
18802  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static class SatelliteManager.SatelliteException extends java.lang.Exception {
18803    ctor @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public SatelliteManager.SatelliteException(int);
18804    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public int getErrorCode();
18805  }
18806
18807  @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public final class SatelliteModemEnableRequestAttributes implements android.os.Parcelable {
18808    method public int describeContents();
18809    method @NonNull public android.telephony.satellite.SatelliteSubscriptionInfo getSatelliteSubscriptionInfo();
18810    method public boolean isDemoMode();
18811    method public boolean isEmergencyMode();
18812    method public boolean isEnabled();
18813    method public void writeToParcel(@NonNull android.os.Parcel, int);
18814    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.SatelliteModemEnableRequestAttributes> CREATOR;
18815  }
18816
18817  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public interface SatelliteModemStateCallback {
18818    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void onSatelliteModemStateChanged(int);
18819  }
18820
18821  @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public final class SatellitePosition implements android.os.Parcelable {
18822    method public int describeContents();
18823    method public double getAltitudeKm();
18824    method public double getLongitudeDegrees();
18825    method public void writeToParcel(@NonNull android.os.Parcel, int);
18826    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.SatellitePosition> CREATOR;
18827  }
18828
18829  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public interface SatelliteProvisionStateCallback {
18830    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void onSatelliteProvisionStateChanged(boolean);
18831    method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public default void onSatelliteSubscriptionProvisionStateChanged(@NonNull java.util.List<android.telephony.satellite.SatelliteSubscriberProvisionStatus>);
18832  }
18833
18834  @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public final class SatelliteSubscriberInfo implements android.os.Parcelable {
18835    method public int describeContents();
18836    method public int getCarrierId();
18837    method @NonNull public String getNiddApn();
18838    method public int getSubId();
18839    method @NonNull public String getSubscriberId();
18840    method public int getSubscriberIdType();
18841    method public void writeToParcel(@NonNull android.os.Parcel, int);
18842    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.SatelliteSubscriberInfo> CREATOR;
18843    field public static final int ICCID = 0; // 0x0
18844    field public static final int IMSI_MSISDN = 1; // 0x1
18845  }
18846
18847  public static final class SatelliteSubscriberInfo.Builder {
18848    ctor public SatelliteSubscriberInfo.Builder();
18849    method @NonNull public android.telephony.satellite.SatelliteSubscriberInfo build();
18850    method @NonNull public android.telephony.satellite.SatelliteSubscriberInfo.Builder setCarrierId(int);
18851    method @NonNull public android.telephony.satellite.SatelliteSubscriberInfo.Builder setNiddApn(@NonNull String);
18852    method @NonNull public android.telephony.satellite.SatelliteSubscriberInfo.Builder setSubId(int);
18853    method @NonNull public android.telephony.satellite.SatelliteSubscriberInfo.Builder setSubscriberId(@NonNull String);
18854    method @NonNull public android.telephony.satellite.SatelliteSubscriberInfo.Builder setSubscriberIdType(int);
18855  }
18856
18857  @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public final class SatelliteSubscriberProvisionStatus implements android.os.Parcelable {
18858    method public int describeContents();
18859    method @NonNull public android.telephony.satellite.SatelliteSubscriberInfo getSatelliteSubscriberInfo();
18860    method public boolean isProvisioned();
18861    method public void writeToParcel(@NonNull android.os.Parcel, int);
18862    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.SatelliteSubscriberProvisionStatus> CREATOR;
18863  }
18864
18865  public static final class SatelliteSubscriberProvisionStatus.Builder {
18866    ctor public SatelliteSubscriberProvisionStatus.Builder();
18867    method @NonNull public android.telephony.satellite.SatelliteSubscriberProvisionStatus build();
18868    method @NonNull public android.telephony.satellite.SatelliteSubscriberProvisionStatus.Builder setProvisioned(boolean);
18869    method @NonNull public android.telephony.satellite.SatelliteSubscriberProvisionStatus.Builder setSatelliteSubscriberInfo(@NonNull android.telephony.satellite.SatelliteSubscriberInfo);
18870  }
18871
18872  @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public final class SatelliteSubscriptionInfo implements android.os.Parcelable {
18873    method public int describeContents();
18874    method @NonNull public String getIccId();
18875    method @NonNull public String getNiddApn();
18876    method public void writeToParcel(@NonNull android.os.Parcel, int);
18877    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.SatelliteSubscriptionInfo> CREATOR;
18878  }
18879
18880  @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public interface SatelliteSupportedStateCallback {
18881    method public void onSatelliteSupportedStateChanged(boolean);
18882  }
18883
18884  @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public interface SatelliteTransmissionUpdateCallback {
18885    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void onReceiveDatagramStateChanged(int, int, int);
18886    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void onSatellitePositionChanged(@NonNull android.telephony.satellite.PointingInfo);
18887    method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public default void onSendDatagramRequested(int);
18888    method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public void onSendDatagramStateChanged(int, int, int);
18889    method @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public default void onSendDatagramStateChanged(int, int, int, int);
18890  }
18891
18892  @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public interface SelectedNbIotSatelliteSubscriptionCallback {
18893    method public void onSelectedNbIotSatelliteSubscriptionChanged(int);
18894  }
18895
18896  @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public final class SystemSelectionSpecifier implements android.os.Parcelable {
18897    method public int describeContents();
18898    method @NonNull public int[] getBands();
18899    method @NonNull public int[] getEarfcns();
18900    method @NonNull public String getMccMnc();
18901    method @NonNull public java.util.List<android.telephony.satellite.SatelliteInfo> getSatelliteInfos();
18902    method @NonNull public int[] getTagIds();
18903    method public void writeToParcel(@NonNull android.os.Parcel, int);
18904    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.SystemSelectionSpecifier> CREATOR;
18905  }
18906
18907}
18908
18909package android.text {
18910
18911  public final class FontConfig implements android.os.Parcelable {
18912    method public int describeContents();
18913    method @NonNull public java.util.List<android.text.FontConfig.Alias> getAliases();
18914    method @IntRange(from=0) public int getConfigVersion();
18915    method @NonNull public java.util.List<android.text.FontConfig.FontFamily> getFontFamilies();
18916    method public long getLastModifiedTimeMillis();
18917    method @NonNull public java.util.List<android.text.FontConfig.NamedFamilyList> getNamedFamilyLists();
18918    method public void writeToParcel(@NonNull android.os.Parcel, int);
18919    field @NonNull public static final android.os.Parcelable.Creator<android.text.FontConfig> CREATOR;
18920  }
18921
18922  public static final class FontConfig.Alias implements android.os.Parcelable {
18923    method public int describeContents();
18924    method @NonNull public String getName();
18925    method @NonNull public String getOriginal();
18926    method @IntRange(from=0, to=1000) public int getWeight();
18927    method public void writeToParcel(@NonNull android.os.Parcel, int);
18928    field @NonNull public static final android.os.Parcelable.Creator<android.text.FontConfig.Alias> CREATOR;
18929  }
18930
18931  public static final class FontConfig.Font implements android.os.Parcelable {
18932    method public int describeContents();
18933    method @NonNull public java.io.File getFile();
18934    method @Nullable public String getFontFamilyName();
18935    method @NonNull public String getFontVariationSettings();
18936    method @NonNull public String getPostScriptName();
18937    method @NonNull public android.graphics.fonts.FontStyle getStyle();
18938    method public int getTtcIndex();
18939    method public void writeToParcel(@NonNull android.os.Parcel, int);
18940    field @NonNull public static final android.os.Parcelable.Creator<android.text.FontConfig.Font> CREATOR;
18941  }
18942
18943  public static final class FontConfig.FontFamily implements android.os.Parcelable {
18944    method public int describeContents();
18945    method @NonNull public java.util.List<android.text.FontConfig.Font> getFontList();
18946    method @NonNull public android.os.LocaleList getLocaleList();
18947    method @Deprecated @Nullable public String getName();
18948    method public int getVariant();
18949    method public void writeToParcel(@NonNull android.os.Parcel, int);
18950    field @NonNull public static final android.os.Parcelable.Creator<android.text.FontConfig.FontFamily> CREATOR;
18951    field public static final int VARIANT_COMPACT = 1; // 0x1
18952    field public static final int VARIANT_DEFAULT = 0; // 0x0
18953    field public static final int VARIANT_ELEGANT = 2; // 0x2
18954  }
18955
18956  public static final class FontConfig.NamedFamilyList implements android.os.Parcelable {
18957    method public int describeContents();
18958    method @NonNull public java.util.List<android.text.FontConfig.FontFamily> getFamilies();
18959    method @NonNull public String getName();
18960    method public void writeToParcel(@NonNull android.os.Parcel, int);
18961    field @NonNull public static final android.os.Parcelable.Creator<android.text.FontConfig.NamedFamilyList> CREATOR;
18962  }
18963
18964}
18965
18966package android.util {
18967
18968  public class EventLog {
18969    method public static void readEventsOnWrapping(int[], long, java.util.Collection<android.util.EventLog.Event>) throws java.io.IOException;
18970  }
18971
18972  public static final class EventLog.Event {
18973    method public int getUid();
18974  }
18975
18976}
18977
18978package android.view {
18979
18980  public static class SurfaceControl.Transaction implements java.io.Closeable android.os.Parcelable {
18981    method @FlaggedApi("android.media.tv.flags.apply_picture_profiles") @NonNull public android.view.SurfaceControl.Transaction setPictureProfileHandle(@NonNull android.view.SurfaceControl, @NonNull android.media.quality.PictureProfileHandle);
18982  }
18983
18984  @UiThread public class View implements android.view.accessibility.AccessibilityEventSource android.graphics.drawable.Drawable.Callback android.view.KeyEvent.Callback {
18985    method @NonNull public final java.util.List<android.graphics.Rect> getUnrestrictedPreferKeepClearRects();
18986    method @RequiresPermission(android.Manifest.permission.SET_UNRESTRICTED_KEEP_CLEAR_AREAS) public final void setUnrestrictedPreferKeepClearRects(@NonNull java.util.List<android.graphics.Rect>);
18987  }
18988
18989  public abstract class Window {
18990    method public void addSystemFlags(int);
18991  }
18992
18993  public interface WindowManager extends android.view.ViewManager {
18994    method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public android.graphics.Region getCurrentImeTouchRegion();
18995    method @NonNull public default java.util.List<android.content.ComponentName> notifyScreenshotListeners(int);
18996    method public default void registerTaskFpsCallback(@IntRange(from=0) int, @NonNull java.util.concurrent.Executor, @NonNull android.window.TaskFpsCallback);
18997    method public default void unregisterTaskFpsCallback(@NonNull android.window.TaskFpsCallback);
18998    field public static final int DISPLAY_IME_POLICY_FALLBACK_DISPLAY = 1; // 0x1
18999    field public static final int DISPLAY_IME_POLICY_HIDE = 2; // 0x2
19000    field public static final int DISPLAY_IME_POLICY_LOCAL = 0; // 0x0
19001  }
19002
19003  @FlaggedApi("android.companion.virtualdevice.flags.status_bar_and_insets") public static class WindowManager.InsetsParams {
19004    ctor public WindowManager.InsetsParams(int);
19005    method @Nullable public android.graphics.Insets getInsetsSize();
19006    method public int getType();
19007    method @NonNull public android.view.WindowManager.InsetsParams setInsetsSize(@Nullable android.graphics.Insets);
19008  }
19009
19010  public static class WindowManager.LayoutParams extends android.view.ViewGroup.LayoutParams implements android.os.Parcelable {
19011    method public final long getUserActivityTimeout();
19012    method @FlaggedApi("com.android.hardware.input.override_power_key_behavior_in_focused_window") @RequiresPermission(android.Manifest.permission.OVERRIDE_SYSTEM_KEY_BEHAVIOR_IN_FOCUSED_WINDOW) public boolean isReceivePowerKeyDoublePressEnabled();
19013    method public boolean isSystemApplicationOverlay();
19014    method @FlaggedApi("android.companion.virtualdevice.flags.status_bar_and_insets") public void setInsetsParams(@NonNull java.util.List<android.view.WindowManager.InsetsParams>);
19015    method @FlaggedApi("com.android.hardware.input.override_power_key_behavior_in_focused_window") @RequiresPermission(android.Manifest.permission.OVERRIDE_SYSTEM_KEY_BEHAVIOR_IN_FOCUSED_WINDOW) public void setReceivePowerKeyDoublePressEnabled(boolean);
19016    method @RequiresPermission(android.Manifest.permission.SYSTEM_APPLICATION_OVERLAY) public void setSystemApplicationOverlay(boolean);
19017    method public final void setUserActivityTimeout(long);
19018    field @RequiresPermission(android.Manifest.permission.HIDE_NON_SYSTEM_OVERLAY_WINDOWS) public static final int SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS = 524288; // 0x80000
19019    field @RequiresPermission(android.Manifest.permission.INTERNAL_SYSTEM_WINDOW) public static final int SYSTEM_FLAG_SHOW_FOR_ALL_USERS = 16; // 0x10
19020  }
19021
19022}
19023
19024package android.view.accessibility {
19025
19026  public abstract class AccessibilityDisplayProxy {
19027    ctor public AccessibilityDisplayProxy(int, @NonNull java.util.concurrent.Executor, @NonNull java.util.List<android.accessibilityservice.AccessibilityServiceInfo>);
19028    method @Nullable public android.view.accessibility.AccessibilityNodeInfo findFocus(int);
19029    method public int getDisplayId();
19030    method @NonNull public final java.util.List<android.accessibilityservice.AccessibilityServiceInfo> getInstalledAndEnabledServices();
19031    method @NonNull public java.util.List<android.view.accessibility.AccessibilityWindowInfo> getWindows();
19032    method public void interrupt();
19033    method public void onAccessibilityEvent(@NonNull android.view.accessibility.AccessibilityEvent);
19034    method public void onProxyConnected();
19035    method public void setAccessibilityFocusAppearance(int, @ColorInt int);
19036    method public void setInstalledAndEnabledServices(@NonNull java.util.List<android.accessibilityservice.AccessibilityServiceInfo>);
19037  }
19038
19039  public final class AccessibilityManager {
19040    method public int getAccessibilityWindowId(@Nullable android.os.IBinder);
19041    method @RequiresPermission(android.Manifest.permission.MANAGE_ACCESSIBILITY) public void performAccessibilityShortcut();
19042    method @RequiresPermission(allOf={android.Manifest.permission.MANAGE_ACCESSIBILITY, android.Manifest.permission.CREATE_VIRTUAL_DEVICE}) public boolean registerDisplayProxy(@NonNull android.view.accessibility.AccessibilityDisplayProxy);
19043    method @RequiresPermission(android.Manifest.permission.MANAGE_ACCESSIBILITY) public void registerSystemAction(@NonNull android.app.RemoteAction, int);
19044    method @RequiresPermission(allOf={android.Manifest.permission.MANAGE_ACCESSIBILITY, android.Manifest.permission.CREATE_VIRTUAL_DEVICE}) public boolean unregisterDisplayProxy(@NonNull android.view.accessibility.AccessibilityDisplayProxy);
19045    method @RequiresPermission(android.Manifest.permission.MANAGE_ACCESSIBILITY) public void unregisterSystemAction(int);
19046  }
19047
19048  public class CaptioningManager {
19049    method @RequiresPermission(android.Manifest.permission.SET_SYSTEM_AUDIO_CAPTION) public final void setSystemAudioCaptioningEnabled(boolean);
19050    method @RequiresPermission(android.Manifest.permission.SET_SYSTEM_AUDIO_CAPTION) public final void setSystemAudioCaptioningUiEnabled(boolean);
19051  }
19052
19053}
19054
19055package android.view.autofill {
19056
19057  public final class AutofillManager {
19058    method public void setAugmentedAutofillWhitelist(@Nullable java.util.Set<java.lang.String>, @Nullable java.util.Set<android.content.ComponentName>);
19059  }
19060
19061}
19062
19063package android.view.contentcapture {
19064
19065  public final class ContentCaptureContext implements android.os.Parcelable {
19066    method @Nullable public android.content.ComponentName getActivityComponent();
19067    method @Nullable public android.app.assist.ActivityId getActivityId();
19068    method public int getDisplayId();
19069    method public int getFlags();
19070    method @Nullable public android.view.contentcapture.ContentCaptureSessionId getParentSessionId();
19071    method public int getTaskId();
19072    method @Nullable public android.os.IBinder getWindowToken();
19073    field public static final int FLAG_DISABLED_BY_APP = 1; // 0x1
19074    field public static final int FLAG_DISABLED_BY_FLAG_SECURE = 2; // 0x2
19075    field public static final int FLAG_RECONNECTED = 4; // 0x4
19076  }
19077
19078  public final class ContentCaptureEvent implements android.os.Parcelable {
19079    method public int describeContents();
19080    method @Nullable public android.graphics.Rect getBounds();
19081    method @Nullable public android.view.contentcapture.ContentCaptureContext getContentCaptureContext();
19082    method public long getEventTime();
19083    method @Nullable public android.view.autofill.AutofillId getId();
19084    method @Nullable public java.util.List<android.view.autofill.AutofillId> getIds();
19085    method @Nullable public android.graphics.Insets getInsets();
19086    method @Nullable public CharSequence getText();
19087    method public int getType();
19088    method @Nullable public android.view.contentcapture.ViewNode getViewNode();
19089    method public void writeToParcel(android.os.Parcel, int);
19090    field @NonNull public static final android.os.Parcelable.Creator<android.view.contentcapture.ContentCaptureEvent> CREATOR;
19091    field public static final int TYPE_CONTEXT_UPDATED = 6; // 0x6
19092    field public static final int TYPE_SESSION_PAUSED = 8; // 0x8
19093    field public static final int TYPE_SESSION_RESUMED = 7; // 0x7
19094    field public static final int TYPE_VIEW_APPEARED = 1; // 0x1
19095    field public static final int TYPE_VIEW_DISAPPEARED = 2; // 0x2
19096    field public static final int TYPE_VIEW_INSETS_CHANGED = 9; // 0x9
19097    field public static final int TYPE_VIEW_TEXT_CHANGED = 3; // 0x3
19098    field public static final int TYPE_VIEW_TREE_APPEARED = 5; // 0x5
19099    field public static final int TYPE_VIEW_TREE_APPEARING = 4; // 0x4
19100    field public static final int TYPE_WINDOW_BOUNDS_CHANGED = 10; // 0xa
19101  }
19102
19103  public final class ContentCaptureManager {
19104    method public boolean isContentCaptureFeatureEnabled();
19105    field public static final int NO_SESSION_ID = 0; // 0x0
19106  }
19107
19108  public final class ViewNode extends android.app.assist.AssistStructure.ViewNode {
19109    method @Nullable public android.view.autofill.AutofillId getParentAutofillId();
19110  }
19111
19112}
19113
19114package android.view.displayhash {
19115
19116  public final class DisplayHash implements android.os.Parcelable {
19117    ctor public DisplayHash(long, @NonNull android.graphics.Rect, @NonNull String, @NonNull byte[], @NonNull byte[]);
19118    method public int describeContents();
19119    method @NonNull public android.graphics.Rect getBoundsInWindow();
19120    method @NonNull public String getHashAlgorithm();
19121    method @NonNull public byte[] getHmac();
19122    method @NonNull public byte[] getImageHash();
19123    method public long getTimeMillis();
19124    method public void writeToParcel(@NonNull android.os.Parcel, int);
19125  }
19126
19127}
19128
19129package android.view.inputmethod {
19130
19131  public final class InputMethodInfo implements android.os.Parcelable {
19132    method @FlaggedApi("android.companion.virtual.flags.vdm_custom_ime") public boolean isVirtualDeviceOnly();
19133  }
19134
19135  public final class InputMethodManager {
19136    method @Nullable @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public android.view.inputmethod.InputMethodInfo getCurrentInputMethodInfoAsUser(@NonNull android.os.UserHandle);
19137  }
19138
19139}
19140
19141package android.view.textclassifier {
19142
19143  public final class TextClassificationManager {
19144    method @FlaggedApi("android.permission.flags.text_classifier_choice_api_enabled") @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_TEXT_CLASSIFIER_BY_TYPE) public android.view.textclassifier.TextClassifier getClassifier(int);
19145  }
19146
19147  public interface TextClassifier {
19148    field @FlaggedApi("android.permission.flags.text_classifier_choice_api_enabled") public static final int CLASSIFIER_TYPE_ANDROID_DEFAULT = 2; // 0x2
19149    field @FlaggedApi("android.permission.flags.text_classifier_choice_api_enabled") public static final int CLASSIFIER_TYPE_DEVICE_DEFAULT = 1; // 0x1
19150    field @FlaggedApi("android.permission.flags.text_classifier_choice_api_enabled") public static final int CLASSIFIER_TYPE_SELF_PROVIDED = 0; // 0x0
19151  }
19152
19153}
19154
19155package android.view.translation {
19156
19157  public final class TranslationCapability implements android.os.Parcelable {
19158    ctor public TranslationCapability(int, @NonNull android.view.translation.TranslationSpec, @NonNull android.view.translation.TranslationSpec, boolean, int);
19159  }
19160
19161  public final class TranslationContext implements android.os.Parcelable {
19162    method @Nullable public android.app.assist.ActivityId getActivityId();
19163  }
19164
19165  public final class UiTranslationManager {
19166    method @RequiresPermission(android.Manifest.permission.MANAGE_UI_TRANSLATION) public void finishTranslation(@NonNull android.app.assist.ActivityId);
19167    method @RequiresPermission(android.Manifest.permission.MANAGE_UI_TRANSLATION) public void pauseTranslation(@NonNull android.app.assist.ActivityId);
19168    method @RequiresPermission(android.Manifest.permission.MANAGE_UI_TRANSLATION) public void resumeTranslation(@NonNull android.app.assist.ActivityId);
19169    method @RequiresPermission(android.Manifest.permission.MANAGE_UI_TRANSLATION) public void startTranslation(@NonNull android.view.translation.TranslationSpec, @NonNull android.view.translation.TranslationSpec, @NonNull java.util.List<android.view.autofill.AutofillId>, @NonNull android.app.assist.ActivityId, @NonNull android.view.translation.UiTranslationSpec);
19170  }
19171
19172  public final class UiTranslationSpec implements android.os.Parcelable {
19173    method public int describeContents();
19174    method public boolean shouldPadContentForCompat();
19175    method public void writeToParcel(@NonNull android.os.Parcel, int);
19176    field @NonNull public static final android.os.Parcelable.Creator<android.view.translation.UiTranslationSpec> CREATOR;
19177  }
19178
19179  public static final class UiTranslationSpec.Builder {
19180    ctor public UiTranslationSpec.Builder();
19181    method @NonNull public android.view.translation.UiTranslationSpec build();
19182    method @NonNull public android.view.translation.UiTranslationSpec.Builder setShouldPadContentForCompat(boolean);
19183  }
19184
19185}
19186
19187package android.webkit {
19188
19189  public abstract class CookieManager {
19190    method protected abstract boolean allowFileSchemeCookiesImpl();
19191    method public abstract String getCookie(String, boolean);
19192    method public String getCookie(android.net.WebAddress);
19193    method public abstract boolean hasCookies(boolean);
19194    method protected abstract void setAcceptFileSchemeCookiesImpl(boolean);
19195  }
19196
19197  public class FindActionModeCallback implements android.view.ActionMode.Callback android.text.TextWatcher android.view.View.OnClickListener android.webkit.WebView.FindListener {
19198    ctor public FindActionModeCallback(android.content.Context);
19199    method public void afterTextChanged(android.text.Editable);
19200    method public void beforeTextChanged(CharSequence, int, int, int);
19201    method public void findAll();
19202    method public void finish();
19203    method public int getActionModeGlobalBottom();
19204    method public boolean onActionItemClicked(android.view.ActionMode, android.view.MenuItem);
19205    method public void onClick(android.view.View);
19206    method public boolean onCreateActionMode(android.view.ActionMode, android.view.Menu);
19207    method public void onDestroyActionMode(android.view.ActionMode);
19208    method public void onFindResultReceived(int, int, boolean);
19209    method public boolean onPrepareActionMode(android.view.ActionMode, android.view.Menu);
19210    method public void onTextChanged(CharSequence, int, int, int);
19211    method public void setText(String);
19212    method public void setWebView(@NonNull android.webkit.WebView);
19213    method public void showSoftInput();
19214    method public void updateMatchCount(int, int, boolean);
19215  }
19216
19217  public static class FindActionModeCallback.NoAction implements android.view.ActionMode.Callback {
19218    ctor public FindActionModeCallback.NoAction();
19219    method public boolean onActionItemClicked(android.view.ActionMode, android.view.MenuItem);
19220    method public boolean onCreateActionMode(android.view.ActionMode, android.view.Menu);
19221    method public void onDestroyActionMode(android.view.ActionMode);
19222    method public boolean onPrepareActionMode(android.view.ActionMode, android.view.Menu);
19223  }
19224
19225  public class GeolocationPermissions {
19226    ctor public GeolocationPermissions();
19227  }
19228
19229  public class HttpAuthHandler extends android.os.Handler {
19230    ctor public HttpAuthHandler();
19231  }
19232
19233  public class JsDialogHelper {
19234    ctor public JsDialogHelper(android.webkit.JsPromptResult, int, String, String, String);
19235    ctor public JsDialogHelper(android.webkit.JsPromptResult, android.os.Message);
19236    method public boolean invokeCallback(android.webkit.WebChromeClient, android.webkit.WebView);
19237    method public void showDialog(android.content.Context);
19238    field public static final int ALERT = 1; // 0x1
19239    field public static final int CONFIRM = 2; // 0x2
19240    field public static final int PROMPT = 3; // 0x3
19241    field public static final int UNLOAD = 4; // 0x4
19242  }
19243
19244  public class JsPromptResult extends android.webkit.JsResult {
19245    ctor public JsPromptResult(android.webkit.JsResult.ResultReceiver);
19246    method public String getStringResult();
19247  }
19248
19249  public class JsResult {
19250    ctor public JsResult(android.webkit.JsResult.ResultReceiver);
19251    method public final boolean getResult();
19252  }
19253
19254  public static interface JsResult.ResultReceiver {
19255    method public void onJsResultComplete(android.webkit.JsResult);
19256  }
19257
19258  public interface PacProcessor {
19259    method @NonNull public static android.webkit.PacProcessor createInstance();
19260    method @Nullable public String findProxyForUrl(@NonNull String);
19261    method @NonNull public static android.webkit.PacProcessor getInstance();
19262    method @Nullable public default android.net.Network getNetwork();
19263    method public default void release();
19264    method public default void setNetwork(@Nullable android.net.Network);
19265    method public boolean setProxyScript(@NonNull String);
19266  }
19267
19268  public class SslErrorHandler extends android.os.Handler {
19269    ctor public SslErrorHandler();
19270  }
19271
19272  @Deprecated public abstract class TokenBindingService {
19273    ctor @Deprecated public TokenBindingService();
19274  }
19275
19276  public class WebChromeClient {
19277    method @Deprecated public void openFileChooser(android.webkit.ValueCallback<android.net.Uri>, String, String);
19278  }
19279
19280  public abstract static class WebChromeClient.FileChooserParams {
19281    field @FlaggedApi("android.webkit.file_system_access") public static final long ENABLE_FILE_SYSTEM_ACCESS = 364980165L; // 0x15c127c5L
19282  }
19283
19284  public abstract class WebHistoryItem implements java.lang.Cloneable {
19285    method @Deprecated public abstract int getId();
19286  }
19287
19288  @Deprecated public abstract class WebIconDatabase {
19289    method @Deprecated public abstract void bulkRequestIconForPageUrl(android.content.ContentResolver, String, android.webkit.WebIconDatabase.IconListener);
19290  }
19291
19292  public abstract class WebMessagePort {
19293    ctor public WebMessagePort();
19294  }
19295
19296  public abstract class WebResourceError {
19297    ctor public WebResourceError();
19298  }
19299
19300  public class WebResourceResponse {
19301    ctor public WebResourceResponse(boolean, String, String, int, String, java.util.Map<java.lang.String,java.lang.String>, java.io.InputStream);
19302  }
19303
19304  public abstract class WebSettings {
19305    method public abstract boolean getAcceptThirdPartyCookies();
19306    method @Deprecated public abstract boolean getNavDump();
19307    method @Deprecated public abstract boolean getPluginsEnabled();
19308    method @Deprecated public abstract boolean getUseWebViewBackgroundForOverscrollBackground();
19309    method @Deprecated public abstract int getUserAgent();
19310    method public abstract boolean getVideoOverlayForEmbeddedEncryptedVideoEnabled();
19311    method public abstract void setAcceptThirdPartyCookies(boolean);
19312    method @Deprecated public abstract void setNavDump(boolean);
19313    method @Deprecated public abstract void setPluginsEnabled(boolean);
19314    method @Deprecated public abstract void setUseWebViewBackgroundForOverscrollBackground(boolean);
19315    method @Deprecated public abstract void setUserAgent(int);
19316    method public abstract void setVideoOverlayForEmbeddedEncryptedVideoEnabled(boolean);
19317    field public static final long ENABLE_SIMPLIFIED_DARK_MODE = 214741472L; // 0xcccb1e0L
19318    field @FlaggedApi("android.webkit.user_agent_reduction") public static final long ENABLE_USER_AGENT_REDUCTION = 371034303L; // 0x161d88bfL
19319  }
19320
19321  public class WebStorage {
19322    ctor public WebStorage();
19323  }
19324
19325  public static class WebStorage.Origin {
19326    ctor protected WebStorage.Origin(String, long, long);
19327  }
19328
19329  public class WebView extends android.widget.AbsoluteLayout implements android.view.ViewGroup.OnHierarchyChangeListener android.view.ViewTreeObserver.OnGlobalFocusChangeListener {
19330    method public android.webkit.WebViewProvider getWebViewProvider();
19331  }
19332
19333  public static class WebView.HitTestResult {
19334    ctor public WebView.HitTestResult();
19335    method public void setExtra(String);
19336    method public void setType(int);
19337  }
19338
19339  public class WebView.PrivateAccess {
19340    ctor public WebView.PrivateAccess();
19341    method public void awakenScrollBars(int);
19342    method public void awakenScrollBars(int, boolean);
19343    method public float getHorizontalScrollFactor();
19344    method public int getHorizontalScrollbarHeight();
19345    method public float getVerticalScrollFactor();
19346    method public void onScrollChanged(int, int, int, int);
19347    method public void overScrollBy(int, int, int, int, int, int, int, int, boolean);
19348    method public void setMeasuredDimension(int, int);
19349    method public void setScrollXRaw(int);
19350    method public void setScrollYRaw(int);
19351    method public void super_computeScroll();
19352    method public boolean super_dispatchKeyEvent(android.view.KeyEvent);
19353    method public int super_getScrollBarStyle();
19354    method @Nullable public android.view.WindowInsets super_onApplyWindowInsets(@Nullable android.view.WindowInsets);
19355    method public void super_onDrawVerticalScrollBar(android.graphics.Canvas, android.graphics.drawable.Drawable, int, int, int, int);
19356    method public boolean super_onGenericMotionEvent(android.view.MotionEvent);
19357    method public boolean super_onHoverEvent(android.view.MotionEvent);
19358    method public boolean super_performAccessibilityAction(int, android.os.Bundle);
19359    method public boolean super_performLongClick();
19360    method public boolean super_requestFocus(int, android.graphics.Rect);
19361    method public void super_scrollTo(int, int);
19362    method public boolean super_setFrame(int, int, int, int);
19363    method public void super_setLayoutParams(android.view.ViewGroup.LayoutParams);
19364    method public void super_startActivityForResult(android.content.Intent, int);
19365  }
19366
19367  public final class WebViewDelegate {
19368    method public void addWebViewAssetPath(android.content.Context);
19369    method @Deprecated public void callDrawGlFunction(android.graphics.Canvas, long);
19370    method @Deprecated public void callDrawGlFunction(@NonNull android.graphics.Canvas, long, @Nullable Runnable);
19371    method @Deprecated public boolean canInvokeDrawGlFunctor(android.view.View);
19372    method @Deprecated public void detachDrawGlFunctor(android.view.View, long);
19373    method public void drawWebViewFunctor(@NonNull android.graphics.Canvas, int);
19374    method public android.app.Application getApplication();
19375    method public String getDataDirectorySuffix();
19376    method public String getErrorString(android.content.Context, int);
19377    method public int getPackageId(android.content.res.Resources, String);
19378    method @NonNull public android.webkit.WebViewFactory.StartupTimestamps getStartupTimestamps();
19379    method @Deprecated public void invokeDrawGlFunctor(android.view.View, long, boolean);
19380    method public boolean isMultiProcessEnabled();
19381    method public boolean isTraceTagEnabled();
19382    method public void setOnTraceEnabledChangeListener(android.webkit.WebViewDelegate.OnTraceEnabledChangeListener);
19383  }
19384
19385  public static interface WebViewDelegate.OnTraceEnabledChangeListener {
19386    method public void onTraceEnabledChange(boolean);
19387  }
19388
19389  public final class WebViewFactory {
19390    ctor public WebViewFactory();
19391    method public static android.content.pm.PackageInfo getLoadedPackageInfo();
19392    method public static int loadWebViewNativeLibraryFromPackage(String, ClassLoader);
19393    method public static void prepareWebViewInZygote();
19394    field public static final int LIBLOAD_ADDRESS_SPACE_NOT_RESERVED = 2; // 0x2
19395    field public static final int LIBLOAD_FAILED_JNI_CALL = 7; // 0x7
19396    field public static final int LIBLOAD_FAILED_LISTING_WEBVIEW_PACKAGES = 4; // 0x4
19397    field public static final int LIBLOAD_FAILED_TO_FIND_NAMESPACE = 10; // 0xa
19398    field public static final int LIBLOAD_FAILED_TO_LOAD_LIBRARY = 6; // 0x6
19399    field public static final int LIBLOAD_FAILED_TO_OPEN_RELRO_FILE = 5; // 0x5
19400    field public static final int LIBLOAD_FAILED_WAITING_FOR_RELRO = 3; // 0x3
19401    field public static final int LIBLOAD_FAILED_WAITING_FOR_WEBVIEW_REASON_UNKNOWN = 8; // 0x8
19402    field public static final int LIBLOAD_SUCCESS = 0; // 0x0
19403    field public static final int LIBLOAD_WRONG_PACKAGE_NAME = 1; // 0x1
19404  }
19405
19406  public static class WebViewFactory.StartupTimestamps {
19407    method public long getAddAssetsEnd();
19408    method public long getAddAssetsStart();
19409    method public long getCreateContextEnd();
19410    method public long getCreateContextStart();
19411    method public long getGetClassLoaderEnd();
19412    method public long getGetClassLoaderStart();
19413    method public long getNativeLoadEnd();
19414    method public long getNativeLoadStart();
19415    method public long getProviderClassForNameEnd();
19416    method public long getProviderClassForNameStart();
19417    method public long getWebViewLoadStart();
19418  }
19419
19420  public interface WebViewFactoryProvider {
19421    method @NonNull public default android.webkit.PacProcessor createPacProcessor();
19422    method public android.webkit.WebViewProvider createWebView(android.webkit.WebView, android.webkit.WebView.PrivateAccess);
19423    method public android.webkit.CookieManager getCookieManager();
19424    method public android.webkit.GeolocationPermissions getGeolocationPermissions();
19425    method @NonNull public default android.webkit.PacProcessor getPacProcessor();
19426    method public android.webkit.ServiceWorkerController getServiceWorkerController();
19427    method public android.webkit.WebViewFactoryProvider.Statics getStatics();
19428    method @Deprecated public android.webkit.TokenBindingService getTokenBindingService();
19429    method public android.webkit.TracingController getTracingController();
19430    method public android.webkit.WebIconDatabase getWebIconDatabase();
19431    method public android.webkit.WebStorage getWebStorage();
19432    method public ClassLoader getWebViewClassLoader();
19433    method public android.webkit.WebViewDatabase getWebViewDatabase(android.content.Context);
19434  }
19435
19436  public static interface WebViewFactoryProvider.Statics {
19437    method public void clearClientCertPreferences(Runnable);
19438    method public void enableSlowWholeDocumentDraw();
19439    method public String findAddress(String);
19440    method public void freeMemoryForTests();
19441    method public String getDefaultUserAgent(android.content.Context);
19442    method @NonNull public android.net.Uri getSafeBrowsingPrivacyPolicyUrl();
19443    method public void initSafeBrowsing(android.content.Context, android.webkit.ValueCallback<java.lang.Boolean>);
19444    method public android.net.Uri[] parseFileChooserResult(int, android.content.Intent);
19445    method public void setSafeBrowsingWhitelist(java.util.List<java.lang.String>, android.webkit.ValueCallback<java.lang.Boolean>);
19446    method public void setWebContentsDebuggingEnabled(boolean);
19447  }
19448
19449  public interface WebViewProvider {
19450    method public void addJavascriptInterface(Object, String);
19451    method public boolean canGoBack();
19452    method public boolean canGoBackOrForward(int);
19453    method public boolean canGoForward();
19454    method public boolean canZoomIn();
19455    method public boolean canZoomOut();
19456    method public android.graphics.Picture capturePicture();
19457    method public void clearCache(boolean);
19458    method public void clearFormData();
19459    method public void clearHistory();
19460    method public void clearMatches();
19461    method public void clearSslPreferences();
19462    method public void clearView();
19463    method public android.webkit.WebBackForwardList copyBackForwardList();
19464    method public android.print.PrintDocumentAdapter createPrintDocumentAdapter(String);
19465    method public android.webkit.WebMessagePort[] createWebMessageChannel();
19466    method public void destroy();
19467    method public void documentHasImages(android.os.Message);
19468    method public void dumpViewHierarchyWithProperties(java.io.BufferedWriter, int);
19469    method public void evaluateJavaScript(String, android.webkit.ValueCallback<java.lang.String>);
19470    method public int findAll(String);
19471    method public void findAllAsync(String);
19472    method public android.view.View findHierarchyView(String, int);
19473    method public void findNext(boolean);
19474    method public void flingScroll(int, int);
19475    method public void freeMemory();
19476    method public android.net.http.SslCertificate getCertificate();
19477    method public int getContentHeight();
19478    method public int getContentWidth();
19479    method public android.graphics.Bitmap getFavicon();
19480    method public android.webkit.WebView.HitTestResult getHitTestResult();
19481    method public String[] getHttpAuthUsernamePassword(String, String);
19482    method public String getOriginalUrl();
19483    method public int getProgress();
19484    method public boolean getRendererPriorityWaivedWhenNotVisible();
19485    method public int getRendererRequestedPriority();
19486    method public float getScale();
19487    method public android.webkit.WebViewProvider.ScrollDelegate getScrollDelegate();
19488    method public android.webkit.WebSettings getSettings();
19489    method @NonNull public default android.view.textclassifier.TextClassifier getTextClassifier();
19490    method public String getTitle();
19491    method public String getTouchIconUrl();
19492    method public String getUrl();
19493    method public android.webkit.WebViewProvider.ViewDelegate getViewDelegate();
19494    method public int getVisibleTitleHeight();
19495    method public android.webkit.WebChromeClient getWebChromeClient();
19496    method public android.webkit.WebViewClient getWebViewClient();
19497    method @Nullable public android.webkit.WebViewRenderProcess getWebViewRenderProcess();
19498    method @Nullable public android.webkit.WebViewRenderProcessClient getWebViewRenderProcessClient();
19499    method public android.view.View getZoomControls();
19500    method public void goBack();
19501    method public void goBackOrForward(int);
19502    method public void goForward();
19503    method public void init(java.util.Map<java.lang.String,java.lang.Object>, boolean);
19504    method public void insertVisualStateCallback(long, android.webkit.WebView.VisualStateCallback);
19505    method public void invokeZoomPicker();
19506    method public boolean isPaused();
19507    method public boolean isPrivateBrowsingEnabled();
19508    method public void loadData(String, String, String);
19509    method public void loadDataWithBaseURL(String, String, String, String, String);
19510    method public void loadUrl(String, java.util.Map<java.lang.String,java.lang.String>);
19511    method public void loadUrl(String);
19512    method public void notifyFindDialogDismissed();
19513    method public void onPause();
19514    method public void onResume();
19515    method public boolean overlayHorizontalScrollbar();
19516    method public boolean overlayVerticalScrollbar();
19517    method public boolean pageDown(boolean);
19518    method public boolean pageUp(boolean);
19519    method public void pauseTimers();
19520    method public void postMessageToMainFrame(android.webkit.WebMessage, android.net.Uri);
19521    method public void postUrl(String, byte[]);
19522    method public void reload();
19523    method public void removeJavascriptInterface(String);
19524    method public void requestFocusNodeHref(android.os.Message);
19525    method public void requestImageRef(android.os.Message);
19526    method public boolean restorePicture(android.os.Bundle, java.io.File);
19527    method public android.webkit.WebBackForwardList restoreState(android.os.Bundle);
19528    method public void resumeTimers();
19529    method public void savePassword(String, String, String);
19530    method public boolean savePicture(android.os.Bundle, java.io.File);
19531    method public android.webkit.WebBackForwardList saveState(android.os.Bundle);
19532    method public void saveWebArchive(String);
19533    method public void saveWebArchive(String, boolean, android.webkit.ValueCallback<java.lang.String>);
19534    method public void setCertificate(android.net.http.SslCertificate);
19535    method public void setDownloadListener(android.webkit.DownloadListener);
19536    method public void setFindListener(android.webkit.WebView.FindListener);
19537    method public void setHorizontalScrollbarOverlay(boolean);
19538    method public void setHttpAuthUsernamePassword(String, String, String, String);
19539    method public void setInitialScale(int);
19540    method public void setMapTrackballToArrowKeys(boolean);
19541    method public void setNetworkAvailable(boolean);
19542    method public void setPictureListener(android.webkit.WebView.PictureListener);
19543    method public void setRendererPriorityPolicy(int, boolean);
19544    method public default void setTextClassifier(@Nullable android.view.textclassifier.TextClassifier);
19545    method public void setVerticalScrollbarOverlay(boolean);
19546    method public void setWebChromeClient(android.webkit.WebChromeClient);
19547    method public void setWebViewClient(android.webkit.WebViewClient);
19548    method public void setWebViewRenderProcessClient(@Nullable java.util.concurrent.Executor, @Nullable android.webkit.WebViewRenderProcessClient);
19549    method public boolean showFindDialog(String, boolean);
19550    method public void stopLoading();
19551    method public boolean zoomBy(float);
19552    method public boolean zoomIn();
19553    method public boolean zoomOut();
19554  }
19555
19556  public static interface WebViewProvider.ScrollDelegate {
19557    method public int computeHorizontalScrollOffset();
19558    method public int computeHorizontalScrollRange();
19559    method public void computeScroll();
19560    method public int computeVerticalScrollExtent();
19561    method public int computeVerticalScrollOffset();
19562    method public int computeVerticalScrollRange();
19563  }
19564
19565  public static interface WebViewProvider.ViewDelegate {
19566    method public default void autofill(android.util.SparseArray<android.view.autofill.AutofillValue>);
19567    method public default void dispatchCreateViewTranslationRequest(@NonNull java.util.Map<android.view.autofill.AutofillId,long[]>, @NonNull int[], @Nullable android.view.translation.TranslationCapability, @NonNull java.util.List<android.view.translation.ViewTranslationRequest>);
19568    method public boolean dispatchKeyEvent(android.view.KeyEvent);
19569    method public android.view.View findFocus(android.view.View);
19570    method public android.view.accessibility.AccessibilityNodeProvider getAccessibilityNodeProvider();
19571    method public android.os.Handler getHandler(android.os.Handler);
19572    method public default boolean isVisibleToUserForAutofill(int);
19573    method public void onActivityResult(int, int, android.content.Intent);
19574    method @Nullable public default android.view.WindowInsets onApplyWindowInsets(@Nullable android.view.WindowInsets);
19575    method public void onAttachedToWindow();
19576    method public default boolean onCheckIsTextEditor();
19577    method public void onConfigurationChanged(android.content.res.Configuration);
19578    method public android.view.inputmethod.InputConnection onCreateInputConnection(android.view.inputmethod.EditorInfo);
19579    method public default void onCreateVirtualViewTranslationRequests(@NonNull long[], @NonNull int[], @NonNull java.util.function.Consumer<android.view.translation.ViewTranslationRequest>);
19580    method public void onDetachedFromWindow();
19581    method public boolean onDragEvent(android.view.DragEvent);
19582    method public void onDraw(android.graphics.Canvas);
19583    method public void onDrawVerticalScrollBar(android.graphics.Canvas, android.graphics.drawable.Drawable, int, int, int, int);
19584    method public void onFinishTemporaryDetach();
19585    method public void onFocusChanged(boolean, int, android.graphics.Rect);
19586    method public boolean onGenericMotionEvent(android.view.MotionEvent);
19587    method public boolean onHoverEvent(android.view.MotionEvent);
19588    method public void onInitializeAccessibilityEvent(android.view.accessibility.AccessibilityEvent);
19589    method public void onInitializeAccessibilityNodeInfo(android.view.accessibility.AccessibilityNodeInfo);
19590    method public boolean onKeyDown(int, android.view.KeyEvent);
19591    method public boolean onKeyMultiple(int, int, android.view.KeyEvent);
19592    method public boolean onKeyUp(int, android.view.KeyEvent);
19593    method public void onMeasure(int, int);
19594    method public default void onMovedToDisplay(int, android.content.res.Configuration);
19595    method public void onOverScrolled(int, int, boolean, boolean);
19596    method public default void onProvideAutofillVirtualStructure(android.view.ViewStructure, int);
19597    method public default void onProvideContentCaptureStructure(@NonNull android.view.ViewStructure, int);
19598    method public void onProvideVirtualStructure(android.view.ViewStructure);
19599    method public void onScrollChanged(int, int, int, int);
19600    method public void onSizeChanged(int, int, int, int);
19601    method public void onStartTemporaryDetach();
19602    method public boolean onTouchEvent(android.view.MotionEvent);
19603    method public boolean onTrackballEvent(android.view.MotionEvent);
19604    method public default void onVirtualViewTranslationResponses(@NonNull android.util.LongSparseArray<android.view.translation.ViewTranslationResponse>);
19605    method public void onVisibilityChanged(android.view.View, int);
19606    method public void onWindowFocusChanged(boolean);
19607    method public void onWindowVisibilityChanged(int);
19608    method public boolean performAccessibilityAction(int, android.os.Bundle);
19609    method public boolean performLongClick();
19610    method public void preDispatchDraw(android.graphics.Canvas);
19611    method public boolean requestChildRectangleOnScreen(android.view.View, android.graphics.Rect, boolean);
19612    method public boolean requestFocus(int, android.graphics.Rect);
19613    method public void setBackgroundColor(int);
19614    method public boolean setFrame(int, int, int, int);
19615    method public void setLayerType(int, android.graphics.Paint);
19616    method public void setLayoutParams(android.view.ViewGroup.LayoutParams);
19617    method public void setOverScrollMode(int);
19618    method public void setScrollBarStyle(int);
19619    method public boolean shouldDelayChildPressedState();
19620  }
19621
19622  public final class WebViewProviderInfo implements android.os.Parcelable {
19623    ctor public WebViewProviderInfo(String, String, boolean, boolean, String[]);
19624    method public int describeContents();
19625    method public void writeToParcel(android.os.Parcel, int);
19626    field @NonNull public static final android.os.Parcelable.Creator<android.webkit.WebViewProviderInfo> CREATOR;
19627    field public final boolean availableByDefault;
19628    field public final String description;
19629    field public final boolean isFallback;
19630    field public final String packageName;
19631    field public final android.content.pm.Signature[] signatures;
19632  }
19633
19634  @Deprecated @FlaggedApi("android.webkit.update_service_ipc_wrapper") public final class WebViewUpdateService {
19635    method @Deprecated public static android.webkit.WebViewProviderInfo[] getAllWebViewPackages();
19636    method @Deprecated public static String getCurrentWebViewPackageName();
19637    method @Deprecated @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public static android.webkit.WebViewProviderInfo[] getValidWebViewPackages();
19638  }
19639
19640}
19641
19642package android.window {
19643
19644  public abstract class TaskFpsCallback {
19645    ctor public TaskFpsCallback();
19646    method public abstract void onFpsReported(float);
19647  }
19648
19649}
19650
19651